Skip to content

Commit 9dfe504

Browse files
committed
bootstrap: Get rid of tail_args in stream_cargo
1 parent c8c849e commit 9dfe504

File tree

3 files changed

+17
-52
lines changed

3 files changed

+17
-52
lines changed

src/bootstrap/check.rs

+12-27
Original file line numberDiff line numberDiff line change
@@ -99,19 +99,13 @@ impl Step for Std {
9999
cargo_subcommand(builder.kind),
100100
);
101101
std_cargo(builder, target, compiler.stage, &mut cargo);
102+
cargo.args(args(builder));
102103

103104
builder.info(&format!(
104105
"Checking stage{} library artifacts ({} -> {})",
105106
builder.top_stage, &compiler.host, target
106107
));
107-
run_cargo(
108-
builder,
109-
cargo,
110-
args(builder),
111-
&libstd_stamp(builder, compiler, target),
112-
vec![],
113-
true,
114-
);
108+
run_cargo(builder, cargo, &libstd_stamp(builder, compiler, target), vec![], true);
115109

116110
// We skip populating the sysroot in non-zero stage because that'll lead
117111
// to rlib/rmeta conflicts if std gets built during this session.
@@ -155,19 +149,13 @@ impl Step for Std {
155149
for krate in builder.in_tree_crates("test", Some(target)) {
156150
cargo.arg("-p").arg(krate.name);
157151
}
152+
cargo.args(args(builder));
158153

159154
builder.info(&format!(
160155
"Checking stage{} library test/bench/example targets ({} -> {})",
161156
builder.top_stage, &compiler.host, target
162157
));
163-
run_cargo(
164-
builder,
165-
cargo,
166-
args(builder),
167-
&libstd_test_stamp(builder, compiler, target),
168-
vec![],
169-
true,
170-
);
158+
run_cargo(builder, cargo, &libstd_test_stamp(builder, compiler, target), vec![], true);
171159
}
172160
}
173161

