summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorSérgio Martins <sergio.martins@kdab.com>2017-07-28 22:20:43 +0100
committerSérgio Martins <sergio.martins@kdab.com>2017-07-31 17:02:29 +0000
commitb7a898b8fee7552fb319f3fbdd44a23a3dc26919 (patch)
tree1cc1f6278443a3e3ab2a03474a9e3acbdc97e8c2 /mkspecs
parent286c53f217d5a8d634cb2b8c08d2c5a3db67158b (diff)
android-clang: Use -Oz instead of -Os to produce smaller binaries
For clang -Os is very similar to -O2 and doesn't really reduce size much. -Oz is usually what you want to use with clang for code reduction. Now clang binaries are only 9% bigger than gcc's, instead of 22%. Change-Id: Ib0ba560be26db68aeb21c13df4b151b7fbd81431 Reviewed-by: BogDan Vatra <bogdan@kdab.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/android-base-tail.conf10
1 files changed, 8 insertions, 2 deletions
diff --git a/mkspecs/common/android-base-tail.conf b/mkspecs/common/android-base-tail.conf
index 2610918c4e..3f1b414d3f 100644
--- a/mkspecs/common/android-base-tail.conf
+++ b/mkspecs/common/android-base-tail.conf
@@ -15,8 +15,14 @@ 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) {
- QMAKE_CFLAGS_RELEASE = -Os
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO = -g -Os
+ 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_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