Skip to content

Fix: generation of version file by removing header-only (#58) #192

Fix: generation of version file by removing header-only (#58)

Fix: generation of version file by removing header-only (#58) #192

Workflow file for this run

name: Build and run Tests
on: [ push ]
concurrency:
group: build-and-run-tests-${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build-and-run-tests:
strategy:
fail-fast: false
matrix:
config:
- os: ubuntu-22.04
compiler: clang-17
- os: ubuntu-22.04
compiler: clang-18
- os: ubuntu-22.04
compiler: gcc-12
- os: ubuntu-22.04
compiler: gcc-13
runs-on: ${{ matrix.config.os }}
name: ${{ matrix.config.os }} (${{ matrix.config.compiler }})
defaults:
run:
shell: bash
steps:
- name: Add repos for for gcc-13 and clang-16,..
uses: dice-group/cpp-conan-release-reusable-workflow/.github/actions/setup_apt@main
- name: Install CMake
uses: lukka/get-cmake@latest
with:
cmakeVersion: 3.29.3
- name: Install compiler
id: install_cc
uses: rlalik/setup-cpp-compiler@v1.2
with:
compiler: ${{ matrix.config.compiler }}
- name: Configure conan
uses: dice-group/cpp-conan-release-reusable-workflow/.github/actions/configure_conan@main
with:
conan-version: 2.3.1
- name: add conan user
run: |
conan remote add -f dice-group https://conan.dice-research.org/artifactory/api/conan/tentris
- name: Cache conan data
id: cache-conan
uses: actions/cache@v4.0.2
with:
path: ~/.conan2/p
key: ${{ matrix.config.os }}-${{ matrix.config.compiler }}
- uses: actions/checkout@v4.1.6
- name: Get dependency provider
uses: dice-group/cpp-conan-release-reusable-workflow/.github/actions/add_conan_provider@main
- name: Configure CMake
run: cmake -DCMAKE_CXX_FLAGS="-fsanitize=address,undefined" -DCMAKE_BUILD_TYPE=Debug -DWITH_SVECTOR=ON -DWITH_BOOST=ON -DBUILD_TESTING=On -DBUILD_EXAMPLES=On -DCMAKE_PROJECT_TOP_LEVEL_INCLUDES=conan_provider.cmake -G Ninja -B build .
env:
CC: ${{ steps.install_cc.outputs.cc }}
CXX: ${{ steps.install_cc.outputs.cxx }}
- name: Build tests and examples
working-directory: build
run: cmake --build . --parallel 2
- name: Run tests
working-directory: build
run: ctest --verbose --parallel 2
- name: Run examples
working-directory: build
run: |
for example in examples/examples_*; do
echo "executing ${example}"
./${example}
done