39fc377bf1
it allows using optimize_full, ltcg and sanitizers Change-Id: I3ccf8257145c7d8800c2ebe98c5ac5adcec0dc9d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
25 lines
1.0 KiB
Plaintext
25 lines
1.0 KiB
Plaintext
gcc {
|
|
# on Windows, MinGW's support for -flto=N is broken
|
|
!clang:!intel_icc:!equals(QMAKE_HOST.os, Windows):greaterThan(QMAKE_HOST.cpu_count, 1) {
|
|
# Override LTO number of jobs
|
|
QMAKE_LFLAGS_LTCG ~= s/^-flto$/-flto=$$QMAKE_HOST.cpu_count/
|
|
}
|
|
|
|
# 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
|
|
}
|
|
}
|