Skip to content

Commit 90768c2

Browse files
committed
More simplify
1 parent 665544c commit 90768c2

File tree

1 file changed

+58
-37
lines changed

1 file changed

+58
-37
lines changed

.github/workflows/actions-ci.yml

Lines changed: 58 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -251,81 +251,102 @@ jobs:
251251
matrix:
252252
fips: [0, 1]
253253
compiler:
254-
- ['gcc9', 1, 'gcc', 'g++']
255-
- ['gcc10', 1, 'gcc', 'g++']
256-
- ['gcc11', 1, 'gcc', 'g++']
257-
- ['gcc12', 1, 'gcc', 'g++']
258-
- ['gcc13', 1, 'gcc', 'g++']
259-
- ['gcc14', 0, 'gcc', 'g++']
260-
- ['gcc15', 0, 'gcc', 'g++']
261-
- ['gcc16', 0, 'gcc', 'g++']
262-
- ['clang14', 1, 'clang', 'clang++']
263-
- ['clang15', 1, 'clang', 'clang++']
264-
- ['clang16', 1, 'clang', 'clang++']
265-
- ['clang17', 1, 'clang', 'clang++']
266-
- ['clang18', 1, 'clang', 'clang++']
267-
- ['clang19', 1, 'clang', 'clang++']
268-
- ['clang20', 1, 'clang', 'clang++']
269-
- ['clang21', 1, 'clang', 'clang++']
254+
- 'gcc9'
255+
- 'gcc10'
256+
- 'gcc11'
257+
- 'gcc12'
258+
- 'gcc13'
259+
- 'gcc14'
260+
- 'gcc15'
261+
- 'gcc16'
262+
- 'clang14'
263+
- 'clang15'
264+
- 'clang16'
265+
- 'clang17'
266+
- 'clang18'
267+
- 'clang19'
268+
- 'clang20'
269+
- 'clang21'
270+
exclude:
271+
- fips: 1
272+
compiler: 'gcc14'
273+
- fips: 1
274+
compiler: 'gcc15'
275+
- fips: 1
276+
compiler: 'gcc16'
270277
runs-on: ubuntu-latest
271278
container:
272-
image: ghcr.io/mattkretz/cplusplus-ci/${{ matrix.compiler[0] }}
279+
image: ghcr.io/mattkretz/cplusplus-ci/${{ matrix.compiler }}
273280
steps:
274281
- uses: actions/checkout@v4
275-
if: matrix.fips == 0 || matrix.compiler[1] == 1
276282
- uses: actions/setup-go@v4
277-
if: matrix.fips == 0 || matrix.compiler[1] == 1
278283
with:
279284
go-version: '>=1.18'
285+
- name: Setup Clang
286+
if: startsWith('clang', matrix.compiler)
287+
run: |
288+
echo "CC=clang" >> $GITHUB_ENV
289+
echo "CXX=clang++" >> $GITHUB_ENV
290+
- name: Setup GCC
291+
if: startsWith('gcc', matrix.compiler)
292+
run: |
293+
echo "CC=gcc" >> $GITHUB_ENV
294+
echo "CXX=g++" >> $GITHUB_ENV
280295
- name: Setup Build
281296
if: matrix.fips == 0
282297
run:
283-
cmake -G Ninja -B ./build -DCMAKE_C_COMPILER=${{ matrix.compiler[2] }} -DCMAKE_CXX_COMPILER=${{ matrix.compiler[3] }} -DCMAKE_BUILD_TYPE=Release
298+
cmake -G Ninja -B ./build -DCMAKE_BUILD_TYPE=Release
284299
- name: Setup FIPS Build
285-
if: matrix.fips == 1 && matrix.compiler[1] == 1
300+
if: matrix.fips == 1
286301
run:
287-
cmake -G Ninja -B ./build -DCMAKE_C_COMPILER=${{ matrix.compiler[2] }} -DCMAKE_CXX_COMPILER=${{ matrix.compiler[3] }} -DCMAKE_BUILD_TYPE=Release -DFIPS=1
302+
cmake -G Ninja -B ./build -DCMAKE_BUILD_TYPE=Release -DFIPS=1
288303
- name: Build Project
289-
if: matrix.fips == 0 || matrix.compiler[1] == 1
290304
run: cmake --build ./build --target all
291305
- name: Run tests
292-
if: matrix.fips == 0 || matrix.compiler[1] == 1
293306
run: cmake --build ./build --target run_tests
294307

