summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorAlexander Shevchenko <sav_ix@ukr.net>2018-02-22 20:28:37 +0200
committerAlexander Shevchenko <sav_ix@ukr.net>2018-02-27 14:50:20 +0000
commit196318d0c3589e0c29fc6cc5cfd08f76b26b4eff (patch)
tree5addd12c3445c477cc75bdc52dfc1f72d5d3db4e /mkspecs
parent5778fff7a2cf5c40b9d0fc01cd9d8a150998218b (diff)
unify windows mkspecs: define c++ flags explicitly
with 40e87491 merged, 'QMAKE_CXXFLAGS' variable in 'win32-g++' toolchain became defined via 'QMAKE_CFLAGS'. the similar can be found in 'win32-clang-msvc' and 'win32-icc' toolchains too. this works for now, because such definitions just duplicates code from includes, like 'gcc-base.conf', 'msvc-desktop.conf', etc. but it would became broken, if changes would be applied to 'QMAKE_CXXFLAGS' definitions in that includes, prior to the redefinitions in 'win32-*/qmake.conf' toolchains. thus 'QMAKE_CXXFLAGS' definitions in 'win32-*/qmake.conf' toolchains should not depend on 'QMAKE_CFLAGS' and be done explicitly. in order to apply this change correctly to 'win32-icc' toolchain, its 'QMAKE_CFLAGS' variable should become dependent on definitions in the includes, similar to 'win32-clang-msvc' and 'win32-msvc' toolchains. Change-Id: I5e820e44a769a590ba63f70dcb3a115311093311 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> (cherry picked from commit 7ff3032b22cacd38390d164cb2c1a232c1979bab)
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/win32-clang-msvc/qmake.conf3
-rw-r--r--mkspecs/win32-g++/qmake.conf2
-rw-r--r--mkspecs/win32-icc/qmake.conf8
-rw-r--r--mkspecs/win32-msvc/qmake.conf5
4 files changed, 12 insertions, 6 deletions
diff --git a/mkspecs/win32-clang-msvc/qmake.conf b/mkspecs/win32-clang-msvc/qmake.conf
index 0041788ef9..ba9704e069 100644
--- a/mkspecs/win32-clang-msvc/qmake.conf
+++ b/mkspecs/win32-clang-msvc/qmake.conf
@@ -12,7 +12,8 @@ QMAKE_CC = clang-cl
QMAKE_CXX = $$QMAKE_CC
QMAKE_CFLAGS += -Wno-microsoft-enum-value
-QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
+
+QMAKE_CXXFLAGS += -Wno-microsoft-enum-value
# Precompiled headers are not supported yet by clang
CONFIG -= precompile_header
diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf
index 96c94e7021..e071a0d122 100644
--- a/mkspecs/win32-g++/qmake.conf
+++ b/mkspecs/win32-g++/qmake.conf
@@ -33,7 +33,7 @@ QMAKE_CFLAGS_WARN_ON += -Wextra
QMAKE_CFLAGS_SSE2 += -mstackrealign
QMAKE_CXX = $${CROSS_COMPILE}g++
-QMAKE_CXXFLAGS = $$QMAKE_CFLAGS
+QMAKE_CXXFLAGS += -fno-keep-inline-dllexport
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_RTTI_ON = -frtti
QMAKE_CXXFLAGS_RTTI_OFF = -fno-rtti
diff --git a/mkspecs/win32-icc/qmake.conf b/mkspecs/win32-icc/qmake.conf
index c66d73383a..bcbca80e47 100644
--- a/mkspecs/win32-icc/qmake.conf
+++ b/mkspecs/win32-icc/qmake.conf
@@ -16,9 +16,9 @@ QMAKE_COMPILER += intel_icl
QMAKE_CFLAGS_OPTIMIZE_FULL = -O3
QMAKE_CC = icl
-QMAKE_CFLAGS = -nologo -Zc:wchar_t -Qprec -Zm200 -Qdiag-disable:1744,1738,809,3373
-QMAKE_CFLAGS_WARN_ON = -W3 -Qdiag-disable:673
-QMAKE_CFLAGS_WARN_OFF = -W0 -Qdiag-disable:673
+QMAKE_CFLAGS += -Qprec -Zm200
+QMAKE_CFLAGS_WARN_ON = -W3 -Qdiag-disable:673,809,1738,1744,3373
+QMAKE_CFLAGS_WARN_OFF = -W0
QMAKE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_OPTIMIZE_DEBUG -Zi -MDd
QMAKE_CFLAGS_UTF8_SOURCE = -Qoption,cpp,--unicode_source_kind,UTF-8
QMAKE_CFLAGS_LTCG = -Qipo
@@ -41,7 +41,7 @@ QMAKE_CFLAGS_AVX512VL += -QxCORE-AVX512
QMAKE_CFLAGS_F16C = $$QMAKE_CFLAGS_AVX2
QMAKE_CXX = $$QMAKE_CC
-QMAKE_CXXFLAGS = $$QMAKE_CFLAGS /Zc:forScope
+QMAKE_CXXFLAGS += -Qprec -Zm200 -Zc:forScope
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
QMAKE_CXXFLAGS_CXX11 = -Qstd=c++11
diff --git a/mkspecs/win32-msvc/qmake.conf b/mkspecs/win32-msvc/qmake.conf
index 5c38330add..08f085127a 100644
--- a/mkspecs/win32-msvc/qmake.conf
+++ b/mkspecs/win32-msvc/qmake.conf
@@ -5,4 +5,9 @@
#
include(../common/msvc-desktop.conf)
+
+QMAKE_CFLAGS +=
+
+QMAKE_CXXFLAGS +=
+
load(qt_config)