Skip to content

Merge pull request #231 from abeimler/feature/check-sanitizers-support #404

Merge pull request #231 from abeimler/feature/check-sanitizers-support

Merge pull request #231 from abeimler/feature/check-sanitizers-support #404

Workflow file for this run

name: ci
on:
pull_request:
push:
branches:
- main
- master
jobs:
Test:
if: "!contains(github.event.head_commit.message, '[skip ci]')"
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- windows-2022
- ubuntu-22.04
- macos-12
compiler:
- llvm
- gcc
cmake:
- true
vcvarsall:
- true
include:
- os: "windows-2022"
compiler: "msvc"
cmake: true
vcvarsall: true
- os: "windows-2022"
compiler: "msvc"
cmake_generator: "Ninja"
vcvarsall: true
- os: "windows-2022"
compiler: "msvc"
cmake_generator: "Ninja"
vcvarsall: false
- os: "windows-2022"
compiler: "msvc"
vcvarsall: false
- os: "macos-11"
compiler: "gcc"
cmake: true
vcvarsall: true
exclude:
# fails with an internal error
- os: "macos-12"
compiler: "gcc"
cmake: true
vcvarsall: true
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Cache
uses: actions/cache@v3
with:
path: |
~/vcpkg
./build/vcpkg_installed
${{ env.HOME }}/.cache/vcpkg/archives
${{ env.XDG_CACHE_HOME }}/vcpkg/archives
${{ env.LOCALAPPDATA }}\vcpkg\archives
${{ env.APPDATA }}\vcpkg\archives
key: ${{ runner.os }}-${{ matrix.compiler }}-${{ env.BUILD_TYPE }}-${{ hashFiles('**/CMakeLists.txt') }}-${{ hashFiles('./vcpkg.json')}}-${{ matrix.cmake }}
restore-keys: |
${{ runner.os }}-${{ env.BUILD_TYPE }}-
- name: Setup Cpp
uses: aminya/setup-cpp@v1
with:
compiler: ${{ matrix.compiler }}
vcvarsall: ${{ contains(matrix.os, 'windows') && matrix.vcvarsall }}
cmake: ${{ matrix.cmake }}
ninja: true
vcpkg: true
conan: true
cppcheck: true
clangtidy: true
task: true
doxygen: true
- name: Test
run: |
task test
env:
CMAKE_GENERATOR: ${{ matrix.cmake_generator }}
- name: Lint
if: ${{ matrix.os == 'ubuntu-20.04' && matrix.compiler == 'gcc' }}
run: |
# TODO add to setup-cpp
python3 -m pip install --user cmakelint cmake-format
task lint