summaryrefslogtreecommitdiffstats
path: root/mkspecs/features/link_ltcg.prf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/features/link_ltcg.prf')
-rw-r--r--mkspecs/features/link_ltcg.prf18
1 files changed, 18 insertions, 0 deletions
diff --git a/mkspecs/features/link_ltcg.prf b/mkspecs/features/link_ltcg.prf
new file mode 100644
index 0000000000..537021f11b
--- /dev/null
+++ b/mkspecs/features/link_ltcg.prf
@@ -0,0 +1,18 @@
+gcc {
+ # When doing link-time code generation, we need to pass the compiler
+ # flags during linking the stage too. This file is processed after
+ # default_post.prf, so the QMAKE_CXXFLAGS already contains
+ # QMAKE_CXXFLAGS_DEBUG or _RELEASE.
+ use_c_linker {
+ # use_c_linker.prf is in effect, use the C flags
+ QMAKE_LFLAGS_LTCG += $$QMAKE_CFLAGS $$QMAKE_CFLAGS_LTCG
+ QMAKE_LFLAGS_APP += $$QMAKE_CFLAGS_APP
+ QMAKE_LFLAGS_SHLIB += $$QMAKE_CFLAGS_SHLIB
+ QMAKE_LFLAGS_PLUGIN += $$QMAKE_CFLAGS_SHLIB
+ } else {
+ QMAKE_LFLAGS_LTCG = $$QMAKE_CXXFLAGS $$QMAKE_LFLAGS_LTCG
+ QMAKE_LFLAGS_APP += $$QMAKE_CXXFLAGS_APP
+ QMAKE_LFLAGS_SHLIB += $$QMAKE_CXXFLAGS_SHLIB
+ QMAKE_LFLAGS_PLUGIN += $$QMAKE_CFLAGS_SHLIB
+ }
+}