--- rustc-1.35.0-src/src/bootstrap/compile.rs +++ rustc-1.35.0-src/src/bootstrap/compile.rs @@ -114,20 +114,7 @@ impl Step for Std { fn copy_third_party_objects(builder: &Builder<'_>, compiler: &Compiler, target: Interned) { let libdir = builder.sysroot_libdir(*compiler, target); - // Copies the crt(1,i,n).o startup objects - // - // Since musl supports fully static linking, we can cross link for it even - // with a glibc-targeting toolchain, given we have the appropriate startup - // files. As those shipped with glibc won't work, copy the ones provided by - // musl so we have them on linux-gnu hosts. - if target.contains("musl") { - for &obj in &["crt1.o", "crti.o", "crtn.o"] { - builder.copy( - &builder.musl_root(target).unwrap().join("lib").join(obj), - &libdir.join(obj), - ); - } - } else if target.ends_with("-wasi") { + if target.ends_with("-wasi") { for &obj in &["crt1.o"] { builder.copy( &builder.wasi_root(target).unwrap().join("lib/wasm32-wasi").join(obj), --- rustc-1.35.0-src/vendor/libc/src/unix/mod.rs +++ rustc-1.35.0-src/vendor/libc/src/unix/mod.rs @@ -306,13 +306,6 @@ cfg_if! { } else if #[cfg(feature = "use_std")] { // cargo build, don't pull in anything extra as the libstd dep // already pulls in all libs. - } else if #[cfg(target_env = "musl")] { - #[cfg_attr(feature = "rustc-dep-of-std", - link(name = "c", kind = "static", - cfg(target_feature = "crt-static")))] - #[cfg_attr(feature = "rustc-dep-of-std", - link(name = "c", cfg(not(target_feature = "crt-static"))))] - extern {} } else if #[cfg(target_os = "emscripten")] { #[link(name = "c")] extern {}