ci: use matrix, disable macos for now

Change CI actions to a matrix with cmake options, for both release and
debug builds, with ENABLE_LINK=OFF and ENABLE_SDL=ON configurations, for
all 3 runners.

Also add both g++ and clang++ to the matrix for the Ubuntu runner to
test on clang.

Disable the macOS workflow for now because brew is failing to install
dependencies.

Signed-off-by: Rafael Kitover <rkitover@gmail.com>
This commit is contained in:
Rafael Kitover 2023-09-04 22:55:51 +00:00
parent 0f4ec57557
commit f6e3daf9d8
No known key found for this signature in database
GPG Key ID: 08AB596679D86240
3 changed files with 51 additions and 46 deletions

View File

@ -1,8 +1,13 @@
name: macOS Latest Build name: macOS Latest Build
on: [push, pull_request] #on: [push, pull_request]
on: workflow_dispatch
jobs: jobs:
build: build:
strategy:
matrix:
cmake_build: ['-DCMAKE_BUILD_TYPE=Release', '-DCMAKE_BUILD_TYPE=Debug']
cmake_options: ['', '-DENABLE_LINK=OFF', '-DENABLE_SDL=ON']
runs-on: macos-latest runs-on: macos-latest
steps: steps:
@ -17,7 +22,7 @@ jobs:
- name: Configure - name: Configure
run: >- run: >-
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug cmake -B build -G Ninja ${{ matrix.cmake_build }} ${{ matrix.cmake_options }}
- name: Build - name: Build
run: ninja -C build run: ninja -C build

View File

@ -1,41 +1,37 @@
name: MSYS2 Build name: MSYS2 Build
on: [push, pull_request] on: [push, pull_request]
jobs: jobs:
build: build:
runs-on: windows-latest strategy:
env: matrix:
MSYSTEM: CLANG64 cmake_build: ['-DCMAKE_BUILD_TYPE=Release', '-DCMAKE_BUILD_TYPE=Debug']
defaults: cmake_options: ['', '-DENABLE_LINK=OFF', '-DENABLE_SDL=ON']
run: runs-on: windows-latest
shell: msys2 {0} env:
MSYSTEM: CLANG64
steps: defaults:
- name: Checkout the code run:
uses: actions/checkout@v2 shell: msys2 {0}
with:
submodules: recursive steps:
- name: Setup msys2 - name: Checkout the code
uses: msys2/setup-msys2@v2 uses: actions/checkout@v2
with: with:
msystem: CLANG64 submodules: recursive
update: true - name: Setup msys2
install: >- uses: msys2/setup-msys2@v2
mingw-w64-clang-x86_64-toolchain with:
mingw-w64-clang-x86_64-pkgconf msystem: CLANG64
mingw-w64-clang-x86_64-ffmpeg update: true
mingw-w64-clang-x86_64-FAudio - name: Install deps
mingw-w64-clang-x86_64-cmake run: >-
mingw-w64-clang-x86_64-ninja bash installdeps
mingw-w64-clang-x86_64-wxWidgets3.2 - name: Configure
mingw-w64-clang-x86_64-sfml run: >-
mingw-w64-clang-x86_64-SDL2 cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug ${{ matrix.cmake_build }} ${{ matrix.cmake_options }}
zip - name: Build
- name: Configure run: ninja -C build
run: >-
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug -DVBAM_STATIC=ON -DENABLE_SSP=ON -DENABLE_ONLINEUPDATES=OFF - name: Install
- name: Build run: ninja -C build install
run: ninja -C build
- name: Install
run: ninja -C build install

View File

@ -3,8 +3,12 @@ on: [push, pull_request]
jobs: jobs:
build: build:
strategy:
matrix:
cmake_compiler: ['-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++', '-DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++']
cmake_build: ['-DCMAKE_BUILD_TYPE=Release', '-DCMAKE_BUILD_TYPE=Debug']
cmake_options: ['', '-DENABLE_LINK=OFF', '-DENABLE_SDL=ON']
runs-on: ubuntu-latest runs-on: ubuntu-latest
steps: steps:
- name: Checkout the code - name: Checkout the code
uses: actions/checkout@v2 uses: actions/checkout@v2
@ -13,11 +17,11 @@ jobs:
- name: Install Dependencies - name: Install Dependencies
run: >- run: >-
bash installdeps bash installdeps; if [ "${{ matrix.compiler }}" = clang ]; then sudo apt -y install clang; fi
- name: Configure - name: Configure
run: >- run: >-
cmake -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug cmake -B build -G Ninja ${{ matrix.cmake_compiler }} ${{ matrix.cmake_build }} ${{ matrix.cmake_options }}
- name: Build - name: Build
run: ninja -C build run: ninja -C build