Set RUSTUP_TOOLCHAIN
when loading sysroot workspace
This commit is contained in:
parent
7f8781419c
commit
af804d23e2
2 changed files with 6 additions and 2 deletions
|
@ -277,6 +277,9 @@ impl CargoWorkspace {
|
||||||
/// Fetches the metadata for the given `cargo_toml` manifest.
|
/// Fetches the metadata for the given `cargo_toml` manifest.
|
||||||
/// A successful result may contain another metadata error if the initial fetching failed but
|
/// A successful result may contain another metadata error if the initial fetching failed but
|
||||||
/// the `--no-deps` retry succeeded.
|
/// the `--no-deps` retry succeeded.
|
||||||
|
///
|
||||||
|
/// The sysroot is used to set the `RUSTUP_TOOLCHAIN` env var when invoking cargo
|
||||||
|
/// to ensure that the rustup proxy uses the correct toolchain.
|
||||||
pub fn fetch_metadata(
|
pub fn fetch_metadata(
|
||||||
cargo_toml: &ManifestPath,
|
cargo_toml: &ManifestPath,
|
||||||
current_dir: &AbsPath,
|
current_dir: &AbsPath,
|
||||||
|
|
|
@ -247,7 +247,7 @@ impl Sysroot {
|
||||||
let library_manifest = ManifestPath::try_from(src_root.join("Cargo.toml")).unwrap();
|
let library_manifest = ManifestPath::try_from(src_root.join("Cargo.toml")).unwrap();
|
||||||
if fs::metadata(&library_manifest).is_ok() {
|
if fs::metadata(&library_manifest).is_ok() {
|
||||||
if let Some(loaded) =
|
if let Some(loaded) =
|
||||||
Self::load_library_via_cargo(library_manifest, src_root, cargo_config)
|
self.load_library_via_cargo(library_manifest, src_root, cargo_config)
|
||||||
{
|
{
|
||||||
return Some(loaded);
|
return Some(loaded);
|
||||||
}
|
}
|
||||||
|
@ -326,6 +326,7 @@ impl Sysroot {
|
||||||
}
|
}
|
||||||
|
|
||||||
fn load_library_via_cargo(
|
fn load_library_via_cargo(
|
||||||
|
&self,
|
||||||
library_manifest: ManifestPath,
|
library_manifest: ManifestPath,
|
||||||
rust_lib_src_dir: &AbsPathBuf,
|
rust_lib_src_dir: &AbsPathBuf,
|
||||||
cargo_config: &CargoMetadataConfig,
|
cargo_config: &CargoMetadataConfig,
|
||||||
|
@ -342,7 +343,7 @@ impl Sysroot {
|
||||||
&library_manifest,
|
&library_manifest,
|
||||||
rust_lib_src_dir,
|
rust_lib_src_dir,
|
||||||
&cargo_config,
|
&cargo_config,
|
||||||
&Sysroot::empty(),
|
self,
|
||||||
// Make sure we never attempt to write to the sysroot
|
// Make sure we never attempt to write to the sysroot
|
||||||
true,
|
true,
|
||||||
&|_| (),
|
&|_| (),
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue