Skip to content

Merge pull request #24 from SemaiCZE/update-ci #40

Merge pull request #24 from SemaiCZE/update-ci

Merge pull request #24 from SemaiCZE/update-ci #40

Workflow file for this run

name: Linux/MacOS Build
on: [push, pull_request]
jobs:
tests:
name: ${{ matrix.name }} ${{ matrix.compiler }} ${{ matrix.build_type }} - ${{ matrix.lib_type }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [macos-14, ubuntu-22.04]
compiler: [GCC, Clang]
build_type: [Debug, Release]
build_shared: [ON, OFF]
include:
- compiler: gcc
c_compiler: gcc-13
cxx_compiler: g++-13
- compiler: clang
c_compiler: clang
cxx_compiler: clang++
- os: macos-14
name: MacOS
- os: ubuntu-22.04
name: Ubuntu
- build_shared: ON
lib_type: Shared
- build_shared: OFF
lib_type: Static
steps:
- uses: lukka/get-cmake@v3.29.2
- uses: seanmiddleditch/gha-setup-ninja@v4
- name: Checkout
uses: actions/checkout@v4
with:
submodules: true
- name: Buildtools Version
run: |
${{ matrix.cxx_compiler }} --version
shell: bash
- name: Configure
run: |
mkdir build
cd build
cmake .. -GNinja -DCMAKE_BUILD_TYPE=${{matrix.build_type}} -DCMAKE_C_COMPILER=${{matrix.c_compiler}} -DCMAKE_CXX_COMPILER=${{matrix.cxx_compiler}} -DINICPP_BUILD_TESTS=ON -DINICPP_BUILD_EXAMPLES=ON -DINICPP_BUILD_SHARED=${{matrix.build_shared}}
shell: bash
- name: Build
run: |
cmake --build .
shell: bash
working-directory: build
- name: Tests
run: ctest . --output-on-failure
shell: bash
working-directory: build