about summary refs log tree commit diff
path: root/compiler/rustc_llvm/build.rs
diff options
context:
space:
mode:
authorStuart Cook <Zalathar@users.noreply.github.com>2025-09-09 14:35:03 +1000
committerGitHub <noreply@github.com>2025-09-09 14:35:03 +1000
commitc5a62b80587ef3c48245990ad5cd8f02518b2565 (patch)
tree6b52d8406a5aa257253faabe67b559a9ce87a6ab /compiler/rustc_llvm/build.rs
parenta4774bfea3cff8a9780148de1ecf85c33f3c2473 (diff)
parent4fec3aa2a4e087c981a083dca59e7434cac52625 (diff)
downloadrust-c5a62b80587ef3c48245990ad5cd8f02518b2565.tar.gz
rust-c5a62b80587ef3c48245990ad5cd8f02518b2565.zip
Rollup merge of #146184 - dpaoliello:llvmbuildarm64, r=cuviper
In the rustc_llvm build script, don't consider arm64* to be 32-bit

The build script for `rustc_llvm` needs to detect 32-bit targets so that it links against `libatomics`. To do this, it matches the target architecture against `arm`, unfortunately incorrectly matches Arm64EC, Arm64E, etc.

This change adds a check that the target arch doesn't match `arm64`.
Diffstat (limited to 'compiler/rustc_llvm/build.rs')
-rw-r--r--compiler/rustc_llvm/build.rs5
1 files changed, 4 insertions, 1 deletions
diff --git a/compiler/rustc_llvm/build.rs b/compiler/rustc_llvm/build.rs
index 225ab8c846d..9d21d0d22e3 100644
--- a/compiler/rustc_llvm/build.rs
+++ b/compiler/rustc_llvm/build.rs
@@ -254,7 +254,10 @@ fn main() {
         println!("cargo:rustc-link-lib=kstat");
     }
 
-    if (target.starts_with("arm") && !target.contains("freebsd") && !target.contains("ohos"))
+    if (target.starts_with("arm")
+        && !target.starts_with("arm64")
+        && !target.contains("freebsd")
+        && !target.contains("ohos"))
         || target.starts_with("mips-")
         || target.starts_with("mipsel-")
         || target.starts_with("powerpc-")