Skip to content

ci run with workflow definition #186

ci run with workflow definition

ci run with workflow definition #186

Workflow file for this run

name: C++ CI
on:
push:
branches: [ "master" ]
paths-ignore:
- 'README.md'
- 'docs/**'
pull_request:
paths-ignore:
- 'README.md'
- 'docs/**'
jobs:
build-and-test-gcc:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- name: Install dependencies
run: |
sudo apt-get update && sudo apt-get install -y cmake ninja-build gcc-14 g++-14
- name: ci-gcc-glaze3
run: cmake --workflow --preset="ci-gcc-glaze3"
- name: ci-gcc-glaze2
run: cmake --workflow --preset="ci-gcc-glaze2"
build-and-test-clang:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v3
- name: Add LLVM Repository
run: |
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh 18
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y cmake g++-14 ninja-build clang-18 libfmt-dev libc++-18-dev libc++abi-18-dev
- name: ci-clang-libstdc++-glaze3
run: cmake --workflow --preset="ci-clang-libstdc++-glaze3"
- name: ci-clang-libstdc++-glaze2
run: cmake --workflow --preset="ci-clang-libstdc++-glaze2"
- name: ci-clang-libc++-glaze3
run: cmake --workflow --preset="ci-clang-libc++-glaze3"
- name: ci-clang-libc++-glaze2
run: cmake --workflow --preset="ci-clang-libc++-glaze2"
build-and-test-msvc:
runs-on: windows-latest
steps:
- uses: actions/checkout@v3
- name: Configure MSVC with glaze 3.1 support
run: cmake -B ${{github.workspace}}/build/msvc -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER=clang++-18 -DSIMPLE_ENUM_USE_GLAZE_2=OFF -DSIMPLE_ENUM_USE_GLAZE_3_1=ON
- name: Build MSVC with glaze 3.1 support
run: cmake --build ${{github.workspace}}/build/msvc
- name: Test MSVC with glaze 3.1 support
working-directory: ${{github.workspace}}/build/msvc
run: ctest -C Debug