forked from organicmaps/organicmaps
[android] Switched to gnustl_static to support old armeabi devices and avoid exceptions bug on c++_static STL
This commit is contained in:
parent
9614caa6f9
commit
5c59cd2e77
3 changed files with 16 additions and 5 deletions
|
@ -199,7 +199,7 @@ LOCAL_SRC_FILES := \
|
|||
nv_event/nv_event.cpp \
|
||||
nv_time/nv_time.cpp
|
||||
|
||||
LOCAL_LDLIBS := -llog -lGLESv2
|
||||
LOCAL_LDLIBS := -llog -lGLESv2 -latomic
|
||||
|
||||
LOCAL_LDLIBS += -Wl,--gc-sections
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
NDK_TOOLCHAIN_VERSION := clang
|
||||
APP_PLATFORM := android-5
|
||||
APP_STL := c++_static
|
||||
APP_STL := gnustl_static
|
||||
APP_CPPFLAGS += -std=c++11
|
||||
|
||||
ifeq (x$(NDK_ABI_TO_BUILD), x)
|
||||
APP_ABI := armeabi armeabi-v7a-hard x86
|
||||
|
|
|
@ -30,6 +30,7 @@ QMAKE_CFLAGS_DEBUG *= -O0 -g -DDEBUG -D_DEBUG
|
|||
QMAKE_CXXFLAGS_DEBUG *= $$QMAKE_CFLAGS_DEBUG
|
||||
|
||||
BASE_CXX_INCLUDE_PATH = $$(NDK_ROOT)/sources/cxx-stl/llvm-libc++
|
||||
BASE_GNUSTL_INCLUDE_PATH = $$(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/4.8
|
||||
|
||||
# Customizations for each arch
|
||||
contains(ANDROID_TARGET_ABI, x86) {
|
||||
|
@ -43,6 +44,7 @@ contains(ANDROID_TARGET_ABI, x86) {
|
|||
|
||||
PLATFORM_INCLUDE_PATH = $$(NDK_ROOT)/platforms/$$ANDROID_PLATFORM/arch-x86/usr/include
|
||||
ABI_INCLUDE_PATH = $$BASE_CXX_INCLUDE_PATH/../gabi++/include
|
||||
ABI_GNUSTL_INCLUDE_PATH = $$BASE_GNUSTL_INCLUDE_PATH/libs/x86/include
|
||||
AR_FULL_PATH = $$(NDK_ROOT)/toolchains/x86-$$GCC_VERSION/prebuilt/$$(NDK_HOST)/bin/i686-linux-android-ar
|
||||
|
||||
} else {
|
||||
|
@ -58,6 +60,7 @@ contains(ANDROID_TARGET_ABI, x86) {
|
|||
|
||||
PLATFORM_INCLUDE_PATH = $$(NDK_ROOT)/platforms/$$ANDROID_PLATFORM/arch-mips/usr/include
|
||||
ABI_INCLUDE_PATH = $$BASE_CXX_INCLUDE_PATH/../gabi++/include
|
||||
ABI_GNUSTL_INCLUDE_PATH = $$BASE_GNUSTL_INCLUDE_PATH/libs/mips/include
|
||||
AR_FULL_PATH = $$(NDK_ROOT)/toolchains/mipsel-linux-android-$$GCC_VERSION/prebuilt/$$(NDK_HOST)/bin/mipsel-linux-android-ar
|
||||
|
||||
} else {
|
||||
|
@ -72,16 +75,19 @@ contains(ANDROID_TARGET_ABI, x86) {
|
|||
contains(ANDROID_TARGET_ABI, armeabi-v7a-hard) {
|
||||
GCC_TARGET = armv7-none-linux-androideabi
|
||||
QMAKE_CFLAGS *= -march=armv7-a -mfpu=vfpv3-d16 -mhard-float -D_NDK_MATH_NO_SOFTFP=1
|
||||
ABI_GNUSTL_INCLUDE_PATH = $$BASE_GNUSTL_INCLUDE_PATH/libs/armeabi-v7a/include
|
||||
|
||||
} else {
|
||||
contains(ANDROID_TARGET_ABI, armeabi-v7a) {
|
||||
GCC_TARGET = armv7-none-linux-androideabi
|
||||
QMAKE_CFLAGS *= -march=armv7-a -mfloat-abi=softfp -mfpu=vfpv3-d16
|
||||
ABI_GNUSTL_INCLUDE_PATH = $$BASE_GNUSTL_INCLUDE_PATH/libs/armeabi-v7a/include
|
||||
|
||||
} else {
|
||||
# armeabi (the oldest one) arch
|
||||
GCC_TARGET = armv5te-none-linux-androideabi
|
||||
QMAKE_CFLAGS *= -march=armv5te -mtune=xscale -msoft-float
|
||||
ABI_GNUSTL_INCLUDE_PATH = $$BASE_GNUSTL_INCLUDE_PATH/libs/armeabi/include
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -105,10 +111,14 @@ QMAKE_CXXFLAGS_HIDESYMS = $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
|
|||
# modifications to linux.conf
|
||||
QMAKE_AR = $$AR_FULL_PATH cqsD
|
||||
|
||||
QMAKE_INCDIR = $$BASE_CXX_INCLUDE_PATH/libcxx/include
|
||||
QMAKE_INCDIR *= $$BASE_CXX_INCLUDE_PATH/../../android/support/include
|
||||
QMAKE_INCDIR *= $$ABI_INCLUDE_PATH
|
||||
#QMAKE_INCDIR = $$BASE_CXX_INCLUDE_PATH/libcxx/include
|
||||
#QMAKE_INCDIR *= $$BASE_CXX_INCLUDE_PATH/../../android/support/include
|
||||
#QMAKE_INCDIR *= $$ABI_INCLUDE_PATH
|
||||
QMAKE_INCDIR *= $$PLATFORM_INCLUDE_PATH
|
||||
QMAKE_INCDIR *= $$BASE_GNUSTL_INCLUDE_PATH/include
|
||||
QMAKE_INCDIR *= $$BASE_GNUSTL_INCLUDE_PATH/include/backward
|
||||
QMAKE_INCDIR *= $$ABI_GNUSTL_INCLUDE_PATH
|
||||
|
||||
|
||||
#QMAKE_LIBDIR = $$ANDROID_SOURCES_CXX_STL_LIBDIR $$ANDROID_PLATFORM_PATH/lib
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue