Skip to content

Commit 650fac7

Browse files
committed
Added compilers to GitHub Actions CI, removed macos-12 job.
Added newer gcc and clang versions to GitHub Actions CI, reduced usage of external package repositories. Removed macos-12 job as the corresponding image has been removed from GitHub Actions.
1 parent 03f3395 commit 650fac7

File tree

1 file changed

+55
-38
lines changed

1 file changed

+55
-38
lines changed

.github/workflows/ci.yml

Lines changed: 55 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -82,32 +82,32 @@ jobs:
8282
- g++-10
8383
- toolset: gcc-11
8484
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
85-
os: ubuntu-20.04
85+
os: ubuntu-22.04
8686
install:
8787
- g++-11
88-
sources:
89-
- "ppa:ubuntu-toolchain-r/test"
9088
- toolset: gcc-12
9189
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
9290
os: ubuntu-22.04
9391
install:
9492
- g++-12
9593
- toolset: gcc-13
9694
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
97-
os: ubuntu-latest
98-
container: ubuntu:23.04
95+
os: ubuntu-24.04
9996
install:
10097
- g++-13
98+
- toolset: gcc-14
99+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu,26-gnu"
100+
os: ubuntu-24.04
101+
install:
102+
- g++-14
101103
- name: UBSAN
102-
toolset: gcc-11
103-
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu"
104+
toolset: gcc-13
105+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
104106
ubsan: 1
105107
build_variant: debug
106-
os: ubuntu-20.04
108+
os: ubuntu-24.04
107109
install:
108-
- g++-11
109-
sources:
110-
- "ppa:ubuntu-toolchain-r/test"
110+
- g++-13
111111

112112
# Linux, clang
113113
- toolset: clang
@@ -134,7 +134,7 @@ jobs:
134134
- toolset: clang
135135
compiler: clang++-3.8
136136
cxxstd: "11,14"
137-
os: ubuntu-20.04
137+
os: ubuntu-latest
138138
container: ubuntu:16.04
139139
install:
140140
- clang-3.8
@@ -201,6 +201,8 @@ jobs:
201201
os: ubuntu-22.04
202202
install:
203203
- clang-11
204+
- g++-11
205+
gcc_toolchain: 11
204206
# Note: clang-12 through 15 do not fully support C++23, so it is not compatible with libstdc++-13 in this mode
205207
- toolset: clang
206208
compiler: clang++-12
@@ -237,54 +239,64 @@ jobs:
237239
- toolset: clang
238240
compiler: clang++-16
239241
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,2b-gnu"
240-
os: ubuntu-22.04
242+
os: ubuntu-24.04
241243
install:
242244
- clang-16
243-
sources:
244-
- "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-16 main"
245-
source_keys:
246-
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
245+
- g++-11
246+
gcc_toolchain: 11
247247
- toolset: clang
248248
compiler: clang++-17
249249
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
250-
os: ubuntu-22.04
250+
os: ubuntu-24.04
251251
install:
252252
- clang-17
253+
- g++-11
254+
gcc_toolchain: 11
255+
- toolset: clang
256+
compiler: clang++-18
257+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu,26-gnu"
258+
os: ubuntu-24.04
259+
install:
260+
- clang-18
261+
- g++-13
262+
- toolset: clang
263+
compiler: clang++-19
264+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu,26-gnu"
265+
os: ubuntu-24.04
266+
install:
267+
- clang-19
253268
sources:
254-
- "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main"
269+
- "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main"
255270
source_keys:
256271
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
257272
- toolset: clang
258-
compiler: clang++-17
259-
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu"
260-
os: ubuntu-22.04
273+
compiler: clang++-19
274+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu,26-gnu"
275+
cxxflags: -stdlib=libc++
276+
linkflags: -stdlib=libc++
277+
os: ubuntu-24.04
261278
install:
262-
- clang-17
263-
- libc++-17-dev
264-
- libc++abi-17-dev
279+
- clang-19
280+
- libc++-19-dev
281+
- libc++abi-19-dev
265282
sources:
266-
- "deb http://apt.llvm.org/jammy/ llvm-toolchain-jammy-17 main"
283+
- "deb http://apt.llvm.org/noble/ llvm-toolchain-noble-19 main"
267284
source_keys:
268285
- "https://apt.llvm.org/llvm-snapshot.gpg.key"
269-
cxxflags: -stdlib=libc++
270-
linkflags: -stdlib=libc++
271286
- name: UBSAN
272287
toolset: clang
273-
compiler: clang++-15
274-
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,2b-gnu"
288+
compiler: clang++-18
289+
cxxstd: "11-gnu,14-gnu,17-gnu,20-gnu,23-gnu,26-gnu"
275290
cxxflags: -stdlib=libc++
276291
linkflags: "-stdlib=libc++ -lubsan"
277292
ubsan: 1
278293
build_variant: debug
279-
os: ubuntu-22.04
294+
os: ubuntu-24.04
280295
install:
281-
- clang-15
282-
- libc++-15-dev
283-
- libc++abi-15-dev
296+
- clang-18
297+
- libc++-18-dev
298+
- libc++abi-18-dev
284299

285-
- toolset: clang
286-
cxxstd: "11,14,17,20,2b"
287-
os: macos-12
288300
- toolset: clang
289301
cxxstd: "11,14,17,20,2b"
290302
os: macos-13
@@ -557,9 +569,13 @@ jobs:
557569
addrmd: 64
558570
os: windows-2019
559571

560-
- name: CMake tests
572+
- name: CMake MSVC tests
573+
cmake_tests: 1
574+
os: windows-2022
575+
- name: CMake MinGW-w64 tests
561576
cmake_tests: 1
562577
os: windows-2022
578+
cmake_generator: "MinGW Makefiles"
563579

564580
timeout-minutes: 15
565581
runs-on: ${{matrix.os}}
@@ -615,6 +631,7 @@ jobs:
615631
- name: Build CMake tests
616632
if: matrix.cmake_tests
617633
run: |
634+
if not "${{matrix.cmake_generator}}" == "" set "CMAKE_GENERATOR=${{matrix.cmake_generator}}"
618635
cd boost-root
619636
mkdir __build_static__
620637
cd __build_static__

0 commit comments

Comments
 (0)