mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-26 16:54:01 +00:00
Rollup merge of #104027 - ted-tanner:issue-103697-fix, r=jyn514
Place config.toml in current working directory if config not found Fixes an issue where bootsrapping a Rust build would place `config.toml` in `{src_root}` rather than the current working directory #103697
This commit is contained in:
commit
3abf329040
@ -35,7 +35,7 @@ fn main() {
|
||||
|
||||
// NOTE: Since `./configure` generates a `config.toml`, distro maintainers will see the
|
||||
// changelog warning, not the `x.py setup` message.
|
||||
let suggest_setup = !config.config.exists() && !matches!(config.cmd, Subcommand::Setup { .. });
|
||||
let suggest_setup = config.config.is_none() && !matches!(config.cmd, Subcommand::Setup { .. });
|
||||
if suggest_setup {
|
||||
println!("warning: you have not made a `config.toml`");
|
||||
println!(
|
||||
|
@ -80,7 +80,7 @@ pub struct Config {
|
||||
pub keep_stage_std: Vec<u32>,
|
||||
pub src: PathBuf,
|
||||
/// defaults to `config.toml`
|
||||
pub config: PathBuf,
|
||||
pub config: Option<PathBuf>,
|
||||
pub jobs: Option<u32>,
|
||||
pub cmd: Subcommand,
|
||||
pub incremental: bool,
|
||||
@ -926,8 +926,10 @@ impl Config {
|
||||
// Give a hard error if `--config` or `RUST_BOOTSTRAP_CONFIG` are set to a missing path,
|
||||
// but not if `config.toml` hasn't been created.
|
||||
let mut toml = if !using_default_path || toml_path.exists() {
|
||||
config.config = Some(toml_path.clone());
|
||||
get_toml(&toml_path)
|
||||
} else {
|
||||
config.config = None;
|
||||
TomlConfig::default()
|
||||
};
|
||||
|
||||
@ -942,7 +944,6 @@ impl Config {
|
||||
}
|
||||
|
||||
config.changelog_seen = toml.changelog_seen;
|
||||
config.config = toml_path;
|
||||
|
||||
let build = toml.build.unwrap_or_default();
|
||||
|
||||
|
@ -82,7 +82,7 @@ impl fmt::Display for Profile {
|
||||
}
|
||||
|
||||
pub fn setup(config: &Config, profile: Profile) {
|
||||
let path = &config.config;
|
||||
let path = &config.config.clone().unwrap_or(PathBuf::from("config.toml"));
|
||||
|
||||
if path.exists() {
|
||||
eprintln!(
|
||||
|
Loading…
Reference in New Issue
Block a user