-
Notifications
You must be signed in to change notification settings - Fork 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 support for arm-unknown-linux-musleabi{,hf} targets. #264
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @alexcrichton (or someone else) soon. If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes. Please see the contribution instructions for more information. |
Thanks for the PR! The compiler doesn't currently recognize these triples (and transitively rustdoc doesn't) so this may have to leave out the doc links for now. I also wonder if we should just define |
Got rid of the doc links for now. This whole separate repositories with interdepencies thing makes it quite difficult to land patches. :) I just figured landing preliminary support in the sub-repos first would be better than landing broken changes in the main repo first. As for the target_env thing. Yes, I agree that the situation is getting unwieldy. However, in order to get my changes in I'd like to just go ahead anyway, and then improve later on. It's been taking quite some effort already to keep my changes up-to-date with master and I'd be grateful if I could finally get my preliminary changes landed. |
These targets will be similar to the x86_64-unknown-linux-musl target, in that they'll use MUSL libc to allow fully static binaries to be generated. To remain consistent with the naming of existing ARM targets, as well as with the standard naming of MUSL toolchains, we'll use `musleabi` and `musleabihf` as the target environment names (analogous to `gnueabi` and `gnueabihf`). Most of these changes just extend the special casing for x86_64 MUSL targets to the ARM ones as well.
Also fixed line wrap (80 chars now). |
I really appreciate the support for musl on ARM and I know using |
It's no different from the three existing different That being said, if this is really a dealbreaker I could:
WDYT? |
Thanks @timonvo! @joerg-krause I agree with the sentiment here, I definitely don't want to see In any case this is pretty minor for liblibc itself, we may as well help these targets come online in the first place anyway :). If we end up choosing to just use "musl" everywhere then we can revert this in libc in time. |
Add support for arm-unknown-linux-musleabi{,hf} targets. These targets will be similar to the x86_64-unknown-linux-musl target, in that they'll use MUSL libc to allow fully static binaries to be generated. To remain consistent with the naming of existing ARM targets, as well as with the standard naming of MUSL toolchains, we'll use `musleabi` and `musleabihf` as the target environment names (analogous to `gnueabi` and `gnueabihf`). Most of these changes just extend the special casing for x86_64 MUSL targets to the ARM ones as well.
💔 Test failed - travis |
Hm seems spurious, we'll fix tomorrow |
Thanks for the review Alex! |
@bors: retry |
Add support for arm-unknown-linux-musleabi{,hf} targets. These targets will be similar to the x86_64-unknown-linux-musl target, in that they'll use MUSL libc to allow fully static binaries to be generated. To remain consistent with the naming of existing ARM targets, as well as with the standard naming of MUSL toolchains, we'll use `musleabi` and `musleabihf` as the target environment names (analogous to `gnueabi` and `gnueabihf`). Most of these changes just extend the special casing for x86_64 MUSL targets to the ARM ones as well.
☀️ Test successful - status-appveyor, travis |
Add introduction/constants/enumeration/uninitialized to CONVENTIONS. I have added new sections to the file. I would like the usual suspects to read them critically and offer critique. When have agreed to add certain versions I will add Issues to track our progress in getting the code to follow the conventions. For two of the sections they already exist in rust-lang#254 and rust-lang#264.
Use libc constants in sys/signal.rs. Work toward rust-lang#264.
mount: Use bindings from libc instead of our own Ref rust-lang#264 Changing internal usage of `ffi::mount` and `ffi:umount` to make use of libc.
fcntl: Use bindings from libc instead of our own **Un-finished** and looking for help. As rust-lang#264 was tagged "mentor, good first bug" Ref rust-lang#264 I couldn't find `F_GET_SEALS`, or `F_ADD_SEALS` in libc. Is this a case where I should be making a PR over there? I'm not sure where exactly to address it in libc.
These targets will be similar to the x86_64-unknown-linux-musl
target, in that they'll use MUSL libc to allow fully static binaries
to be generated. To remain consistent with the naming of existing
ARM targets, as well as with the standard naming of MUSL toolchains,
we'll use
musleabi
andmusleabihf
as the target environmentnames (analogous to
gnueabi
andgnueabihf
).Most of these changes just extend the special casing for x86_64 MUSL
targets to the ARM ones as well.