@@ -231,19 +219,13 @@ impl Step for Rustc {
231219
for krate in builder.in_tree_crates("rustc-main", Some(target)) {
232220
cargo.arg("-p").arg(krate.name);
233221
}
222+
cargo.args(args(builder));
234223

235224
builder.info(&format!(
236225
"Checking stage{} compiler artifacts ({} -> {})",
237226
builder.top_stage, &compiler.host, target
238227
));
239-
run_cargo(
240-
builder,
241-
cargo,
242-
args(builder),
243-
&librustc_stamp(builder, compiler, target),
244-
vec![],
245-
true,
246-
);
228+
run_cargo(builder, cargo, &librustc_stamp(builder, compiler, target), vec![], true);
247229

248230
let libdir = builder.sysroot_libdir(compiler, target);
249231
let hostdir = builder.sysroot_libdir(compiler, compiler.host);
@@ -290,6 +272,7 @@ impl Step for CodegenBackend {
290272
.arg("--manifest-path")
291273
.arg(builder.src.join(format!("compiler/rustc_codegen_{}/Cargo.toml", backend)));
292274
rustc_cargo_env(builder, &mut cargo, target);
275+
cargo.args(args(builder));
293276

294277
builder.info(&format!(
295278
"Checking stage{} {} artifacts ({} -> {})",
@@ -299,7 +282,6 @@ impl Step for CodegenBackend {
299282
run_cargo(
300283
builder,
301284
cargo,
302-
args(builder),
303285
&codegen_backend_stamp(builder, compiler, target, backend),
304286
vec![],
305287
true,
@@ -355,11 +337,13 @@ impl Step for RustAnalyzer {
355337
cargo.arg("--benches");
356338
}
357339

340+
cargo.args(args(builder));
341+
358342
builder.info(&format!(
359343
"Checking stage{} {} artifacts ({} -> {})",
360344
compiler.stage, "rust-analyzer", &compiler.host.triple, target.triple
361345
));
362-
run_cargo(builder, cargo, args(builder), &stamp(builder, compiler, target), vec![], true);
346+
run_cargo(builder, cargo, &stamp(builder, compiler, target), vec![], true);
363347

364348
/// Cargo's output path in a given stage, compiled by a particular
365349
/// compiler for the specified target.
@@ -413,6 +397,8 @@ macro_rules! tool_check_step {
413397
cargo.arg("--all-targets");
414398
}
415399

400+
cargo.args(args(builder));
401+
416402
// Enable internal lints for clippy and rustdoc
417403
// NOTE: this doesn't enable lints for any other tools unless they explicitly add `#![warn(rustc::internal)]`
418404
// See https://github.com/rust-lang/rust/pull/80573#issuecomment-754010776
@@ -428,7 +414,6 @@ macro_rules! tool_check_step {
428414
run_cargo(
429415
builder,
430416
cargo,
431-
args(builder),
432417
&stamp(builder, compiler, target),
433418
vec![],
434419
true,

src/bootstrap/compile.rs

+4-24
Original file line numberDiff line numberDiff line change
@@ -141,14 +141,7 @@ impl Step for Std {
141141
&compiler.host,
142142
target,
143143
));
144-
run_cargo(
145-
builder,
146-
cargo,
147-
vec![],
148-
&libstd_stamp(builder, compiler, target),
149-
target_deps,
150-
false,
151-
);
144+
run_cargo(builder, cargo, &libstd_stamp(builder, compiler, target), target_deps, false);
152145

153146
builder.ensure(StdLink::from_std(
154147
self,
@@ -735,14 +728,7 @@ impl Step for Rustc {
735728
&compiler.host,
736729
target,
737730
));
738-
run_cargo(
739-
builder,
740-
cargo,
741-
vec![],
742-
&librustc_stamp(builder, compiler, target),
743-
vec![],
744-
false,
745-
);
731+
run_cargo(builder, cargo, &librustc_stamp(builder, compiler, target), vec![], false);
746732

747733
builder.ensure(RustcLink::from_rustc(
748734
self,
@@ -998,7 +984,7 @@ impl Step for CodegenBackend {
998984
"Building stage{} codegen backend {} ({} -> {})",
999985
compiler.stage, backend, &compiler.host, target
1000986
));
1001-
let files = run_cargo(builder, cargo, vec![], &tmp_stamp, vec![], false);
987+
let files = run_cargo(builder, cargo, &tmp_stamp, vec![], false);
1002988
if builder.config.dry_run() {
1003989
return;
1004990
}
@@ -1422,7 +1408,6 @@ pub fn add_to_sysroot(
14221408
pub fn run_cargo(
14231409
builder: &Builder<'_>,
14241410
cargo: Cargo,
1425-
tail_args: Vec<String>,
14261411
stamp: &Path,
14271412
additional_target_deps: Vec<(PathBuf, DependencyType)>,
14281413
is_check: bool,
@@ -1448,7 +1433,7 @@ pub fn run_cargo(
14481433
// files we need to probe for later.
14491434
let mut deps = Vec::new();
14501435
let mut toplevel = Vec::new();
1451-
let ok = stream_cargo(builder, cargo, tail_args, &mut |msg| {
1436+
let ok = stream_cargo(builder, cargo, &mut |msg| {
14521437
let (filenames, crate_types) = match msg {
14531438
CargoMessage::CompilerArtifact {
14541439
filenames,
@@ -1563,7 +1548,6 @@ pub fn run_cargo(
15631548
pub fn stream_cargo(
15641549
builder: &Builder<'_>,
15651550
cargo: Cargo,
1566-
tail_args: Vec<String>,
15671551
cb: &mut dyn FnMut(CargoMessage<'_>),
15681552
) -> bool {
15691553
let mut cargo = Command::from(cargo);
@@ -1583,10 +1567,6 @@ pub fn stream_cargo(
15831567
}
15841568
cargo.arg("--message-format").arg(message_format).stdout(Stdio::piped());
15851569

1586-
for arg in tail_args {
1587-
cargo.arg(arg);
1588-
}
1589-
15901570
builder.verbose(&format!("running: {:?}", cargo));
15911571
let mut child = match cargo.spawn() {
15921572
Ok(child) => child,

src/bootstrap/tool.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ impl Step for ToolBuild {
7272

7373
builder.info(&format!("Building stage{} tool {} ({})", compiler.stage, tool, target));
7474
let mut duplicates = Vec::new();
75-
let is_expected = compile::stream_cargo(builder, cargo, vec![], &mut |msg| {
75+
let is_expected = compile::stream_cargo(builder, cargo, &mut |msg| {
7676
// Only care about big things like the RLS/Cargo for now
7777
match tool {
7878
"rls" | "cargo" | "clippy-driver" | "miri" | "rustfmt" => {}

0 commit comments

Comments
 (0)