From 555b021c6e531fc375c62160a176dcc4fe77b798 Mon Sep 17 00:00:00 2001 From: Richo Healey Date: Fri, 26 Jun 2015 10:32:42 -0700 Subject: [PATCH 1/2] rustc_driver: Print stage info in --version --verbose --- src/librustc_driver/lib.rs | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/src/librustc_driver/lib.rs b/src/librustc_driver/lib.rs index a9787987611f7..9a9ac2706a6ab 100644 --- a/src/librustc_driver/lib.rs +++ b/src/librustc_driver/lib.rs @@ -481,6 +481,21 @@ pub fn commit_date_str() -> Option<&'static str> { option_env!("CFG_VER_DATE") } +/// Returns a stage string, such as "stage0". +pub fn stage_str() -> Option<&'static str> { + if cfg!(stage0) { + Some("stage0") + } else if cfg!(stage1) { + Some("stage1") + } else if cfg!(stage2) { + Some("stage2") + } else if cfg!(stage3) { + Some("stage3") + } else { + None + } +} + /// Prints version information pub fn version(binary: &str, matches: &getopts::Matches) { let verbose = matches.opt_present("verbose"); @@ -493,6 +508,7 @@ pub fn version(binary: &str, matches: &getopts::Matches) { println!("commit-date: {}", unw(commit_date_str())); println!("host: {}", config::host_triple()); println!("release: {}", unw(release_str())); + println!("stage: {}", unw(stage_str())); } } From e66ac43ea4ca489486c5c5dc59974577449fad44 Mon Sep 17 00:00:00 2001 From: Richo Healey Date: Mon, 6 Jul 2015 12:43:01 -0700 Subject: [PATCH 2/2] rustc_driver: Omit stage info for stage2+ --- src/librustc_driver/lib.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/librustc_driver/lib.rs b/src/librustc_driver/lib.rs index 9a9ac2706a6ab..36438ccc784f8 100644 --- a/src/librustc_driver/lib.rs +++ b/src/librustc_driver/lib.rs @@ -487,10 +487,6 @@ pub fn stage_str() -> Option<&'static str> { Some("stage0") } else if cfg!(stage1) { Some("stage1") - } else if cfg!(stage2) { - Some("stage2") - } else if cfg!(stage3) { - Some("stage3") } else { None } @@ -508,7 +504,9 @@ pub fn version(binary: &str, matches: &getopts::Matches) { println!("commit-date: {}", unw(commit_date_str())); println!("host: {}", config::host_triple()); println!("release: {}", unw(release_str())); - println!("stage: {}", unw(stage_str())); + if let Some(stage) = stage_str() { + println!("stage: {}", stage); + } } }