summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
authorThiago Macieira <thiago.macieira@intel.com>2015-11-16 14:56:07 -0800
committerThiago Macieira <thiago.macieira@intel.com>2015-12-05 00:10:35 +0000
commit4242fe0a039f271b98f7a2b6125ba76a45783ad1 (patch)
tree67ffc681c79702aa82d22bf4c1c0b25ef4efe11a /mkspecs
parentd386ec1fd8f4340af70a2b8687a753b46eb973ca (diff)
Silence cl.exe warning about -arch:SSE2 being unknown in 64-bit builds
That implies we need to differentiate between a variable set but empty and an empty variable. GCC, Clang and the Intel compiler accept -msse2 on 64-bit builds without warning (they also accept -mno-sse2), but the Microsoft compiler does not have that option. Change-Id: I54233388ba10994996ae3e749fd829085e8fd7b7 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/msvc-desktop.conf17
1 files changed, 12 insertions, 5 deletions
diff --git a/mkspecs/common/msvc-desktop.conf b/mkspecs/common/msvc-desktop.conf
index eec9e1f688..1b9d57bff0 100644
--- a/mkspecs/common/msvc-desktop.conf
+++ b/mkspecs/common/msvc-desktop.conf
@@ -35,11 +35,18 @@ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -O2 -MD -Zi
QMAKE_CFLAGS_DEBUG = -Zi -MDd
QMAKE_CFLAGS_YACC =
QMAKE_CFLAGS_LTCG = -GL
-QMAKE_CFLAGS_SSE2 = -arch:SSE2
-QMAKE_CFLAGS_SSE3 = -arch:SSE2
-QMAKE_CFLAGS_SSSE3 = -arch:SSE2
-QMAKE_CFLAGS_SSE4_1 = -arch:SSE2
-QMAKE_CFLAGS_SSE4_2 = -arch:SSE2
+
+contains(QMAKE_TARGET.arch, x86_64) {
+ # SSE2 is mandatory on 64-bit mode, so skip the option. It triggers:
+ # cl : Command line warning D9002 : ignoring unknown option '-arch:SSE2'
+ QMAKE_CFLAGS_SSE2 =
+} else {
+ QMAKE_CFLAGS_SSE2 = -arch:SSE2
+}
+QMAKE_CFLAGS_SSE3 = $$QMAKE_CFLAGS_SSE2
+QMAKE_CFLAGS_SSSE3 = $$QMAKE_CFLAGS_SSE2
+QMAKE_CFLAGS_SSE4_1 = $$QMAKE_CFLAGS_SSE2
+QMAKE_CFLAGS_SSE4_2 = $$QMAKE_CFLAGS_SSE2
QMAKE_CXX = $$QMAKE_CC
QMAKE_CXXFLAGS = $$QMAKE_CFLAGS