-
Notifications
You must be signed in to change notification settings - Fork 8
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
Possibly publish a synthetic Cargo.toml
.
#27
Comments
I suspect that synthesizing a I think we should ideally shoot for a world where this whole [dependencies]
core = { version = "1.0.0", optional = true, package = 'rustc-std-workspace-core' }
compiler_builtins = { version = '0.1.2', optional = true }
[features]
rustc-dep-of-std = ['core', 'compiler_builtins'] ... to ... [dependencies]
core = { sysroot = true }
compiler_builtins = { sysroot = true } Here we can definitely see how when Cargo builds libstd it knows exactly what dependencies to synthesize. For example This does also mean that rustbuild itself (Rust's build system) would need to use Overall I think this would get us to a world where |
If I understand correctly, this issue has been resolved already by these pull requests? |
Yea, I think this is effectively resolved. There are still patches, but at least cargo doesn't need to explicitly know about them anymore. Removal of rustc-dep-of-std is tracked in #51. |
The current implementation must construct a fake
Cargo.toml
virtual workspace for the standard library. This requires knowing about some implementation details like the rustc-std-workspace patches. I think it would be better if the rust-src component included a generatedCargo.toml
that contained the bare minimum for the workspace. Then, Cargo would not need to know about some things like these patch hacks.In addition (or instead), find a way to avoid the patches altogether.
The text was updated successfully, but these errors were encountered: