name: Check Builds on: push: paths: - lib/** - bot/** - cnc/** - shell/** - tools/** - cmake-modules/** - .github/workflows/check-build.yaml - CMakeLists.txt jobs: ubuntu-build: name: ${{ matrix.name }} runs-on: ubuntu-20.04 env: CTEST_OUTPUT_ON_FAILURE: ON CTEST_PARALLEL_LEVEL: 2 strategy: fail-fast: false matrix: include: - name: Default cmake-args: "" - name: Debug cmake-args: "-DCMAKE_BUILD_TYPE=Debug" - name: Debug-Persistence-Obfuscate cmake-args: "-DCMAKE_BUILD_TYPE=Debug -DLAIKA_PERSISTENCE=On -DLAIKA_OBFUSCATE=On" - name: Release cmake-args: "-DCMAKE_BUILD_TYPE=MinSizeRel" - name: Release-Persistence-Obfuscate cmake-args: "-DCMAKE_BUILD_TYPE=MinSizeRel -DLAIKA_PERSISTENCE=On -DLAIKA_OBFUSCATE=On" steps: - uses: actions/checkout@v2 with: submodules: recursive - uses: actions/setup-python@v2 with: python-version: "3.10" - name: Install run: pip install cmake==3.21.4 --upgrade - name: CMake run: cmake -S . -B build ${{ matrix.cmake-args }} - name: Build run: cmake --build build - name: Upload build artifact uses: actions/upload-artifact@v2 with: name: Laika-Ubuntu-${{ matrix.name }} path: bin - name: Cleanup run: rm -rf bin build windows-build: runs-on: windows-latest steps: - uses: actions/checkout@v2 with: submodules: recursive - name: Create CMake build files run: cmake -B build -DCMAKE_BUILD_TYPE=MinSizeRel -DLAIKA_PERSISTENCE=On -DLAIKA_OBFUSCATE=On - name: Check compilation run: cmake --build build --config MinSizeRel - name: Upload build artifact uses: actions/upload-artifact@v2 with: name: Laika-Windows-Release-Persistence-Obfuscate path: winbin