Skip to content

Commit 4fc38ac

Browse files
committed
Generate build matrix and extend builds for better CI coverage
1 parent 3a26a66 commit 4fc38ac

File tree

8 files changed

+593
-350
lines changed

8 files changed

+593
-350
lines changed

.github/compilers.json

Lines changed: 173 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,173 @@
1+
{
2+
"gcc": [
3+
{
4+
"version": "12",
5+
"cxxstd": "20",
6+
"latest_cxxstd": "20",
7+
"runs_on": "ubuntu-24.04",
8+
"container": "ubuntu:22.04",
9+
"cxx": "g++-12",
10+
"cc": "gcc-12",
11+
"b2_toolset": "gcc"
12+
},
13+
{
14+
"version": "13",
15+
"cxxstd": "20,23",
16+
"latest_cxxstd": "23",
17+
"runs_on": "ubuntu-24.04",
18+
"cxx": "g++-13",
19+
"cc": "gcc-13",
20+
"b2_toolset": "gcc",
21+
"arm": true
22+
},
23+
{
24+
"version": "14",
25+
"cxxstd": "20,23",
26+
"latest_cxxstd": "23",
27+
"runs_on": "ubuntu-24.04",
28+
"cxx": "g++-14",
29+
"cc": "gcc-14",
30+
"b2_toolset": "gcc",
31+
"arm": true
32+
},
33+
{
34+
"version": "15",
35+
"cxxstd": "20,23",
36+
"latest_cxxstd": "23",
37+
"runs_on": "ubuntu-24.04",
38+
"container": "ubuntu:25.04",
39+
"cxx": "g++-15",
40+
"cc": "gcc-15",
41+
"b2_toolset": "gcc",
42+
"is_latest": true,
43+
"coverage": true
44+
}
45+
],
46+
"clang": [
47+
{
48+
"version": "17",
49+
"cxxstd": "20",
50+
"latest_cxxstd": "20",
51+
"runs_on": "ubuntu-24.04",
52+
"cxx": "clang++-17",
53+
"cc": "clang-17",
54+
"b2_toolset": "clang",
55+
"arm": true
56+
},
57+
{
58+
"version": "18",
59+
"cxxstd": "20,23",
60+
"latest_cxxstd": "23",
61+
"runs_on": "ubuntu-24.04",
62+
"cxx": "clang++-18",
63+
"cc": "clang-18",
64+
"b2_toolset": "clang",
65+
"arm": true
66+
},
67+
{
68+
"version": "19",
69+
"cxxstd": "20,23",
70+
"latest_cxxstd": "23",
71+
"runs_on": "ubuntu-24.04",
72+
"cxx": "clang++-19",
73+
"cc": "clang-19",
74+
"b2_toolset": "clang",
75+
"arm": true
76+
},
77+
{
78+
"version": "20",
79+
"cxxstd": "20,23",
80+
"latest_cxxstd": "23",
81+
"runs_on": "ubuntu-24.04",
82+
"container": "ubuntu:24.04",
83+
"cxx": "clang++-20",
84+
"cc": "clang-20",
85+
"b2_toolset": "clang",
86+
"arm": true,
87+
"is_latest": true,
88+
"clang_tidy": true
89+
}
90+
],
91+
"msvc": [
92+
{
93+
"version": "14.34",
94+
"cxxstd": "20",
95+
"latest_cxxstd": "20",
96+
"runs_on": "windows-2022",
97+
"b2_toolset": "msvc-14.3",
98+
"generator": "Visual Studio 17 2022"
99+
},
100+
{
101+
"version": "14.42",
102+
"cxxstd": "20",
103+
"latest_cxxstd": "20",
104+
"runs_on": "windows-2025",
105+
"b2_toolset": "msvc-14.4",
106+
"generator": "Visual Studio 17 2022",
107+
"is_latest": true
108+
}
109+
],
110+
"clang-cl": [
111+
{
112+
"version": "*",
113+
"cxxstd": "20",
114+
"latest_cxxstd": "20",
115+
"runs_on": "windows-2022",
116+
"cxx": "clang++-cl",
117+
"cc": "clang-cl",
118+
"b2_toolset": "clang-win",
119+
"generator": "Visual Studio 17 2022",
120+
"generator_toolset": "ClangCL",
121+
"build_cmake": false,
122+
"is_latest": true
123+
}
124+
],
125+
"apple-clang": [
126+
{
127+
"version": "*",
128+
"cxxstd": "20,23",
129+
"latest_cxxstd": "23",
130+
"runs_on": "macos-14",
131+
"cxx": "clang++",
132+
"cc": "clang",
133+
"b2_toolset": "clang"
134+
},
135+
{
136+
"version": "*",
137+
"cxxstd": "20,23",
138+
"latest_cxxstd": "23",
139+
"runs_on": "macos-15",
140+
"cxx": "clang++",
141+
"cc": "clang",
142+
"b2_toolset": "clang"
143+
},
144+
{
145+
"version": "*",
146+
"cxxstd": "20,23",
147+
"latest_cxxstd": "23",
148+
"runs_on": "macos-26",
149+
"cxx": "clang++",
150+
"cc": "clang",
151+
"b2_toolset": "clang",
152+
"is_latest": true,
153+
"coverage": true
154+
}
155+
],
156+
"mingw": [
157+
{
158+
"version": "*",
159+
"cxxstd": "20",
160+
"latest_cxxstd": "20",
161+
"cxx": "g++",
162+
"cc": "gcc",
163+
"runs_on": "windows-2022",
164+
"b2_toolset": "gcc",
165+
"generator": "MinGW Makefiles",
166+
"shared": false,
167+
"is_latest": true,
168+
"is_earliest": true,
169+
"coverage": true,
170+
"vcpkg_triplet": "x64-mingw-static"
171+
}
172+
]
173+
}

0 commit comments

Comments
 (0)