295308
pedantic-tests:
296309
env:
297-
CC: gcc
298-
CXX: g++
310+
GOFLAGS: "-buildvcs=false"
299311
strategy:
300312
fail-fast: false
301313
matrix:
302-
fips: [ 0, 1 ]
314+
fips: [0, 1]
303315
compiler:
304-
- [ 'gcc15', 0, 'gcc', 'g++' ]
305-
- [ 'clang20', 1, 'clang', 'clang++' ]
316+
- 'gcc15'
317+
- 'clang20'
318+
exclude:
319+
- fips: 1
320+
compiler: 'gcc15'
306321
runs-on: ubuntu-latest
307322
container:
308-
image: ghcr.io/mattkretz/cplusplus-ci/${{ matrix.compiler[0] }}
323+
image: ghcr.io/mattkretz/cplusplus-ci/${{ matrix.compiler }}
309324
steps:
310325
- uses: actions/checkout@v4
311-
if: matrix.fips == 0 || matrix.compiler[1] == 1
312326
- uses: actions/setup-go@v4
313-
if: matrix.fips == 0 || matrix.compiler[1] == 1
314327
with:
315328
go-version: '>=1.18'
329+
- name: Setup Clang
330+
if: startsWith(matrix.compiler, 'clang')
331+
run: |
332+
echo "CC=clang" >> $GITHUB_ENV
333+
echo "CXX=clang++" >> $GITHUB_ENV
334+
- name: Setup GCC
335+
if: startsWith(matrix.compiler, 'gcc')
336+
run: |
337+
echo "CC=gcc" >> $GITHUB_ENV
338+
echo "CXX=g++" >> $GITHUB_ENV
316339
- name: Setup Build
317340
if: matrix.fips == 0
318341
run:
319-
cmake -G Ninja -B ./build -DCMAKE_C_COMPILER=${{ matrix.compiler[2] }} -DCMAKE_CXX_COMPILER=${{ matrix.compiler[3] }} -DCMAKE_BUILD_TYPE=Release CMAKE_C_FLAGS=-pedantic CMAKE_CXX_FLAGS=-pedantic
342+
cmake -G Ninja -B ./build -DCMAKE_BUILD_TYPE=Release CMAKE_C_FLAGS=-pedantic CMAKE_CXX_FLAGS=-pedantic
320343
- name: Setup FIPS Build
321-
if: matrix.fips == 1 && matrix.compiler[1] == 1
344+
if: matrix.fips == 1
322345
run:
323-
cmake -G Ninja -B ./build -DCMAKE_C_COMPILER=${{ matrix.compiler[2] }} -DCMAKE_CXX_COMPILER=${{ matrix.compiler[3] }} -DCMAKE_BUILD_TYPE=Release CMAKE_C_FLAGS=-pedantic CMAKE_CXX_FLAGS=-pedantic -DFIPS=1
346+
cmake -G Ninja -B ./build -DCMAKE_BUILD_TYPE=Release -DFIPS=1 CMAKE_C_FLAGS=-pedantic CMAKE_CXX_FLAGS=-pedantic
324347
- name: Build Project
325-
if: matrix.fips == 0 || matrix.compiler[1] == 1
326348
run: cmake --build ./build --target all
327349
- name: Run tests
328-
if: matrix.fips == 0 || matrix.compiler[1] == 1
329350
run: cmake --build ./build --target run_tests
330351

331352
OpenBSD:

0 commit comments

Comments
 (0)