about summary refs log tree commit diff
path: root/src/libunwind
diff options
context:
space:
mode:
authorMarco A L Barbosa <malbarbo@gmail.com>2018-01-12 21:22:06 -0200
committerMarco A L Barbosa <malbarbo@gmail.com>2018-01-22 16:14:51 -0200
commit68db72d8cd613f88ea69d37bcd159c4ff659aab1 (patch)
tree051cbd9f58fa05e54443ba553f1de9f720fdf6ba /src/libunwind
parentfdc18b3067b5bad257ccbe7400e3c4fb617e9e18 (diff)
downloadrust-68db72d8cd613f88ea69d37bcd159c4ff659aab1.tar.gz
rust-68db72d8cd613f88ea69d37bcd159c4ff659aab1.zip
Do not assume dynamic linking for musl/mips[el] targets
All musl targets except mips[el] assume static linking by default. This
can be confusing
https://users.rust-lang.org/t/static-cross-compiled-binaries-arent-really-static/6084

When the musl/mips[el] targets was
[added](https://github.com/rust-lang/rust/pull/31298), dynamic linking
was chosen because of binary size concerns, and probably also because
libunwind
[didn't](https://users.rust-lang.org/t/static-cross-compiled-binaries-arent-really-static/6084/8)
supported mips.

Now that we have `crt-static` target-feature (the user can choose
dynamic link for musl targets), and libunwind
[6.0](https://github.com/llvm-mirror/libunwind/commits/release_60) add
support to mips, we do not need to assume dynamic linking.
Diffstat (limited to 'src/libunwind')
-rw-r--r--src/libunwind/build.rs2
-rw-r--r--src/libunwind/lib.rs2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/libunwind/build.rs b/src/libunwind/build.rs
index afd1e5e1c5e..11c4c2faf13 100644
--- a/src/libunwind/build.rs
+++ b/src/libunwind/build.rs
@@ -15,7 +15,7 @@ fn main() {
     let target = env::var("TARGET").expect("TARGET was not set");
 
     if target.contains("linux") {
-        if target.contains("musl") && !target.contains("mips") {
+        if target.contains("musl") {
             // musl is handled in lib.rs
         } else if !target.contains("android") {
             println!("cargo:rustc-link-lib=gcc_s");
diff --git a/src/libunwind/lib.rs b/src/libunwind/lib.rs
index 5bb1eb96dcf..5347c781218 100644
--- a/src/libunwind/lib.rs
+++ b/src/libunwind/lib.rs
@@ -35,7 +35,7 @@ cfg_if! {
     }
 }
 
-#[cfg(all(target_env = "musl", not(target_arch = "mips")))]
+#[cfg(target_env = "musl")]
 #[link(name = "unwind", kind = "static", cfg(target_feature = "crt-static"))]
 #[link(name = "gcc_s", cfg(not(target_feature = "crt-static")))]
 extern {}