diff options
Diffstat (limited to 'experimental/rust-beta/0003-Fix-rustdoc-when-cross-compiling-on-musl.patch')
-rw-r--r-- | experimental/rust-beta/0003-Fix-rustdoc-when-cross-compiling-on-musl.patch | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/experimental/rust-beta/0003-Fix-rustdoc-when-cross-compiling-on-musl.patch b/experimental/rust-beta/0003-Fix-rustdoc-when-cross-compiling-on-musl.patch new file mode 100644 index 000000000..e1546dfc6 --- /dev/null +++ b/experimental/rust-beta/0003-Fix-rustdoc-when-cross-compiling-on-musl.patch @@ -0,0 +1,50 @@ +From cb97ef40ec507c7ff20f7c0857b1892a1946a0f3 Mon Sep 17 00:00:00 2001 +From: Samuel Holland <samuel@sholland.org> +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:?}"); |