CI: Build tools/david with ninja on macOS #1
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: build and test on aarch64 | |
on: [push, pull_request] | |
jobs: | |
test-on-macos-aarch64: | |
runs-on: macos-14 | |
name: test on macos-14-aarch64 | |
steps: | |
- name: install prerequisites | |
run: | | |
brew install meson | |
- name: git checkout | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 1 | |
- name: cache rust dependencies | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
target/ | |
key: arm-darwin-cargo-and-target-${{ hashFiles('**/Cargo.lock') }} | |
- name: cargo build for aarch64-apple-darwin | |
run: cargo build --release | |
# not quite sure why we need this on the runner, not needed locally | |
- run: | | |
meson build --buildtype release | |
ninja -C build tools/dav1d | |
- name: test without frame delay | |
run: .github/workflows/test.sh \ | |
-r ./target/release/dav1d \ | |
-s ./target/release/seek_stress | |
# tests run quickly so also cover the frame delay cases | |
- name: test with frame delay of 1 | |
run: .github/workflows/test.sh \ | |
-r ./target/release/dav1d \ | |
-s ./target/release/seek_stress | |
-f 1 | |
- name: test with frame delay of 2 | |
run: .github/workflows/test.sh \ | |
-r ./target/release/dav1d \ | |
-s ./target/release/seek_stress | |
-f 2 | |
- run: .github/workflows/test.sh \ | |
-r ./target/release/dav1d \ | |
-s ./target/release/seek_stress | |
- name: upload build artifacts | |
if: ${{ !cancelled() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: meson-test-logs | |
path: | | |
${{ github.workspace }}/build/meson-logs/testlog.txt | |