From f5eb5c884f8a4bd67879c85ad76782967ab7f36a Mon Sep 17 00:00:00 2001 From: "Felix S. Klock II" Date: Thu, 4 Mar 2021 17:19:41 -0500 Subject: [PATCH] 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.) --- src/bootstrap/bin/rustc.rs | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/bootstrap/bin/rustc.rs b/src/bootstrap/bin/rustc.rs index 6b1be0ca09d..1bd36e25c02 100644 --- a/src/bootstrap/bin/rustc.rs +++ b/src/bootstrap/bin/rustc.rs @@ -141,18 +141,23 @@ fn main() { if verbose > 1 { let rust_env_vars = env::vars().filter(|(k, _)| k.starts_with("RUST") || k.starts_with("CARGO")); + let prefix = match crate_name { + Some(crate_name) => format!("rustc {}", crate_name), + None => "rustc".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();