on: push: branches: [ master, ci, builds ] pull_request: branches: [ master, ci, builds ] jobs: release: strategy: matrix: os: - macos - ubuntu - windows os-versions: - macos: 12 ubuntu: 22.04 window: 2019 boost-version: - 1.85.0 sfml-version: - 2.6.1 configuration: - Release - Debug runs-on: '${{ matrix.os }}-${{ matrix.os-versions[matrix.os] }}' steps: - name: checkout uses: actions/checkout@v4 with: submodules: true - name: Cache Boost uses: actions/cache@v2 with: path: '${{ runner.workspace }}/boost_*.tar.gz' key: 'boost-${{ matrix.boost-version }}' - name: Build Boost id: boost uses: egor-tensin/build-boost@v1 with: version: ${{ matrix.boost-version }} libraries: filesystem system platform: x64 configuration: ${{ matrix.configuration }} - name: Build SFML id: sfml uses: oprypin/install-sfml@v1 with: sfml: ${{ matrix.sfml-version }} config: ${{ matrix.configuration }} - name: Windows build dependencies run: 'vcpkg install libxml2 && pip install scons' if: ${{ matrix.os == 'windows' }} - name: Mac build dependencies run: brew install scons if: ${{ matrix.os == 'macos' }} - name: Linux build dependencies run: sudo apt-get update && sudo apt-get install scons libxml2-utils zlib1g zenity if: ${{ matrix.os == 'ubuntu' }} - name: Install TGUI run: 'sudo ./.github/workflows/scripts/linux/install-tgui.sh' if: ${{ matrix.os == 'ubuntu' }}