Skip to content

Fix uplifting in Assemble step #145557

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Conversation

Kobzol
Copy link
Member

@Kobzol Kobzol commented Aug 18, 2025

In #145310, I removed this line, which adjusted the stage of the build compiler if an uplift has happened. This broke stage3+ uplifted rustc builds (#145534). I could swear I tested this in the PR, but somehow I missed it.

Instead of keeping the original returned stage, I made it more explicit by returning the actually used build_compiler from the Rustc step, and then use that in the Assemble step.

The changes to RustcLink were needed to fix ui-fulldeps, which apparently build a stage3 rustc, because I haven't fixed the test steps yet 😅

Hopefully we might be able to remove RustcLink if the approach from #144252 will work.

Should fix #145534.

r? @jieyouxu

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Aug 18, 2025
@Kobzol
Copy link
Member Author

Kobzol commented Aug 18, 2025

Ok I realize another error now (which is already fixed in this PR). Before #145310, bootstrap used to say "uplifting stage1 rustc to stage3", but that's clearly bogus, it was actually uplifting the stage2 compiler. But I trusted the message and implemented uplifting of stage 1 in #145310, which is wrong (because of the ABI difference).

@rust-log-analyzer

This comment has been minimized.

@jieyouxu
Copy link
Member

my condolences on the extra space

Copy link
Member

@jieyouxu jieyouxu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was not obvious 😭 Thanks, r=me after comment fix.

@@ -1441,31 +1462,51 @@ fn rustc_llvm_env(builder: &Builder<'_>, cargo: &mut Cargo, target: TargetSelect
}
}

/// `RustcLink` copies all of the rlibs from the rustc build into the previous stage's sysroot.
/// `RustcLink` copies compiler rlibs from a rustc build into a compiler sysroot.
/// It works with (potentially up to) three compilers:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remark: 😰

@jieyouxu
Copy link
Member

@rustbot author

@rustbot rustbot added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 18, 2025
@Kobzol
Copy link
Member Author

Kobzol commented Aug 18, 2025

@bors r=jieyouxu

@bors
Copy link
Collaborator

bors commented Aug 18, 2025

📌 Commit 4c21251 has been approved by jieyouxu

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Aug 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap)
Projects
None yet
Development

Successfully merging this pull request may close these issues.

nightly cross build started failing 2025-08-16
5 participants