1616 strategy :
1717 fail-fast : false
1818 matrix :
19- include :
19+ config :
20+ - variant : " debug,release"
21+ - name : No capture
22+ variant : " leaf_debug_capture0,leaf_release_capture0"
23+ - name : No diagnostics
24+ variant : " leaf_debug_diag0,leaf_release_diag0"
25+ - name : Embedded
26+ variant : " leaf_debug_embedded,leaf_release_embedded"
27+ - name : Single header
28+ variant : " leaf_debug_single_header,leaf_release_single_header"
29+ platform :
2030 - toolset : gcc-5
2131 cxxstd : " 11,14,1z"
2232 container : ubuntu:18.04
@@ -185,27 +195,29 @@ jobs:
185195 cxxstd : " 11,14,17,20,2b"
186196 os : macos-26
187197
188- runs-on : ${{matrix.os}}
198+ name : ${{matrix.platform.os}} / ${{matrix.platform.compiler || matrix.platform.toolset}}${{matrix.config.name && format(' / {0}', matrix.config.name) || ''}}
199+
200+ runs-on : ${{matrix.platform.os}}
189201
190202 container :
191- image : ${{matrix.container}}
203+ image : ${{matrix.platform. container}}
192204 volumes :
193205 - /node20217:/node20217:rw,rshared
194- - ${{ startsWith(matrix.container, 'ubuntu:1') && '/node20217:/__e/node20:ro,rshared' || ' ' }}
206+ - ${{ startsWith(matrix.platform. container, 'ubuntu:1') && '/node20217:/__e/node20:ro,rshared' || ' ' }}
195207
196208 defaults :
197209 run :
198210 shell : bash
199211
200212 steps :
201213 - name : Setup container environment
202- if : matrix.container
214+ if : matrix.platform. container
203215 run : |
204216 apt-get update
205217 apt-get -y install sudo python3 git g++ curl xz-utils
206218
207219 - name : Install nodejs20glibc2.17
208- if : ${{ startsWith( matrix.container, 'ubuntu:1' ) }}
220+ if : ${{ startsWith( matrix.platform. container, 'ubuntu:1' ) }}
209221 run : |
210222 curl -LO https://archives.boost.io/misc/node/node-v20.9.0-linux-x64-glibc-217.tar.xz
211223 tar -xf node-v20.9.0-linux-x64-glibc-217.tar.xz --strip-components 1 -C /node20217
@@ -214,10 +226,10 @@ jobs:
214226 - uses : actions/checkout@v4
215227
216228 - name : Install packages
217- if : matrix.install
229+ if : matrix.platform. install
218230 run : |
219231 sudo apt-get update
220- sudo apt-get -y install ${{matrix.install}}
232+ sudo apt-get -y install ${{matrix.platform. install}}
221233
222234 - name : Setup Boost
223235 run : |
@@ -242,9 +254,9 @@ jobs:
242254 ./b2 -d0 headers
243255
244256 - name : Create user-config.jam
245- if : matrix.compiler
257+ if : matrix.platform. compiler
246258 run : |
247- echo "using ${{matrix.toolset}} : : ${{matrix.compiler}} ;" > ~/user-config.jam
259+ echo "using ${{matrix.platform. toolset}} : : ${{matrix.platform .compiler}} ;" > ~/user-config.jam
248260
249261 - name : Generate headers
250262 run : |
@@ -254,13 +266,23 @@ jobs:
254266 - name : Run tests
255267 run : |
256268 cd ../boost-root
257- ./b2 -j3 libs/$LIBRARY/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} ${ADDRMD:+address-model=$ADDRMD} link=shared,static variant=debug,release,leaf_debug_capture0,leaf_release_capture0,leaf_debug_diag0,leaf_release_diag0,leaf_debug_embedded,leaf_release_embedded,leaf_debug_single_header,leaf_release_single_header
269+ ./b2 -j3 libs/$LIBRARY/test toolset=${{matrix.platform. toolset}} cxxstd=${{matrix.platform. cxxstd}} ${ADDRMD:+address-model=$ADDRMD} link=shared,static variant=${{matrix.config.variant}}
258270
259271 windows :
260272 strategy :
261273 fail-fast : false
262274 matrix :
263- include :
275+ config :
276+ - variant : " debug,release"
277+ - name : No capture
278+ variant : " leaf_debug_capture0,leaf_release_capture0"
279+ - name : No diagnostics
280+ variant : " leaf_debug_diag0,leaf_release_diag0"
281+ - name : Embedded
282+ variant : " leaf_debug_embedded,leaf_release_embedded"
283+ - name : Single header
284+ variant : " leaf_debug_single_header,leaf_release_single_header"
285+ platform :
264286 - toolset : msvc-14.3
265287 cxxstd : " 14,17,20,latest"
266288 addrmd : 32,64
@@ -274,7 +296,9 @@ jobs:
274296 addrmd : 64
275297 os : windows-2022
276298
277- runs-on : ${{matrix.os}}
299+ name : ${{matrix.platform.os}} / ${{matrix.platform.compiler || matrix.platform.toolset}}${{matrix.config.name && format(' / {0}', matrix.config.name) || ''}}
300+
301+ runs-on : ${{matrix.platform.os}}
278302
279303 steps :
280304 - uses : actions/checkout@v4
@@ -310,4 +334,4 @@ jobs:
310334 shell : cmd
311335 run : |
312336 cd ../boost-root
313- b2 -j3 libs/%LIBRARY%/test toolset=${{matrix.toolset}} cxxstd=${{matrix.cxxstd}} address-model=${{matrix.addrmd}} ${{matrix.embedmanifest}} variant=debug,release,leaf_debug_capture0,leaf_release_capture0,leaf_debug_diag0,leaf_release_diag0,leaf_debug_embedded,leaf_release_embedded,leaf_debug_single_header,leaf_release_single_header
337+ b2 -j3 libs/%LIBRARY%/test toolset=${{matrix.platform. toolset}} cxxstd=${{matrix.platform. cxxstd}} address-model=${{matrix.platform. addrmd}} variant= ${{matrix.config.variant}}
0 commit comments