-
Notifications
You must be signed in to change notification settings - Fork 94
Description
Right now, compiling libstd of the latest nightly with xargo is broken. I submitted rust-lang/rust#43975 to rust to fix this, but it would be nice to have a fix (if this comes up again) that doesn't take many days to land.
The problem is that libstd depends on gcc = "0.3.50"
. rust's Cargo.lock
makes sure that version 0.3.50
is used. However, with xargo, the lock file isn't available and it will happily use newer versions from crates.io if they are semver-compatible. Currently, it picks 0.3.52
. The problem is that this version adds deprecations, and part of libstd have deny(warnings)
, so using deprecated items makes the build fail.
If I had some more control over the Cargo.toml
that xargo generates to build libstd, I would work around this by adding the following to that file:
[dependencies.gcc]
version = "=0.3.50"
I thought this should also be possible with the [patch]
or [replace]
features, but I could not get them to work here, so maybe I am mistaken.
Do you think it makes sense for xargo to support something like this?