From b1a3090cc14cf94c06a3ea255972e3c86df67cf5 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 16:48:23 +0000 Subject: [PATCH 01/13] spec: add -dynmusl targets for dynamically linked musl binaries --- .../src/spec/aarch64_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/armv6_unknown_linux_dynmusleabihf.rs | 12 ++++++++++++ .../src/spec/armv7_unknown_linux_dynmusleabihf.rs | 12 ++++++++++++ .../src/spec/i586_unknown_linux_dynmusl.rs | 14 ++++++++++++++ .../src/spec/mips64_unknown_linux_dynmuslabi64.rs | 12 ++++++++++++ .../spec/mips64el_unknown_linux_dynmuslabi64.rs | 12 ++++++++++++ .../src/spec/mips_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/mipsel_unknown_linux_dynmusl.rs | 12 ++++++++++++ compiler/rustc_target/src/spec/mod.rs | 13 +++++++++++++ .../src/spec/powerpc64_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/powerpc64le_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/powerpc_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/s390x_unknown_linux_dynmusl.rs | 12 ++++++++++++ .../src/spec/x86_64_unknown_linux_dynmusl.rs | 12 ++++++++++++ 14 files changed, 171 insertions(+) create mode 100644 compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs create mode 100644 compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs create mode 100644 compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs create mode 100644 compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs create mode 100644 compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs create mode 100644 compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..6e9e777e0accc --- /dev/null +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::aarch64_unknown_linux_musl::target(); + + base.llvm_target = "aarch64-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs new file mode 100644 index 0000000000000..660e202e12a15 --- /dev/null +++ b/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::arm_unknown_linux_musleabihf::target(); + + base.llvm_target = "armv6-unknown-linux-musleabihf".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs new file mode 100644 index 0000000000000..e905f2d60f30f --- /dev/null +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::armv7_unknown_linux_musleabihf::target(); + + base.llvm_target = "armv7-unknown-linux-musleabihf".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..de8ac7826f38c --- /dev/null +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -0,0 +1,14 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::i686_unknown_linux_musl::target(); + + base.options.cpu = "pentium4".to_string(); + base.llvm_target = "i586-unknown-linux-musl".to_string(); + base.options.vendor = "alpine".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs new file mode 100644 index 0000000000000..393cca41c2838 --- /dev/null +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::mips64_unknown_linux_muslabi64::target(); + + base.llvm_target = "mips64-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs new file mode 100644 index 0000000000000..a4d3fb2f14a13 --- /dev/null +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::mips64el_unknown_linux_muslabi64::target(); + + base.llvm_target = "mips64el-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..9dcf15241d708 --- /dev/null +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::mips_unknown_linux_musl::target(); + + base.llvm_target = "mips-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..5362f6ce0380f --- /dev/null +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::mipsel_unknown_linux_musl::target(); + + base.llvm_target = "mipsel-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs index 6cf1112820de1..2505907756670 100644 --- a/compiler/rustc_target/src/spec/mod.rs +++ b/compiler/rustc_target/src/spec/mod.rs @@ -626,6 +626,7 @@ supported_targets! { ("i686-unknown-linux-gnu", i686_unknown_linux_gnu), ("i586-unknown-linux-gnu", i586_unknown_linux_gnu), ("mips-unknown-linux-gnu", mips_unknown_linux_gnu), + ("mips-unknown-linux-dynmusl", mips_unknown_linux_dynmusl), ("mips64-unknown-linux-gnuabi64", mips64_unknown_linux_gnuabi64), ("mips64el-unknown-linux-gnuabi64", mips64el_unknown_linux_gnuabi64), ("mipsisa32r6-unknown-linux-gnu", mipsisa32r6_unknown_linux_gnu), @@ -633,15 +634,20 @@ supported_targets! { ("mipsisa64r6-unknown-linux-gnuabi64", mipsisa64r6_unknown_linux_gnuabi64), ("mipsisa64r6el-unknown-linux-gnuabi64", mipsisa64r6el_unknown_linux_gnuabi64), ("mipsel-unknown-linux-gnu", mipsel_unknown_linux_gnu), + ("mipsel-unknown-linux-dynmusl", mipsel_unknown_linux_dynmusl), ("powerpc-unknown-linux-gnu", powerpc_unknown_linux_gnu), ("powerpc-unknown-linux-gnuspe", powerpc_unknown_linux_gnuspe), ("powerpc-unknown-linux-musl", powerpc_unknown_linux_musl), + ("powerpc-unknown-linux-dynmusl", powerpc_unknown_linux_dynmusl), ("powerpc64-unknown-linux-gnu", powerpc64_unknown_linux_gnu), ("powerpc64-unknown-linux-musl", powerpc64_unknown_linux_musl), + ("powerpc64-unknown-linux-dynmusl", powerpc64_unknown_linux_dynmusl), ("powerpc64le-unknown-linux-gnu", powerpc64le_unknown_linux_gnu), ("powerpc64le-unknown-linux-musl", powerpc64le_unknown_linux_musl), + ("powerpc64le-unknown-linux-dynmusl", powerpc64le_unknown_linux_dynmusl), ("s390x-unknown-linux-gnu", s390x_unknown_linux_gnu), ("s390x-unknown-linux-musl", s390x_unknown_linux_musl), + ("s390x-unknown-linux-dynmusl", s390x_unknown_linux_dynmusl), ("sparc-unknown-linux-gnu", sparc_unknown_linux_gnu), ("sparc64-unknown-linux-gnu", sparc64_unknown_linux_gnu), ("arm-unknown-linux-gnueabi", arm_unknown_linux_gnueabi), @@ -656,17 +662,24 @@ supported_targets! { ("armv7-unknown-linux-gnueabihf", armv7_unknown_linux_gnueabihf), ("thumbv7neon-unknown-linux-gnueabihf", thumbv7neon_unknown_linux_gnueabihf), ("thumbv7neon-unknown-linux-musleabihf", thumbv7neon_unknown_linux_musleabihf), + ("armv6-unknown-linux-dynmusleabihf", armv6_unknown_linux_dynmusleabihf), ("armv7-unknown-linux-musleabi", armv7_unknown_linux_musleabi), ("armv7-unknown-linux-musleabihf", armv7_unknown_linux_musleabihf), + ("armv7-unknown-linux-dynmusleabihf", armv7_unknown_linux_dynmusleabihf), ("aarch64-unknown-linux-gnu", aarch64_unknown_linux_gnu), ("aarch64-unknown-linux-musl", aarch64_unknown_linux_musl), + ("aarch64-unknown-linux-dynmusl", aarch64_unknown_linux_dynmusl), ("x86_64-unknown-linux-musl", x86_64_unknown_linux_musl), + ("x86_64-unknown-linux-dynmusl", x86_64_unknown_linux_dynmusl), ("i686-unknown-linux-musl", i686_unknown_linux_musl), ("i586-unknown-linux-musl", i586_unknown_linux_musl), + ("i586-unknown-linux-dynmusl", i586_unknown_linux_dynmusl), ("mips-unknown-linux-musl", mips_unknown_linux_musl), ("mipsel-unknown-linux-musl", mipsel_unknown_linux_musl), ("mips64-unknown-linux-muslabi64", mips64_unknown_linux_muslabi64), + ("mips64-unknown-linux-dynmuslabi64", mips64_unknown_linux_dynmuslabi64), ("mips64el-unknown-linux-muslabi64", mips64el_unknown_linux_muslabi64), + ("mips64el-unknown-linux-dynmuslabi64", mips64el_unknown_linux_dynmuslabi64), ("hexagon-unknown-linux-musl", hexagon_unknown_linux_musl), ("mips-unknown-linux-uclibc", mips_unknown_linux_uclibc), diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..1c5607407fe27 --- /dev/null +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::powerpc64_unknown_linux_musl::target(); + + base.llvm_target = "powerpc64-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..8a9c771703cf2 --- /dev/null +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::powerpc64le_unknown_linux_musl::target(); + + base.llvm_target = "powerpc64le-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..95213ce4039b7 --- /dev/null +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::powerpc_unknown_linux_musl::target(); + + base.llvm_target = "powerpc-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..1bbe8a478862f --- /dev/null +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::s390x_unknown_linux_musl::target(); + + base.llvm_target = "s390x-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..cf25b84977b24 --- /dev/null +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -0,0 +1,12 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::x86_64_unknown_linux_musl::target(); + + base.llvm_target = "x86_64-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + base.options.need_rpath = true; + + base +} From 44078cddc699749d495d5ac4a3dde88002a729f6 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 16:58:57 +0000 Subject: [PATCH 02/13] platform support: document the new -dynmusl targets --- src/doc/rustc/src/platform-support.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index ff44028390c27..240d9dfa919e8 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -158,6 +158,7 @@ target | std | host | notes `aarch64-unknown-freebsd` | ✓ | ✓ | ARM64 FreeBSD `aarch64-unknown-hermit` | ? | | `aarch64-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (ILP32 ABI) +`aarch64-unknown-linux-dynmusl` | ✓ | ✓ | ARM64 Linux (Musl with dynamic linking) `aarch64-unknown-netbsd` | ✓ | ✓ | `aarch64-unknown-openbsd` | ✓ | ✓ | ARM64 OpenBSD `aarch64-unknown-redox` | ? | | ARM64 Redox OS @@ -168,9 +169,11 @@ target | std | host | notes `armv4t-unknown-linux-gnueabi` | ? | | `armv5te-unknown-linux-uclibceabi` | ? | | ARMv5TE Linux with uClibc `armv6-unknown-freebsd` | ✓ | ✓ | ARMv6 FreeBSD +`armv6-unknown-linux-dynmusleabihf` | ✓ | ✓ | ARMv6 Linux (Musl with dynamic linking) `armv6-unknown-netbsd-eabihf` | ? | | `armv7-apple-ios` | ✓ | | ARMv7 iOS, Cortex-a8 `armv7-unknown-freebsd` | ✓ | ✓ | ARMv7 FreeBSD +`armv7-unknown-linux-dynmusleabihf` | ✓ | ✓ | ARMv7 Linux (Musl with dynamic linking) `armv7-unknown-netbsd-eabihf` | ✓ | ✓ | `armv7-wrs-vxworks-eabihf` | ? | | `armv7a-none-eabihf` | * | | ARM Cortex-A, hardfloat @@ -178,6 +181,7 @@ target | std | host | notes `avr-unknown-gnu-atmega328` | ✗ | | AVR. Requires `-Z build-std=core` `hexagon-unknown-linux-musl` | ? | | `i386-apple-ios` | ✓ | | 32-bit x86 iOS +`i586-unknown-linux-dynmusl` | ✓ | ✓ | 32-bit Pentium-class x86 Linux (Musl with dynamic linking) `i686-apple-darwin` | ✓ | ✓ | 32-bit macOS (10.7+, Lion+) `i686-pc-windows-msvc` | ✓ | | 32-bit Windows XP support `i686-unknown-uefi` | ? | | 32-bit UEFI @@ -187,10 +191,14 @@ target | std | host | notes `i686-uwp-windows-gnu` | ? | | `i686-uwp-windows-msvc` | ? | | `i686-wrs-vxworks` | ? | | +`mips-unknown-linux-dynmusl` | ✓ | | MIPS Linux, o32 ABI, MUSL with dynamic linking `mips-unknown-linux-uclibc` | ✓ | | MIPS Linux with uClibc +`mipsel-unknown-linux-dynmusl` | ✓ | | MIPS (LE) Linux, o32 ABI, MUSL with dynamic linking `mipsel-unknown-linux-uclibc` | ✓ | | MIPS (LE) Linux with uClibc `mipsel-unknown-none` | * | | Bare MIPS (LE) softfloat `mipsel-sony-psp` | * | | MIPS (LE) Sony PlayStation Portable (PSP) +`mips64-unknown-linux-dynmuslabi64` | ✓ | | MIPS64 Linux, n64 ABI, MUSL with dynamic linking +`mips64el-unknown-linux-dynmuslabi64` | ✓ | | MIPS64 (LE) Linux, n64 ABI, MUSL with dynamic linking `mipsisa32r6-unknown-linux-gnu` | ? | | `mipsisa32r6el-unknown-linux-gnu` | ? | | `mipsisa64r6-unknown-linux-gnuabi64` | ? | | @@ -198,17 +206,21 @@ target | std | host | notes `msp430-none-elf` | * | | 16-bit MSP430 microcontrollers `powerpc-unknown-linux-gnuspe` | ✓ | | PowerPC SPE Linux `powerpc-unknown-linux-musl` | ? | | +`powerpc-unknown-linux-dynmusl` | ? | | `powerpc-unknown-netbsd` | ✓ | ✓ | `powerpc-wrs-vxworks` | ? | | `powerpc-wrs-vxworks-spe` | ? | | `powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2) `powerpc64-unknown-linux-musl` | ? | | +`powerpc64-unknown-linux-dynmusl` | ? | | `powerpc64-wrs-vxworks` | ? | | `powerpc64le-unknown-linux-musl` | ? | | +`powerpc64le-unknown-linux-dynmusl` | ? | | `riscv64gc-unknown-linux-musl` | | | RISC-V Linux (kernel 4.20, musl 1.2.0) `riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33) `riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl + RISCV32 support patches) `s390x-unknown-linux-musl` | | | S390x Linux (kernel 2.6.32, MUSL) +`s390x-unknown-linux-dynmusl` | | | S390x Linux (kernel 2.6.32, MUSL with dynamic linking) `sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux `sparc64-unknown-netbsd` | ✓ | ✓ | NetBSD/sparc64 `sparc64-unknown-openbsd` | ? | | @@ -226,6 +238,7 @@ target | std | host | notes `x86_64-unknown-hermit` | ? | | `x86_64-unknown-hermit-kernel` | ? | | HermitCore kernel `x86_64-unknown-l4re-uclibc` | ? | | +`x86_64-unknown-linux-dynmusl` | ✓ | ✓ | 64-bit x86 Linux, MUSL with dynamic linking `x86_64-unknown-openbsd` | ✓ | ✓ | 64-bit OpenBSD `x86_64-unknown-uefi` | ? | | `x86_64-uwp-windows-gnu` | ✓ | | From 576e50f8899cea4366c663fb6a77977b352f0cba Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:16:56 +0000 Subject: [PATCH 03/13] dynmusl targets: drop need_rpath option (alpine-specific for now) --- compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs | 1 - .../rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs | 1 - compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 2 -- .../rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs | 1 - .../src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 1 - compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 1 - 13 files changed, 14 deletions(-) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index 6e9e777e0accc..e2cc9eb0b666c 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "aarch64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs index 660e202e12a15..5190b6917cade 100644 --- a/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "armv6-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index e905f2d60f30f..92d901df37830 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "armv7-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index de8ac7826f38c..70630d2a72ad6 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -5,10 +5,8 @@ pub fn target() -> Target { base.options.cpu = "pentium4".to_string(); base.llvm_target = "i586-unknown-linux-musl".to_string(); - base.options.vendor = "alpine".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index 393cca41c2838..9ce754451dd26 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "mips64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index a4d3fb2f14a13..fe1e3e28692eb 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "mips64el-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index 9dcf15241d708..fd5a1a2f09959 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "mips-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index 5362f6ce0380f..3c8df0c0d8249 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "mipsel-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index 1c5607407fe27..c5eda604f05f2 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index 8a9c771703cf2..6702a819956ba 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc64le-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index 95213ce4039b7..c4d3c2e59fe3d 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index 1bbe8a478862f..d53b2f6663118 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "s390x-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index cf25b84977b24..ee53644e9549c 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -6,7 +6,6 @@ pub fn target() -> Target { base.llvm_target = "x86_64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; - base.options.need_rpath = true; base } From 479ad2e7bb15529aa124f2d38cee74f5e4fd3cad Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:19:11 +0000 Subject: [PATCH 04/13] platform support: remove checkmarks from the -dynmusl targets for now --- src/doc/rustc/src/platform-support.md | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index 240d9dfa919e8..78ffd1a8f4d12 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -158,7 +158,7 @@ target | std | host | notes `aarch64-unknown-freebsd` | ✓ | ✓ | ARM64 FreeBSD `aarch64-unknown-hermit` | ? | | `aarch64-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (ILP32 ABI) -`aarch64-unknown-linux-dynmusl` | ✓ | ✓ | ARM64 Linux (Musl with dynamic linking) +`aarch64-unknown-linux-dynmusl` | | | ARM64 Linux (Musl with dynamic linking) `aarch64-unknown-netbsd` | ✓ | ✓ | `aarch64-unknown-openbsd` | ✓ | ✓ | ARM64 OpenBSD `aarch64-unknown-redox` | ? | | ARM64 Redox OS @@ -169,11 +169,11 @@ target | std | host | notes `armv4t-unknown-linux-gnueabi` | ? | | `armv5te-unknown-linux-uclibceabi` | ? | | ARMv5TE Linux with uClibc `armv6-unknown-freebsd` | ✓ | ✓ | ARMv6 FreeBSD -`armv6-unknown-linux-dynmusleabihf` | ✓ | ✓ | ARMv6 Linux (Musl with dynamic linking) +`armv6-unknown-linux-dynmusleabihf` | | | ARMv6 Linux (Musl with dynamic linking) `armv6-unknown-netbsd-eabihf` | ? | | `armv7-apple-ios` | ✓ | | ARMv7 iOS, Cortex-a8 `armv7-unknown-freebsd` | ✓ | ✓ | ARMv7 FreeBSD -`armv7-unknown-linux-dynmusleabihf` | ✓ | ✓ | ARMv7 Linux (Musl with dynamic linking) +`armv7-unknown-linux-dynmusleabihf` | | | ARMv7 Linux (Musl with dynamic linking) `armv7-unknown-netbsd-eabihf` | ✓ | ✓ | `armv7-wrs-vxworks-eabihf` | ? | | `armv7a-none-eabihf` | * | | ARM Cortex-A, hardfloat @@ -181,7 +181,7 @@ target | std | host | notes `avr-unknown-gnu-atmega328` | ✗ | | AVR. Requires `-Z build-std=core` `hexagon-unknown-linux-musl` | ? | | `i386-apple-ios` | ✓ | | 32-bit x86 iOS -`i586-unknown-linux-dynmusl` | ✓ | ✓ | 32-bit Pentium-class x86 Linux (Musl with dynamic linking) +`i586-unknown-linux-dynmusl` | | | 32-bit Pentium-class x86 Linux (Musl with dynamic linking) `i686-apple-darwin` | ✓ | ✓ | 32-bit macOS (10.7+, Lion+) `i686-pc-windows-msvc` | ✓ | | 32-bit Windows XP support `i686-unknown-uefi` | ? | | 32-bit UEFI @@ -191,14 +191,14 @@ target | std | host | notes `i686-uwp-windows-gnu` | ? | | `i686-uwp-windows-msvc` | ? | | `i686-wrs-vxworks` | ? | | -`mips-unknown-linux-dynmusl` | ✓ | | MIPS Linux, o32 ABI, MUSL with dynamic linking +`mips-unknown-linux-dynmusl` | | | MIPS Linux, o32 ABI, MUSL with dynamic linking `mips-unknown-linux-uclibc` | ✓ | | MIPS Linux with uClibc -`mipsel-unknown-linux-dynmusl` | ✓ | | MIPS (LE) Linux, o32 ABI, MUSL with dynamic linking +`mipsel-unknown-linux-dynmusl` | | | MIPS (LE) Linux, o32 ABI, MUSL with dynamic linking `mipsel-unknown-linux-uclibc` | ✓ | | MIPS (LE) Linux with uClibc `mipsel-unknown-none` | * | | Bare MIPS (LE) softfloat `mipsel-sony-psp` | * | | MIPS (LE) Sony PlayStation Portable (PSP) -`mips64-unknown-linux-dynmuslabi64` | ✓ | | MIPS64 Linux, n64 ABI, MUSL with dynamic linking -`mips64el-unknown-linux-dynmuslabi64` | ✓ | | MIPS64 (LE) Linux, n64 ABI, MUSL with dynamic linking +`mips64-unknown-linux-dynmuslabi64` | | | MIPS64 Linux, n64 ABI, MUSL with dynamic linking +`mips64el-unknown-linux-dynmuslabi64` | | | MIPS64 (LE) Linux, n64 ABI, MUSL with dynamic linking `mipsisa32r6-unknown-linux-gnu` | ? | | `mipsisa32r6el-unknown-linux-gnu` | ? | | `mipsisa64r6-unknown-linux-gnuabi64` | ? | | @@ -206,16 +206,16 @@ target | std | host | notes `msp430-none-elf` | * | | 16-bit MSP430 microcontrollers `powerpc-unknown-linux-gnuspe` | ✓ | | PowerPC SPE Linux `powerpc-unknown-linux-musl` | ? | | -`powerpc-unknown-linux-dynmusl` | ? | | +`powerpc-unknown-linux-dynmusl` | | | `powerpc-unknown-netbsd` | ✓ | ✓ | `powerpc-wrs-vxworks` | ? | | `powerpc-wrs-vxworks-spe` | ? | | `powerpc64-unknown-freebsd` | ✓ | ✓ | PPC64 FreeBSD (ELFv1 and ELFv2) `powerpc64-unknown-linux-musl` | ? | | -`powerpc64-unknown-linux-dynmusl` | ? | | +`powerpc64-unknown-linux-dynmusl` | | | `powerpc64-wrs-vxworks` | ? | | `powerpc64le-unknown-linux-musl` | ? | | -`powerpc64le-unknown-linux-dynmusl` | ? | | +`powerpc64le-unknown-linux-dynmusl` | | | `riscv64gc-unknown-linux-musl` | | | RISC-V Linux (kernel 4.20, musl 1.2.0) `riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33) `riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl + RISCV32 support patches) @@ -238,7 +238,7 @@ target | std | host | notes `x86_64-unknown-hermit` | ? | | `x86_64-unknown-hermit-kernel` | ? | | HermitCore kernel `x86_64-unknown-l4re-uclibc` | ? | | -`x86_64-unknown-linux-dynmusl` | ✓ | ✓ | 64-bit x86 Linux, MUSL with dynamic linking +`x86_64-unknown-linux-dynmusl` | | | 64-bit x86 Linux, MUSL with dynamic linking `x86_64-unknown-openbsd` | ✓ | ✓ | 64-bit OpenBSD `x86_64-unknown-uefi` | ? | | `x86_64-uwp-windows-gnu` | ✓ | | From ad603887ebeccffaaac593e1891b8b47a97afada Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:24:41 +0000 Subject: [PATCH 05/13] rename armv6-unknown-linux-dynmusleabihf to arm-unknown-linux-dynmusleabihf to align with other armv6 targets --- ...inux_dynmusleabihf.rs => arm_unknown_linux_dynmusleabihf.rs} | 0 compiler/rustc_target/src/spec/mod.rs | 2 +- src/doc/rustc/src/platform-support.md | 2 +- 3 files changed, 2 insertions(+), 2 deletions(-) rename compiler/rustc_target/src/spec/{armv6_unknown_linux_dynmusleabihf.rs => arm_unknown_linux_dynmusleabihf.rs} (100%) diff --git a/compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs similarity index 100% rename from compiler/rustc_target/src/spec/armv6_unknown_linux_dynmusleabihf.rs rename to compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs index 2505907756670..e2076a5ff08f5 100644 --- a/compiler/rustc_target/src/spec/mod.rs +++ b/compiler/rustc_target/src/spec/mod.rs @@ -654,6 +654,7 @@ supported_targets! { ("arm-unknown-linux-gnueabihf", arm_unknown_linux_gnueabihf), ("arm-unknown-linux-musleabi", arm_unknown_linux_musleabi), ("arm-unknown-linux-musleabihf", arm_unknown_linux_musleabihf), + ("arm-unknown-linux-dynmusleabihf", arm_unknown_linux_dynmusleabihf), ("armv4t-unknown-linux-gnueabi", armv4t_unknown_linux_gnueabi), ("armv5te-unknown-linux-gnueabi", armv5te_unknown_linux_gnueabi), ("armv5te-unknown-linux-musleabi", armv5te_unknown_linux_musleabi), @@ -662,7 +663,6 @@ supported_targets! { ("armv7-unknown-linux-gnueabihf", armv7_unknown_linux_gnueabihf), ("thumbv7neon-unknown-linux-gnueabihf", thumbv7neon_unknown_linux_gnueabihf), ("thumbv7neon-unknown-linux-musleabihf", thumbv7neon_unknown_linux_musleabihf), - ("armv6-unknown-linux-dynmusleabihf", armv6_unknown_linux_dynmusleabihf), ("armv7-unknown-linux-musleabi", armv7_unknown_linux_musleabi), ("armv7-unknown-linux-musleabihf", armv7_unknown_linux_musleabihf), ("armv7-unknown-linux-dynmusleabihf", armv7_unknown_linux_dynmusleabihf), diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index 78ffd1a8f4d12..fb243d5d892f0 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -166,10 +166,10 @@ target | std | host | notes `aarch64-wrs-vxworks` | ? | | `aarch64_be-unknown-linux-gnu` | ✓ | ✓ | ARM64 Linux (big-endian) `aarch64_be-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (big-endian, ILP32 ABI) +`arm-unknown-linux-dynmusleabihf` | | | ARMv6 Linux (Musl with dynamic linking) `armv4t-unknown-linux-gnueabi` | ? | | `armv5te-unknown-linux-uclibceabi` | ? | | ARMv5TE Linux with uClibc `armv6-unknown-freebsd` | ✓ | ✓ | ARMv6 FreeBSD -`armv6-unknown-linux-dynmusleabihf` | | | ARMv6 Linux (Musl with dynamic linking) `armv6-unknown-netbsd-eabihf` | ? | | `armv7-apple-ios` | ✓ | | ARMv7 iOS, Cortex-a8 `armv7-unknown-freebsd` | ✓ | ✓ | ARMv7 FreeBSD From ff1825a8c89d1bddd2c7297eab7f231bf3826e5e Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:30:50 +0000 Subject: [PATCH 06/13] add i686-unknown-linux-dynmusl target for void linux --- .../src/spec/i586_unknown_linux_dynmusl.rs | 3 +-- .../src/spec/i686_unknown_linux_dynmusl.rs | 11 +++++++++++ compiler/rustc_target/src/spec/mod.rs | 1 + src/doc/rustc/src/platform-support.md | 1 + 4 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index 70630d2a72ad6..c7bab631c7960 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -1,9 +1,8 @@ use crate::spec::Target; pub fn target() -> Target { - let mut base = super::i686_unknown_linux_musl::target(); + let mut base = super::i586_unknown_linux_musl::target(); - base.options.cpu = "pentium4".to_string(); base.llvm_target = "i586-unknown-linux-musl".to_string(); base.options.crt_static_default = false; base.options.static_position_independent_executables = true; diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs new file mode 100644 index 0000000000000..3b29132b6e52b --- /dev/null +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -0,0 +1,11 @@ +use crate::spec::Target; + +pub fn target() -> Target { + let mut base = super::i686_unknown_linux_musl::target(); + + base.llvm_target = "i686-unknown-linux-musl".to_string(); + base.options.crt_static_default = false; + base.options.static_position_independent_executables = true; + + base +} diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs index e2076a5ff08f5..32a3a02320680 100644 --- a/compiler/rustc_target/src/spec/mod.rs +++ b/compiler/rustc_target/src/spec/mod.rs @@ -672,6 +672,7 @@ supported_targets! { ("x86_64-unknown-linux-musl", x86_64_unknown_linux_musl), ("x86_64-unknown-linux-dynmusl", x86_64_unknown_linux_dynmusl), ("i686-unknown-linux-musl", i686_unknown_linux_musl), + ("i686-unknown-linux-dynmusl", i686_unknown_linux_dynmusl), ("i586-unknown-linux-musl", i586_unknown_linux_musl), ("i586-unknown-linux-dynmusl", i586_unknown_linux_dynmusl), ("mips-unknown-linux-musl", mips_unknown_linux_musl), diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index fb243d5d892f0..0bd837fa6efa6 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -186,6 +186,7 @@ target | std | host | notes `i686-pc-windows-msvc` | ✓ | | 32-bit Windows XP support `i686-unknown-uefi` | ? | | 32-bit UEFI `i686-unknown-haiku` | ✓ | ✓ | 32-bit Haiku +`i686-unknown-linux-dynmusl` | | | 32-bit Pentium 4-class x86 Linux (Musl with dynamic linking) `i686-unknown-netbsd` | ✓ | ✓ | NetBSD/i386 with SSE2 `i686-unknown-openbsd` | ✓ | ✓ | 32-bit OpenBSD `i686-uwp-windows-gnu` | ? | | From 1e780f818344d8e6c4ffcc913654c514d17df8fc Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:37:59 +0000 Subject: [PATCH 07/13] spec: dynmusl: drop redundant static_position_independent_executables option --- compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs | 1 - .../rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs | 1 - compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs | 1 - .../rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 1 - compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 1 - .../rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 1 - compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 1 - 14 files changed, 14 deletions(-) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index e2cc9eb0b666c..74a5215f49aee 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "aarch64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs index 5190b6917cade..5cbf02254099a 100644 --- a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "armv6-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index 92d901df37830..2362a61317e3a 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "armv7-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index c7bab631c7960..eed69e5aae265 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "i586-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs index 3b29132b6e52b..a8fa7597f7f87 100644 --- a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "i686-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index 9ce754451dd26..ac82d46483cb5 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "mips64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index fe1e3e28692eb..95db042c5eb96 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "mips64el-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index fd5a1a2f09959..edca66ee18ccf 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "mips-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index 3c8df0c0d8249..0b5fd473321d9 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "mipsel-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index c5eda604f05f2..082b610c19ea2 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index 6702a819956ba..d833086ee8cb9 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc64le-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index c4d3c2e59fe3d..0a45bafddf6cd 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "powerpc-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index d53b2f6663118..7722c614144b8 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "s390x-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index ee53644e9549c..507b6be4914ab 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -5,7 +5,6 @@ pub fn target() -> Target { base.llvm_target = "x86_64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.static_position_independent_executables = true; base } From c41347cbc62095d112cfd1b5901f0bccdee0ffc0 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:47:37 +0000 Subject: [PATCH 08/13] spec: dynmusl: unset CRT-related options --- .../rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 3 +++ .../rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs | 3 +++ .../rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs | 3 +++ compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 3 +++ compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs | 3 +++ .../rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs | 3 +++ .../src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 3 +++ compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 3 +++ compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 3 +++ .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 3 +++ .../rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs | 3 +++ .../rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 3 +++ compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 3 +++ compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 3 +++ 14 files changed, 42 insertions(+) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index 74a5215f49aee..7ce22e803602f 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "aarch64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs index 5cbf02254099a..6072df3e24819 100644 --- a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "armv6-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index 2362a61317e3a..2a31a83a348d6 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "armv7-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index eed69e5aae265..6240a1880f4b7 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "i586-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs index a8fa7597f7f87..ebcc675ee4960 100644 --- a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "i686-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index ac82d46483cb5..d8945f8950880 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "mips64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index 95db042c5eb96..d964fee6a3dae 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "mips64el-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index edca66ee18ccf..d723e7174d6cc 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "mips-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index 0b5fd473321d9..863a17663406b 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "mipsel-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index 082b610c19ea2..12928b20baf34 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "powerpc64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index d833086ee8cb9..e241ba0e42fb0 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "powerpc64le-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index 0a45bafddf6cd..ecf1fa9e9a183 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "powerpc-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index 7722c614144b8..38105e88e4ff7 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "s390x-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index 507b6be4914ab..158902e110064 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -5,6 +5,9 @@ pub fn target() -> Target { base.llvm_target = "x86_64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; + base.options.pre_link_objects_fallback = None; + base.options.post_link_objects_fallback = None; + base.options.crt_objects_fallback = None; base } From c340f456411ac612530fe7ed0a9fcc662acb89b1 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:49:22 +0000 Subject: [PATCH 09/13] rustbuild: only copy CRT objects for non-dynmusl case --- src/bootstrap/compile.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs index 7d5e3d05b11fa..578839e220b9c 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs @@ -177,7 +177,7 @@ fn copy_self_contained_objects( // to using gcc from a glibc-targeting toolchain for linking. // To do that we have to distribute musl startup objects as a part of Rust toolchain // and link with them manually in the self-contained mode. - if target.contains("musl") { + if target.contains("-musl") { let srcdir = builder.musl_libdir(target).unwrap(); for &obj in &["crt1.o", "Scrt1.o", "rcrt1.o", "crti.o", "crtn.o"] { copy_and_stamp( From 0f78528ae0d8c8b3f568705439a9e848bf9dcf94 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 17:59:10 +0000 Subject: [PATCH 10/13] spec: dynmusl: pre/post fallbacks are not Options, so provide an empty mapping --- .../rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 4 ++-- .../rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs | 4 ++-- .../src/spec/armv7_unknown_linux_dynmusleabihf.rs | 4 ++-- compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 4 ++-- compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs | 4 ++-- .../src/spec/mips64_unknown_linux_dynmuslabi64.rs | 4 ++-- .../src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 4 ++-- compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 4 ++-- .../rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 4 ++-- .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 4 ++-- .../src/spec/powerpc64le_unknown_linux_dynmusl.rs | 4 ++-- .../rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 4 ++-- compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 4 ++-- .../rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 4 ++-- 14 files changed, 28 insertions(+), 28 deletions(-) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index 7ce22e803602f..8480ae6fa740a 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "aarch64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs index 6072df3e24819..73c634564e52d 100644 --- a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "armv6-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index 2a31a83a348d6..381f9549e797c 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "armv7-unknown-linux-musleabihf".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index 6240a1880f4b7..122445c336f9d 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "i586-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs index ebcc675ee4960..3aa7ab309d406 100644 --- a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "i686-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index d8945f8950880..b0c4e9feecf7c 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "mips64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index d964fee6a3dae..3e576c2ebd84e 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "mips64el-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index d723e7174d6cc..e6554430f2ce6 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "mips-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index 863a17663406b..8ce1b91609c2a 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "mipsel-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index 12928b20baf34..7322b8792c53d 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "powerpc64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index e241ba0e42fb0..5c6b2e8b765e8 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "powerpc64le-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index ecf1fa9e9a183..164ecbd14ad1c 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "powerpc-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index 38105e88e4ff7..c78d7040ddbde 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "s390x-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index 158902e110064..d86eade6d44e4 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -5,8 +5,8 @@ pub fn target() -> Target { base.llvm_target = "x86_64-unknown-linux-musl".to_string(); base.options.crt_static_default = false; - base.options.pre_link_objects_fallback = None; - base.options.post_link_objects_fallback = None; + base.options.pre_link_objects_fallback = new(&[]); + base.options.post_link_objects_fallback = new(&[]); base.options.crt_objects_fallback = None; base From d1aed4bc794f90673a74535f144c61e21eae3998 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 18:12:54 +0000 Subject: [PATCH 11/13] spec: dynmusl: use crate::spec::crt_objects::new --- compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 1 + .../rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs | 1 + .../rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs | 1 + compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 1 + compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs | 1 + .../rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs | 1 + .../rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 1 + compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 1 + compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 1 + .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 1 + .../rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs | 1 + compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 1 + compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 1 + compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 1 + 14 files changed, 14 insertions(+) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index 8480ae6fa740a..514078a52eb23 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::aarch64_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs index 73c634564e52d..8e5f0149dd022 100644 --- a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::arm_unknown_linux_musleabihf::target(); diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index 381f9549e797c..48c4942be46dc 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::armv7_unknown_linux_musleabihf::target(); diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index 122445c336f9d..ddeb23e284d62 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::i586_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs index 3aa7ab309d406..6beb45434475a 100644 --- a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::i686_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index b0c4e9feecf7c..1626c67a126d7 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::mips64_unknown_linux_muslabi64::target(); diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index 3e576c2ebd84e..cc52761f8561a 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::mips64el_unknown_linux_muslabi64::target(); diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index e6554430f2ce6..e3eb2a9c10336 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::mips_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index 8ce1b91609c2a..c09dd6e2fbe36 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::mipsel_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index 7322b8792c53d..d3a7d27f13b33 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::powerpc64_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index 5c6b2e8b765e8..519862d9408b3 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::powerpc64le_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index 164ecbd14ad1c..9642bca467425 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::powerpc_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index c78d7040ddbde..add40d1ae5931 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::s390x_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index d86eade6d44e4..a85739374136e 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -1,4 +1,5 @@ use crate::spec::Target; +use crate::spec::crt_objects::new; pub fn target() -> Target { let mut base = super::x86_64_unknown_linux_musl::target(); From 30b5037e5222950aef10b412dee4b5fdb6fbb33f Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 18:28:00 +0000 Subject: [PATCH 12/13] spec: dynmusl: pacify rustfmt --- compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs | 2 +- .../rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs | 2 +- .../rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs | 2 +- compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs | 2 +- compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs | 2 +- .../rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs | 2 +- .../src/spec/mips64el_unknown_linux_dynmuslabi64.rs | 2 +- compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs | 2 +- compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs | 2 +- .../rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs | 2 +- .../rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs | 2 +- compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs | 2 +- compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs | 2 +- compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs | 2 +- 14 files changed, 14 insertions(+), 14 deletions(-) diff --git a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs index 514078a52eb23..afceb1ea86669 100644 --- a/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/aarch64_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::aarch64_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs index 8e5f0149dd022..8f3717a23aa2f 100644 --- a/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/arm_unknown_linux_dynmusleabihf.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::arm_unknown_linux_musleabihf::target(); diff --git a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs index 48c4942be46dc..faa1e6960af8e 100644 --- a/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs +++ b/compiler/rustc_target/src/spec/armv7_unknown_linux_dynmusleabihf.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::armv7_unknown_linux_musleabihf::target(); diff --git a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs index ddeb23e284d62..e0cf053599b05 100644 --- a/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i586_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::i586_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs index 6beb45434475a..23c460b08e24e 100644 --- a/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/i686_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::i686_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs index 1626c67a126d7..83407ab939fbe 100644 --- a/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64_unknown_linux_dynmuslabi64.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::mips64_unknown_linux_muslabi64::target(); diff --git a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs index cc52761f8561a..80a505dfc9781 100644 --- a/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs +++ b/compiler/rustc_target/src/spec/mips64el_unknown_linux_dynmuslabi64.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::mips64el_unknown_linux_muslabi64::target(); diff --git a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs index e3eb2a9c10336..fcc5d7bc24f6a 100644 --- a/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mips_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::mips_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs index c09dd6e2fbe36..5e8bbc6a18e16 100644 --- a/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/mipsel_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::mipsel_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs index d3a7d27f13b33..6cef03ef172f2 100644 --- a/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::powerpc64_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs index 519862d9408b3..713b909c51538 100644 --- a/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc64le_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::powerpc64le_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs index 9642bca467425..f89b964e542f1 100644 --- a/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/powerpc_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::powerpc_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs index add40d1ae5931..2c73a3c90a665 100644 --- a/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/s390x_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::s390x_unknown_linux_musl::target(); diff --git a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs index a85739374136e..50a1bfaa0032f 100644 --- a/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs +++ b/compiler/rustc_target/src/spec/x86_64_unknown_linux_dynmusl.rs @@ -1,5 +1,5 @@ -use crate::spec::Target; use crate::spec::crt_objects::new; +use crate::spec::Target; pub fn target() -> Target { let mut base = super::x86_64_unknown_linux_musl::target(); From e1ee5007926dd12f5edcc822eeb441556492fc73 Mon Sep 17 00:00:00 2001 From: Ariadne Conill Date: Fri, 26 Feb 2021 18:44:35 +0000 Subject: [PATCH 13/13] platform support: normalize 'MUSL' and 'Musl' to 'musl libc' --- src/doc/rustc/src/platform-support.md | 52 +++++++++++++-------------- 1 file changed, 26 insertions(+), 26 deletions(-) diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index 0bd837fa6efa6..f1ceb1755088b 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -69,41 +69,41 @@ target | std | host | notes `aarch64-fuchsia` | ✓ | | ARM64 Fuchsia `aarch64-linux-android` | ✓ | | ARM64 Android `aarch64-pc-windows-msvc` | ✓ | ✓ | ARM64 Windows MSVC -`aarch64-unknown-linux-musl` | ✓ | ✓ | ARM64 Linux with MUSL +`aarch64-unknown-linux-musl` | ✓ | ✓ | ARM64 Linux with musl libc `aarch64-unknown-none` | * | | Bare ARM64, hardfloat `aarch64-unknown-none-softfloat` | * | | Bare ARM64, softfloat `arm-linux-androideabi` | ✓ | | ARMv7 Android `arm-unknown-linux-gnueabi` | ✓ | ✓ | ARMv6 Linux (kernel 3.2, glibc 2.17) `arm-unknown-linux-gnueabihf` | ✓ | ✓ | ARMv6 Linux, hardfloat (kernel 3.2, glibc 2.17) -`arm-unknown-linux-musleabi` | ✓ | | ARMv6 Linux with MUSL -`arm-unknown-linux-musleabihf` | ✓ | | ARMv6 Linux with MUSL, hardfloat +`arm-unknown-linux-musleabi` | ✓ | | ARMv6 Linux with musl libc +`arm-unknown-linux-musleabihf` | ✓ | | ARMv6 Linux with musl libc, hardfloat `armebv7r-none-eabi` | * | | Bare ARMv7-R, Big Endian `armebv7r-none-eabihf` | * | | Bare ARMv7-R, Big Endian, hardfloat `armv5te-unknown-linux-gnueabi` | ✓ | | ARMv5TE Linux (kernel 4.4, glibc 2.23) -`armv5te-unknown-linux-musleabi` | ✓ | | ARMv5TE Linux with MUSL +`armv5te-unknown-linux-musleabi` | ✓ | | ARMv5TE Linux with musl libc `armv7-linux-androideabi` | ✓ | | ARMv7a Android `armv7a-none-eabi` | * | | Bare ARMv7-A `armv7r-none-eabi` | * | | Bare ARMv7-R `armv7r-none-eabihf` | * | | Bare ARMv7-R, hardfloat `armv7-unknown-linux-gnueabi` | ✓ | | ARMv7 Linux (kernel 4.15, glibc 2.27) `armv7-unknown-linux-gnueabihf` | ✓ | ✓ | ARMv7 Linux, hardfloat (kernel 3.2, glibc 2.17) -`armv7-unknown-linux-musleabi` | ✓ | | ARMv7 Linux, MUSL -`armv7-unknown-linux-musleabihf` | ✓ | | ARMv7 Linux with MUSL +`armv7-unknown-linux-musleabi` | ✓ | | ARMv7 Linux, musl libc +`armv7-unknown-linux-musleabihf` | ✓ | | ARMv7 Linux with musl libc `asmjs-unknown-emscripten` | ✓ | | asm.js via Emscripten `i586-pc-windows-msvc` | ✓ | | 32-bit Windows w/o SSE `i586-unknown-linux-gnu` | ✓ | | 32-bit Linux w/o SSE (kernel 4.4, glibc 2.23) -`i586-unknown-linux-musl` | ✓ | | 32-bit Linux w/o SSE, MUSL +`i586-unknown-linux-musl` | ✓ | | 32-bit Linux w/o SSE, musl libc `i686-linux-android` | ✓ | | 32-bit x86 Android `i686-unknown-freebsd` | ✓ | | 32-bit FreeBSD -`i686-unknown-linux-musl` | ✓ | | 32-bit Linux with MUSL +`i686-unknown-linux-musl` | ✓ | | 32-bit Linux with musl libc `mips-unknown-linux-gnu` | ✓ | ✓ | MIPS Linux (kernel 4.4, glibc 2.23) -`mips-unknown-linux-musl` | ✓ | | MIPS Linux with MUSL +`mips-unknown-linux-musl` | ✓ | | MIPS Linux with musl libc `mips64-unknown-linux-gnuabi64` | ✓ | ✓ | MIPS64 Linux, n64 ABI (kernel 4.4, glibc 2.23) -`mips64-unknown-linux-muslabi64` | ✓ | | MIPS64 Linux, n64 ABI, MUSL +`mips64-unknown-linux-muslabi64` | ✓ | | MIPS64 Linux, n64 ABI, musl libc `mips64el-unknown-linux-gnuabi64` | ✓ | ✓ | MIPS64 (LE) Linux, n64 ABI (kernel 4.4, glibc 2.23) -`mips64el-unknown-linux-muslabi64` | ✓ | | MIPS64 (LE) Linux, n64 ABI, MUSL +`mips64el-unknown-linux-muslabi64` | ✓ | | MIPS64 (LE) Linux, n64 ABI, musl libc `mipsel-unknown-linux-gnu` | ✓ | ✓ | MIPS (LE) Linux (kernel 4.4, glibc 2.23) -`mipsel-unknown-linux-musl` | ✓ | | MIPS (LE) Linux with MUSL +`mipsel-unknown-linux-musl` | ✓ | | MIPS (LE) Linux with musl libc `nvptx64-nvidia-cuda` | ✓ | | --emit=asm generates PTX code that [runs on NVIDIA GPUs] `powerpc-unknown-linux-gnu` | ✓ | ✓ | PowerPC Linux (kernel 2.6.32, glibc 2.11) `powerpc64-unknown-linux-gnu` | ✓ | ✓ | PPC64 Linux (kernel 2.6.32, glibc 2.11) @@ -138,7 +138,7 @@ target | std | host | notes `x86_64-unknown-freebsd` | ✓ | ✓ | 64-bit FreeBSD `x86_64-unknown-illumos` | ✓ | ✓ | illumos `x86_64-unknown-linux-gnux32` | ✓ | | 64-bit Linux (x32 ABI) (kernel 4.15, glibc 2.27) -`x86_64-unknown-linux-musl` | ✓ | ✓ | 64-bit Linux with MUSL +`x86_64-unknown-linux-musl` | ✓ | ✓ | 64-bit Linux with musl libc `x86_64-unknown-netbsd` | ✓ | ✓ | NetBSD/amd64 `x86_64-unknown-redox` | ✓ | | Redox OS @@ -158,7 +158,7 @@ target | std | host | notes `aarch64-unknown-freebsd` | ✓ | ✓ | ARM64 FreeBSD `aarch64-unknown-hermit` | ? | | `aarch64-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (ILP32 ABI) -`aarch64-unknown-linux-dynmusl` | | | ARM64 Linux (Musl with dynamic linking) +`aarch64-unknown-linux-dynmusl` | | | ARM64 Linux (musl libc with dynamic linking) `aarch64-unknown-netbsd` | ✓ | ✓ | `aarch64-unknown-openbsd` | ✓ | ✓ | ARM64 OpenBSD `aarch64-unknown-redox` | ? | | ARM64 Redox OS @@ -166,14 +166,14 @@ target | std | host | notes `aarch64-wrs-vxworks` | ? | | `aarch64_be-unknown-linux-gnu` | ✓ | ✓ | ARM64 Linux (big-endian) `aarch64_be-unknown-linux-gnu_ilp32` | ✓ | ✓ | ARM64 Linux (big-endian, ILP32 ABI) -`arm-unknown-linux-dynmusleabihf` | | | ARMv6 Linux (Musl with dynamic linking) +`arm-unknown-linux-dynmusleabihf` | | | ARMv6 Linux (musl libc with dynamic linking) `armv4t-unknown-linux-gnueabi` | ? | | `armv5te-unknown-linux-uclibceabi` | ? | | ARMv5TE Linux with uClibc `armv6-unknown-freebsd` | ✓ | ✓ | ARMv6 FreeBSD `armv6-unknown-netbsd-eabihf` | ? | | `armv7-apple-ios` | ✓ | | ARMv7 iOS, Cortex-a8 `armv7-unknown-freebsd` | ✓ | ✓ | ARMv7 FreeBSD -`armv7-unknown-linux-dynmusleabihf` | | | ARMv7 Linux (Musl with dynamic linking) +`armv7-unknown-linux-dynmusleabihf` | | | ARMv7 Linux (musl libc with dynamic linking) `armv7-unknown-netbsd-eabihf` | ✓ | ✓ | `armv7-wrs-vxworks-eabihf` | ? | | `armv7a-none-eabihf` | * | | ARM Cortex-A, hardfloat @@ -181,25 +181,25 @@ target | std | host | notes `avr-unknown-gnu-atmega328` | ✗ | | AVR. Requires `-Z build-std=core` `hexagon-unknown-linux-musl` | ? | | `i386-apple-ios` | ✓ | | 32-bit x86 iOS -`i586-unknown-linux-dynmusl` | | | 32-bit Pentium-class x86 Linux (Musl with dynamic linking) +`i586-unknown-linux-dynmusl` | | | 32-bit Pentium-class x86 Linux (musl libc with dynamic linking) `i686-apple-darwin` | ✓ | ✓ | 32-bit macOS (10.7+, Lion+) `i686-pc-windows-msvc` | ✓ | | 32-bit Windows XP support `i686-unknown-uefi` | ? | | 32-bit UEFI `i686-unknown-haiku` | ✓ | ✓ | 32-bit Haiku -`i686-unknown-linux-dynmusl` | | | 32-bit Pentium 4-class x86 Linux (Musl with dynamic linking) +`i686-unknown-linux-dynmusl` | | | 32-bit Pentium 4-class x86 Linux (musl libc with dynamic linking) `i686-unknown-netbsd` | ✓ | ✓ | NetBSD/i386 with SSE2 `i686-unknown-openbsd` | ✓ | ✓ | 32-bit OpenBSD `i686-uwp-windows-gnu` | ? | | `i686-uwp-windows-msvc` | ? | | `i686-wrs-vxworks` | ? | | -`mips-unknown-linux-dynmusl` | | | MIPS Linux, o32 ABI, MUSL with dynamic linking +`mips-unknown-linux-dynmusl` | | | MIPS Linux, o32 ABI, musl libc with dynamic linking `mips-unknown-linux-uclibc` | ✓ | | MIPS Linux with uClibc -`mipsel-unknown-linux-dynmusl` | | | MIPS (LE) Linux, o32 ABI, MUSL with dynamic linking +`mipsel-unknown-linux-dynmusl` | | | MIPS (LE) Linux, o32 ABI, musl libc with dynamic linking `mipsel-unknown-linux-uclibc` | ✓ | | MIPS (LE) Linux with uClibc `mipsel-unknown-none` | * | | Bare MIPS (LE) softfloat `mipsel-sony-psp` | * | | MIPS (LE) Sony PlayStation Portable (PSP) -`mips64-unknown-linux-dynmuslabi64` | | | MIPS64 Linux, n64 ABI, MUSL with dynamic linking -`mips64el-unknown-linux-dynmuslabi64` | | | MIPS64 (LE) Linux, n64 ABI, MUSL with dynamic linking +`mips64-unknown-linux-dynmuslabi64` | | | MIPS64 Linux, n64 ABI, musl libc with dynamic linking +`mips64el-unknown-linux-dynmuslabi64` | | | MIPS64 (LE) Linux, n64 ABI, musl libc with dynamic linking `mipsisa32r6-unknown-linux-gnu` | ? | | `mipsisa32r6el-unknown-linux-gnu` | ? | | `mipsisa64r6-unknown-linux-gnuabi64` | ? | | @@ -220,14 +220,14 @@ target | std | host | notes `riscv64gc-unknown-linux-musl` | | | RISC-V Linux (kernel 4.20, musl 1.2.0) `riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33) `riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl + RISCV32 support patches) -`s390x-unknown-linux-musl` | | | S390x Linux (kernel 2.6.32, MUSL) -`s390x-unknown-linux-dynmusl` | | | S390x Linux (kernel 2.6.32, MUSL with dynamic linking) +`s390x-unknown-linux-musl` | | | S390x Linux (kernel 2.6.32, musl libc) +`s390x-unknown-linux-dynmusl` | | | S390x Linux (kernel 2.6.32, musl libc with dynamic linking) `sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux `sparc64-unknown-netbsd` | ✓ | ✓ | NetBSD/sparc64 `sparc64-unknown-openbsd` | ? | | `thumbv7a-pc-windows-msvc` | ? | | `thumbv7a-uwp-windows-msvc` | ✓ | | -`thumbv7neon-unknown-linux-musleabihf` | ? | | Thumb2-mode ARMv7a Linux with NEON, MUSL +`thumbv7neon-unknown-linux-musleabihf` | ? | | Thumb2-mode ARMv7a Linux with NEON, musl libc `thumbv4t-none-eabi` | * | | ARMv4T T32 `x86_64-apple-ios-macabi` | ✓ | | Apple Catalyst on x86_64 `x86_64-apple-tvos` | * | | x86 64-bit tvOS @@ -239,7 +239,7 @@ target | std | host | notes `x86_64-unknown-hermit` | ? | | `x86_64-unknown-hermit-kernel` | ? | | HermitCore kernel `x86_64-unknown-l4re-uclibc` | ? | | -`x86_64-unknown-linux-dynmusl` | | | 64-bit x86 Linux, MUSL with dynamic linking +`x86_64-unknown-linux-dynmusl` | | | 64-bit x86 Linux, musl libc with dynamic linking `x86_64-unknown-openbsd` | ✓ | ✓ | 64-bit OpenBSD `x86_64-unknown-uefi` | ? | | `x86_64-uwp-windows-gnu` | ✓ | |