From b7a898b8fee7552fb319f3fbdd44a23a3dc26919 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Martins?= Date: Fri, 28 Jul 2017 22:20:43 +0100 Subject: [PATCH] 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 Reviewed-by: Oswald Buddenhagen --- mkspecs/common/android-base-tail.conf | 10 ++++++++-- 1 file 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