Setup MinGW/SCons builds on workflows.
@@ -14,23 +14,28 @@ jobs:
build:
runs-on: ${{ matrix.os }}
- continue-on-error: ${{ matrix.experimental }}
+ continue-on-error: ${{ matrix.experimental == true }}
strategy:
fail-fast: false
matrix:
- os: [ubuntu-20.04, windows-2019]
- scons-options: ['ARCH=x86_64']
- experimental: [false]
+ os: [ubuntu-20.04]
+ architecture: [x86_64]
include:
- os: 'macos-11.0'
- scons-options: 'ARCH=universal2'
+ architecture: universal2
experimental: true
- os: 'macos-10.15'
- scons-options: 'ARCH=x86_64'
- experimental: false
+ architecture: x86_64
- os: 'windows-2019'
- scons-options: 'ARCH=x86'
- experimental: false
+ architecture: x86
+ - os: 'windows-2019'
+ architecture: x86_64
+ - os: 'windows-2019'
+ architecture: x86
+ toolset: mingw
+ - os: 'windows-2019'
+ architecture: x86_64
+ toolset: mingw
steps:
- uses: actions/checkout@v2
@@ -51,12 +56,16 @@ jobs:
if: runner.os == 'macOS'
run: |
brew install sdl2
+ - name: Set up MinGW
+ if: ${{ matrix.toolset == 'mingw' }}
+ uses: egor-tensin/setup-mingw@v2
+ with:
+ platform: ${{ matrix.architecture == 'x86_64' && 'x64' || 'x86' }}
- name: Build package.
working-directory: buildsys/scons
- env:
- SCONS_OPTIONS: ${{ matrix.scons-options }}
run: |
- scons develop_all dist -j 3 -s CPPDEFINES=NDEBUG MODE=DEBUG_RELEASE $SCONS_OPTIONS
+ scons develop_all dist -j 3 -s CPPDEFINES=NDEBUG MODE=DEBUG_RELEASE \
+ ARCH=${{ matrix.architecture }} ${{ matrix.toolset == 'mingw' && 'TOOLSET=mingw' || '' }}
- name: Unit tests
env:
LD_LIBRARY_PATH: ${{github.workspace}}
