1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60
|
---
name: MacOS
on:
push:
branches:
- master
- develop
pull_request:
branches:
- master
- develop
env:
CTEST_OUTPUT_ON_FAILURE: 1
CPM_SOURCE_CACHE: ${{ github.workspace }}/cpm_modules
jobs:
build:
runs-on: macos-latest
steps:
- uses: actions/checkout@v3
- uses: actions/cache@v3
with:
path: "**/cpm_modules"
key: ${{ github.workflow }}-cpm-modules-${{ hashFiles('**/CMakeLists.txt', '**/*.cmake') }}
- name: Install ninja and python
shell: bash
run: brew install llvm clang-format ninja python pipx
- name: Install builddriver
shell: bash
run:
pipx install builddriver cmake_format==0.6.11 pyaml
- name: configure
shell: bash
run: |
cmake -S . -B build -G Ninja -DCMAKE_BUILD_TYPE=Debug -DBOOST_UT_ENABLE_RUN_AFTER_BUILD=NO \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON --log-level=DEBUG -DFETCHCONTENT_QUIET=OFF
- name: build
run: cmake --build build -j4 --verbose
- name: test
shell: bash
run: |
cd build
ctest --build-config Debug -j4 --verbose
- name: Run clang-tidy
shell: bash
run: |
export PATH=$(brew --prefix llvm)/bin:${PATH}
$(brew --prefix llvm)/bin/run-clang-tidy \
-p build test 2>&1 | tee .run-clang-tidy.log
builddriver cat .run-clang-tidy.log
|