From 360e8db806d4963951b160754e883fc8bcd48fcc Mon Sep 17 00:00:00 2001 From: Michael Tautschnig Date: Fri, 12 Jul 2024 15:51:36 +0000 Subject: [PATCH] CI: add macos-14 (macOS on M1) job This will exercise builds on ARM/Apple Silicon. Fixes: #8000 --- .github/workflows/pull-request-checks.yaml | 44 ++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/.github/workflows/pull-request-checks.yaml b/.github/workflows/pull-request-checks.yaml index 9432cf705b7..ff5710b49a7 100644 --- a/.github/workflows/pull-request-checks.yaml +++ b/.github/workflows/pull-request-checks.yaml @@ -683,6 +683,50 @@ jobs: - name: Run CTest run: cd build; ctest -V -L CORE . -j3 + # This job takes approximately 36 to 85 minutes + check-macos-14-cmake-clang: + runs-on: macos-14 + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + - name: Fetch dependencies + run: brew install cmake ninja maven flex bison ccache z3 + - name: Confirm z3 solver is available and log the version installed + run: z3 --version + - name: Download cvc5 binary and make sure it can be deployed + run: | + curl -L https://github.com/cvc5/cvc5/releases/download/cvc5-${{env.cvc5-version}}/cvc5-macOS --output cvc5 + chmod u+x cvc5 + mv cvc5 /usr/local/bin + cvc5 --version + - name: Prepare ccache + uses: actions/cache@v4 + with: + save-always: true + path: .ccache + key: ${{ runner.os }}-Release-${{ github.ref }}-${{ github.sha }}-PR + restore-keys: | + ${{ runner.os }}-Release-${{ github.ref }} + ${{ runner.os }}-Release + - name: ccache environment + run: | + echo "CCACHE_BASEDIR=$PWD" >> $GITHUB_ENV + echo "CCACHE_DIR=$PWD/.ccache" >> $GITHUB_ENV + - name: Zero ccache stats and limit in size + run: ccache -z --max-size=500M + - name: Configure using CMake + run: | + mkdir build + cd build + cmake .. -G Ninja -DCMAKE_BUILD_TYPE=Release -DCMAKE_C_COMPILER=/usr/bin/clang -DCMAKE_CXX_COMPILER=/usr/bin/clang++ -Dsat_impl=cadical + - name: Build with Ninja + run: cd build; ninja -j3 + - name: Print ccache stats + run: ccache -s + - name: Run CTest + run: cd build; ctest -V -L CORE . -j3 + # This job takes approximately 49 to 70 minutes check-vs-2019-cmake-build-and-test: runs-on: windows-2019