stabilize stage management for rustc tools by onur-ozkan · Pull Request #137215 · rust-lang/rust (original) (raw)
#135990 got out of control due to excessive complexity. This PR aims to achieve the same goal with a simpler approach, likely through multiple smaller PRs. I will keep the other one read-only and open as a reference for future work.
This work stabilizes the staging logic for ToolRustc
programs, so you no longer need to handle build and target compilers separately in steps. Previously, most tools didn't do this correctly, which was causing the compiler to be built twice (e.g., x test cargo --stage 1
would compile the stage 2 compiler before, but now it only compiles the stage 1 compiler).
I also tried to document how we should write ToolRustc
steps as they are quite different and require more attention than other tools.
Next goal is to stabilize how stages are handled for the rustc itself. Currently, x build --stage 1
builds the stage 1 compiler which is fine, but x build compiler --stage 1
builds stage 2 compiler.
for now, r? ghost