name: CI on: push: branches: [main] jobs: compile-and-test: strategy: fail-fast: false # disable fail fast, so feedback is provided for all matrix combinations matrix: os: - ubuntu-latest - ubuntu-24.04-arm - windows-latest - windows-11-arm # - macos-latest runs-on: ${{matrix.os}} steps: - uses: actions/checkout@v5 with: submodules: true fetch-depth: 1 - name: "Linux: install deps" if: runner.os == 'Linux' run: | sudo apt update sudo apt install -y libwayland-dev libxkbcommon-dev xorg-dev cmake xxd - name: get submodule hash id: get-hash run: echo "HASH=$(git submodule | sha1sum)" >$GITHUB_OUTPUT - uses: actions/cache@v4 with: path: lib/obj/ # I swear to god, if runner.arch displays x64 for x86_64, I will eat a potato. # note: it is... fucking shit. key: ${{runner.os}}_${{runner.arch}}-lib/obj-${{steps.get-hash.outputs.HASH}} restore-keys: ${{runner.os}}_${{runner.arch}}-lib/obj- - run: make -Bj libs - run: make -j all - run: make -j test