summary refs log tree commit diff
path: root/src/bootstrap/dist.rs
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2022-07-05 23:43:28 +0200
committerGitHub <noreply@github.com>2022-07-05 23:43:28 +0200
commit0a7f2c3a025c8bab1e10ccec6208a4c19b057b26 (patch)
treee92773fc589df783a0e977d4ba75c08f304d4613 /src/bootstrap/dist.rs
parent41ad4d9b2dbb895666337d162eda52619a6056db (diff)
parentd0011b0c057d39dd9a6a1a671a22aad43b38535c (diff)
downloadrust-0a7f2c3a025c8bab1e10ccec6208a4c19b057b26.tar.gz
rust-0a7f2c3a025c8bab1e10ccec6208a4c19b057b26.zip
Rollup merge of #95503 - jyn514:build-single-crate, r=Mark-Simulacrum
bootstrap: Allow building individual crates

This aims to be as unintrusive as possible, but did still require adding a new `tail_args` field to all `Rustc` and `Std` steps.

New library and compiler crates are added to the sysroot as they are built, since it's useful to have e.g. just alloc and not std.

Fixes https://github.com/rust-lang/rust/issues/44293.
Diffstat (limited to 'src/bootstrap/dist.rs')
-rw-r--r--src/bootstrap/dist.rs6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/bootstrap/dist.rs b/src/bootstrap/dist.rs
index cd85654db01..4aadc3943c9 100644
--- a/src/bootstrap/dist.rs
+++ b/src/bootstrap/dist.rs
@@ -557,7 +557,7 @@ impl Step for Std {
             return None;
         }
 
-        builder.ensure(compile::Std { compiler, target });
+        builder.ensure(compile::Std::new(compiler, target));
 
         let mut tarball = Tarball::new(builder, "rust-std", &target.triple);
         tarball.include_target_in_component_name(true);
@@ -603,7 +603,7 @@ impl Step for RustcDev {
             return None;
         }
 
-        builder.ensure(compile::Rustc { compiler, target });
+        builder.ensure(compile::Rustc::new(compiler, target));
 
         let tarball = Tarball::new(builder, "rustc-dev", &target.triple);
 
@@ -666,7 +666,7 @@ impl Step for Analysis {
             return None;
         }
 
-        builder.ensure(compile::Std { compiler, target });
+        builder.ensure(compile::Std::new(compiler, target));
         let src = builder
             .stage_out(compiler, Mode::Std)
             .join(target.triple)