summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/gcc-base.conf
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2014-11-14 19:27:46 -0800
committerThiago Macieira <thiago.macieira@intel.com>2015-01-11 03:41:48 +0100
commit0f569f5900ea4cf3af551c90f79b80fc78dce9bf (patch)
tree318d8a66986ce03cde4f5cc1f533fbca6b6a8bda /mkspecs/common/gcc-base.conf
parentd7795559a7b80d3ec0a1eb86d29deaca6074f4ed (diff)
Clean up ltcg.prf with variables, including a new static mode
By using the special "ar" and "ranlib" tools, the symbol table is made visible, so we don't need fat LTO binaries. Since we need to store the new tool names, we may as well clean up ltcg.prf with variable names for the fat mode too. Change-Id: I7e53af0c74a3d069313f38500b72538af1d61128 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'mkspecs/common/gcc-base.conf')
-rw-r--r--mkspecs/common/gcc-base.conf9
1 files changed, 8 insertions, 1 deletions
diff --git a/mkspecs/common/gcc-base.conf b/mkspecs/common/gcc-base.conf
index 8310db52cc..d21ee38fb7 100644
--- a/mkspecs/common/gcc-base.conf
+++ b/mkspecs/common/gcc-base.conf
@@ -48,7 +48,8 @@ QMAKE_CFLAGS_YACC += -Wno-unused -Wno-parentheses
QMAKE_CFLAGS_HIDESYMS += -fvisibility=hidden
QMAKE_CFLAGS_EXCEPTIONS_OFF += -fno-exceptions
QMAKE_CFLAGS_SPLIT_SECTIONS += -ffunction-sections
-QMAKE_CFLAGS_LTCG = -flto
+QMAKE_CFLAGS_LTCG = -flto -fno-fat-lto-objects
+QMAKE_CFLAGS_LTCG_FATOBJECTS = -ffat-lto-objects
QMAKE_CXXFLAGS += $$QMAKE_CFLAGS
QMAKE_CXXFLAGS_DEPS += $$QMAKE_CFLAGS_DEPS
@@ -64,6 +65,7 @@ QMAKE_CXXFLAGS_HIDESYMS += $$QMAKE_CFLAGS_HIDESYMS -fvisibility-inlines-hidden
QMAKE_CXXFLAGS_EXCEPTIONS_OFF += $$QMAKE_CFLAGS_EXCEPTIONS_OFF
QMAKE_CXXFLAGS_SPLIT_SECTIONS += $$QMAKE_CFLAGS_SPLIT_SECTIONS
QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
+QMAKE_CXXFLAGS_LTCG_FATOBJECTS = $$QMAKE_CFLAGS_LTCG_FATOBJECTS
QMAKE_LFLAGS +=
QMAKE_LFLAGS_DEBUG +=
@@ -81,4 +83,9 @@ QMAKE_CFLAGS_AVX += -mavx
QMAKE_CFLAGS_AVX2 += -mavx2
QMAKE_CFLAGS_NEON += -mfpu=neon
+# Wrapper tools that understand .o/.a files with GIMPLE instead of machine code
+QMAKE_AR_LTCG = gcc-ar cqs
+QMAKE_NM_LTCG = gcc-nm -P
+QMAKE_RANLIB_LTCG = true # No need to run since gcc-ar has "s"
+
include(sanitize.conf)