diff options
Diffstat (limited to 'vendor/compiler_builtins/build.rs')
-rw-r--r-- | vendor/compiler_builtins/build.rs | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/vendor/compiler_builtins/build.rs b/vendor/compiler_builtins/build.rs index 10c7aaa63..048611677 100644 --- a/vendor/compiler_builtins/build.rs +++ b/vendor/compiler_builtins/build.rs @@ -1,4 +1,4 @@ -use std::{collections::HashMap, env, sync::atomic::Ordering}; +use std::{collections::BTreeMap, env, sync::atomic::Ordering}; fn main() { println!("cargo:rerun-if-changed=build.rs"); @@ -118,7 +118,7 @@ fn generate_aarch64_outlined_atomics() { // Generate different macros for add/clr/eor/set so that we can test them separately. let sym_names = ["cas", "ldadd", "ldclr", "ldeor", "ldset", "swp"]; - let mut macros = HashMap::new(); + let mut macros = BTreeMap::new(); for sym in sym_names { macros.insert(sym, gen_macro(sym)); } @@ -146,7 +146,7 @@ fn generate_aarch64_outlined_atomics() { let mut buf = String::new(); for macro_def in macros.values().chain(std::iter::once(&cas16)) { buf += macro_def; - buf += "}; }"; + buf += "}; }\n"; } let dst = std::env::var("OUT_DIR").unwrap() + "/outlined_atomics.rs"; std::fs::write(dst, buf).unwrap(); @@ -320,6 +320,7 @@ mod c { // include them. if target_os != "ios" && target_os != "watchos" + && target_os != "tvos" && (target_vendor != "apple" || target_arch != "x86") { sources.extend(&[ @@ -391,6 +392,7 @@ mod c { if target_arch == "arm" && target_os != "ios" && target_os != "watchos" + && target_os != "tvos" && target_env != "msvc" { sources.extend(&[ |