From 73267374d4176ac1c5d685ff2bac36556cfa4730 Mon Sep 17 00:00:00 2001 From: Mark Simulacrum Date: Fri, 16 Jun 2017 07:44:09 -0600 Subject: [PATCH] Use custom cargo/rustc paths when parsing flags. --- src/bootstrap/flags.rs | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/bootstrap/flags.rs b/src/bootstrap/flags.rs index 56cbb4cecf2..dc9dac73627 100644 --- a/src/bootstrap/flags.rs +++ b/src/bootstrap/flags.rs @@ -242,11 +242,18 @@ pub fn parse(args: &[String]) -> Flags { let cwd = t!(env::current_dir()); let paths = matches.free[1..].iter().map(|p| cwd.join(p)).collect::>(); + let cfg_file = matches.opt_str("config").map(PathBuf::from).or_else(|| { + if fs::metadata("config.toml").is_ok() { + Some(PathBuf::from("config.toml")) + } else { + None + } + }); // All subcommands can have an optional "Available paths" section if matches.opt_present("verbose") { let flags = Flags::parse(&["build".to_string()]); - let mut config = Config::default(); + let mut config = Config::parse(&flags.build, cfg_file.clone()); config.build = flags.build.clone(); let mut build = Build::new(flags, config); metadata::build(&mut build); @@ -307,14 +314,6 @@ pub fn parse(args: &[String]) -> Flags { }; - let cfg_file = matches.opt_str("config").map(PathBuf::from).or_else(|| { - if fs::metadata("config.toml").is_ok() { - Some(PathBuf::from("config.toml")) - } else { - None - } - }); - let mut stage = matches.opt_str("stage").map(|j| j.parse().unwrap()); if matches.opt_present("incremental") {