Skip to content

Commit acd1869

Browse files
committed
Pass host flags to rustc shim using prefixed env. vars
1 parent 65519f5 commit acd1869

File tree

3 files changed

+11
-15
lines changed

3 files changed

+11
-15
lines changed

src/bootstrap/bin/rustdoc.rs

-9
Original file line numberDiff line numberDiff line change
@@ -48,15 +48,6 @@ fn main() {
4848
if env::var_os("RUSTC_FORCE_UNSTABLE").is_some() {
4949
cmd.arg("-Z").arg("force-unstable-if-unmarked");
5050
}
51-
if let Some(linker) = env::var_os("RUSTDOC_LINKER") {
52-
let mut arg = OsString::from("-Clinker=");
53-
arg.push(&linker);
54-
cmd.arg(arg);
55-
}
56-
if let Ok(no_threads) = env::var("RUSTDOC_LLD_NO_THREADS") {
57-
cmd.arg("-Clink-arg=-fuse-ld=lld");
58-
cmd.arg(format!("-Clink-arg=-Wl,{no_threads}"));
59-
}
6051
// Cargo doesn't pass RUSTDOCFLAGS to proc_macros:
6152
// https://github.com/rust-lang/cargo/issues/4423
6253
// Thus, if we are on stage 0, we explicitly set `--cfg=bootstrap`.

src/bootstrap/builder.rs

+3-1
Original file line numberDiff line numberDiff line change
@@ -1172,7 +1172,9 @@ impl<'a> Builder<'a> {
11721172
cmd.env_remove("MFLAGS");
11731173

11741174
if let Some(linker) = self.linker(compiler.host) {
1175-
cmd.env("RUSTDOC_LINKER", linker);
1175+
let mut flag = std::ffi::OsString::from("-Clinker=");
1176+
flag.push(linker);
1177+
cmd.arg(flag);
11761178
}
11771179
if self.is_fuse_ld_lld(compiler.host) {
11781180
cmd.env("RUSTDOC_FUSE_LD_LLD", "1");

src/bootstrap/test.rs

+8-5
Original file line numberDiff line numberDiff line change
@@ -854,13 +854,16 @@ impl Step for RustdocTheme {
854854
.env("RUSTDOC_REAL", builder.rustdoc(self.compiler))
855855
.env("RUSTC_BOOTSTRAP", "1");
856856
if let Some(linker) = builder.linker(self.compiler.host) {
857-
cmd.env("RUSTDOC_LINKER", linker);
857+
let mut flag = std::ffi::OsString::from("-Clinker=");
858+
flag.push(linker);
859+
cmd.arg(flag);
858860
}
859861
if builder.is_fuse_ld_lld(self.compiler.host) {
860-
cmd.env(
861-
"RUSTDOC_LLD_NO_THREADS",
862-
util::lld_flag_no_threads(self.compiler.host.contains("windows")),
863-
);
862+
cmd.arg("-Clink-arg=-fuse-ld=lld");
863+
cmd.arg(format!(
864+
"-Clink-arg=-Wl,{}",
865+
util::lld_flag_no_threads(self.compiler.host.contains("windows"))
866+
));
864867
}
865868
builder.run_delaying_failure(&mut cmd);
866869
}

0 commit comments

Comments
 (0)