From cb97ef40ec507c7ff20f7c0857b1892a1946a0f3 Mon Sep 17 00:00:00 2001 From: Samuel Holland Date: Sat, 2 Dec 2017 17:25:44 -0600 Subject: [PATCH 03/12] Fix rustdoc when cross-compiling on musl musl can't handle foreign-architecture libraries in LD_LIBRARY_PATH. --- src/bootstrap/src/bin/rustdoc.rs | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/src/bootstrap/src/bin/rustdoc.rs b/src/bootstrap/src/bin/rustdoc.rs index dbbce6fe22047..3d3cb241eaab6 100644 --- a/src/bootstrap/src/bin/rustdoc.rs +++ b/src/bootstrap/src/bin/rustdoc.rs @@ -7,6 +7,6 @@ use std::ffi::OsString; use std::process::Command; use shared_helpers::{ - dylib_path, dylib_path_var, maybe_dump, parse_rustc_stage, parse_rustc_verbose, + dylib_path_var, maybe_dump, parse_rustc_stage, parse_rustc_verbose, parse_value_from_args, }; @@ -28,9 +29,6 @@ fn main() { // is passed (a bit janky...) let target = args.windows(2).find(|w| &*w[0] == "--target").and_then(|w| w[1].to_str()); - let mut dylib_path = dylib_path(); - dylib_path.insert(0, PathBuf::from(libdir.clone())); - let mut cmd = Command::new(rustdoc); if target.is_some() { @@ -43,7 +41,7 @@ fn main() { } cmd.args(&args); - cmd.env(dylib_path_var(), env::join_paths(&dylib_path).unwrap()); + cmd.env(dylib_path_var(), PathBuf::from(libdir.clone())); // Force all crates compiled by this compiler to (a) be unstable and (b) // allow the `rustc_private` feature to link to other unstable crates @@ -68,7 +66,7 @@ fn main() { eprintln!( "rustdoc command: {:?}={:?} {:?}", dylib_path_var(), - env::join_paths(&dylib_path).unwrap(), + PathBuf::from(libdir.clone()), cmd, ); eprintln!("sysroot: {sysroot:?}");