summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2017-03-13 12:07:48 +0000
committerPavel Labath <labath@google.com>2017-03-13 12:07:48 +0000
commit7163ecb4294ede871a9fe5e5d27b6937d5bade7e (patch)
tree55f30961a07056b86f6ae7734fb10d0660a94584 /lldb/packages/Python/lldbsuite/test
parent6a3b059fb7309cc41b75e7d33d7c8c4b668584d4 (diff)
downloadbcm5719-llvm-7163ecb4294ede871a9fe5e5d27b6937d5bade7e.tar.gz
bcm5719-llvm-7163ecb4294ede871a9fe5e5d27b6937d5bade7e.zip
Android.rules: Add libc++ support
Summary: This adds support for building libc++ tests when targetting android. The tests are still not passing due to several other problems, but this way we can at least build them. Reviewers: eugene, EricWF, danalbert Subscribers: srhines, lldb-commits Differential Revision: https://reviews.llvm.org/D30737 llvm-svn: 297616
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r--lldb/packages/Python/lldbsuite/test/make/Android.rules28
-rw-r--r--lldb/packages/Python/lldbsuite/test/make/Makefile.rules8
2 files changed, 26 insertions, 10 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/make/Android.rules b/lldb/packages/Python/lldbsuite/test/make/Android.rules
index b520a839755..2ab3b9fde89 100644
--- a/lldb/packages/Python/lldbsuite/test/make/Android.rules
+++ b/lldb/packages/Python/lldbsuite/test/make/Android.rules
@@ -61,11 +61,23 @@ ifeq "$(findstring clang,$(CC))" "clang"
-gcc-toolchain $(NDK_ROOT)/toolchains/$(TOOLCHAIN_DIR)/prebuilt/$(HOST_TAG)
endif
-ARCH_CFLAGS += \
- --sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH) \
- -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include \
- -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/include \
- -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include/backward
-ARCH_LDFLAGS += -lm \
- $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/libgnustl_static.a \
- --sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH)
+ARCH_CFLAGS += --sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH)
+ARCH_LDFLAGS += --sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH) -lm
+
+ifeq (1,$(USE_LIBCPP))
+ ARCH_CFLAGS += \
+ -isystem $(NDK_ROOT)/sources/cxx-stl/llvm-libc++/include \
+ -isystem $(NDK_ROOT)/sources/android/support/include \
+ -isystem $(NDK_ROOT)/sources/cxx-stl/llvm-libc++abi/include
+
+ ARCH_LDFLAGS += \
+ -L$(NDK_ROOT)/sources/cxx-stl/llvm-libc++/libs/$(STL_ARCH) \
+ -l$(NDK_ROOT)/sources/cxx-stl/llvm-libc++/libs/$(STL_ARCH)/libc++.a
+else
+ ARCH_CFLAGS += \
+ -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include \
+ -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/include \
+ -isystem $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/include/backward
+
+ ARCH_LDFLAGS += $(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.9/libs/$(STL_ARCH)/libgnustl_static.a
+endif
diff --git a/lldb/packages/Python/lldbsuite/test/make/Makefile.rules b/lldb/packages/Python/lldbsuite/test/make/Makefile.rules
index 40ab4023f3e..30f3e9c39b0 100644
--- a/lldb/packages/Python/lldbsuite/test/make/Makefile.rules
+++ b/lldb/packages/Python/lldbsuite/test/make/Makefile.rules
@@ -326,15 +326,19 @@ endif
ifeq (1,$(USE_LIBCPP))
# Clang requires an extra flag: -stdlib=libstdc++
ifneq (,$(findstring clang,$(CC)))
+ CXXFLAGS += -DLLDB_USING_LIBCPP
ifeq "$(OS)" "Linux"
# This is the default install location on Ubuntu 14.04
ifneq ($(wildcard /usr/include/c++/v1/.),)
- CXXFLAGS += -stdlib=libc++ -DLLDB_USING_LIBCPP
+ CXXFLAGS += -stdlib=libc++
LDFLAGS += -stdlib=libc++
CXXFLAGS += -I/usr/include/c++/v1
endif
+ else ifeq "$(OS)" "Android"
+ # Nothing to do, this is already handled in
+ # Android.rules.
else
- CXXFLAGS += -stdlib=libc++ -DLLDB_USING_LIBCPP
+ CXXFLAGS += -stdlib=libc++
LDFLAGS += -stdlib=libc++
endif
endif
OpenPOWER on IntegriCloud