summaryrefslogtreecommitdiffstats
path: root/lldb/packages/Python/lldbsuite/test
diff options
context:
space:
mode:
authorPavel Labath <labath@google.com>2018-06-22 13:13:29 +0000
committerPavel Labath <labath@google.com>2018-06-22 13:13:29 +0000
commit733ad45b9fcdd6a5c6a6df5d33d65fb6d78c7b31 (patch)
tree9d968e7692553a9f25c1aa9fbc9463e3ac06d1ce /lldb/packages/Python/lldbsuite/test
parenta52963b404ca6aefcbdbe0198ae9b978a6faf57e (diff)
downloadbcm5719-llvm-733ad45b9fcdd6a5c6a6df5d33d65fb6d78c7b31.tar.gz
bcm5719-llvm-733ad45b9fcdd6a5c6a6df5d33d65fb6d78c7b31.zip
Android.rules: Use libc++ by default
libstdc++ will soon be dropped from the android NDK. This patch makes sure we are prepared for that by using libc++ in tests by default (i.e., except for libstdc++ data formatter tests). Only a couple of small tweaks were needed to make this work: - Add the libc++ include paths to CXXFLAGS only. This was necessary to make the tests compile with -fmodules. The modules tests have been disabled, but this way, they will be ready for them if they are enabled. - in one test I had to add an explicit std::string copy to make sure the copy constructor is there for the expression evaluator to find it. llvm-svn: 335344
Diffstat (limited to 'lldb/packages/Python/lldbsuite/test')
-rw-r--r--lldb/packages/Python/lldbsuite/test/lang/cpp/auto/main.cpp5
-rw-r--r--lldb/packages/Python/lldbsuite/test/make/Android.rules16
-rw-r--r--lldb/packages/Python/lldbsuite/test/make/Makefile.rules2
3 files changed, 14 insertions, 9 deletions
diff --git a/lldb/packages/Python/lldbsuite/test/lang/cpp/auto/main.cpp b/lldb/packages/Python/lldbsuite/test/lang/cpp/auto/main.cpp
index 76fb95e0a34..6aee25c2160 100644
--- a/lldb/packages/Python/lldbsuite/test/lang/cpp/auto/main.cpp
+++ b/lldb/packages/Python/lldbsuite/test/lang/cpp/auto/main.cpp
@@ -12,5 +12,10 @@
int main()
{
std::string helloworld("hello world");
+
+ // Ensure std::string copy constructor is present in the binary, as we will
+ // use it in an expression.
+ std::string other = helloworld;
+
return 0; // break here
}
diff --git a/lldb/packages/Python/lldbsuite/test/make/Android.rules b/lldb/packages/Python/lldbsuite/test/make/Android.rules
index f7b8e245961..fab956e2364 100644
--- a/lldb/packages/Python/lldbsuite/test/make/Android.rules
+++ b/lldb/packages/Python/lldbsuite/test/make/Android.rules
@@ -75,8 +75,15 @@ ARCH_CFLAGS += --sysroot=$(NDK_ROOT)/sysroot \
-D__ANDROID_API__=$(API_LEVEL)
ARCH_LDFLAGS += --sysroot=$(NDK_ROOT)/platforms/android-$(API_LEVEL)/arch-$(SYSROOT_ARCH) -lm
-ifeq (1,$(USE_LIBCPP))
+ifeq (1,$(USE_LIBSTDCPP))
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
+else
+ ARCH_CXXFLAGS += \
-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
@@ -84,11 +91,4 @@ ifeq (1,$(USE_LIBCPP))
ARCH_LDFLAGS += \
-L$(NDK_ROOT)/sources/cxx-stl/llvm-libc++/libs/$(STL_ARCH) \
$(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 802624c674b..32f41b24d5d 100644
--- a/lldb/packages/Python/lldbsuite/test/make/Makefile.rules
+++ b/lldb/packages/Python/lldbsuite/test/make/Makefile.rules
@@ -247,7 +247,7 @@ ifeq "$(MAKE_GMODULES)" "YES"
CFLAGS += $(MANDATORY_MODULE_BUILD_CFLAGS)
endif
-CXXFLAGS += -std=c++11 $(CFLAGS)
+CXXFLAGS += -std=c++11 $(CFLAGS) $(ARCH_CXXFLAGS)
LD = $(CC)
LDFLAGS ?= $(CFLAGS)
LDFLAGS += $(LD_EXTRAS) $(ARCH_LDFLAGS)
OpenPOWER on IntegriCloud