2020-11-28 14:34:34 +01:00
|
|
|
name: Mac builds
|
|
|
|
|
|
|
|
on: [push, pull_request]
|
|
|
|
|
|
|
|
jobs:
|
|
|
|
build:
|
2024-03-12 19:38:25 +01:00
|
|
|
runs-on: macos-14
|
2020-11-28 14:34:34 +01:00
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
cxx:
|
2022-08-03 23:44:49 +02:00
|
|
|
- g++-11
|
2020-11-28 14:34:34 +01:00
|
|
|
- clang++
|
|
|
|
build_type: [Debug, Release]
|
2020-11-28 21:13:00 +01:00
|
|
|
std: [14, 17]
|
2020-11-28 19:14:21 +01:00
|
|
|
include:
|
|
|
|
- build_type: Debug
|
|
|
|
examples: ON
|
|
|
|
extra_tests: ON
|
2020-11-28 14:34:34 +01:00
|
|
|
|
|
|
|
steps:
|
2023-11-09 10:31:49 +01:00
|
|
|
- uses: actions/checkout@v4
|
2020-11-28 14:34:34 +01:00
|
|
|
|
|
|
|
- name: Configure build
|
|
|
|
working-directory: ${{runner.workspace}}
|
|
|
|
env:
|
|
|
|
CXX: ${{matrix.cxx}}
|
|
|
|
CXXFLAGS: ${{matrix.cxxflags}}
|
|
|
|
# Note: $GITHUB_WORKSPACE is distinct from ${{runner.workspace}}.
|
|
|
|
# This is important
|
|
|
|
run: |
|
2020-11-28 19:14:21 +01:00
|
|
|
cmake -Bbuild -H$GITHUB_WORKSPACE \
|
2022-10-28 18:36:58 +02:00
|
|
|
-DCMAKE_BUILD_TYPE=${{matrix.build_type}} \
|
|
|
|
-DCMAKE_CXX_STANDARD=${{matrix.std}} \
|
|
|
|
-DCMAKE_CXX_STANDARD_REQUIRED=ON \
|
|
|
|
-DCATCH_DEVELOPMENT_BUILD=ON \
|
|
|
|
-DCATCH_BUILD_EXAMPLES=${{matrix.examples}} \
|
2020-11-28 19:14:21 +01:00
|
|
|
-DCATCH_BUILD_EXTRA_TESTS=${{matrix.examples}}
|
2020-11-28 14:34:34 +01:00
|
|
|
|
|
|
|
- name: Build tests + lib
|
|
|
|
working-directory: ${{runner.workspace}}/build
|
2023-11-07 22:17:47 +01:00
|
|
|
run: make -j `sysctl -n hw.ncpu`
|
2020-11-28 14:34:34 +01:00
|
|
|
|
|
|
|
- name: Run tests
|
|
|
|
env:
|
|
|
|
CTEST_OUTPUT_ON_FAILURE: 1
|
|
|
|
working-directory: ${{runner.workspace}}/build
|
2023-11-07 22:17:47 +01:00
|
|
|
run: ctest -C ${{matrix.build_type}} -j `sysctl -n hw.ncpu`
|