-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
bootstrap: show diagnostics relative to rustc src dir #132390
base: master
Are you sure you want to change the base?
Conversation
rustbot has assigned @albertlarsan68. Use |
@RalfJung by "Depends on rust-lang/cargo#14752" do you mean this PR is blocked on the cargo PR being merged and synced first? |
This comment has been minimized.
This comment has been minimized.
That PR needs to propagate to bootstrap cargo. |
add unstable -Zroot-dir flag to configure the path from which rustc should be invoked This implements the proposal described [here](#9887 (comment)): we add a new flag, for now called `-Zroot-dir`, that configures the directory relative to which rustc is given the crate root filenames to build. (Files outside this directory are passed absolutely.) This is necessary to be able to fix (no github don't close that issue yet) rust-lang/rust#128726: in multi-workspace repositories that use scripts to manage a whole bunch of cargo invocations, currently the output cargo+rustc produce is often hard or even impossible to interpret for both human and machine consumption. This is because directories in the output are always relative to the workspace root, but when cargo is invoked many times for different workspaces, it is quite unclear what the workspace root is for the invocation that failed. So I suggest we should have a new flag that the build script in such a repo can set to the consistent "root dir" that the user would recognize as such (e.g., the root of the rustc source tree), and all paths emitted by cargo and rustc should be relative to that directory. I don't know all the places that cargo itself emits paths (if any), but this PR changes the way we invoke rustc to honor the new flag, so all paths emitted by rustc will be relative to the `-Zroot-dir`. See rust-lang/rust#132390 for the changes needed in rustc bootstrap to wire this up; together, that suffices to finally properly show errors in RA for all parts of the rustc src tree. :)
@RalfJung the cargo side has been synced, r=me when CI is green after a rebase :) |
We need to wait until the cargo PR is part of the bootstrap toolchain, right? |
Yeah this will have to wait a few weeks, unfortunateltly.
|
367dffc
to
846d03c
Compare
The job Click to see the possible cause of the failure (guessed by this bot)
|
The next beta branches on November 22, so I guess the bootstrap bump will be shortly after that. |
Fixes #128726
Depends on rust-lang/cargo#14752 propagating to bootstrap cargo