Skip to content

Commit 351e4bd

Browse files
committed
handle bootstrap cfgs
1 parent 2108631 commit 351e4bd

File tree

4 files changed

+12
-34
lines changed

4 files changed

+12
-34
lines changed

src/bootstrap/src/core/build_steps/test.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,6 @@ impl Step for Cargotest {
296296
builder,
297297
tested_compiler.host,
298298
LldThreads::No,
299-
tested_compiler.stage,
300299
);
301300
cmd.delay_failure().run(builder);
302301
}
@@ -940,7 +939,7 @@ impl Step for RustdocTheme {
940939
.env("CFG_RELEASE_CHANNEL", &builder.config.channel)
941940
.env("RUSTDOC_REAL", builder.rustdoc_for_compiler(self.compiler))
942941
.env("RUSTC_BOOTSTRAP", "1");
943-
cmd.args(linker_args(builder, self.compiler.host, LldThreads::No, self.compiler.stage));
942+
cmd.args(linker_args(builder, self.compiler.host, LldThreads::No));
944943

945944
cmd.delay_failure().run(builder);
946945
}
@@ -1125,7 +1124,6 @@ impl Step for RustdocGUI {
11251124
builder,
11261125
self.compiler.host,
11271126
LldThreads::No,
1128-
self.compiler.stage,
11291127
);
11301128

11311129
for path in &builder.paths {
@@ -1951,7 +1949,7 @@ NOTE: if you're sure you want to do this, please open an issue as to why. In the
19511949
}
19521950

19531951
let mut hostflags = flags.clone();
1954-
hostflags.extend(linker_flags(builder, compiler.host, LldThreads::No, compiler.stage));
1952+
hostflags.extend(linker_flags(builder, compiler.host, LldThreads::No));
19551953

19561954
let mut targetflags = flags;
19571955

src/bootstrap/src/core/builder/cargo.rs

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -115,7 +115,7 @@ impl Cargo {
115115
// No need to configure the target linker for these command types.
116116
Kind::Clean | Kind::Check | Kind::Format | Kind::Setup => {}
117117
_ => {
118-
cargo.configure_linker(builder, mode);
118+
cargo.configure_linker(builder);
119119
}
120120
}
121121

@@ -209,7 +209,7 @@ impl Cargo {
209209

210210
// FIXME(onur-ozkan): Add coverage to make sure modifications to this function
211211
// doesn't cause cache invalidations (e.g., #130108).
212-
fn configure_linker(&mut self, builder: &Builder<'_>, mode: Mode) -> &mut Cargo {
212+
fn configure_linker(&mut self, builder: &Builder<'_>) -> &mut Cargo {
213213
let target = self.target;
214214
let compiler = self.compiler;
215215

@@ -264,12 +264,7 @@ impl Cargo {
264264
}
265265
}
266266

267-
// We use the snapshot compiler when building host code (build scripts/proc macros) of
268-
// `Mode::Std` tools, so we need to determine the current stage here to pass the proper
269-
// linker args (e.g. -C vs -Z).
270-
// This should stay synchronized with the [cargo] function.
271-
let host_stage = if mode == Mode::Std { 0 } else { compiler.stage };
272-
for arg in linker_args(builder, compiler.host, LldThreads::Yes, host_stage) {
267+
for arg in linker_args(builder, compiler.host, LldThreads::Yes) {
273268
self.hostflags.arg(&arg);
274269
}
275270

@@ -279,10 +274,10 @@ impl Cargo {
279274
}
280275
// We want to set -Clinker using Cargo, therefore we only call `linker_flags` and not
281276
// `linker_args` here.
282-
for flag in linker_flags(builder, target, LldThreads::Yes, compiler.stage) {
277+
for flag in linker_flags(builder, target, LldThreads::Yes) {
283278
self.rustflags.arg(&flag);
284279
}
285-
for arg in linker_args(builder, target, LldThreads::Yes, compiler.stage) {
280+
for arg in linker_args(builder, target, LldThreads::Yes) {
286281
self.rustdocflags.arg(&arg);
287282
}
288283

src/bootstrap/src/core/builder/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1623,7 +1623,7 @@ You have to build a stage1 compiler for `{}` first, and then use it to build a s
16231623
cmd.arg("-Dwarnings");
16241624
}
16251625
cmd.arg("-Znormalize-docs");
1626-
cmd.args(linker_args(self, compiler.host, LldThreads::Yes, compiler.stage));
1626+
cmd.args(linker_args(self, compiler.host, LldThreads::Yes));
16271627
cmd
16281628
}
16291629

src/bootstrap/src/utils/helpers.rs

Lines changed: 4 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -404,9 +404,8 @@ pub fn linker_args(
404404
builder: &Builder<'_>,
405405
target: TargetSelection,
406406
lld_threads: LldThreads,
407-
stage: u32,
408407
) -> Vec<String> {
409-
let mut args = linker_flags(builder, target, lld_threads, stage);
408+
let mut args = linker_flags(builder, target, lld_threads);
410409

411410
if let Some(linker) = builder.linker(target) {
412411
args.push(format!("-Clinker={}", linker.display()));
@@ -421,29 +420,16 @@ pub fn linker_flags(
421420
builder: &Builder<'_>,
422421
target: TargetSelection,
423422
lld_threads: LldThreads,
424-
stage: u32,
425423
) -> Vec<String> {
426424
let mut args = vec![];
427425
if !builder.is_lld_direct_linker(target) && builder.config.lld_mode.is_used() {
428426
match builder.config.lld_mode {
429427
LldMode::External => {
430-
// cfg(bootstrap) - remove the stage 0 check after updating the bootstrap compiler:
431-
// `-Clinker-features` has been stabilized.
432-
if stage == 0 {
433-
args.push("-Zlinker-features=+lld".to_string());
434-
} else {
435-
args.push("-Clinker-features=+lld".to_string());
436-
}
428+
args.push("-Clinker-features=+lld".to_string());
437429
args.push("-Zunstable-options".to_string());
438430
}
439431
LldMode::SelfContained => {
440-
// cfg(bootstrap) - remove the stage 0 check after updating the bootstrap compiler:
441-
// `-Clinker-features` has been stabilized.
442-
if stage == 0 {
443-
args.push("-Zlinker-features=+lld".to_string());
444-
} else {
445-
args.push("-Clinker-features=+lld".to_string());
446-
}
432+
args.push("-Clinker-features=+lld".to_string());
447433
args.push("-Clink-self-contained=+linker".to_string());
448434
args.push("-Zunstable-options".to_string());
449435
}
@@ -465,9 +451,8 @@ pub fn add_rustdoc_cargo_linker_args(
465451
builder: &Builder<'_>,
466452
target: TargetSelection,
467453
lld_threads: LldThreads,
468-
stage: u32,
469454
) {
470-
let args = linker_args(builder, target, lld_threads, stage);
455+
let args = linker_args(builder, target, lld_threads);
471456
let mut flags = cmd
472457
.get_envs()
473458
.find_map(|(k, v)| if k == OsStr::new("RUSTDOCFLAGS") { v } else { None })

0 commit comments

Comments
 (0)