-
Notifications
You must be signed in to change notification settings - Fork 219
Add GNU/Hurd support #370
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Add GNU/Hurd support #370
Conversation
Could we have a link to GNU/Hurd's documentation (for both urandom and the errno location). We should also add it to the list of targets in the CI |
Well, the Hurd doesn't really document it since it's just following GNU's interface. At best we can link to the implementation: |
Concerning the CI, the patches needed to build rustc and std are not finished committing in the various repositories. Actually getrandom is one of them :) so we have a chicken-and-egg issue if CI needs to be included before support is included |
For new targets, we don't require that Rust ships a However, provided that Rust supports your compiler target, we can still test them. See here. However, it looks like rust-lang/rust#115230 is merged. The change we needed from that was adding support for |
Yes it is possible, but as usual one needs to have the GNU/Hurd libc.so etc. at hand to be able to link. One can relatively easily build them from glibc's |
I was able to compile a C program for HURD (with Clang) on my Debian Box by just installing |
If Hurd is just implementing glibc interfaces, does it have support for |
It looks like We should have the docs link to the glibc man page: https://www.gnu.org/software/libc/manual/2.38/html_mono/libc.html#index-getrandom EDIT: It seems like the implementation also involves opening a file (I think), but it also seems to have some other complicated logic. I think to be safe we should use glibc's |
I think this PR is also blocked on libc support, see rust-lang/libc#3325 (comment) |
I guess your toolchain was then using linux's 32bit libc, so while this indeed exercises a hurd build, the actual linked result is a Linux binary, not a Hurd binary :) |
Ok, done so! |
(the mips failure is unrelated) |
Should be fixed by #372 |
I rebased on top of #372, and added std=core for now (building std depends on libc dep bump in rustc) |
The netbsd build failure is unrelated |
It seems like this current PR doesn't use the |
Yep, it's caused by cross-rs/cross#1345 |
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
Indeed, fixed so. |
Any news on this, is there still something missing? |
Thank you! The CI failure is not relevant to this PR, so we can ignore it. |
No description provided.