name: CI on: - push - pull_request jobs: x86_64-linux: runs-on: ubuntu-latest # We want to run on external PRs, but not on our own internal PRs as they'll be run by the push # to the branch. if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository env: DISPLAY: ':99.0' steps: - name: Checkout uses: actions/checkout@v2 - name: Setup Zig run: | sudo apt install xz-utils sudo sh -c 'wget -c https://ziglang.org/builds/zig-linux-x86_64-0.9.0-dev.1785+4cdf5b666.tar.xz -O - | tar -xJ --strip-components=1 -C /usr/local/bin' - name: x86_64-linux -> x86_64-macos run: zig build test -Dtarget=x86_64-macos env: AGREE: true - name: x86_64-linux -> aarch64-macos run: zig build test -Dtarget=aarch64-macos env: AGREE: true - name: x86_64-linux -> x86_64-windows run: zig build test -Dtarget=x86_64-windows - name: launch xvfb run: Xvfb :99 -screen 0 1680x720x24 > /dev/null 2>&1 & - name: test run: | sudo add-apt-repository -y ppa:kisak/kisak-mesa sudo apt-get update sudo apt-get install mesa-utils mesa-utils-extra mesa-va-drivers mesa-vdpau-drivers mesa-vulkan-drivers xvfb zig build test x86_64-windows: runs-on: windows-latest # We want to run on external PRs, but not on our own internal PRs as they'll be run by the push # to the branch. if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository steps: - name: Checkout uses: actions/checkout@v2 - name: Install Git run: choco install git - name: Setup Zig run: | Invoke-WebRequest -Uri "https://ziglang.org/builds/zig-windows-x86_64-0.9.0-dev.1785+4cdf5b666.zip" -OutFile "C:\zig.zip" cd C:\ 7z x zig.zip Add-Content $env:GITHUB_PATH "C:\zig-windows-x86_64-0.9.0-dev.1785+4cdf5b666\" - name: x86_64-windows -> x86_64-macos run: zig build test -Dtarget=x86_64-macos env: AGREE: true - name: x86_64-windows -> aarch64-macos run: zig build test -Dtarget=aarch64-macos env: AGREE: true - name: x86_64-windows -> x86_64-linux run: zig build test -Dtarget=x86_64-linux - name: test run: zig build test x86_64-macos: runs-on: macos-latest # We want to run on external PRs, but not on our own internal PRs as they'll be run by the push # to the branch. if: github.event_name == 'push' || github.event.pull_request.head.repo.full_name != github.repository steps: - name: Checkout uses: actions/checkout@v2 - name: Setup Zig run: | brew install xz sudo sh -c 'wget -c https://ziglang.org/builds/zig-macos-x86_64-0.9.0-dev.1785+4cdf5b666.tar.xz -O - | tar -xJ --strip-components=1 -C /usr/local/bin' - name: test run: zig build test env: AGREE: true - name: x86_64-macos -> aarch64-macos run: zig build test -Dtarget=aarch64-macos env: AGREE: true - name: x86_64-macos -> x86_64-windows run: zig build test -Dtarget=x86_64-windows - name: x86_64-macos -> x86_64-linux run: zig build test -Dtarget=x86_64-linux