summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/android-base-tail.conf
diff options
context:
space:
mode:
authorBogDan Vatra <bogdan@kdab.com>2017-07-28 16:52:31 +0300
committerSérgio Martins <sergio.martins@kdab.com>2017-08-23 12:47:58 +0000
commit09ea013ae17caad7d973fb05287a634dba2768c9 (patch)
tree4be46f69a069c1da87b1f998f828dcf2581312e0 /mkspecs/common/android-base-tail.conf
parent2740584e6de5ec2999e0e44f363bc18b9252dc23 (diff)
Use libc++ instead of libstdc++ when compiling with android-clang mkspec
clang+libc++ is the only supported way by Google nowadays. libstdc++ is too old and already fails to build some C++11 apps e.g. missing std::to_string(). android-g++ mkspec still uses libstdc++ and g++. Use -isystem to include system headers instead of QMAKE_INCDIR_POST (-I). Task-number: QTBUG-60455 Change-Id: Iba8b04594c2e5e2832e6cf480e4e52ff31ad4106 Reviewed-by: Sérgio Martins <sergio.martins@kdab.com> Reviewed-by: Eskil Abrahamsen Blomfeldt <eskil.abrahamsen-blomfeldt@qt.io>
Diffstat (limited to 'mkspecs/common/android-base-tail.conf')
-rw-r--r--mkspecs/common/android-base-tail.conf28
1 files changed, 7 insertions, 21 deletions
diff --git a/mkspecs/common/android-base-tail.conf b/mkspecs/common/android-base-tail.conf
index 3f1b414d3f..3472dfdf77 100644
--- a/mkspecs/common/android-base-tail.conf
+++ b/mkspecs/common/android-base-tail.conf
@@ -11,18 +11,11 @@ else: equals(ANDROID_TARGET_ARCH, armeabi): \
QMAKE_CFLAGS += -march=armv5te -mtune=xscale -msoft-float -fno-builtin-memmove
# -fno-builtin-memmove is used to workaround https://code.google.com/p/android/issues/detail?id=81692
-QMAKE_CFLAGS += --sysroot=$$ANDROID_PLATFORM_ROOT_PATH
QMAKE_CFLAGS_WARN_ON = -Wall -W
QMAKE_CFLAGS_WARN_OFF =
equals(ANDROID_TARGET_ARCH, armeabi-v7a) | equals(ANDROID_TARGET_ARCH, armeabi) {
- contains(QMAKE_COMPILER, clang) {
- QMAKE_CFLAGS_RELEASE = -Oz
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO = -g -Oz
- } else {
- QMAKE_CFLAGS_RELEASE = -Os
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO = -g -Os
- }
-
+ QMAKE_CFLAGS_RELEASE = $$QMAKE_ARM_CFLAGS_RELEASE
+ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO = $$QMAKE_ARM_CFLAGS_RELEASE_WITH_DEBUGINFO
QMAKE_CFLAGS_DEBUG = -g -marm -O0
equals(ANDROID_TARGET_ARCH, armeabi):if(equals(NDK_TOOLCHAIN_VERSION, 4.8)|equals(NDK_TOOLCHAIN_VERSION, 4.9)) {
DEFINES += QT_OS_ANDROID_GCC_48_WORKAROUND
@@ -73,19 +66,12 @@ QMAKE_STRIP =
QMAKE_RANLIB = $$NDK_TOOLCHAIN_PATH/bin/$$NDK_TOOLS_PREFIX-ranlib
-equals(ANDROID_TARGET_ARCH, armeabi)|equals(ANDROID_TARGET_ARCH, armeabi-v7a): \
- LIBGCC_PATH_FULL = $$system("$$QMAKE_GCC -mthumb-interwork -print-libgcc-file-name")
-else: \
- LIBGCC_PATH_FULL = $$system("$$QMAKE_GCC -print-libgcc-file-name")
-
-LIBGCC_PATH = $$dirname(LIBGCC_PATH_FULL)
-
-QMAKE_INCDIR_POST = $$ANDROID_SOURCES_CXX_STL_INCDIR $$QMAKE_ANDROID_PLATFORM_INCDIR
-QMAKE_LIBDIR_POST = $$ANDROID_SOURCES_CXX_STL_LIBDIR $$QMAKE_ANDROID_PLATFORM_LIBDIR $$LIBGCC_PATH
+QMAKE_INCDIR_POST =
+QMAKE_LIBDIR_POST = $$ANDROID_SOURCES_CXX_STL_LIBDIR
QMAKE_INCDIR_X11 =
QMAKE_LIBDIR_X11 =
-QMAKE_INCDIR_OPENGL = $$QMAKE_ANDROID_PLATFORM_INCDIR
-QMAKE_LIBDIR_OPENGL = $$QMAKE_ANDROID_PLATFORM_LIBDIR
+QMAKE_INCDIR_OPENGL =
+QMAKE_LIBDIR_OPENGL =
QMAKE_LINK_SHLIB = $$QMAKE_LINK
QMAKE_LFLAGS = --sysroot=$$ANDROID_PLATFORM_ROOT_PATH
@@ -97,7 +83,7 @@ QMAKE_LFLAGS_NOUNDEF = -Wl,--no-undefined
QMAKE_LFLAGS_RPATH = -Wl,-rpath=
QMAKE_LFLAGS_RPATHLINK = -Wl,-rpath-link=
-QMAKE_LIBS_PRIVATE = -lgnustl_shared -llog -lz -lm -ldl -lc -lgcc
+QMAKE_LIBS_PRIVATE = $$ANDROID_CXX_STL_LIBS -llog -lz -lm -ldl -lc
QMAKE_LIBS_X11 =
QMAKE_LIBS_THREAD =
QMAKE_LIBS_EGL = -lEGL