Skip to content

Commit 8d0d90b

Browse files
committed
ci: run meson and cmake in one pass
1 parent 5033536 commit 8d0d90b

File tree

6 files changed

+2
-69
lines changed

6 files changed

+2
-69
lines changed

.github/workflows/bvt-appleclang.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,10 @@ on:
44
jobs:
55
bvt-appleclang:
66
runs-on: macos-15
7-
strategy:
8-
fail-fast: false
9-
matrix:
10-
buildsystem: [cmake, meson]
11-
127
steps:
138
- uses: actions/checkout@v4
149

1510
- name: install meson
16-
if: ${{ matrix.buildsystem == 'meson' }}
1711
run: pipx install meson
1812

1913
- name: check compiler versions
@@ -22,7 +16,6 @@ jobs:
2216
xcodebuild -version
2317
2418
- name: build and run test with AppleClang on cmake
25-
if: ${{ matrix.buildsystem == 'cmake' }}
2619
run: |
2720
cmake -B build -GNinja -DCMAKE_CXX_STANDARD=23 -DCMAKE_BUILD_TYPE=Release -DPROXY_BUILD_MODULES=FALSE
2821
cmake --build build -j
@@ -31,17 +24,14 @@ jobs:
3124
bash ./tools/dump_build_env.sh c++ build/drop/env-info.json
3225
3326
- name: build and run test with AppleClang on meson
34-
if: ${{ matrix.buildsystem == 'meson' }}
3527
run: |
3628
meson setup builddir --buildtype=release -Dtests=enabled
3729
meson test -C builddir
3830
3931
- name: run benchmarks
40-
if: ${{ matrix.buildsystem == 'cmake' }}
4132
run: build/benchmarks/msft_proxy_benchmarks --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build/drop/benchmarking-results.json
4233

4334
- name: archive benchmarking results
44-
if: ${{ matrix.buildsystem == 'cmake' }}
4535
uses: actions/upload-artifact@v4
4636
with:
4737
name: drop-appleclang

.github/workflows/bvt-clang.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,10 @@ on:
44
jobs:
55
bvt-clang:
66
runs-on: ubuntu-24.04
7-
strategy:
8-
fail-fast: false
9-
matrix:
10-
buildsystem: [cmake, meson]
11-
127
steps:
138
- uses: actions/checkout@v4
149

1510
- name: install meson
16-
if: ${{ matrix.buildsystem == 'meson' }}
1711
run: pipx install meson
1812

1913
- name: install clang
@@ -31,7 +25,6 @@ jobs:
3125
"$CXX" --version
3226
3327
- name: build and run test with clang 20 on cmake
34-
if: ${{ matrix.buildsystem == 'cmake' }}
3528
run: |
3629
cmake -B build -GNinja -DCMAKE_CXX_STANDARD=23 -DCMAKE_BUILD_TYPE=Release -DPROXY_BUILD_MODULES=TRUE
3730
mapfile -t FILES < <(find include tests benchmarks build/examples_from_docs tools -type f \( -name '*.h' -o -name '*.ixx' -o -name '*.cpp' \))
@@ -43,17 +36,14 @@ jobs:
4336
bash ./tools/dump_build_env.sh "$CXX" build/drop/env-info.json
4437
4538
- name: build and run test with clang 20 on meson
46-
if: ${{ matrix.buildsystem == 'meson' }}
4739
run: |
4840
meson setup builddir --buildtype=release -Dtests=enabled
4941
meson test -C builddir
5042
5143
- name: run benchmarks
52-
if: ${{ matrix.buildsystem == 'cmake' }}
5344
run: build/benchmarks/msft_proxy_benchmarks --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build/drop/benchmarking-results.json
5445

5546
- name: archive benchmarking results
56-
if: ${{ matrix.buildsystem == 'cmake' }}
5747
uses: actions/upload-artifact@v4
5848
with:
5949
name: drop-clang

.github/workflows/bvt-gcc.yml

