Skip to content

Commit

Permalink
👷 Update macOS CI to support Apple Silicon runners (#376)
Browse files Browse the repository at this point in the history
* 💚 update macos runners.

* 💚 add g++-10 again.

* 🎨 remove redundant line.

* 🎨 increase XCode version.

* 🎨 small fix.

* 🎨 delete macos-14 due to issues.

* 💚 Added architecture flags to to the setup-z3 action to prevent the linking error on Apple Silicon runners

* 💚 Fixed missing architecture argument

* 💚 Exclude macOS 12 with g++13

* 💚 Exclude g++ compilers from macOS 14 builds because apparently clang++ is required for Apple Silicon compilation

---------

Co-authored-by: Marcel Walter <[email protected]>
  • Loading branch information
Drewniok and marcelwa authored Feb 3, 2024
1 parent 32bd568 commit 9a689f9
Showing 1 changed file with 25 additions and 13 deletions.
38 changes: 25 additions & 13 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -36,24 +36,29 @@ jobs:
build_and_test:
strategy:
matrix:
os: [ macos-11, macos-12 ]
compiler: [ g++-11, g++-12, clang++ ]
os: [ macos-12, macos-13, macos-14 ]
compiler: [ g++-11, g++-12, g++-13, clang++ ]
build_type: [ Debug, Release ]
include:
- os: macos-12
architecture: x64
- os: macos-13
architecture: x64
- os: macos-14
architecture: arm64
- compiler: clang++
ccompiler: clang
- compiler: g++-11
ccompiler: gcc-11
- compiler: g++-12
ccompiler: gcc-12
- os: macos-11
compiler: g++-10
ccompiler: gcc-10
build_type: Debug
- os: macos-11
compiler: g++-10
ccompiler: gcc-10
build_type: Release
exclude:
- os: macos-14
compiler: g++-11
- os: macos-14
compiler: g++-12
- os: macos-14
compiler: g++-13

name: ${{matrix.os}} with ${{matrix.compiler}} (${{matrix.build_type}} mode)
runs-on: ${{matrix.os}}
Expand All @@ -70,11 +75,18 @@ jobs:
run: brew install tbb

# Use XCode 13.2 as a workaround because XCode 14.0 seems broken
- name: Setup XCode version
- if: matrix.os == 'macos-12'
name: Setup XCode version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: "^13.2"

- if: matrix.os == 'macos-13' || matrix.os == 'macos-14'
name: Setup XCode version
uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: "^14.2"

- name: Setup ccache
uses: hendrikmuhs/[email protected]
with:
Expand All @@ -89,7 +101,7 @@ jobs:
with:
version: ${{env.Z3_VERSION}}
platform: macOS
architecture: x64
architecture: ${{matrix.architecture}}
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}

Expand All @@ -115,7 +127,7 @@ jobs:
- name: Build
working-directory: ${{github.workspace}}/build
run: cmake --build . -j3 # macOS runners provide 3 cores
run: cmake --build . -j3 # all macOS runners provide at least 3 cores

- name: Test
working-directory: ${{github.workspace}}/build
Expand Down

0 comments on commit 9a689f9

Please sign in to comment.