-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Redox support in liblibc
and libstd
#1734
Comments
As a side note, it would be nice to allow custom OS's to support themselves in this way through some attribute(s). I'm sure Redox is not the only custom OS with these problems. (I have also had a very small taste of this a while ago). |
Hmm... interesting... I guess I was thinking more of something like |
As I've been working on what amounts to another target that wants to support libstd, I agree that there's a need for better platform abstraction - I've avoided doing much work largely because maintaining a fork would be time-consuming. However, it is currently difficult to determine what a good approach to improving portability is. It seems like a good short-term solution might be accepting more ports upstream (and deciding what kind of support the core team are willing to provide for these new targets), with a longer-term goal of improving libstd's abstractions. It's difficult to predict the needs of new ports right now, but that should become clearer as they are added. |
I would argue that this might make it harder to refactor later. I read through #1502 and @brson lays out some of the difficulties pretty well here. One problem is that evaluating patches is difficult because of their excessive sizes. Adding more ports in the short-term would make this worse, I think. Rather, I would like to see these sorts of ports maintained out-of-tree, as it distributes the load from the rust maintainers, keeps the standard library clean, and generally keeps code modular. My notion of a good solution is similar but more extreme than that proposed in #1502: We break to
A nice stretch goal would be for The catch is
The result is that unless this suggestion gets really strong support, it is unlikely to happen. Another recent development is rust-lang/rust#37133, though I haven't really had the chance to look into it. |
Redox support in
liblibc
andlibstd
I would like to draft two RFC's to propose the addition of Redox support to
liblibc
andlibstd
.liblibc
Redox currently has issues building using cargo if there is a dependency on the
libc
crate. This is due to the required patches for adding Redox toliblibc
not being available through cargo, and currentlyliblibc
is built as a cargo override using this forklibstd
Currently, Redox uses a custom
libstd
, which implements the majority of the public API, but only on Redox. A patch has been in development for the "standard"libstd
on this forkHelp Needed
I have maintained these two forks and would like to know the steps required to clean them up and merge them into the Rust mainline, significantly improving ease of development on Redox and potentially allowing for
rustc
andcargo
to be ported to Redox.The text was updated successfully, but these errors were encountered: