Skip to content

Commit ced1cc7

Browse files
fix: only run jobs in release & use gcc 14 for C++23 support
1 parent 555270e commit ced1cc7

File tree

1 file changed

+14
-11
lines changed

1 file changed

+14
-11
lines changed

.github/workflows/ci.yml

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,6 @@ jobs:
1212
strategy:
1313
matrix:
1414
compiler: [gcc, clang]
15-
build_type: [Debug, Release]
1615

1716
steps:
1817
- uses: actions/checkout@v4
@@ -22,29 +21,33 @@ jobs:
2221
sudo apt-get update
2322
sudo apt-get install -y cmake ninja-build
2423
24+
- name: Install GCC 14 (for C++23 support)
25+
if: matrix.compiler == 'gcc'
26+
run: |
27+
sudo add-apt-repository ppa:ubuntu-toolchain-r/test -y
28+
sudo apt-get update
29+
sudo apt-get install -y gcc-14 g++-14
30+
2531
- name: Configure CMake
2632
run: |
2733
if [ "${{ matrix.compiler }}" = "gcc" ]; then
28-
export CC=gcc CXX=g++
34+
export CC=gcc-14 CXX=g++-14
2935
else
3036
export CC=clang CXX=clang++
3137
fi
32-
cmake -B build -S . -DCMAKE_BUILD_TYPE=${{ matrix.build_type }} -G Ninja
38+
cmake -B build -S . -DCMAKE_BUILD_TYPE=Release -G Ninja
3339
3440
- name: Build
35-
run: cmake --build build --config ${{ matrix.build_type }}
41+
run: cmake --build build --config Release
3642

3743
- name: Run tests
38-
run: cd build && ctest --output-on-failure -C ${{ matrix.build_type }}
44+
run: cd build && ctest --output-on-failure -C Release
3945

4046
- name: Run benchmarks (quick)
4147
run: ./build/benchmarks/hello_world_benchmark --benchmark_min_time=0.1s
4248

4349
build-macos:
4450
runs-on: macos-latest
45-
strategy:
46-
matrix:
47-
build_type: [Debug, Release]
4851

4952
steps:
5053
- uses: actions/checkout@v4
@@ -57,16 +60,16 @@ jobs:
5760
run: |
5861
export PATH="/opt/homebrew/opt/llvm/bin:$PATH"
5962
cmake -B build -S . \
60-
-DCMAKE_BUILD_TYPE=${{ matrix.build_type }} \
63+
-DCMAKE_BUILD_TYPE=Release \
6164
-DCMAKE_C_COMPILER=/opt/homebrew/opt/llvm/bin/clang \
6265
-DCMAKE_CXX_COMPILER=/opt/homebrew/opt/llvm/bin/clang++ \
6366
-G Ninja
6467
6568
- name: Build
66-
run: cmake --build build --config ${{ matrix.build_type }}
69+
run: cmake --build build --config Release
6770

6871
- name: Run tests
69-
run: cd build && ctest --output-on-failure -C ${{ matrix.build_type }}
72+
run: cd build && ctest --output-on-failure -C Release
7073

7174
- name: Run benchmarks (quick)
7275
run: ./build/benchmarks/hello_world_benchmark --benchmark_min_time=0.1s

0 commit comments

Comments
 (0)