about summary refs log tree commit diff
diff options
context:
space:
mode:
authorEd Schouten <ed@nuxi.nl>2017-12-29 09:33:26 +0100
committerEd Schouten <ed@nuxi.nl>2017-12-29 09:33:26 +0100
commit146fe0ad75ea9e7f2ba69aa40d496c862aae7814 (patch)
tree718b6799d0a04d6ad08c7b29cbe02606a7a012d6
parent304a7b79851e4859da8b55e584027870d11d0de5 (diff)
Add proper library dependencies for libstd on CloudABI.
Don't attempt to build libunwind on CloudABI, as libunwind is already
provided by the system by default.
-rw-r--r--src/libstd/build.rs9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/libstd/build.rs b/src/libstd/build.rs
index 8a28105ff81..a41c155f3fb 100644
--- a/src/libstd/build.rs
+++ b/src/libstd/build.rs
@@ -20,9 +20,10 @@ fn main() {
     let target = env::var("TARGET").expect("TARGET was not set");
     let host = env::var("HOST").expect("HOST was not set");
     if cfg!(feature = "backtrace") &&
-        !target.contains("msvc") &&
+        !target.contains("cloudabi") &&
         !target.contains("emscripten") &&
         !target.contains("fuchsia") &&
+        !target.contains("msvc") &&
         !target.contains("wasm32")
     {
         let _ = build_libbacktrace(&host, &target);
@@ -74,6 +75,12 @@ fn main() {
         println!("cargo:rustc-link-lib=zircon");
         println!("cargo:rustc-link-lib=fdio");
         println!("cargo:rustc-link-lib=launchpad"); // for std::process
+    } else if target.contains("cloudabi") {
+        if cfg!(feature = "backtrace") {
+            println!("cargo:rustc-link-lib=unwind");
+        }
+        println!("cargo:rustc-link-lib=c");
+        println!("cargo:rustc-link-lib=compiler_rt");
     }
 }