-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Implement unstable -Clink-self-contained
values for MCP 510
#96884
Conversation
☔ The latest upstream changes (presumably #97239) made this pull request unmergeable. Please resolve the merge conflicts. |
… values only the stable values for `-Clink-self-contained` can be used on stable until we have more feedback on the interface
These values require using `-Z unstable options`
34c1b91
to
d477d45
Compare
What we are currently shipping together with Rust toolchains.
|
These files can be pretty clearly separated into multiple components:
Notes:
Relevant GCC/Clang options (for naming considerations):
|
My suggested naming for the components: linker, crto, libc, unwind, sanitizers, mingw.
Alternative: more coarse-grained components - |
Multiple This way we should be able to implement or stabilize all these components one by one, I think. |
Seems reasonable given the fact the same Binutils bug that prevents us from using LLD also forces us to use dlltool.
I'd rather hope Binutils one day lands a fix for their bug with short import libs so |
☔ The latest upstream changes (presumably #98975) made this pull request unmergeable. Please resolve the merge conflicts. |
@lqd any updates on this? |
Closing this pr due to inactivity |
This PR is extracted from #96401 for easier review.
It implements half of MCP #510 as a prerequisite for supporting
rust-lld
via a command similar to-Clinker-flavor=gcc:lld -Clink-self-contained=linker
: adding new unstable values to the-Clink-self-contained
to independently control:r? @petrochenkov
I know you plan on switching this to a
+/-
list: I didn't do this yet so this PR still represents the rough interface that was described in the zulip thread for opting in and out of both facets. And so still has temporary work, until we finalize the interface we want, and I'll make the changes you'd like to see in this PR.