Lines changed: 2 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,32 +5,19 @@ jobs:
55
bvt-gcc:
66
runs-on: ubuntu-24.04
77
container: gcc:15
8-
strategy:
9-
fail-fast: false
10-
matrix:
11-
buildsystem: [cmake, meson]
12-
138
steps:
149
- uses: actions/checkout@v4
1510

16-
- name: install cmake
17-
if: ${{ matrix.buildsystem == 'cmake' }}
18-
run: |
19-
apt-get update
20-
apt-get install -y cmake ninja-build
21-
22-
- name: install meson
23-
if: ${{ matrix.buildsystem == 'meson' }}
11+
- name: install cmake and meson
2412
run: |
2513
apt-get update
26-
apt-get install -y meson ninja-build
14+
apt-get install -y cmake meson ninja-build
2715
2816
- name: check compiler version
2917
run: |
3018
c++ --version
3119
3220
- name: build and run test with gcc 15 on cmake
33-
if: ${{ matrix.buildsystem == 'cmake' }}
3421
run: |
3522
cmake -B build -GNinja -DCMAKE_CXX_STANDARD=23 -DCMAKE_BUILD_TYPE=Release -DPROXY_BUILD_MODULES=TRUE
3623
cmake --build build -j
@@ -40,17 +27,14 @@ jobs:
4027
./tools/dump_build_env.sh c++ build/drop/env-info.json
4128
4229
- name: build and run test with gcc 15 on meson
43-
if: ${{ matrix.buildsystem == 'meson' }}
4430
run: |
4531
meson setup builddir --buildtype=release -Dtests=enabled
4632
meson test -C builddir
4733
4834
- name: run benchmarks
49-
if: ${{ matrix.buildsystem == 'cmake' }}
5035
run: build/benchmarks/msft_proxy_benchmarks --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build/drop/benchmarking-results.json
5136

5237
- name: archive benchmarking results
53-
if: ${{ matrix.buildsystem == 'cmake' }}
5438
uses: actions/upload-artifact@v4
5539
with:
5640
name: drop-gcc

.github/workflows/bvt-msvc.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,24 +4,16 @@ on:
44
jobs:
55
bvt-msvc:
66
runs-on: windows-2025
7-
strategy:
8-
fail-fast: false
9-
matrix:
10-
buildsystem: [cmake, meson]
11-
127
steps:
138
- uses: actions/checkout@v4
149

1510
- name: install meson
16-
if: ${{ matrix.buildsystem == 'meson' }}
1711
run: pipx install meson
1812

1913
- name: add cl.exe to PATH
20-
if: ${{ matrix.buildsystem == 'cmake' }}
2114
uses: ilammy/msvc-dev-cmd@v1
2215

2316
- name: build and run test with MSVC on cmake
24-
if: ${{ matrix.buildsystem == 'cmake' }}
2517
run: |
2618
cmake -B build -DCMAKE_CXX_STANDARD=23 -DPROXY_BUILD_MODULES=TRUE `
2719
&& cmake --build build --config Release -j `
@@ -30,17 +22,14 @@ jobs:
3022
&& .\tools\dump_build_env_msvc.ps1 -OutputPath build\drop\env-info.json
3123
3224
- name: build and run test with MSVC on meson
33-
if: ${{ matrix.buildsystem == 'meson' }}
3425
run: |
3526
meson setup builddir --buildtype=release -Dtests=enabled --vsenv
3627
meson test -C builddir
3728
3829
- name: run benchmarks
39-
if: ${{ matrix.buildsystem == 'cmake' }}
4030
run: build\benchmarks\Release\msft_proxy_benchmarks.exe --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build\drop\benchmarking-results.json
4131

4232
- name: archive benchmarking results
43-
if: ${{ matrix.buildsystem == 'cmake' }}
4433
uses: actions/upload-artifact@v4
4534
with:
4635
name: drop-msvc

