about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorGuillaume Gomez <guillaume1.gomez@gmail.com>2021-03-05 21:44:41 +0100
committerGitHub <noreply@github.com>2021-03-05 21:44:41 +0100
commitef17859e35f6a424e8d00f9de96c7da1c1edda56 (patch)
tree64dbf5cf4d1b3e55ca7786411e78bf79a0cd61af /src
parent15c148b4f2b86f22c053bf08d3a2b76f76359a35 (diff)
parent444a7567693506347a3ce9e79f6823abf7141b17 (diff)
Rollup merge of #82782 - pnkfelix:include-crate-being-compiled-in-bootstrap-verbose-output, r=Mark-Simulacrum
Make rustc shim's verbose output include crate_name being compiled.

This change is mainly motivated by an issue with the environment printing I added in PR 82403: multiple rustc invocations progress in parallel, and the environment output, spanning multiple lines, gets interleaved in ways make it difficult to extra the enviroment settings.

(This aforementioned difficulty is more of a hiccup than an outright show-stopper, because the environment variables tend to be the same for all of the rustc invocations, so it doesn't matter too much if one mixes up which lines one is looking at. But still: Better to fix it.)
Diffstat (limited to 'src')
-rw-r--r--src/bootstrap/bin/rustc.rs18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs
index 6b1be0ca09d..0ab5e9c63c9 100644
--- a/src/bootstrap/bin/rustc.rs
+++ b/src/bootstrap/bin/rustc.rs
@@ -138,21 +138,28 @@ fn main() {
         cmd.arg("-Z").arg("force-unstable-if-unmarked");
     }
 
+    let is_test = args.iter().any(|a| a == "--test");
     if verbose > 1 {
         let rust_env_vars =
             env::vars().filter(|(k, _)| k.starts_with("RUST") || k.starts_with("CARGO"));
+        let prefix = if is_test { "[RUSTC-SHIM] rustc --test" } else { "[RUSTC-SHIM] rustc" };
+        let prefix = match crate_name {
+            Some(crate_name) => format!("{} {}", prefix, crate_name),
+            None => prefix.to_string(),
+        };
         for (i, (k, v)) in rust_env_vars.enumerate() {
-            eprintln!("rustc env[{}]: {:?}={:?}", i, k, v);
+            eprintln!("{} env[{}]: {:?}={:?}", prefix, i, k, v);
         }
-        eprintln!("rustc working directory: {}", env::current_dir().unwrap().display());
+        eprintln!("{} working directory: {}", prefix, env::current_dir().unwrap().display());
         eprintln!(
-            "rustc command: {:?}={:?} {:?}",
+            "{} command: {:?}={:?} {:?}",
+            prefix,
             bootstrap::util::dylib_path_var(),
             env::join_paths(&dylib_path).unwrap(),
             cmd,
         );
-        eprintln!("sysroot: {:?}", sysroot);
-        eprintln!("libdir: {:?}", libdir);
+        eprintln!("{} sysroot: {:?}", prefix, sysroot);
+        eprintln!("{} libdir: {:?}", prefix, libdir);
     }
 
     let start = Instant::now();
@@ -166,7 +173,6 @@ fn main() {
     {
         if let Some(crate_name) = crate_name {
             let dur = start.elapsed();
-            let is_test = args.iter().any(|a| a == "--test");
             // If the user requested resource usage data, then
             // include that in addition to the timing output.
             let rusage_data =