Skip to content

Commit ae17c65

Browse files
committed
migrate build step run methods
1 parent 3704009 commit ae17c65

File tree

17 files changed

+152
-120
lines changed

17 files changed

+152
-120
lines changed

src/bootstrap/src/core/build_steps/clean.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,7 @@ macro_rules! clean_crate_tree {
8686

8787
// NOTE: doesn't use `run_cargo` because we don't want to save a stamp file,
8888
// and doesn't use `stream_cargo` to avoid passing `--message-format` which `clean` doesn't accept.
89-
cargo.run(builder);
89+
cargo.run(builder.context());
9090
}
9191
}
9292
)+ }

src/bootstrap/src/core/build_steps/compile.rs

Lines changed: 10 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ pub fn std_cargo(builder: &Builder<'_>, target: TargetSelection, stage: u32, car
520520
let mut cmd = command(builder.rustc(cargo.compiler()));
521521
cmd.arg("--target").arg(target.rustc_target_arg());
522522
cmd.arg("--print=deployment-target");
523-
let output = cmd.run_capture_stdout(builder).stdout();
523+
let output = cmd.run_capture_stdout(builder.context()).stdout();
524524

525525
let (env_var, value) = output.split_once('=').unwrap();
526526
// Unconditionally set the env var (if it was set in the environment
@@ -853,7 +853,7 @@ fn copy_sanitizers(
853853
}
854854

855855
fn apple_darwin_update_library_name(builder: &Builder<'_>, library_path: &Path, new_name: &str) {
856-
command("install_name_tool").arg("-id").arg(new_name).arg(library_path).run(builder);
856+
command("install_name_tool").arg("-id").arg(new_name).arg(library_path).run(builder.context());
857857
}
858858

859859
fn apple_darwin_sign_file(builder: &Builder<'_>, file_path: &Path) {
@@ -862,7 +862,7 @@ fn apple_darwin_sign_file(builder: &Builder<'_>, file_path: &Path) {
862862
.arg("-s")
863863
.arg("-")
864864
.arg(file_path)
865-
.run(builder);
865+
.run(builder.context());
866866
}
867867

868868
#[derive(Debug, Clone, PartialEq, Eq, Hash)]
@@ -930,7 +930,7 @@ impl Step for StartupObjects {
930930
.arg("-o")
931931
.arg(dst_file)
932932
.arg(src_file)
933-
.run(builder);
933+
.run(builder.context());
934934
}
935935

936936
let obj = sysroot_dir.join((*file).to_string() + ".o");
@@ -1725,7 +1725,7 @@ pub fn compiler_file(
17251725
cmd.args(builder.cc_handled_clags(target, c));
17261726
cmd.args(builder.cc_unhandled_cflags(target, GitRepo::Rustc, c));
17271727
cmd.arg(format!("-print-file-name={file}"));
1728-
let out = cmd.run_capture_stdout(builder).stdout();
1728+
let out = cmd.run_capture_stdout(builder.context()).stdout();
17291729
PathBuf::from(out.trim())
17301730
}
17311731

@@ -1968,8 +1968,10 @@ impl Step for Assemble {
19681968
if !builder.config.dry_run() && builder.config.llvm_tools_enabled {
19691969
trace!("LLVM tools enabled");
19701970

1971-
let llvm_bin_dir =
1972-
command(llvm_config).arg("--bindir").run_capture_stdout(builder).stdout();
1971+
let llvm_bin_dir = command(llvm_config)
1972+
.arg("--bindir")
1973+
.run_capture_stdout(builder.context())
1974+
.stdout();
19731975
let llvm_bin_dir = Path::new(llvm_bin_dir.trim());
19741976

19751977
// Since we've already built the LLVM tools, install them to the sysroot.
@@ -2540,7 +2542,7 @@ pub fn strip_debug(builder: &Builder<'_>, target: TargetSelection, path: &Path)
25402542
}
25412543

25422544
let previous_mtime = t!(t!(path.metadata()).modified());
2543-
command("strip").arg("--strip-debug").arg(path).run_capture(builder);
2545+
command("strip").arg("--strip-debug").arg(path).run_capture(builder.context());
25442546

25452547
let file = t!(fs::File::open(path));
25462548

src/bootstrap/src/core/build_steps/dist.rs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -183,7 +183,7 @@ fn make_win_dist(
183183
//Ask gcc where it keeps its stuff
184184
let mut cmd = command(builder.cc(target));
185185
cmd.arg("-print-search-dirs");
186-
let gcc_out = cmd.run_capture_stdout(builder).stdout();
186+
let gcc_out = cmd.run_capture_stdout(builder.context()).stdout();
187187

188188
let mut bin_path: Vec<_> = env::split_paths(&env::var_os("PATH").unwrap_or_default()).collect();
189189
let mut lib_path = Vec::new();
@@ -1629,7 +1629,7 @@ impl Step for Extended {
16291629
.arg(pkg.join(component))
16301630
.arg("--nopayload")
16311631
.arg(pkg.join(component).with_extension("pkg"));
1632-
cmd.run(builder);
1632+
cmd.run(builder.context());
16331633
};
16341634

16351635
let prepare = |name: &str| {
@@ -1678,7 +1678,7 @@ impl Step for Extended {
16781678
.arg("--package-path")
16791679
.arg(&pkg);
16801680
let _time = timeit(builder);
1681-
cmd.run(builder);
1681+
cmd.run(builder.context());
16821682
}
16831683

16841684
if target.is_windows() {
@@ -1747,7 +1747,7 @@ impl Step for Extended {
17471747
.arg("var.RustcDir")
17481748
.arg("-out")
17491749
.arg(exe.join("RustcGroup.wxs"))
1750-
.run(builder);
1750+
.run(builder.context());
17511751
if built_tools.contains("rust-docs") {
17521752
command(&heat)
17531753
.current_dir(&exe)
@@ -1764,7 +1764,7 @@ impl Step for Extended {
17641764
.arg(exe.join("DocsGroup.wxs"))
17651765
.arg("-t")
17661766
.arg(etc.join("msi/squash-components.xsl"))
1767-
.run(builder);
1767+
.run(builder.context());
17681768
}
17691769
command(&heat)
17701770
.current_dir(&exe)
@@ -1781,7 +1781,7 @@ impl Step for Extended {
17811781
.arg(exe.join("CargoGroup.wxs"))
17821782
.arg("-t")
17831783
.arg(etc.join("msi/remove-duplicates.xsl"))
1784-
.run(builder);
1784+
.run(builder.context());
17851785
command(&heat)
17861786
.current_dir(&exe)
17871787
.arg("dir")
@@ -1795,7 +1795,7 @@ impl Step for Extended {
17951795
.arg("var.StdDir")
17961796
.arg("-out")
17971797
.arg(exe.join("StdGroup.wxs"))
1798-
.run(builder);
1798+
.run(builder.context());
17991799
if built_tools.contains("rust-analyzer") {
18001800
command(&heat)
18011801
.current_dir(&exe)
@@ -1812,7 +1812,7 @@ impl Step for Extended {
18121812
.arg(exe.join("RustAnalyzerGroup.wxs"))
18131813
.arg("-t")
18141814
.arg(etc.join("msi/remove-duplicates.xsl"))
1815-
.run(builder);
1815+
.run(builder.context());
18161816
}
18171817
if built_tools.contains("clippy") {
18181818
command(&heat)
@@ -1830,7 +1830,7 @@ impl Step for Extended {
18301830
.arg(exe.join("ClippyGroup.wxs"))
18311831
.arg("-t")
18321832
.arg(etc.join("msi/remove-duplicates.xsl"))
1833-
.run(builder);
1833+
.run(builder.context());
18341834
}
18351835
if built_tools.contains("rustfmt") {
18361836
command(&heat)
@@ -1848,7 +1848,7 @@ impl Step for Extended {
18481848
.arg(exe.join("RustFmtGroup.wxs"))
18491849
.arg("-t")
18501850
.arg(etc.join("msi/remove-duplicates.xsl"))
1851-
.run(builder);
1851+
.run(builder.context());
18521852
}
18531853
if built_tools.contains("miri") {
18541854
command(&heat)
@@ -1866,7 +1866,7 @@ impl Step for Extended {
18661866
.arg(exe.join("MiriGroup.wxs"))
18671867
.arg("-t")
18681868
.arg(etc.join("msi/remove-duplicates.xsl"))
1869-
.run(builder);
1869+
.run(builder.context());
18701870
}
18711871
command(&heat)
18721872
.current_dir(&exe)
@@ -1883,7 +1883,7 @@ impl Step for Extended {
18831883
.arg(exe.join("AnalysisGroup.wxs"))
18841884
.arg("-t")
18851885
.arg(etc.join("msi/remove-duplicates.xsl"))
1886-
.run(builder);
1886+
.run(builder.context());
18871887
if target.is_windows_gnu() {
18881888
command(&heat)
18891889
.current_dir(&exe)
@@ -1898,7 +1898,7 @@ impl Step for Extended {
18981898
.arg("var.GccDir")
18991899
.arg("-out")
19001900
.arg(exe.join("GccGroup.wxs"))
1901-
.run(builder);
1901+
.run(builder.context());
19021902
}
19031903

19041904
let candle = |input: &Path| {
@@ -1936,7 +1936,7 @@ impl Step for Extended {
19361936
if target.is_windows_gnu() {
19371937
cmd.arg("-dGccDir=rust-mingw");
19381938
}
1939-
cmd.run(builder);
1939+
cmd.run(builder.context());
19401940
};
19411941
candle(&xform(&etc.join("msi/rust.wxs")));
19421942
candle(&etc.join("msi/ui.wxs"));
@@ -2011,7 +2011,7 @@ impl Step for Extended {
20112011
cmd.arg("-sice:ICE57");
20122012

20132013
let _time = timeit(builder);
2014-
cmd.run(builder);
2014+
cmd.run(builder.context());
20152015

20162016
if !builder.config.dry_run() {
20172017
t!(move_file(exe.join(&filename), distdir(builder).join(&filename)));
@@ -2155,7 +2155,7 @@ fn maybe_install_llvm(
21552155
let mut cmd = command(llvm_config);
21562156
cmd.arg("--libfiles");
21572157
builder.verbose(|| println!("running {cmd:?}"));
2158-
let files = cmd.run_capture_stdout(builder).stdout();
2158+
let files = cmd.run_capture_stdout(builder.context()).stdout();
21592159
let build_llvm_out = &builder.llvm_out(builder.config.build);
21602160
let target_llvm_out = &builder.llvm_out(target);
21612161
for file in files.trim_end().split(' ') {

src/bootstrap/src/core/build_steps/doc.rs

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ impl<P: Step> Step for RustbookSrc<P> {
166166
.arg(&out)
167167
.arg("--rust-root")
168168
.arg(&builder.src)
169-
.run(builder);
169+
.run(builder.context());
170170

171171
for lang in &self.languages {
172172
let out = out.join(lang);
@@ -182,7 +182,7 @@ impl<P: Step> Step for RustbookSrc<P> {
182182
.arg(&out)
183183
.arg("-l")
184184
.arg(lang)
185-
.run(builder);
185+
.run(builder.context());
186186
}
187187
}
188188

@@ -309,7 +309,7 @@ fn invoke_rustdoc(
309309
cmd.arg("--disable-minification");
310310
}
311311

312-
cmd.run(builder);
312+
cmd.run(builder.context());
313313
}
314314

315315
#[derive(Debug, Clone, Hash, PartialEq, Eq)]
@@ -402,7 +402,7 @@ impl Step for Standalone {
402402
} else {
403403
cmd.arg("--markdown-css").arg("rust.css");
404404
}
405-
cmd.run(builder);
405+
cmd.run(builder.context());
406406
}
407407

408408
// We open doc/index.html as the default if invoked as `x.py doc --open`
@@ -499,7 +499,7 @@ impl Step for Releases {
499499
cmd.arg("--disable-minification");
500500
}
501501

502-
cmd.run(builder);
502+
cmd.run(builder.context());
503503
}
504504

505505
// We open doc/RELEASES.html as the default if invoked as `x.py doc --open RELEASES.md`
@@ -745,7 +745,7 @@ fn doc_std(
745745
format!("library{} in {} format", crate_description(requested_crates), format.as_str());
746746
let _guard = builder.msg_doc(compiler, description, target);
747747

748-
cargo.into_cmd().run(builder);
748+
cargo.into_cmd().run(builder.context());
749749
builder.cp_link_r(&out_dir, out);
750750
}
751751

@@ -875,7 +875,7 @@ impl Step for Rustc {
875875
let proc_macro_out_dir = builder.stage_out(compiler, Mode::Rustc).join("doc");
876876
symlink_dir_force(&builder.config, &out, &proc_macro_out_dir);
877877

878-
cargo.into_cmd().run(builder);
878+
cargo.into_cmd().run(builder.context());
879879

880880
if !builder.config.dry_run() {
881881
// Sanity check on linked compiler crates
@@ -1002,7 +1002,7 @@ macro_rules! tool_doc {
10021002
symlink_dir_force(&builder.config, &out, &proc_macro_out_dir);
10031003

10041004
let _guard = builder.msg_doc(compiler, stringify!($tool).to_lowercase(), target);
1005-
cargo.into_cmd().run(builder);
1005+
cargo.into_cmd().run(builder.context());
10061006

10071007
if !builder.config.dry_run() {
10081008
// Sanity check on linked doc directories
@@ -1095,7 +1095,11 @@ impl Step for ErrorIndex {
10951095
builder.info(&format!("Documenting error index ({})", self.target));
10961096
let out = builder.doc_out(self.target);
10971097
t!(fs::create_dir_all(&out));
1098-
tool::ErrorIndex::command(builder).arg("html").arg(out).arg(&builder.version).run(builder);
1098+
tool::ErrorIndex::command(builder)
1099+
.arg("html")
1100+
.arg(out)
1101+
.arg(&builder.version)
1102+
.run(builder.context());
10991103
}
11001104
}
11011105

@@ -1131,7 +1135,7 @@ impl Step for UnstableBookGen {
11311135
cmd.arg(builder.src.join("src"));
11321136
cmd.arg(out);
11331137

1134-
cmd.run(builder);
1138+
cmd.run(builder.context());
11351139
}
11361140
}
11371141

@@ -1229,7 +1233,7 @@ impl Step for RustcBook {
12291233
self.compiler.host,
12301234
self.target,
12311235
);
1232-
cmd.run(builder);
1236+
cmd.run(builder.context());
12331237
drop(doc_generator_guard);
12341238

12351239
// Run rustbook/mdbook to generate the HTML pages.

src/bootstrap/src/core/build_steps/format.rs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,7 @@ fn get_rustfmt_version(build: &Builder<'_>) -> Option<(String, BuildStamp)> {
6161
let mut cmd = command(build.config.initial_rustfmt.as_ref()?);
6262
cmd.arg("--version");
6363

64-
let output = cmd.allow_failure().run_capture(build);
64+
let output = cmd.allow_failure().run_capture(build.context());
6565
if output.is_failure() {
6666
return None;
6767
}
@@ -171,24 +171,27 @@ pub fn format(build: &Builder<'_>, check: bool, all: bool, paths: &[PathBuf]) {
171171
override_builder.add(&format!("!{ignore}")).expect(&ignore);
172172
}
173173
}
174-
let git_available =
175-
helpers::git(None).allow_failure().arg("--version").run_capture(build).is_success();
174+
let git_available = helpers::git(None)
175+
.allow_failure()
176+
.arg("--version")
177+
.run_capture(build.context())
178+
.is_success();
176179

177180
let mut adjective = None;
178181
if git_available {
179182
let in_working_tree = helpers::git(Some(&build.src))
180183
.allow_failure()
181184
.arg("rev-parse")
182185
.arg("--is-inside-work-tree")
183-
.run_capture(build)
186+
.run_capture(build.context())
184187
.is_success();
185188
if in_working_tree {
186189
let untracked_paths_output = helpers::git(Some(&build.src))
187190
.arg("status")
188191
.arg("--porcelain")
189192
.arg("-z")
190193
.arg("--untracked-files=normal")
191-
.run_capture_stdout(build)
194+
.run_capture_stdout(build.context())
192195
.stdout();
193196
let untracked_paths: Vec<_> = untracked_paths_output
194197
.split_terminator('\0')

src/bootstrap/src/core/build_steps/gcc.rs

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -236,7 +236,9 @@ fn build_gcc(metadata: &Meta, builder: &Builder<'_>, target: TargetSelection) {
236236
root.clone()
237237
};
238238

239-
command(src_dir.join("contrib/download_prerequisites")).current_dir(&src_dir).run(builder);
239+
command(src_dir.join("contrib/download_prerequisites"))
240+
.current_dir(&src_dir)
241+
.run(builder.context());
240242
let mut configure_cmd = command(src_dir.join("configure"));
241243
configure_cmd
242244
.current_dir(out_dir)
@@ -266,14 +268,18 @@ fn build_gcc(metadata: &Meta, builder: &Builder<'_>, target: TargetSelection) {
266268
.map_or_else(|| cxx.clone(), |ccache| format!("{ccache} {cxx}"));
267269
configure_cmd.env("CXX", cxx);
268270
}
269-
configure_cmd.run(builder);
271+
configure_cmd.run(builder.context());
270272

271273
command("make")
272274
.current_dir(out_dir)
273275
.arg("--silent")
274276
.arg(format!("-j{}", builder.jobs()))
275-
.run_capture_stdout(builder);
276-
command("make").current_dir(out_dir).arg("--silent").arg("install").run_capture_stdout(builder);
277+
.run_capture_stdout(builder.context());
278+
command("make")
279+
.current_dir(out_dir)
280+
.arg("--silent")
281+
.arg("install")
282+
.run_capture_stdout(builder.context());
277283
}
278284

279285
/// Configures a Cargo invocation so that it can build the GCC codegen backend.

0 commit comments

Comments
 (0)