2323 LLVM_VERSION : 21
2424
2525jobs :
26- tail-call :
26+ windows :
2727 name : ${{ matrix.target }}
2828 runs-on : ${{ matrix.runner }}
2929 timeout-minutes : 90
@@ -41,34 +41,14 @@ jobs:
4141 runner : windows-2025-vs2026
4242 build_flags : --disable-gil
4343 run_tests : false
44- - target : x86_64-apple-darwin/clang
45- architecture : x86_64
46- runner : macos-15-intel
47- - target : aarch64-apple-darwin/clang
48- architecture : aarch64
49- runner : macos-14
50- - target : x86_64-unknown-linux-gnu/gcc
51- architecture : x86_64
52- runner : ubuntu-24.04
53- configure_flags : --with-pydebug
54- - target : x86_64-unknown-linux-gnu/gcc-free-threading
55- architecture : x86_64
56- runner : ubuntu-24.04
57- configure_flags : --disable-gil
58- - target : aarch64-unknown-linux-gnu/gcc
59- architecture : aarch64
60- runner : ubuntu-24.04-arm
61- configure_flags : --with-pydebug
6244 steps :
6345 - uses : actions/checkout@v6
6446 with :
6547 persist-credentials : false
6648 - uses : actions/setup-python@v6
6749 with :
6850 python-version : ' 3.11'
69-
70- - name : Native Windows MSVC (release)
71- if : runner.os == 'Windows'
51+ - name : Build and test
7252 shell : pwsh
7353 run : |
7454 $env:PlatformToolset = "v145"
7757 ./PCbuild/rt.bat -p ${{ matrix.architecture }} -q --multiprocess 0 --timeout 4500 --verbose2 --verbose3
7858 }
7959
80- - name : Native macOS (release)
81- if : runner.os == 'macOS'
60+ macos :
61+ name : ${{ matrix.target }}
62+ runs-on : ${{ matrix.runner }}
63+ timeout-minutes : 90
64+ strategy :
65+ fail-fast : false
66+ matrix :
67+ include :
68+ - target : x86_64-apple-darwin/clang
69+ runner : macos-15-intel
70+ - target : aarch64-apple-darwin/clang
71+ runner : macos-14
72+ steps :
73+ - uses : actions/checkout@v6
74+ with :
75+ persist-credentials : false
76+ - uses : actions/setup-python@v6
77+ with :
78+ python-version : ' 3.11'
79+ - name : Build and test
8280 run : |
8381 brew update
8482 brew install llvm@${{ env.LLVM_VERSION }}
8987 make all --jobs 4
9088 ./python.exe -m test --multiprocess 0 --timeout 4500 --verbose2 --verbose3
9189
92- - name : Native Linux
93- if : runner.os == 'Linux'
90+ linux :
91+ name : ${{ matrix.target }}
92+ runs-on : ${{ matrix.runner }}
93+ timeout-minutes : 90
94+ strategy :
95+ fail-fast : false
96+ matrix :
97+ include :
98+ - target : x86_64-unknown-linux-gnu/gcc
99+ runner : ubuntu-24.04
100+ configure_flags : --with-pydebug
101+ - target : x86_64-unknown-linux-gnu/gcc-free-threading
102+ runner : ubuntu-24.04
103+ configure_flags : --disable-gil
104+ - target : aarch64-unknown-linux-gnu/gcc
105+ runner : ubuntu-24.04-arm
106+ configure_flags : --with-pydebug
107+ steps :
108+ - uses : actions/checkout@v6
109+ with :
110+ persist-credentials : false
111+ - uses : actions/setup-python@v6
112+ with :
113+ python-version : ' 3.11'
114+ - name : Build and test
94115 run : |
95116 sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)" ./llvm.sh ${{ env.LLVM_VERSION }}
96117 export PATH="$(llvm-config-${{ env.LLVM_VERSION }} --bindir):$PATH"
0 commit comments