Skip to content

doc

doc #763

Workflow file for this run

name: CI
env:
BUILD_TYPE: Debug Release
on: [push, pull_request, workflow_dispatch]
jobs:
ubuntu:
runs-on: ubuntu-latest
container:
ghcr.io/jll63/yomm2-gha:latest
strategy:
matrix:
compiler: [clang++-15, clang++-16, g++-12, g++-13]
standard: [17, 20]
config: [Debug, Release]
steps:
- uses: actions/checkout@v3
- name: Configure
run: |
mkdir build
cd build
cmake .. -DCMAKE_CXX_COMPILER=${{ matrix.compiler }} -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_CXX_STANDARD=${{ matrix.standard }} -DYOMM2_ENABLE_TESTS=1 -DYOMM2_ENABLE_BENCHMARKS=1
- name: Build
run: VERBOSE=1 cmake --build build -j 8
- name: Unit Tests
run: |
cd build
YOMM2_TRACE=1 ctest --rerun-failed --output-on-failure .
- name: Examples
run: |
cd build/examples
YOMM2_TRACE=1 find . -type f -executable -exec {} \;
ubuntu-shared:
runs-on: ubuntu-latest
container:
ghcr.io/jll63/yomm2-gha:latest
strategy:
matrix:
compiler: [clang++-16, g++-13]
check_abi_compatibility: [OFF, ON]
steps:
- uses: actions/checkout@v3
- name: Configure
run: |
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DYOMM2_SHARED=1 -DYOMM2_CHECK_ABI_COMPATIBILITY=${{ matrix.check_abi_compatibility }} -DCMAKE_CXX_COMPILER=${{ matrix.compiler }} -DCMAKE_CXX_STANDARD=17 -DYOMM2_ENABLE_TESTS=1
- name: Build
run: VERBOSE=1 cmake --build build
- name: Unit Tests
run: |
cd build
ctest --rerun-failed --output-on-failure .
- name: Examples
run: |
pwd
cd build/examples
find . -type f -executable -exec {} \;
ubuntu-cmake:
runs-on: ubuntu-latest
container:
ghcr.io/jll63/yomm2-gha:latest
strategy:
matrix:
compiler: [clang++-16, g++-13]
steps:
- uses: actions/checkout@v3
- name: Add git, remove Boost and Google Benchmarks
run: |
apt-get update
apt-get install -y git
apt-get remove -y libbenchmark-dev libboost-all-dev
- name: Configure
run: |
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=Release -DYOMM2_SHARED=1 -DCMAKE_CXX_COMPILER=${{ matrix.compiler }} -DCMAKE_CXX_STANDARD=17 -DYOMM2_ENABLE_TESTS=1
- name: Build
run: VERBOSE=1 cmake --build build
- name: Unit Tests
run: |
cd build
ctest --rerun-failed --output-on-failure .
- name: Examples
run: |
pwd
cd build/examples
find . -type f -executable -exec {} \;
windows:
runs-on: windows-latest
strategy:
matrix:
config: [Debug, Release]
standard: [17, 20]
steps:
- uses: actions/checkout@v3
- uses: ilammy/msvc-dev-cmd@v1
with:
vsversion: 2022
- name: Configure
run: |
mkdir build
cd build
cmake .. -G "NMake Makefiles" -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_CXX_STANDARD=${{ matrix.standard }} -DYOMM2_ENABLE_TESTS=1
- name: Build
run: |
cd build
nmake
- name: Unit Tests
run: |
cd build
$env:YOMM2_TRACE = 1
ctest --rerun-failed --output-on-failure .
$global:LASTEXITCODE = 0
windows-shared:
strategy:
matrix:
check_abi_compatibility: [OFF, ON]
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- uses: ilammy/msvc-dev-cmd@v1
with:
vsversion: 2022
- name: Configure
run: |
mkdir build
cd build
cmake .. -G "NMake Makefiles" -DYOMM2_SHARED=1 -DCMAKE_BUILD_TYPE=Release -DYOMM2_CHECK_ABI_COMPATIBILITY=${{ matrix.check_abi_compatibility }} -DCMAKE_CXX_STANDARD=17 -DYOMM2_ENABLE_TESTS=1
- name: Build
run: |
cd build
nmake
- name: Unit Tests
run: |
cd build
$env:YOMM2_TRACE = 1
$env:PATH += ";" + (Get-Item .).FullName + "/src"
ctest --rerun-failed --output-on-failure .
$global:LASTEXITCODE = 0
mac:
runs-on: macOS-latest
strategy:
matrix:
# config: [Debug, Release, ReleaseDebug, DebugRelease]
config: [Debug, Release]
steps:
- uses: actions/checkout@v3
- name: Configure
run: |
mkdir build
cd build
cmake .. -DCMAKE_BUILD_TYPE=${{ matrix.config }} -DCMAKE_CXX_STANDARD=${{ matrix.standard }} -DYOMM2_ENABLE_TESTS=1 -DYOMM2_ENABLE_BENCHMARKS=1
- name: Build
run: |
cd build
make
- name: Unit Tests
run: |
cd build
ctest --rerun-failed --output-on-failure .
- name: Examples
run: |
cd build/examples
find . -type f -perm +0111 -exec {} \;