From 3a33eb45524255a3689544b322355f4db48a1a6c Mon Sep 17 00:00:00 2001 From: "Jason S. Clary" Date: Mon, 14 Aug 2023 17:46:47 -0500 Subject: [PATCH 1/3] Initial support for x86_64-linux-android targets. --- xbuild/src/cargo/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xbuild/src/cargo/mod.rs b/xbuild/src/cargo/mod.rs index b82a2896..347909c4 100644 --- a/xbuild/src/cargo/mod.rs +++ b/xbuild/src/cargo/mod.rs @@ -295,7 +295,7 @@ impl CargoBuild { target_sdk_version ); self.use_ld("lld"); - self.add_link_arg("--target=aarch64-linux-android"); + self.add_link_arg(&format!("--target={}", ndk_triple)); self.add_link_arg(&format!("-B{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", lib_dir.display())); From 56ce7fa15d52a56c63e6d09cd4299e3f99f656b9 Mon Sep 17 00:00:00 2001 From: "Jason S. Clary" Date: Mon, 14 Aug 2023 19:06:26 -0500 Subject: [PATCH 2/3] Improve target selection for clang link phase. --- xbuild/src/cargo/mod.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/xbuild/src/cargo/mod.rs b/xbuild/src/cargo/mod.rs index 347909c4..5fda3a61 100644 --- a/xbuild/src/cargo/mod.rs +++ b/xbuild/src/cargo/mod.rs @@ -295,7 +295,7 @@ impl CargoBuild { target_sdk_version ); self.use_ld("lld"); - self.add_link_arg(&format!("--target={}", ndk_triple)); + self.add_link_arg(&format!("--target={}", self.triple.unwrap_or(ndk_triple))); self.add_link_arg(&format!("-B{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", lib_dir.display())); From 32efed696d650bdbdef3a196eb44560b570ea635 Mon Sep 17 00:00:00 2001 From: "Jason S. Clary" Date: Tue, 15 Aug 2023 07:53:05 -0500 Subject: [PATCH 3/3] Only add clang target if it differs from the host. --- xbuild/src/cargo/mod.rs | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/xbuild/src/cargo/mod.rs b/xbuild/src/cargo/mod.rs index 5fda3a61..adb91766 100644 --- a/xbuild/src/cargo/mod.rs +++ b/xbuild/src/cargo/mod.rs @@ -295,7 +295,9 @@ impl CargoBuild { target_sdk_version ); self.use_ld("lld"); - self.add_link_arg(&format!("--target={}", self.triple.unwrap_or(ndk_triple))); + if let Some(triple) = self.triple { + self.add_link_arg(&format!("--target={}", triple)); + } self.add_link_arg(&format!("-B{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", sdk_lib_dir.display())); self.add_link_arg(&format!("-L{}", lib_dir.display()));