@@ -3,15 +3,13 @@ name: libunifex CI
33# Trigger on pushes to all branches and for all pull-requests
44on : [push, pull_request]
55
6- env :
7- CMAKE_VERSION : 3.16.2
8- NINJA_VERSION : 1.9.0
9-
10-
116jobs :
127 build :
138 name : ${{ matrix.config.name }}
149 runs-on : ${{ matrix.config.os }}
10+ env :
11+ CMAKE_VERSION : ${{ matrix.config.cmake_version || '3.16.2' }}
12+ NINJA_VERSION : ${{ matrix.config.ninja_version || '1.9.0' }}
1513 strategy :
1614 fail-fast : false
1715 matrix :
@@ -152,6 +150,33 @@ jobs:
152150 cc : " gcc-14" , cxx: "g++-14",
153151 cmake_args : " -D CMAKE_CXX_STANDARD:STRING=20 -D CMAKE_CXX_FLAGS=-fno-exceptions"
154152 }
153+ - {
154+ name : " Linux GCC 14 Debug (C++23)" , artifact: "Linux.tar.xz",
155+ os : ubuntu-24.04,
156+ io_sys : io_uring,
157+ build_type : Debug,
158+ cc : " gcc-14" , cxx: "g++-14",
159+ cmake_version : " 3.20.0" ,
160+ cmake_args : " -D CMAKE_CXX_STANDARD:STRING=23"
161+ }
162+ - {
163+ name : " Linux GCC 14 Optimised (C++23)" , artifact: "Linux.tar.xz",
164+ os : ubuntu-24.04,
165+ io_sys : io_uring,
166+ build_type : RelWithDebInfo,
167+ cc : " gcc-14" , cxx: "g++-14",
168+ cmake_version : " 3.20.0" ,
169+ cmake_args : " -D CMAKE_CXX_STANDARD:STRING=23"
170+ }
171+ - {
172+ name : " Linux GCC 14 Optimised noexcept (C++23)" , artifact: "Linux.tar.xz",
173+ os : ubuntu-24.04,
174+ io_sys : io_uring,
175+ build_type : RelWithDebInfo,
176+ cc : " gcc-14" , cxx: "g++-14",
177+ cmake_version : " 3.20.0" ,
178+ cmake_args : " -D CMAKE_CXX_STANDARD:STRING=23 -D CMAKE_CXX_FLAGS=-fno-exceptions"
179+ }
155180 - {
156181 name : " Linux Clang 15 Debug (C++17)" , artifact: "Linux.tar.xz",
157182 os : ubuntu-22.04,
@@ -414,7 +439,11 @@ jobs:
414439 elseif ("${{ runner.os }}" STREQUAL "Linux")
415440 set(ninja_suffix "linux.zip")
416441 set(cmake_suffix "Linux-x86_64.tar.gz")
417- set(cmake_dir "cmake-${cmake_version}-Linux-x86_64/bin")
442+ if(cmake_version VERSION_GREATER_EQUAL 3.20.0)
443+ set(cmake_dir "cmake-${cmake_version}-linux-x86_64/bin")
444+ else()
445+ set(cmake_dir "cmake-${cmake_version}-Linux-x86_64/bin")
446+ endif()
418447 elseif ("${{ runner.os }}" STREQUAL "macOS")
419448 set(ninja_suffix "mac.zip")
420449 set(cmake_suffix "Darwin-x86_64.tar.gz")
0 commit comments