diff options
| author | Jakub Beránek <berykubik@gmail.com> | 2025-06-17 12:59:13 +0200 |
|---|---|---|
| committer | Jakub Beránek <berykubik@gmail.com> | 2025-07-06 17:12:43 +0200 |
| commit | 0aa4ef964de58538046f54c8c64d76fd06c72e3d (patch) | |
| tree | 426dd49f09e23d84c6217b317d4d20cce52afe81 | |
| parent | c83e217d268d25960a0c79c6941bcb3917a6a0af (diff) | |
| download | rust-0aa4ef964de58538046f54c8c64d76fd06c72e3d.tar.gz rust-0aa4ef964de58538046f54c8c64d76fd06c72e3d.zip | |
Make default check stage be 1, and error out on checking with stage 0
| -rw-r--r-- | src/bootstrap/defaults/bootstrap.library.toml | 1 | ||||
| -rw-r--r-- | src/bootstrap/src/core/config/config.rs | 15 |
2 files changed, 11 insertions, 5 deletions
diff --git a/src/bootstrap/defaults/bootstrap.library.toml b/src/bootstrap/defaults/bootstrap.library.toml index 6a867093b78..24ff87191d6 100644 --- a/src/bootstrap/defaults/bootstrap.library.toml +++ b/src/bootstrap/defaults/bootstrap.library.toml @@ -1,7 +1,6 @@ # These defaults are meant for contributors to the standard library and documentation. [build] bench-stage = 1 -check-stage = 1 test-stage = 1 [rust] diff --git a/src/bootstrap/src/core/config/config.rs b/src/bootstrap/src/core/config/config.rs index 49b3fec4c35..59693dc3e4c 100644 --- a/src/bootstrap/src/core/config/config.rs +++ b/src/bootstrap/src/core/config/config.rs @@ -1025,7 +1025,7 @@ impl Config { || bench_stage.is_some(); config.stage = match config.cmd { - Subcommand::Check { .. } => flags_stage.or(check_stage).unwrap_or(0), + Subcommand::Check { .. } => flags_stage.or(check_stage).unwrap_or(1), Subcommand::Clippy { .. } | Subcommand::Fix => flags_stage.or(check_stage).unwrap_or(1), // `download-rustc` only has a speed-up for stage2 builds. Default to stage2 unless explicitly overridden. Subcommand::Doc { .. } => { @@ -1052,9 +1052,16 @@ impl Config { }; // Now check that the selected stage makes sense, and if not, print a warning and end - if let (0, Subcommand::Build) = (config.stage, &config.cmd) { - eprintln!("WARNING: cannot build anything on stage 0. Use at least stage 1."); - exit!(1); + match (config.stage, &config.cmd) { + (0, Subcommand::Build) => { + eprintln!("WARNING: cannot build anything on stage 0. Use at least stage 1."); + exit!(1); + } + (0, Subcommand::Check { .. }) => { + eprintln!("WARNING: cannot check anything on stage 0. Use at least stage 1."); + exit!(1); + } + _ => {} } // CI should always run stage 2 builds, unless it specifically states otherwise |
