2011-04-27 10:05:43 +00:00
|
|
|
#
|
|
|
|
# qmake configuration for win32-icc
|
|
|
|
#
|
2017-11-24 20:35:17 +00:00
|
|
|
# Written for Intel C++ Compiler on Windows / icl 16.0 or higher
|
2011-04-27 10:05:43 +00:00
|
|
|
#
|
|
|
|
|
unify windows mkspecs: update definitions
mingw-w64 toolchain:
- add missing compiler definitions, similar to
'msvc-desktop.conf' toolchain,
- describe the reasons of missing compiler definitions, available in
'msvc-desktop.conf' toolchain,
- add missing 'QMAKE_CXXFLAGS' and 'QMAKE_CXXFLAGS_WARN_ON' variables,
similar to 'msvc-desktop.conf' toolchain.
ICC on Windows toolchain:
- add 'QMAKE_CFLAGS_OPTIMIZE_FULL' variable, similar to 'gcc-base.conf'
toolchain, though left it unused for now,
- add missing flags to 'QMAKE_CFLAGS' variable, similar to
'msvc-desktop.conf' toolchain,
- update deprecated 'Qwd' flag with 'Qdiag-disable',
- use 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable instead of '-Od' flag,
similar to 'gcc-base.conf' toolchain (ICC implies '-O2' optimization
level by default, while MSVC implies '-Od'),
- add 'QMAKE_CFLAGS_UTF8_SOURCE' variable, similar to
'msvc-version.conf' toolchain; use a workaround to initialize it,
until '-utf-8' flag would be supported by ICC on Windows,
- update deprecated '-Qstd=c++1z' flag with '-Qstd=c++17',
MSVC toolchain:
- remove 'incremental' from MSVC 'CONFIG' variable, since it has
relevance only for the Unix generator,
- add 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable, used in ICC for Windows
toolchain,
- add empty 'QMAKE_LIBS' variable, similar to 'win32-g++' toolchain,
- add 'uuid.lib' library to 'QMAKE_LIBS_GUI' variable, similar to
'win32-g++' toolchain,
- add C++14 and C++17 language support flags, though left them disabled
for now, similar to 'win32-icc' toolchain.
Change-Id: Ideef62d0422674184836faa655bfc5d09a5f612f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-01-10 15:51:54 +00:00
|
|
|
# Use the Microsoft C/C++ Optimizing Compiler configuration,
|
2017-11-24 20:35:17 +00:00
|
|
|
# since ICC on Windows pretends to be MSVC
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2016-06-16 19:22:55 +00:00
|
|
|
include(../common/msvc-desktop.conf)
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2017-11-24 20:35:17 +00:00
|
|
|
# modifications to msvc-desktop.conf
|
2016-06-16 19:22:55 +00:00
|
|
|
|
2017-11-24 20:35:17 +00:00
|
|
|
QMAKE_COMPILER += intel_icl
|
2012-09-13 20:17:33 +00:00
|
|
|
|
unify windows mkspecs: update definitions
mingw-w64 toolchain:
- add missing compiler definitions, similar to
'msvc-desktop.conf' toolchain,
- describe the reasons of missing compiler definitions, available in
'msvc-desktop.conf' toolchain,
- add missing 'QMAKE_CXXFLAGS' and 'QMAKE_CXXFLAGS_WARN_ON' variables,
similar to 'msvc-desktop.conf' toolchain.
ICC on Windows toolchain:
- add 'QMAKE_CFLAGS_OPTIMIZE_FULL' variable, similar to 'gcc-base.conf'
toolchain, though left it unused for now,
- add missing flags to 'QMAKE_CFLAGS' variable, similar to
'msvc-desktop.conf' toolchain,
- update deprecated 'Qwd' flag with 'Qdiag-disable',
- use 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable instead of '-Od' flag,
similar to 'gcc-base.conf' toolchain (ICC implies '-O2' optimization
level by default, while MSVC implies '-Od'),
- add 'QMAKE_CFLAGS_UTF8_SOURCE' variable, similar to
'msvc-version.conf' toolchain; use a workaround to initialize it,
until '-utf-8' flag would be supported by ICC on Windows,
- update deprecated '-Qstd=c++1z' flag with '-Qstd=c++17',
MSVC toolchain:
- remove 'incremental' from MSVC 'CONFIG' variable, since it has
relevance only for the Unix generator,
- add 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable, used in ICC for Windows
toolchain,
- add empty 'QMAKE_LIBS' variable, similar to 'win32-g++' toolchain,
- add 'uuid.lib' library to 'QMAKE_LIBS_GUI' variable, similar to
'win32-g++' toolchain,
- add C++14 and C++17 language support flags, though left them disabled
for now, similar to 'win32-icc' toolchain.
Change-Id: Ideef62d0422674184836faa655bfc5d09a5f612f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-01-10 15:51:54 +00:00
|
|
|
QMAKE_CFLAGS_OPTIMIZE_FULL = -O3
|
|
|
|
|
2013-03-14 23:42:15 +00:00
|
|
|
QMAKE_CC = icl
|
2018-02-22 18:28:37 +00:00
|
|
|
QMAKE_CFLAGS += -Qprec -Zm200
|
|
|
|
QMAKE_CFLAGS_WARN_ON = -W3 -Qdiag-disable:673,809,1738,1744,3373
|
|
|
|
QMAKE_CFLAGS_WARN_OFF = -W0
|
unify windows mkspecs: update definitions
mingw-w64 toolchain:
- add missing compiler definitions, similar to
'msvc-desktop.conf' toolchain,
- describe the reasons of missing compiler definitions, available in
'msvc-desktop.conf' toolchain,
- add missing 'QMAKE_CXXFLAGS' and 'QMAKE_CXXFLAGS_WARN_ON' variables,
similar to 'msvc-desktop.conf' toolchain.
ICC on Windows toolchain:
- add 'QMAKE_CFLAGS_OPTIMIZE_FULL' variable, similar to 'gcc-base.conf'
toolchain, though left it unused for now,
- add missing flags to 'QMAKE_CFLAGS' variable, similar to
'msvc-desktop.conf' toolchain,
- update deprecated 'Qwd' flag with 'Qdiag-disable',
- use 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable instead of '-Od' flag,
similar to 'gcc-base.conf' toolchain (ICC implies '-O2' optimization
level by default, while MSVC implies '-Od'),
- add 'QMAKE_CFLAGS_UTF8_SOURCE' variable, similar to
'msvc-version.conf' toolchain; use a workaround to initialize it,
until '-utf-8' flag would be supported by ICC on Windows,
- update deprecated '-Qstd=c++1z' flag with '-Qstd=c++17',
MSVC toolchain:
- remove 'incremental' from MSVC 'CONFIG' variable, since it has
relevance only for the Unix generator,
- add 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable, used in ICC for Windows
toolchain,
- add empty 'QMAKE_LIBS' variable, similar to 'win32-g++' toolchain,
- add 'uuid.lib' library to 'QMAKE_LIBS_GUI' variable, similar to
'win32-g++' toolchain,
- add C++14 and C++17 language support flags, though left them disabled
for now, similar to 'win32-icc' toolchain.
Change-Id: Ideef62d0422674184836faa655bfc5d09a5f612f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-01-10 15:51:54 +00:00
|
|
|
QMAKE_CFLAGS_DEBUG = $$QMAKE_CFLAGS_OPTIMIZE_DEBUG -Zi -MDd
|
|
|
|
QMAKE_CFLAGS_UTF8_SOURCE = -Qoption,cpp,--unicode_source_kind,UTF-8
|
2014-06-26 21:56:06 +00:00
|
|
|
QMAKE_CFLAGS_LTCG = -Qipo
|
2019-10-15 20:56:26 +00:00
|
|
|
QMAKE_CFLAGS_DISABLE_LTCG = -Qipo-
|
2017-12-19 22:48:59 +00:00
|
|
|
|
2014-06-24 18:22:40 +00:00
|
|
|
QMAKE_CFLAGS_SSE2 = -QxSSE2
|
|
|
|
QMAKE_CFLAGS_SSE3 = -QxSSE3
|
|
|
|
QMAKE_CFLAGS_SSSE3 = -QxSSSE3
|
|
|
|
QMAKE_CFLAGS_SSE4_1 = -QxSSE4.1
|
|
|
|
QMAKE_CFLAGS_SSE4_2 = -QxSSE4.2
|
|
|
|
QMAKE_CFLAGS_AVX = -QxAVX
|
|
|
|
QMAKE_CFLAGS_AVX2 = -QxCORE-AVX2
|
2015-07-17 21:46:05 +00:00
|
|
|
QMAKE_CFLAGS_AVX512F += -QxCOMMON-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512CD += -QxCOMMON-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512ER += -QxMIC-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512PF += -QxMIC-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512DQ += -QxCORE-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512BW += -QxCORE-AVX512
|
|
|
|
QMAKE_CFLAGS_AVX512VL += -QxCORE-AVX512
|
2019-10-07 04:45:13 +00:00
|
|
|
QMAKE_CFLAGS_AVX512VNNI += -QxCASCADELAKE
|
|
|
|
QMAKE_CFLAGS_AVX512IFMA += -QxICELAKE-CLIENT # technically, cannonlake
|
|
|
|
QMAKE_CFLAGS_AVX512VBMI += -QxICELAKE-CLIENT # ditto
|
|
|
|
QMAKE_CFLAGS_AVX512VBMI2 += QxICELAKE-CLIENT
|
|
|
|
QMAKE_CFLAGS_AVX512BITALG += QxICELAKE-CLIENT
|
|
|
|
QMAKE_CFLAGS_AVX512POPCNTDQ += QxICELAKE-CLIENT
|
2017-04-03 23:05:18 +00:00
|
|
|
QMAKE_CFLAGS_F16C = $$QMAKE_CFLAGS_AVX2
|
2019-10-15 20:56:26 +00:00
|
|
|
QMAKE_CFLAGS_RDRND = $$QMAKE_CFLAGS_AVX2
|
|
|
|
# ICC on Windows lacks the mrdseed compiler option that sets the RDSEED macro
|
|
|
|
QMAKE_CFLAGS_RDSEED = -D__RDSEED__=1
|
|
|
|
QMAKE_CFLAGS_ARCH_HASWELL = $$QMAKE_CFLAGS_AVX2
|
|
|
|
|
2017-01-27 21:09:55 +00:00
|
|
|
QMAKE_CFLAGS_AESNI = -QxSSE2
|
|
|
|
QMAKE_CFLAGS_SHANI = -QxSSE4.2
|
2019-10-07 04:45:13 +00:00
|
|
|
QMAKE_CFLAGS_VAES = -QxCORE-AVX512
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2013-03-14 23:42:15 +00:00
|
|
|
QMAKE_CXX = $$QMAKE_CC
|
2018-02-22 18:28:37 +00:00
|
|
|
QMAKE_CXXFLAGS += -Qprec -Zm200 -Zc:forScope
|
2013-03-14 23:42:15 +00:00
|
|
|
QMAKE_CXXFLAGS_WARN_ON = $$QMAKE_CFLAGS_WARN_ON
|
|
|
|
QMAKE_CXXFLAGS_WARN_OFF = $$QMAKE_CFLAGS_WARN_OFF
|
2014-06-24 01:43:06 +00:00
|
|
|
QMAKE_CXXFLAGS_CXX11 = -Qstd=c++11
|
2015-07-09 00:21:30 +00:00
|
|
|
# ICC supports the following but Qt won't compile
|
|
|
|
#QMAKE_CXXFLAGS_CXX14 = -Qstd=c++14
|
unify windows mkspecs: update definitions
mingw-w64 toolchain:
- add missing compiler definitions, similar to
'msvc-desktop.conf' toolchain,
- describe the reasons of missing compiler definitions, available in
'msvc-desktop.conf' toolchain,
- add missing 'QMAKE_CXXFLAGS' and 'QMAKE_CXXFLAGS_WARN_ON' variables,
similar to 'msvc-desktop.conf' toolchain.
ICC on Windows toolchain:
- add 'QMAKE_CFLAGS_OPTIMIZE_FULL' variable, similar to 'gcc-base.conf'
toolchain, though left it unused for now,
- add missing flags to 'QMAKE_CFLAGS' variable, similar to
'msvc-desktop.conf' toolchain,
- update deprecated 'Qwd' flag with 'Qdiag-disable',
- use 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable instead of '-Od' flag,
similar to 'gcc-base.conf' toolchain (ICC implies '-O2' optimization
level by default, while MSVC implies '-Od'),
- add 'QMAKE_CFLAGS_UTF8_SOURCE' variable, similar to
'msvc-version.conf' toolchain; use a workaround to initialize it,
until '-utf-8' flag would be supported by ICC on Windows,
- update deprecated '-Qstd=c++1z' flag with '-Qstd=c++17',
MSVC toolchain:
- remove 'incremental' from MSVC 'CONFIG' variable, since it has
relevance only for the Unix generator,
- add 'QMAKE_CFLAGS_OPTIMIZE_DEBUG' variable, used in ICC for Windows
toolchain,
- add empty 'QMAKE_LIBS' variable, similar to 'win32-g++' toolchain,
- add 'uuid.lib' library to 'QMAKE_LIBS_GUI' variable, similar to
'win32-g++' toolchain,
- add C++14 and C++17 language support flags, though left them disabled
for now, similar to 'win32-icc' toolchain.
Change-Id: Ideef62d0422674184836faa655bfc5d09a5f612f
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
2018-01-10 15:51:54 +00:00
|
|
|
#QMAKE_CXXFLAGS_CXX1Z = -Qstd=c++17
|
2014-06-26 21:56:06 +00:00
|
|
|
QMAKE_CXXFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
|
2015-09-02 18:48:51 +00:00
|
|
|
QMAKE_CXXFLAGS_DISABLE_LTCG = $$QMAKE_CFLAGS_DISABLE_LTCG
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2013-03-14 23:42:15 +00:00
|
|
|
QMAKE_LINK = xilink
|
2014-06-26 21:56:06 +00:00
|
|
|
QMAKE_LFLAGS_LTCG = $$QMAKE_CFLAGS_LTCG
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2013-03-14 23:42:15 +00:00
|
|
|
QMAKE_LIB = xilib /NOLOGO
|
2011-04-27 10:05:43 +00:00
|
|
|
|
2014-03-03 19:41:52 +00:00
|
|
|
load(qt_config)
|