.github/workflows/bvt-nvhpc.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,19 +4,13 @@ on:
44
jobs:
55
bvt-nvhpc:
66
runs-on: ubuntu-24.04
7-
strategy:
8-
fail-fast: false
9-
matrix:
10-
buildsystem: [cmake, meson]
11-
127
steps:
138
- uses: actions/checkout@v4
149

1510
- name: free disk space
1611
uses: jlumbroso/[email protected]
1712

1813
- name: install meson
19-
if: ${{ matrix.buildsystem == 'meson' }}
2014
# FIXME: install from upstream once https://github.com/mesonbuild/meson/pull/15353 is released
2115
run: pipx install git+https://github.com/mesonbuild/meson@ 02b85a846629090a0c7f18e860bab0a10ea4349b
2216

@@ -32,7 +26,6 @@ jobs:
3226
EOF
3327
3428
- name: build and run test with NVHPC 25.11 on cmake
35-
if: ${{ matrix.buildsystem == 'cmake' }}
3629
run: |
3730
cmake -B build -GNinja -DCMAKE_BUILD_TYPE=Release -DPROXY_BUILD_MODULES=FALSE
3831
cmake --build build -j
@@ -42,17 +35,14 @@ jobs:
4235
./tools/dump_build_env.sh "$CXX" build/drop/env-info.json
4336
4437
- name: build and run test with NVHPC 25.11 on meson
45-
if: ${{ matrix.buildsystem == 'meson' }}
4638
run: |
4739
meson setup builddir --buildtype=release -Dtests=enabled
4840
meson test -C builddir
4941
5042
- name: run benchmarks
51-
if: ${{ matrix.buildsystem == 'cmake' }}
5243
run: build/benchmarks/msft_proxy_benchmarks --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build/drop/benchmarking-results.json
5344

5445
- name: archive benchmarking results
55-
if: ${{ matrix.buildsystem == 'cmake' }}
5646
uses: actions/upload-artifact@v4
5747
with:
5848
name: drop-nvhpc

.github/workflows/bvt-oneapi.yml

Lines changed: 0 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4,16 +4,10 @@ on:
44
jobs:
55
bvt-oneapi:
66
runs-on: ubuntu-24.04
7-
strategy:
8-
fail-fast: false
9-
matrix:
10-
buildsystem: [cmake, meson]
11-
127
steps:
138
- uses: actions/checkout@v4
149

1510
- name: install meson
16-
if: ${{ matrix.buildsystem == 'meson' }}
1711
run: pipx install meson
1812

1913
- name: install libc++
@@ -42,7 +36,6 @@ jobs:
4236
"$CXX" --version
4337
4438
- name: build and run test with oneapi on cmake
45-
if: ${{ matrix.buildsystem == 'cmake' }}
4639
run: |
4740
cmake -B build -GNinja -DCMAKE_CXX_STANDARD=23 -DCMAKE_BUILD_TYPE=Release
4841
cmake --build build -j
@@ -51,17 +44,14 @@ jobs:
5144
bash ./tools/dump_build_env.sh "$CXX" build/drop/env-info.json
5245
5346
- name: build and run test with oneapi on meson
54-
if: ${{ matrix.buildsystem == 'meson' }}
5547
run: |
5648
meson setup builddir --buildtype=release -Dtests=enabled
5749
meson test -C builddir
5850
5951
- name: run benchmarks
60-
if: ${{ matrix.buildsystem == 'cmake' }}
6152
run: build/benchmarks/msft_proxy_benchmarks --benchmark_min_warmup_time=0.1 --benchmark_min_time=0.1s --benchmark_repetitions=30 --benchmark_enable_random_interleaving=true --benchmark_report_aggregates_only=true --benchmark_format=json > build/drop/benchmarking-results.json
6253

6354
- name: archive benchmarking results
64-
if: ${{ matrix.buildsystem == 'cmake' }}
6555
uses: actions/upload-artifact@v4
6656
with:
6757
name: drop-oneapi

0 commit comments

Comments
 (0)