diff --git a/tools/mkspecs/android-g++/qmake.conf b/tools/mkspecs/android-g++/qmake.conf index aaafbf4318..e9e92d792b 100644 --- a/tools/mkspecs/android-g++/qmake.conf +++ b/tools/mkspecs/android-g++/qmake.conf @@ -11,7 +11,11 @@ include(qws.conf) # NDK_HOST should be defined for qmake # NDK_ABI optionally can be defined to armeabi, armeabi-v7a or x86, by default armeabi will be used -contains(NDK_ABI, x86) { +ANDROID_TARGET_ABI=$$(NDK_ABI) +# by default use armv5 architecture +isEmpty( ANDROID_TARGET_ABI ): ANDROID_TARGET_ABI = armeabi + +contains(ANDROID_TARGET_ABI, x86) { NDK_TOOLCHAIN = x86-4.4.3 ANDROID_TARGET_ARCH = x86 ANDROID_CC_PREFIX = i686-android-linux @@ -20,23 +24,20 @@ contains(NDK_ABI, x86) { ANDROID_TARGET_ARCH = arm ANDROID_CC_PREFIX = arm-linux-androideabi } -ANDROID_PLATFORM = android-5 -ANDROID_TARGET_ABI = $$(NDK_ABI) -# by default use armv5 architecture -isEmpty( ANDROID_TARGET_ABI ): ANDROID_TARGET_ABI = armeabi +# NOTE: x86 works only from android-9 and above! +ANDROID_PLATFORM = android-5 NDK_TOOLCHAIN_PATH=$$(NDK_ROOT)/toolchains/$$NDK_TOOLCHAIN/prebuilt/$$(NDK_HOST) -CONFIG += $$ANDROID_PLATFORM -ANDROID_PLATFORM_ROOT_PATH = $$(NDK_ROOT)/platforms/$$ANDROID_PLATFORM/arch-$$ANDROID_TARGET_ARCH +CONFIG += $$ANDROID_PLATFORM +ANDROID_PLATFORM_ROOT_PATH = $$(NDK_ROOT)/platforms/$$ANDROID_PLATFORM/arch-$$ANDROID_TARGET_ARCH ANDROID_PLATFORM_PATH = $$ANDROID_PLATFORM_ROOT_PATH/usr ANDROID_SOURCES_CXX_STL_LIBDIR = $$(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/libs/$$ANDROID_TARGET_ABI ANDROID_SOURCES_CXX_STL_INCDIR = $$(NDK_ROOT)/sources/cxx-stl/gnu-libstdc++/include $$ANDROID_SOURCES_CXX_STL_LIBDIR/include -# modifications to g++.conf -QMAKE_CC = $$NDK_TOOLCHAIN_PATH/bin/$$ANDROID_CC_PREFIX-gcc +QMAKE_CC = $$NDK_TOOLCHAIN_PATH/bin/$$ANDROID_CC_PREFIX-gcc QMAKE_CFLAGS += --sysroot=$$ANDROID_PLATFORM_ROOT_PATH -ffunction-sections -fdata-sections -fomit-frame-pointer -DANDROID #QMAKE_CFLAGS += -funwind-tables