Skip to content

Commit 9ae908f

Browse files
authored
Unrolled build for rust-lang#133867
Rollup merge of rust-lang#133867 - taiki-e:platform-support, r=Noratrieb Fix "std" support status of some tier 3 targets rust-lang#127265 marked targets with empty "std" support status as no-std targets in target-spec metadata: > * Where a targets 'std' or 'host tools' support is listed as '?' in the rust docs, these are left as 'None' with this PR. The corresponding changes in cargo will only reject an attempt to build std if the 'std' field is 'Some(false)'. In the case it is 'None', cargo will continue trying to build However, this is not accurate because "std" support status has a marker indicating that it is a no-std target. (empty status is just invalid.) https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-3 > The `std` column in the table below has the following meanings: > > * ✓ indicates the full standard library is available. > * \* indicates the target only supports [`no_std`] development. > * ? indicates the standard library support is unknown or a work-in-progress. > > [`no_std`]: https://rust-embedded.github.io/book/intro/no-std.html This PR fixes the status of targets whose "std" support status is currently set to empty and update target-spec metadata. The new status is set based on the following criteria: - Set to ✓ for targets that I regularly check in [rust-cross-toolchain](https://github.com/taiki-e/rust-cross-toolchain) that the `cargo test` works. (riscv32-unknown-linux-gnu,{riscv64,s390x}-unknown-linux-musl) - Targets where `cargo run` works but `cargo test` does not work tend to have incomplete std support (e.g., riscv32 musl taiki-e/rust-cross-toolchain@f3068b6), so I included them in the group below that means “work in progress” rather than in this group. - Set powerpc64le FreeBSD to ✓ on both std and host_tools, because the [Rust package](https://www.freshports.org/lang/rust/) is available. - Set to ? (which means "unknown" or “work in progress”) for all other affected targets because these are Linux, Android, FreeBSD, or Fuchsia, all of which are operating systems that support std if properly supported. r? Noratrieb cc ``@harmou01``
2 parents 0e98766 + e3638e2 commit 9ae908f

23 files changed

+31
-31
lines changed

compiler/rustc_target/src/spec/targets/armv4t_unknown_linux_gnueabi.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
description: Some("Armv4T Linux".into()),
88
tier: Some(3),
99
host_tools: Some(false),
10-
std: None, // ?
10+
std: Some(true),
1111
},
1212
pointer_width: 32,
1313
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/armv5te_unknown_linux_uclibceabi.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
description: Some("Armv5TE Linux with uClibc".into()),
88
tier: Some(3),
99
host_tools: Some(false),
10-
std: None, // ?
10+
std: Some(true),
1111
},
1212
pointer_width: 32,
1313
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/m68k_unknown_linux_gnu.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ pub(crate) fn target() -> Target {
1212
description: Some("Motorola 680x0 Linux".into()),
1313
tier: Some(3),
1414
host_tools: Some(false),
15-
std: None, // ?
15+
std: Some(true),
1616
},
1717
pointer_width: 32,
1818
data_layout: "E-m:e-p:32:16:32-i8:8:8-i16:16:16-i32:16:32-n8:16:32-a:0:16-S16".into(),

compiler/rustc_target/src/spec/targets/mips64_openwrt_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ pub(crate) fn target() -> Target {
1717
description: Some("MIPS64 for OpenWrt Linux musl 1.2.3".into()),
1818
tier: Some(3),
1919
host_tools: Some(false),
20-
std: None, // ?
20+
std: Some(true),
2121
},
2222
pointer_width: 64,
2323
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/mipsisa32r6_unknown_linux_gnu.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub(crate) fn target() -> Target {
88
description: Some("32-bit MIPS Release 6 Big Endian".into()),
99
tier: Some(3),
1010
host_tools: Some(false),
11-
std: None, // ?
11+
std: Some(true),
1212
},
1313
pointer_width: 32,
1414
data_layout: "E-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64".into(),

compiler/rustc_target/src/spec/targets/mipsisa32r6el_unknown_linux_gnu.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
description: Some("32-bit MIPS Release 6 Little Endian".into()),
88
tier: Some(3),
99
host_tools: Some(false),
10-
std: None, // ?
10+
std: Some(true),
1111
},
1212
pointer_width: 32,
1313
data_layout: "e-m:m-p:32:32-i8:8:32-i16:16:32-i64:64-n32-S64".into(),

compiler/rustc_target/src/spec/targets/mipsisa64r6_unknown_linux_gnuabi64.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ pub(crate) fn target() -> Target {
88
description: Some("64-bit MIPS Release 6 Big Endian".into()),
99
tier: Some(3),
1010
host_tools: Some(false),
11-
std: None, // ?
11+
std: Some(true),
1212
},
1313
pointer_width: 64,
1414
data_layout: "E-m:e-i8:8:32-i16:16:32-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/powerpc64_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ pub(crate) fn target() -> Target {
1414
description: Some("64-bit PowerPC Linux with musl 1.2.3".into()),
1515
tier: Some(3),
1616
host_tools: Some(false),
17-
std: None, // ?
17+
std: Some(true),
1818
},
1919
pointer_width: 64,
2020
data_layout: "E-m:e-Fn32-i64:64-n32:64-S128-v256:256:256-v512:512:512".into(),

compiler/rustc_target/src/spec/targets/powerpc64le_unknown_freebsd.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ pub(crate) fn target() -> Target {
1212
metadata: crate::spec::TargetMetadata {
1313
description: Some("PPC64LE FreeBSD".into()),
1414
tier: Some(3),
15-
host_tools: Some(false),
16-
std: Some(false),
15+
host_tools: Some(true),
16+
std: Some(true),
1717
},
1818
pointer_width: 64,
1919
data_layout: "e-m:e-Fn32-i64:64-n32:64".into(),

compiler/rustc_target/src/spec/targets/powerpc64le_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ pub(crate) fn target() -> Target {
1313
description: Some("64-bit PowerPC Linux with musl 1.2.3, Little Endian".into()),
1414
tier: Some(3),
1515
host_tools: Some(false),
16-
std: None, // ?
16+
std: Some(true),
1717
},
1818
pointer_width: 64,
1919
data_layout: "e-m:e-Fn32-i64:64-n32:64-S128-v256:256:256-v512:512:512".into(),

compiler/rustc_target/src/spec/targets/powerpc_unknown_freebsd.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ pub(crate) fn target() -> Target {
1717
description: Some("PowerPC FreeBSD".into()),
1818
tier: Some(3),
1919
host_tools: Some(false),
20-
std: Some(false),
20+
std: Some(true),
2121
},
2222
pointer_width: 32,
2323
data_layout: "E-m:e-p:32:32-Fn32-i64:64-n32".into(),

compiler/rustc_target/src/spec/targets/powerpc_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ pub(crate) fn target() -> Target {
1313
description: Some("PowerPC Linux with musl 1.2.3".into()),
1414
tier: Some(3),
1515
host_tools: Some(false),
16-
std: None, // ?
16+
std: Some(true),
1717
},
1818
pointer_width: 32,
1919
data_layout: "E-m:e-p:32:32-Fn32-i64:64-n32".into(),

compiler/rustc_target/src/spec/targets/powerpc_unknown_openbsd.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ pub(crate) fn target() -> Target {
1313
description: None,
1414
tier: Some(3),
1515
host_tools: Some(false),
16-
std: None, // ?
16+
std: Some(true),
1717
},
1818
pointer_width: 32,
1919
data_layout: "E-m:e-p:32:32-Fn32-i64:64-n32".into(),

compiler/rustc_target/src/spec/targets/riscv32gc_unknown_linux_gnu.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ pub(crate) fn target() -> Target {
99
description: Some("RISC-V Linux (kernel 5.4, glibc 2.33)".into()),
1010
tier: Some(3),
1111
host_tools: Some(false),
12-
std: Some(false),
12+
std: Some(true),
1313
},
1414
pointer_width: 32,
1515
data_layout: "e-m:e-p:32:32-i64:64-n32-S128".into(),

compiler/rustc_target/src/spec/targets/riscv32gc_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ pub(crate) fn target() -> Target {
1111
),
1212
tier: Some(3),
1313
host_tools: Some(false),
14-
std: Some(false),
14+
std: Some(true),
1515
},
1616
pointer_width: 32,
1717
data_layout: "e-m:e-p:32:32-i64:64-n32-S128".into(),

compiler/rustc_target/src/spec/targets/riscv64_linux_android.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ pub(crate) fn target() -> Target {
99
description: Some("RISC-V 64-bit Android".into()),
1010
tier: Some(3),
1111
host_tools: Some(false),
12-
std: Some(false),
12+
std: Some(true),
1313
},
1414
pointer_width: 64,
1515
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/riscv64gc_unknown_freebsd.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
description: Some("RISC-V FreeBSD".into()),
88
tier: Some(3),
99
host_tools: Some(false),
10-
std: Some(false),
10+
std: Some(true),
1111
},
1212
pointer_width: 64,
1313
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/riscv64gc_unknown_fuchsia.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ pub(crate) fn target() -> Target {
77
description: Some("RISC-V Fuchsia".into()),
88
tier: Some(3),
99
host_tools: Some(false),
10-
std: Some(false),
10+
std: Some(true),
1111
},
1212
pointer_width: 64,
1313
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/riscv64gc_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ pub(crate) fn target() -> Target {
99
description: Some("RISC-V Linux (kernel 4.20, musl 1.2.3)".into()),
1010
tier: Some(3),
1111
host_tools: Some(false),
12-
std: Some(false),
12+
std: Some(true),
1313
},
1414
pointer_width: 64,
1515
data_layout: "e-m:e-p:64:64-i64:64-i128:128-n32:64-S128".into(),

compiler/rustc_target/src/spec/targets/s390x_unknown_linux_musl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ pub(crate) fn target() -> Target {
1919
description: Some("S390x Linux (kernel 3.2, musl 1.2.3)".into()),
2020
tier: Some(3),
2121
host_tools: Some(false),
22-
std: Some(false),
22+
std: Some(true),
2323
},
2424
pointer_width: 64,
2525
data_layout: "E-m:e-i1:8:16-i8:8:16-i64:64-f128:64-v128:64-a:8:16-n32:64".into(),

compiler/rustc_target/src/spec/targets/thumbv7neon_unknown_linux_musleabihf.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ pub(crate) fn target() -> Target {
1616
description: Some("Thumb2-mode ARMv7-A Linux with NEON, musl 1.2.3".into()),
1717
tier: Some(3),
1818
host_tools: Some(false),
19-
std: None, // ?
19+
std: Some(true),
2020
},
2121
pointer_width: 32,
2222
data_layout: "e-m:e-p:32:32-Fi8-i64:64-v128:64:128-a:0:32-n32-S64".into(),

compiler/rustc_target/src/spec/targets/x86_64_unknown_linux_none.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ pub(crate) fn target() -> Target {
1414
description: None,
1515
tier: None,
1616
host_tools: None,
17-
std: None,
17+
std: Some(true),
1818
},
1919
pointer_width: 64,
2020
data_layout:

src/doc/rustc/src/platform-support.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -344,15 +344,15 @@ target | std | host | notes
344344
[`powerpc-wrs-vxworks-spe`](platform-support/vxworks.md) | ✓ | |
345345
[`powerpc-wrs-vxworks`](platform-support/vxworks.md) | ✓ | |
346346
`powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2)
347-
`powerpc64le-unknown-freebsd` | | | PPC64LE FreeBSD
348-
`powerpc-unknown-freebsd` | | | PowerPC FreeBSD
347+
`powerpc64le-unknown-freebsd` | ✓ | ✓ | PPC64LE FreeBSD
348+
`powerpc-unknown-freebsd` | ? | | PowerPC FreeBSD
349349
`powerpc64-unknown-linux-musl` | ? | | 64-bit PowerPC Linux with musl 1.2.3
350350
[`powerpc64-wrs-vxworks`](platform-support/vxworks.md) | ✓ | |
351351
`powerpc64le-unknown-linux-musl` | ? | | 64-bit PowerPC Linux with musl 1.2.3, Little Endian
352352
[`powerpc64-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | OpenBSD/powerpc64
353353
[`powerpc64-ibm-aix`](platform-support/aix.md) | ? | | 64-bit AIX (7.2 and newer)
354-
`riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33)
355-
`riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl 1.2.3 + RISCV32 support patches)
354+
`riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33)
355+
`riscv32gc-unknown-linux-musl` | ? | | RISC-V Linux (kernel 5.4, musl 1.2.3 + RISCV32 support patches)
356356
[`riscv32im-risc0-zkvm-elf`](platform-support/riscv32im-risc0-zkvm-elf.md) | ? | | RISC Zero's zero-knowledge Virtual Machine (RV32IM ISA)
357357
[`riscv32ima-unknown-none-elf`](platform-support/riscv32-unknown-none-elf.md) | * | | Bare RISC-V (RV32IMA ISA)
358358
[`riscv32imac-unknown-xous-elf`](platform-support/riscv32imac-unknown-xous-elf.md) | ? | | RISC-V Xous (RV32IMAC ISA)
@@ -361,13 +361,13 @@ target | std | host | notes
361361
[`riscv32imafc-esp-espidf`](platform-support/esp-idf.md) | ✓ | | RISC-V ESP-IDF
362362
[`riscv32-wrs-vxworks`](platform-support/vxworks.md) | ✓ | |
363363
[`riscv64gc-unknown-hermit`](platform-support/hermit.md) | ✓ | | RISC-V Hermit
364-
`riscv64gc-unknown-freebsd` | | | RISC-V FreeBSD
365-
`riscv64gc-unknown-fuchsia` | | | RISC-V Fuchsia
364+
`riscv64gc-unknown-freebsd` | ? | | RISC-V FreeBSD
365+
`riscv64gc-unknown-fuchsia` | ? | | RISC-V Fuchsia
366366
[`riscv64gc-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | RISC-V NetBSD
367367
[`riscv64gc-unknown-openbsd`](platform-support/openbsd.md) | ✓ | ✓ | OpenBSD/riscv64
368-
[`riscv64-linux-android`](platform-support/android.md) | | | RISC-V 64-bit Android
368+
[`riscv64-linux-android`](platform-support/android.md) | ? | | RISC-V 64-bit Android
369369
[`riscv64-wrs-vxworks`](platform-support/vxworks.md) | ✓ | |
370-
[`s390x-unknown-linux-musl`](platform-support/s390x-unknown-linux-musl.md) | | | S390x Linux (kernel 3.2, musl 1.2.3)
370+
[`s390x-unknown-linux-musl`](platform-support/s390x-unknown-linux-musl.md) | | | S390x Linux (kernel 3.2, musl 1.2.3)
371371
`sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux
372372
[`sparc-unknown-none-elf`](./platform-support/sparc-unknown-none-elf.md) | * | | Bare 32-bit SPARC V7+
373373
[`sparc64-unknown-netbsd`](platform-support/netbsd.md) | ✓ | ✓ | NetBSD/sparc64

0 commit comments

Comments
 (0)