diff options
| author | jyn <github@jyn.dev> | 2023-06-09 17:52:22 -0500 |
|---|---|---|
| committer | jyn <github@jyn.dev> | 2023-06-09 18:20:38 -0500 |
| commit | f531fec41116afef6c814f7c3201519a54083ae8 (patch) | |
| tree | 204f6ae55dea5b778d6d700cc7d984c27ac233fb /src | |
| parent | 9610dfe5a9a731ced1ea4923ecbd0c57fe367898 (diff) | |
| download | rust-f531fec41116afef6c814f7c3201519a54083ae8.tar.gz rust-f531fec41116afef6c814f7c3201519a54083ae8.zip | |
Give more helpful progress messages in `Assemble`
Before (download-rustc): ``` # no output ``` After (download-rustc): ``` Creating a sysroot for stage2 compiler (use `rustup toolchain link 'name' build/host/stage2`) ``` Before (compiling from source): ``` Building compiler artifacts (stage0 -> stage1, x86_64-unknown-linux-gnu) Assembling stage1 compiler Build stage1 library artifacts (x86_64-unknown-linux-gnu -> i686-unknown-linux-gnu) Building compiler artifacts (stage0:x86_64-unknown-linux-gnu -> stage1:i686-unknown-linux-gnu) Assembling stage1 compiler (i686-unknown-linux-gnu) ``` After (compiling from source): ``` Building compiler artifacts (stage0 -> stage1, x86_64-unknown-linux-gnu) Creating a sysroot for stage1 compiler (use `rustup toolchain link 'name' build/host/stage1`) Build stage1 library artifacts (x86_64-unknown-linux-gnu) Building compiler artifacts (stage0:x86_64-unknown-linux-gnu -> stage1:i686-unknown-linux-gnu) Creating a sysroot for stage1 compiler (i686-unknown-linux-gnu) (use `rustup toolchain link 'name' build/i686-unknown-linux-gnu/stage1`) ```
Diffstat (limited to 'src')
| -rw-r--r-- | src/bootstrap/compile.rs | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/src/bootstrap/compile.rs b/src/bootstrap/compile.rs index a7ebd018a87..b5870dd2093 100644 --- a/src/bootstrap/compile.rs +++ b/src/bootstrap/compile.rs @@ -1415,6 +1415,10 @@ impl Step for Assemble { // Ensure that `libLLVM.so` ends up in the newly created target directory, // so that tools using `rustc_private` can use it. dist::maybe_install_llvm_target(builder, target_compiler.host, &sysroot); + // Lower stages use `ci-rustc-sysroot`, not stageN + if target_compiler.stage == builder.top_stage { + builder.info(&format!("Creating a sysroot for stage{stage} compiler (use `rustup toolchain link 'name' build/host/stage{stage}`)", stage=target_compiler.stage)); + } return target_compiler; } @@ -1452,11 +1456,18 @@ impl Step for Assemble { let stage = target_compiler.stage; let host = target_compiler.host; - let msg = if build_compiler.host == host { - format!("Assembling stage{} compiler", stage) + let (host_info, dir_name) = if build_compiler.host == host { + ("".into(), "host".into()) } else { - format!("Assembling stage{} compiler ({})", stage, host) + (format!(" ({host})"), host.to_string()) }; + // NOTE: "Creating a sysroot" is somewhat inconsistent with our internal terminology, since + // sysroots can temporarily be empty until we put the compiler inside. However, + // `ensure(Sysroot)` isn't really something that's user facing, so there shouldn't be any + // ambiguity. + let msg = format!( + "Creating a sysroot for stage{stage} compiler{host_info} (use `rustup toolchain link 'name' build/{dir_name}/stage{stage}`)" + ); builder.info(&msg); // Link in all dylibs to the libdir |
