Skip to content

Commit

Permalink
unify windows mkspecs: define c++ flags explicitly
Browse files Browse the repository at this point in the history
with 40e8749 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)
  • Loading branch information
sav-ix committed Feb 27, 2018
1 parent 5778fff commit 196318d
Show file tree
Hide file tree
Showing 4 changed files with 12 additions and 6 deletions.
3 changes: 2 additions & 1 deletion mkspecs/win32-clang-msvc/qmake.conf
Expand Up @@ -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
Expand Down
2 changes: 1 addition & 1 deletion mkspecs/win32-g++/qmake.conf
Expand Up @@ -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
Expand Down
8 changes: 4 additions & 4 deletions mkspecs/win32-icc/qmake.conf
Expand Up @@ -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
Expand All @@ -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
Expand Down
5 changes: 5 additions & 0 deletions mkspecs/win32-msvc/qmake.conf
Expand Up @@ -5,4 +5,9 @@
#

include(../common/msvc-desktop.conf)

QMAKE_CFLAGS +=

QMAKE_CXXFLAGS +=

load(qt_config)

0 comments on commit 196318d

Please sign in to comment.