mirror of
https://github.com/crystalidea/qt6windows7.git
synced 2024-11-23 12:07:03 +08:00
82 lines
2.9 KiB
Plaintext
82 lines
2.9 KiB
Plaintext
|
load(default_pre)
|
||
|
|
||
|
build_pass:armeabi-v7a {
|
||
|
QT_ARCH = armeabi-v7a
|
||
|
} else:build_pass:arm64-v8a {
|
||
|
QT_ARCH = arm64-v8a
|
||
|
} else:build_pass:x86 {
|
||
|
QT_ARCH = x86
|
||
|
} else:build_pass:x86_64 {
|
||
|
QT_ARCH = x86_64
|
||
|
} else:count(ALL_ANDROID_ABIS, 1) {
|
||
|
QT_ARCH = $$ALL_ANDROID_ABIS
|
||
|
CONFIG += single_android_abi $$QT_ARCH
|
||
|
} else {
|
||
|
# default architecture
|
||
|
QT_ARCH = arm64-v8a
|
||
|
}
|
||
|
|
||
|
DEFAULT_ANDROID_TARGET_ARCH=$${QT_ARCH}
|
||
|
|
||
|
ANDROID_TARGET_ARCH = $$(ANDROID_TARGET_ARCH)
|
||
|
isEmpty(ANDROID_TARGET_ARCH): ANDROID_TARGET_ARCH = $$DEFAULT_ANDROID_TARGET_ARCH
|
||
|
|
||
|
# Follow https://android.googlesource.com/platform/ndk/+/ndk-release-r20/docs/BuildSystemMaintainers.md
|
||
|
|
||
|
equals(ANDROID_TARGET_ARCH, armeabi-v7a): \
|
||
|
QMAKE_CFLAGS = -target armv7a-linux-androideabi$$replace(ANDROID_PLATFORM, "android-", "")
|
||
|
else: equals(ANDROID_TARGET_ARCH, arm64-v8a): \
|
||
|
QMAKE_CFLAGS = -target aarch64-linux-android$$replace(ANDROID_PLATFORM, "android-", "")
|
||
|
else: equals(ANDROID_TARGET_ARCH, x86): \
|
||
|
QMAKE_CFLAGS = -target i686-linux-android$$replace(ANDROID_PLATFORM, "android-", "") -mstackrealign
|
||
|
else: equals(ANDROID_TARGET_ARCH, x86_64): \
|
||
|
QMAKE_CFLAGS = -target x86_64-linux-android$$replace(ANDROID_PLATFORM, "android-", "")
|
||
|
|
||
|
QMAKE_CFLAGS += -fno-limit-debug-info
|
||
|
|
||
|
QMAKE_LINK = $$QMAKE_CXX $$QMAKE_CFLAGS
|
||
|
|
||
|
equals(ANDROID_TARGET_ARCH, armeabi-v7a): \
|
||
|
QMAKE_LINK += -Wl,--exclude-libs,libunwind.a
|
||
|
|
||
|
ANDROID_STDCPP_PATH = $$NDK_LLVM_PATH/sysroot/usr/lib/
|
||
|
|
||
|
# -fstack-protector-strong offers good protection against stack smashing attacks.
|
||
|
# It is (currently) enabled only on Android because we know for sure that Android compilers supports it
|
||
|
QMAKE_CFLAGS += -fPIC -fstack-protector-strong -DANDROID
|
||
|
|
||
|
|
||
|
equals(ANDROID_TARGET_ARCH, armeabi-v7a) | equals(ANDROID_TARGET_ARCH, armeabi) {
|
||
|
CONFIG += optimize_size
|
||
|
QMAKE_CFLAGS_DEBUG = -g -marm -O0
|
||
|
QMAKE_CFLAGS_RELEASE += -mthumb
|
||
|
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -mthumb
|
||
|
}
|
||
|
|
||
|
QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
|
||
|
|
||
|
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
|
||
|
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
|
||
|
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
|
||
|
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
|
||
|
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
|
||
|
QMAKE_CXXFLAGS_SHLIB = $$QMAKE_CFLAGS_SHLIB
|
||
|
QMAKE_CXXFLAGS_YACC = $$QMAKE_CFLAGS_YACC
|
||
|
QMAKE_CXXFLAGS_THREAD = $$QMAKE_CFLAGS_THREAD
|
||
|
|
||
|
QMAKE_LIBS_EGL = -lEGL
|
||
|
QMAKE_LIBS_OPENGL_ES2 = -lGLESv2
|
||
|
|
||
|
QMAKE_STRIP =
|
||
|
#$${CROSS_COMPILE}strip
|
||
|
|
||
|
|
||
|
equals(QT_ARCH, x86): CROSS_COMPILE = $$NDK_LLVM_PATH/bin/i686-linux-android-
|
||
|
else: equals(QT_ARCH, x86_64): CROSS_COMPILE = $$NDK_LLVM_PATH/bin/x86_64-linux-android-
|
||
|
else: equals(QT_ARCH, arm64-v8a): CROSS_COMPILE = $$NDK_LLVM_PATH/bin/aarch64-linux-android-
|
||
|
else: CROSS_COMPILE = $$NDK_LLVM_PATH/bin/arm-linux-androideabi-
|
||
|
|
||
|
QMAKE_LFLAGS =
|
||
|
|
||
|
QMAKE_LIBS_PRIVATE = -llog -lz -lm -ldl -lc
|