⬆️ Bump libs/fiction from 2957b0c
to 18bafd2
(#217)
#352
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: macOS CI | |
on: | |
push: | |
branches: [ 'main' ] | |
paths: | |
- '**/*.hpp' | |
- '**/*.cpp' | |
- '**/*.cmake' | |
- '**/CMakeLists.txt' | |
- 'libs/**' | |
- '.github/workflows/macos.yml' | |
pull_request: | |
branches: [ 'main' ] | |
paths: | |
- '**/*.hpp' | |
- '**/*.cpp' | |
- '**/*.cmake' | |
- '**/CMakeLists.txt' | |
- 'libs/**' | |
- '.github/workflows/macos.yml' | |
merge_group: | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }} | |
cancel-in-progress: true | |
defaults: | |
run: | |
shell: bash | |
jobs: | |
build_and_test: | |
strategy: | |
matrix: | |
os: [ macos-13, macos-14 ] | |
compiler: [ g++-12, g++-13, clang++ ] | |
build_type: [ Debug, Release ] | |
include: | |
- os: macos-13 | |
architecture: x64 | |
- os: macos-14 | |
architecture: arm64 | |
- compiler: clang++ | |
ccompiler: clang | |
- compiler: g++-12 | |
ccompiler: gcc-12 | |
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}} | |
steps: | |
- name: Clone Repository | |
uses: actions/checkout@v4 | |
with: | |
submodules: recursive | |
- name: Setup Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.10.x' | |
# Remove existing 2to3 binary | |
- name: Remove existing 2to3 binary | |
run: sudo rm /usr/local/bin/2to3 || true | |
# Install Boost using Homebrew | |
- name: Install Boost | |
run: brew install boost | |
# Setup TBB for parallel STL algorithms via Homebrew (macOS 11 is no longer supported) | |
- if: matrix.os != 'macos-11' | |
name: Setup TBB | |
run: brew install tbb | |
# Use XCode 13.2 as a workaround because XCode 14.0 seems broken | |
- 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: | |
key: '${{matrix.os}}-${{matrix.compiler}}-${{matrix.build_type}}' | |
variant: ccache | |
save: true | |
max-size: 10G | |
- name: Create Build Environment | |
run: cmake -E make_directory ${{github.workspace}}/build | |
- name: Configure CMake | |
working-directory: ${{github.workspace}}/build | |
run: > | |
cmake ${{github.workspace}} | |
-DCMAKE_CXX_COMPILER=${{matrix.compiler}} | |
-DCMAKE_BUILD_TYPE=${{matrix.build_type}} | |
-DFICTION_ENABLE_UNITY_BUILD=ON | |
-DFICTION_ENABLE_PCH=ON | |
-DFICTION_CLI=ON | |
-DFICTION_TEST=ON | |
-DFICTION_BENCHMARK=OFF | |
-DFICTION_EXPERIMENTS=ON | |
-DFICTION_Z3=OFF | |
-DFICTION_PROGRESS_BARS=OFF | |
-DFICTION_WARNINGS_AS_ERRORS=OFF | |
-DMOCKTURTLE_EXAMPLES=OFF | |
- name: Build | |
working-directory: ${{github.workspace}}/build | |
run: cmake --build . -j3 # all macOS runners provide at least 3 cores | |
- name: Test | |
working-directory: ${{github.workspace}}/build | |
run: ctest -C ${{matrix.build_type}} --verbose |