diff options
| author | Marco A L Barbosa <malbarbo@gmail.com> | 2018-01-12 21:22:06 -0200 |
|---|---|---|
| committer | Marco A L Barbosa <malbarbo@gmail.com> | 2018-01-22 16:14:51 -0200 |
| commit | 68db72d8cd613f88ea69d37bcd159c4ff659aab1 (patch) | |
| tree | 051cbd9f58fa05e54443ba553f1de9f720fdf6ba /src/libunwind | |
| parent | fdc18b3067b5bad257ccbe7400e3c4fb617e9e18 (diff) | |
| download | rust-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.rs | 2 | ||||
| -rw-r--r-- | src/libunwind/lib.rs | 2 |
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 {} |
