-
Notifications
You must be signed in to change notification settings - Fork 13.1k
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
Add builtin targets for mips64(el)-unknown-linux-muslabi64 #63165
Conversation
r? @eddyb (rust_highfive has picked a reviewer for you, use r? to override) |
0d5c644
to
e1bd8cb
Compare
This is ready for review, for unblocking the |
@bors: r+ |
📌 Commit e1bd8cb has been approved by |
…ichton Add builtin targets for mips64(el)-unknown-linux-musl This is prerequisite for rust-lang/libc#1449. Tested locally to produce working static and dynamic binaries, ~~but CI config is untested for now~~ CI is to be added in a follow-up PR. *edit: dynamic binaries also confirmed working!*
⌛ Testing commit e1bd8cb with merge 0329c99a420dfdb7914c64875fbdc4c1b892e301... |
💔 Test failed - checks-azure |
The job Click to expand the log.
I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact |
@bors: retry |
Hard-float (unlike mips32 musl targets but consistent with any other musl target), MIPS64r2, n64 ABI. The triples are renamed to carry the `abi64` ABI suffix found on all other MIPS64 targets, for consistency and forward compatibility, should Rust gain support for the n32 ABI one day.
…ichton Add builtin targets for mips64(el)-unknown-linux-muslabi64 This is prerequisite for rust-lang/libc#1449. Tested locally to produce working static and dynamic binaries, ~~but CI config is untested for now~~ CI is to be added in a follow-up PR. *edit: dynamic binaries also confirmed working!* *edit 2: changed triples to include ABI, and removed stray `crt_static_default = false` declarations to be consistent with other musl targets*
…ichton Add builtin targets for mips64(el)-unknown-linux-muslabi64 This is prerequisite for rust-lang/libc#1449. Tested locally to produce working static and dynamic binaries, ~~but CI config is untested for now~~ CI is to be added in a follow-up PR. *edit: dynamic binaries also confirmed working!* *edit 2: changed triples to include ABI, and removed stray `crt_static_default = false` declarations to be consistent with other musl targets*
…ichton Add builtin targets for mips64(el)-unknown-linux-muslabi64 This is prerequisite for rust-lang/libc#1449. Tested locally to produce working static and dynamic binaries, ~~but CI config is untested for now~~ CI is to be added in a follow-up PR. *edit: dynamic binaries also confirmed working!* *edit 2: changed triples to include ABI, and removed stray `crt_static_default = false` declarations to be consistent with other musl targets*
Rollup of 9 pull requests Successful merges: - #63155 (Add UWP MSVC targets) - #63165 (Add builtin targets for mips64(el)-unknown-linux-muslabi64) - #63306 (Adapt AddRetag for shallow retagging) - #63467 (Add Catalyst (iOS apps running on macOS) target) - #63546 (Remove uses of `mem::uninitialized()` from cloudabi) - #63572 (remove unused Level::PhaseFatal) - #63577 (Test HRTB issue accepted by compiler) - #63582 (Fix ICE #63226) - #63586 (cleanup: Remove `Spanned` where possible) Failed merges: r? @ghost
☔ The latest upstream changes (presumably #63592) made this pull request unmergeable. Please resolve the merge conflicts. |
@bors retry r- |
EDIT: Ignore me (see the next comment). @xen0n The default ABI for an architecture shouldn't have a suffix, and the names for alternative ABIs are generally standardized by the architecture vendor. 32-bit ARM targets have an For MIPS64 targets, the 64-bit ABI with hard float is the default. So these two targets should have been named
like they were originally. @alexcrichton, I'm guessing this is impossible to fix now? Or could this still be fixed since rust-lang/libc#1449 was merged after the latest release? For completeness, the other possibilities would be:
|
Sorry, MIPS ABI selection is more of a mess than I realized. The In vanilla gcc, the triple is not parsed to determine the ABI. It simply defaults to n32. However, in musl-cross-make, the "blessed" tool for making musl-targeting toolchains, Presumably this sort of confusion is what led Debian to start adding the |
Targets aren't really set in stone and have been renamed from time to time. It basically just involves asking the community of those using the targets if they agree with the rename. |
…r=alexcrichton Enable dist for MIPS64 musl targets Continuing work in rust-lang#63165, necessary libc changes are in place and published so here we go!
…r=alexcrichton Enable dist for MIPS64 musl targets Continuing work in rust-lang#63165, necessary libc changes are in place and published so here we go!
This is prerequisite for rust-lang/libc#1449.
Tested locally to produce working static and dynamic binaries,
but CI config is untested for nowCI is to be added in a follow-up PR.edit: dynamic binaries also confirmed working!
edit 2: changed triples to include ABI, and removed stray
crt_static_default = false
declarations to be consistent with other musl targets