[llvm] 883e93c - gn build: Add support for building lldb-server on Android.
Peter Collingbourne via llvm-commits
llvm-commits at lists.llvm.org
Wed Sep 8 19:35:32 PDT 2021
Author: Peter Collingbourne
Date: 2021-09-08T19:33:51-07:00
New Revision: 883e93cb280e672107c4fe64d2ab03a01613e0af
URL: https://github.com/llvm/llvm-project/commit/883e93cb280e672107c4fe64d2ab03a01613e0af
DIFF: https://github.com/llvm/llvm-project/commit/883e93cb280e672107c4fe64d2ab03a01613e0af.diff
LOG: gn build: Add support for building lldb-server on Android.
The cross-compiled lldb-server targets are added to the lldb deps if
Android cross compilation is enabled.
Differential Revision: https://reviews.llvm.org/D109464
Added:
Modified:
llvm/utils/gn/build/libs/xml/enable.gni
llvm/utils/gn/secondary/lldb/tools/driver/BUILD.gn
llvm/utils/gn/secondary/lldb/tools/lldb-server/BUILD.gn
Removed:
################################################################################
diff --git a/llvm/utils/gn/build/libs/xml/enable.gni b/llvm/utils/gn/build/libs/xml/enable.gni
index 3ef357b4fd2f7..547483d52a07e 100644
--- a/llvm/utils/gn/build/libs/xml/enable.gni
+++ b/llvm/utils/gn/build/libs/xml/enable.gni
@@ -1,4 +1,4 @@
declare_args() {
# Whether to include code that links against libxml2.
- llvm_enable_libxml2 = host_os != "win"
+ llvm_enable_libxml2 = current_os != "win" && current_os != "android"
}
diff --git a/llvm/utils/gn/secondary/lldb/tools/driver/BUILD.gn b/llvm/utils/gn/secondary/lldb/tools/driver/BUILD.gn
index 7d78145ce566f..9514ef229e01c 100644
--- a/llvm/utils/gn/secondary/lldb/tools/driver/BUILD.gn
+++ b/llvm/utils/gn/secondary/lldb/tools/driver/BUILD.gn
@@ -1,4 +1,5 @@
import("//llvm/utils/TableGen/tablegen.gni")
+import("//llvm/utils/gn/build/toolchain/compiler.gni")
import("//llvm/utils/gn/build/write_cmake_config.gni")
import("//llvm/version.gni")
@@ -15,6 +16,14 @@ if (current_os == "mac") {
}
}
+supported_toolchains = []
+if (android_ndk_path != "") {
+ supported_toolchains += [
+ "//llvm/utils/gn/build/toolchain:stage2_android_aarch64",
+ "//llvm/utils/gn/build/toolchain:stage2_android_arm",
+ ]
+}
+
executable("lldb") {
configs += [ "//llvm/utils/gn/build:lldb_code" ]
deps = [
@@ -34,6 +43,9 @@ executable("lldb") {
if (current_os == "linux") {
deps += [ "//lldb/tools/lldb-server" ]
}
+ foreach (toolchain, supported_toolchains) {
+ deps += [ "//lldb/tools/lldb-server($toolchain)" ]
+ }
sources = [
"Driver.cpp",
diff --git a/llvm/utils/gn/secondary/lldb/tools/lldb-server/BUILD.gn b/llvm/utils/gn/secondary/lldb/tools/lldb-server/BUILD.gn
index 5129c71d97ad5..178fb05bdd394 100644
--- a/llvm/utils/gn/secondary/lldb/tools/lldb-server/BUILD.gn
+++ b/llvm/utils/gn/secondary/lldb/tools/lldb-server/BUILD.gn
@@ -1,3 +1,4 @@
+import("//compiler-rt/target.gni")
import("//llvm/utils/TableGen/tablegen.gni")
tablegen("LLGSOptions") {
@@ -57,4 +58,8 @@ executable("lldb-server") {
"lldb-platform.cpp",
"lldb-server.cpp",
]
+
+ if (current_os == "android") {
+ output_dir = "$root_build_dir/runtimes_ndk_cxx/$crt_current_target_arch"
+ }
}
More information about the llvm-commits
mailing list