@@ -264,32 +264,36 @@ jobs:
264264 build-tier3 :
265265 name : Tier 3 Build
266266 runs-on : ubuntu-latest
267+ strategy :
268+ matrix :
269+ # Supported tier 3 targets without libstd support
270+ target : [
271+ x86_64-unknown-hermit,
272+ x86_64-wrs-vxworks,
273+ aarch64-kmc-solid_asp3,
274+ armv6k-nintendo-3ds,
275+ riscv32imc-esp-espidf,
276+ ]
277+ include :
278+ # Supported tier 3 targets without libstd support
279+ - target : x86_64-unknown-openbsd
280+ features : ["std"]
281+ - target : x86_64-unknown-dragonfly
282+ features : ["std"]
283+ - target : x86_64-unknown-haiku
284+ features : ["std"]
285+ # Unsupported tier 3 targets to test the rdrand feature
286+ - target : x86_64-unknown-uefi
287+ features : ["rdrand"]
288+ - target : x86_64-unknown-l4re-uclibc
289+ features : ["rdrand"]
267290 steps :
268291 - uses : actions/checkout@v3
269292 - uses : dtolnay/rust-toolchain@nightly # Required to build libcore
270293 with :
271294 components : rust-src
272295 - uses : Swatinem/rust-cache@v2
273- - name : Hermit (x86-64 only)
274- run : cargo build -Z build-std=core --target=x86_64-unknown-hermit
275- - name : UEFI (RDRAND)
276- run : cargo build -Z build-std=core --features=rdrand --target=x86_64-unknown-uefi
277- - name : L4Re (RDRAND)
278- run : cargo build -Z build-std=core --features=rdrand --target=x86_64-unknown-l4re-uclibc
279- - name : VxWorks
280- run : cargo build -Z build-std=core --target=x86_64-wrs-vxworks
281- - name : SOLID
282- run : cargo build -Z build-std=core --target=aarch64-kmc-solid_asp3
283- - name : Nintendo 3DS
284- run : cargo build -Z build-std=core --target=armv6k-nintendo-3ds
285- - name : RISC-V ESP-IDF
286- run : cargo build -Z build-std=core --target=riscv32imc-esp-espidf
287- - name : OpenBSD
288- run : cargo build -Z build-std=std --target=x86_64-unknown-openbsd --features=std
289- - name : Dragonfly BSD
290- run : cargo build -Z build-std=std --target=x86_64-unknown-dragonfly --features=std
291- - name : Haiku OS
292- run : cargo build -Z build-std=std --target=x86_64-unknown-haiku --features=std
296+ - run : cargo build -Z build-std=${{ contains(matrix.features, 'std') && 'std' || 'core'}} --target=${{ matrix.target }} --features="${{ join(matrix.features, ',') }}"
293297
294298 clippy-fmt :
295299 name : Clippy + rustfmt
0 commit comments