@@ -113,15 +113,13 @@ jobs:
113113 cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
114114 steps :
115115 - uses : actions/checkout@v4
116- - name : setup SDK
117- shell : powershell
118- run : ci/install-sdk.ps1
116+ - uses : git-for-windows/setup-git-for-windows-sdk@v1
119117 - name : build
120- shell : powershell
118+ shell : bash
121119 env :
122120 HOME : ${{runner.workspace}}
123121 NO_PERL : 1
124- run : git-sdk/usr/bin/bash.exe -l -c ' ci/make-test-artifacts.sh artifacts'
122+ run : . /etc/profile && ci/make-test-artifacts.sh artifacts
125123 - name : zip up tracked files
126124 run : git archive -o artifacts/tracked.tar.gz HEAD
127125 - name : upload tracked files and build artifacts
@@ -149,12 +147,10 @@ jobs:
149147 - name : extract tracked files and build artifacts
150148 shell : bash
151149 run : tar xf artifacts.tar.gz && tar xf tracked.tar.gz
152- - name : setup SDK
153- shell : powershell
154- run : ci/install-sdk.ps1
150+ - uses : git-for-windows/setup-git-for-windows-sdk@v1
155151 - name : test
156- shell : powershell
157- run : git-sdk/usr/bin/bash.exe -l -c ' ci/run-test-slice.sh ${{matrix.nr}} 10'
152+ shell : bash
153+ run : . /etc/profile && ci/run-test-slice.sh ${{matrix.nr}} 10
158154 - name : print test failures
159155 if : failure() && env.FAILED_TEST_ARTIFACTS != ''
160156 shell : bash
@@ -252,6 +248,58 @@ jobs:
252248 with :
253249 name : failed-tests-windows-vs-${{ matrix.nr }}
254250 path : ${{env.FAILED_TEST_ARTIFACTS}}
251+
252+ windows-meson-build :
253+ name : win+Meson build
254+ needs : ci-config
255+ if : needs.ci-config.outputs.enabled == 'yes'
256+ runs-on : windows-latest
257+ concurrency :
258+ group : windows-meson-build-${{ github.ref }}
259+ cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
260+ steps :
261+ - uses : actions/checkout@v4
262+ - uses : actions/setup-python@v5
263+ - name : Set up dependencies
264+ shell : pwsh
265+ run : pip install meson ninja
266+ - name : Setup
267+ shell : pwsh
268+ run : meson setup build -Dperl=disabled
269+ - name : Compile
270+ shell : pwsh
271+ run : meson compile -C build
272+ - name : Upload build artifacts
273+ uses : actions/upload-artifact@v4
274+ with :
275+ name : windows-meson-artifacts
276+ path : build
277+ windows-meson-test :
278+ name : win+Meson test
279+ runs-on : windows-latest
280+ needs : [ci-config, windows-meson-build]
281+ strategy :
282+ fail-fast : false
283+ matrix :
284+ nr : [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
285+ concurrency :
286+ group : windows-meson-test-${{ matrix.nr }}-${{ github.ref }}
287+ cancel-in-progress : ${{ needs.ci-config.outputs.skip_concurrent == 'yes' }}
288+ steps :
289+ - uses : actions/checkout@v4
290+ - uses : actions/setup-python@v5
291+ - name : Set up dependencies
292+ shell : pwsh
293+ run : pip install meson ninja
294+ - name : Download build artifacts
295+ uses : actions/download-artifact@v4
296+ with :
297+ name : windows-meson-artifacts
298+ path : build
299+ - name : Test
300+ shell : pwsh
301+ run : meson test -C build --list | Select-Object -Skip 1 | Select-String .* | Group-Object -Property { $_.LineNumber % 10 } | Where-Object Name -EQ ${{ matrix.nr }} | ForEach-Object { meson test -C build --no-rebuild --print-errorlogs $_.Group }
302+
255303 regular :
256304 name : ${{matrix.vector.jobname}} (${{matrix.vector.pool}})
257305 needs : ci-config
@@ -269,9 +317,8 @@ jobs:
269317 - jobname : linux-reftable
270318 cc : clang
271319 pool : ubuntu-latest
272- - jobname : linux-gcc
320+ - jobname : linux-breaking-changes
273321 cc : gcc
274- cc_package : gcc-8
275322 pool : ubuntu-20.04
276323 - jobname : linux-TEST-vars
277324 cc : gcc
@@ -286,9 +333,9 @@ jobs:
286333 - jobname : osx-gcc
287334 cc : gcc-13
288335 pool : macos-13
289- - jobname : linux-gcc-default
290- cc : gcc
291- pool : ubuntu-latest
336+ - jobname : osx-meson
337+ cc : clang
338+ pool : macos-13
292339 - jobname : linux-leaks
293340 cc : gcc
294341 pool : ubuntu-latest
@@ -298,11 +345,15 @@ jobs:
298345 - jobname : linux-asan-ubsan
299346 cc : clang
300347 pool : ubuntu-latest
348+ - jobname : linux-meson
349+ cc : gcc
350+ pool : ubuntu-latest
301351 env :
302352 CC : ${{matrix.vector.cc}}
303353 CC_PACKAGE : ${{matrix.vector.cc_package}}
304354 jobname : ${{matrix.vector.jobname}}
305355 distro : ${{matrix.vector.pool}}
356+ TEST_OUTPUT_DIRECTORY : ${{github.workspace}}/t
306357 runs-on : ${{matrix.vector.pool}}
307358 steps :
308359 - uses : actions/checkout@v4
@@ -342,12 +393,21 @@ jobs:
342393 - jobname : linux-musl
343394 image : alpine
344395 distro : alpine-latest
396+ # Supported until 2025-04-02.
345397 - jobname : linux32
346398 image : i386/ubuntu:focal
347399 distro : ubuntu32-20.04
348400 - jobname : pedantic
349401 image : fedora
350402 distro : fedora-latest
403+ # A RHEL 8 compatible distro. Supported until 2029-05-31.
404+ - jobname : almalinux-8
405+ image : almalinux:8
406+ distro : almalinux-8
407+ # Supported until 2026-08-31.
408+ - jobname : debian-11
409+ image : debian:11
410+ distro : debian-11
351411 env :
352412 jobname : ${{matrix.vector.jobname}}
353413 distro : ${{matrix.vector.distro}}
0 commit comments