[llvm] eef8b74 - gn build: Unbreak Android cross-compilation.
Peter Collingbourne via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 19 16:28:42 PDT 2021
Author: Peter Collingbourne
Date: 2021-03-19T16:28:24-07:00
New Revision: eef8b74ef5efd5265ad35c8d6ebdbfbe43e81bfd
URL: https://github.com/llvm/llvm-project/commit/eef8b74ef5efd5265ad35c8d6ebdbfbe43e81bfd
DIFF: https://github.com/llvm/llvm-project/commit/eef8b74ef5efd5265ad35c8d6ebdbfbe43e81bfd.diff
LOG: gn build: Unbreak Android cross-compilation.
- D96404 defaulted to libunwind which isn't provided by NDK r21
(or r22), so specify -rtlib=libgcc on non-arm32.
- D97993 means that we need to use --gcc-toolchain instead of -B
to let the driver find libgcc.
Added:
Modified:
llvm/utils/gn/build/toolchain/target_flags.gni
Removed:
################################################################################
diff --git a/llvm/utils/gn/build/toolchain/target_flags.gni b/llvm/utils/gn/build/toolchain/target_flags.gni
index 0af52a0db6da..573e758a6d6f 100644
--- a/llvm/utils/gn/build/toolchain/target_flags.gni
+++ b/llvm/utils/gn/build/toolchain/target_flags.gni
@@ -13,8 +13,11 @@ if (current_os == "android") {
target_flags += [
"--target=$llvm_current_triple",
"--sysroot=$android_ndk_path/toolchains/llvm/prebuilt/linux-x86_64/sysroot",
- "-B$android_ndk_path/toolchains/llvm/prebuilt/linux-x86_64",
+ "--gcc-toolchain=$android_ndk_path/toolchains/llvm/prebuilt/linux-x86_64",
]
+ if (current_cpu != "arm") {
+ target_flags += [ "-rtlib=libgcc" ]
+ }
target_ldflags += [ "-static-libstdc++" ]
if (current_cpu == "arm") {
target_flags += [ "-march=armv7-a" ]
More information about the llvm-commits
mailing list