Descent3/.github/workflows/build.yml
2024-04-18 01:48:03 +03:00

55 lines
1.4 KiB
YAML

name: Descent 3 Build
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
strategy:
fail-fast: false
matrix:
os:
- {runner: windows-latest, preset: win}
- {runner: macos-latest, preset: mac}
- {runner: ubuntu-latest, preset: linux}
build_type: [Debug, Release]
runs-on: ${{ matrix.os.runner }}
steps:
- uses: actions/checkout@v4
- name: Install macOS dependencies
if: ${{ matrix.os.preset == 'mac' }}
run: |
# Install packages from Homebrew
brew bundle install
- name: Install Linux dependencies
if: ${{ matrix.os.preset == 'linux' }}
run: |
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y --no-install-recommends \
make cmake g++ libsdl1.2-dev libsdl-image1.2-dev \
libaudio-dev libaa1-dev libdirectfb-dev \
libncurses-dev \
libxext6:i386 # for ./scripts/hogutils/hogUtils-i686 binary
mkdir ~/Descent3
- name: Configure CMake
run: cmake --preset ${{matrix.os.preset}} -B ${{github.workspace}}/build
- name: Build
run: cmake --build ${{github.workspace}}/build --config ${{matrix.build_type}}
- name: 'Upload Artifacts'
uses: actions/upload-artifact@v4
with:
name: build_${{matrix.build_type}}
path: ${{github.workspace}}/build/Descent3/${{matrix.build_type}}