summaryrefslogtreecommitdiffstats
path: root/mkspecs
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs')
-rw-r--r--mkspecs/common/msvc-base.conf56
-rw-r--r--mkspecs/common/msvc-desktop.conf50
-rw-r--r--mkspecs/common/winrt_winphone/qmake.conf5
-rw-r--r--mkspecs/winrt-arm-msvc2015/qmake.conf1
-rw-r--r--mkspecs/winrt-x64-msvc2015/qmake.conf1
-rw-r--r--mkspecs/winrt-x86-msvc2015/qmake.conf1
6 files changed, 65 insertions, 49 deletions
diff --git a/mkspecs/common/msvc-base.conf b/mkspecs/common/msvc-base.conf
new file mode 100644
index 0000000000..5bd144faa0
--- /dev/null
+++ b/mkspecs/common/msvc-base.conf
@@ -0,0 +1,56 @@
+#
+# qmake configuration for Microsoft Visual Studio C/C++ Compiler
+# This mkspec is used for all win32-msvcXXXX, winrt-XXX-msvcXXX
+# and winphone-XXX-msvcXXX specs
+#
+
+#
+# Version-specific changes
+#
+
+greaterThan(MSC_VER, 1499) {
+ # Visual Studio 2008 (9.0) / Visual C++ 15.0 and up
+ QMAKE_CFLAGS_MP = -MP
+ QMAKE_CXXFLAGS_MP = $$QMAKE_CFLAGS_MP
+}
+
+greaterThan(MSC_VER, 1599) {
+ # Visual Studio 2010 (10.0) / Visual C++ 16.0 and up
+ MAKEFILE_GENERATOR = MSBUILD
+
+ QMAKE_CFLAGS_AVX = -arch:AVX
+ QMAKE_CFLAGS_AVX2 = -arch:AVX
+
+ VCPROJ_EXTENSION = .vcxproj
+}
+
+greaterThan(MSC_VER, 1699) {
+ # Visual Studio 2012 (11.0) / Visual C++ 17.0 and up
+ QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
+ QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE@QMAKE_SUBSYSTEM_SUFFIX@
+ QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS@QMAKE_SUBSYSTEM_SUFFIX@
+ QT_CONFIG += c++11
+ CONFIG += c++11
+}
+
+greaterThan(MSC_VER, 1799) {
+ # Visual Studio 2013 (12.0) / Visual C++ 18.0 and up
+ QMAKE_CFLAGS += -FS
+ QMAKE_CXXFLAGS += -FS
+
+ equals(MSC_VER, 1800) {
+ QMAKE_CFLAGS_RELEASE += -Zc:strictStrings
+ QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
+ QMAKE_CXXFLAGS_RELEASE += -Zc:strictStrings
+ QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
+ }
+}
+
+greaterThan(MSC_VER, 1899) {
+ # Visual Studio 2015 (14.0) / Visual C++ 19.0 and up
+ QMAKE_CFLAGS += -Zc:strictStrings
+ QMAKE_CFLAGS_WARN_ON += -w44456 -w44457 -w44458
+ QMAKE_CFLAGS_AVX2 = -arch:AVX2
+ QMAKE_CXXFLAGS += -Zc:strictStrings -Zc:throwingNew
+ QMAKE_CXXFLAGS_WARN_ON += -w44456 -w44457 -w44458 -wd4577
+}
diff --git a/mkspecs/common/msvc-desktop.conf b/mkspecs/common/msvc-desktop.conf
index a1c436388c..3aeb331de6 100644
--- a/mkspecs/common/msvc-desktop.conf
+++ b/mkspecs/common/msvc-desktop.conf
@@ -97,54 +97,6 @@ VCPROJ_EXTENSION = .vcproj
VCSOLUTION_EXTENSION = .sln
VCPROJ_KEYWORD = Qt4VSv1.0
-#
-# Version-specific changes
-#
-greaterThan(MSC_VER, 1499) {
- # Visual Studio 2008 (9.0) / Visual C++ 15.0 and up
- QMAKE_CFLAGS_MP = -MP
- QMAKE_CXXFLAGS_MP = $$QMAKE_CFLAGS_MP
-}
-
-greaterThan(MSC_VER, 1599) {
- # Visual Studio 2010 (10.0) / Visual C++ 16.0 and up
- MAKEFILE_GENERATOR = MSBUILD
-
- QMAKE_CFLAGS_AVX = -arch:AVX
- QMAKE_CFLAGS_AVX2 = -arch:AVX
-
- VCPROJ_EXTENSION = .vcxproj
-}
-
-greaterThan(MSC_VER, 1699) {
- # Visual Studio 2012 (11.0) / Visual C++ 17.0 and up
- QMAKE_CXXFLAGS_EXCEPTIONS_OFF = -D_HAS_EXCEPTIONS=0
- QMAKE_LFLAGS_CONSOLE = /SUBSYSTEM:CONSOLE@QMAKE_SUBSYSTEM_SUFFIX@
- QMAKE_LFLAGS_WINDOWS = /SUBSYSTEM:WINDOWS@QMAKE_SUBSYSTEM_SUFFIX@
- QT_CONFIG += c++11
- CONFIG += c++11
-}
-
-greaterThan(MSC_VER, 1799) {
- # Visual Studio 2013 (12.0) / Visual C++ 18.0 and up
- QMAKE_CFLAGS += -FS
- QMAKE_CXXFLAGS += -FS
-
- equals(MSC_VER, 1800) {
- QMAKE_CFLAGS_RELEASE += -Zc:strictStrings
- QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
- QMAKE_CXXFLAGS_RELEASE += -Zc:strictStrings
- QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO += -Zc:strictStrings
- }
-}
-
-greaterThan(MSC_VER, 1899) {
- # Visual Studio 2015 (14.0) / Visual C++ 19.0 and up
- QMAKE_CFLAGS += -Zc:strictStrings
- QMAKE_CFLAGS_WARN_ON += -w44456 -w44457 -w44458
- QMAKE_CFLAGS_AVX2 = -arch:AVX2
- QMAKE_CXXFLAGS += -Zc:strictStrings -Zc:throwingNew
- QMAKE_CXXFLAGS_WARN_ON += -w44456 -w44457 -w44458 -wd4577
-}
+include(msvc-base.conf)
unset(MSC_VER)
diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf
index 288043da88..e94b4b72fa 100644
--- a/mkspecs/common/winrt_winphone/qmake.conf
+++ b/mkspecs/common/winrt_winphone/qmake.conf
@@ -92,4 +92,9 @@ VCPROJ_EXTENSION = .vcxproj
VCSOLUTION_EXTENSION = .sln
VCPROJ_KEYWORD = Qt4VSv1.0
WINRT_ASSETS_PATH = $$PWD/assets
+
+include(../msvc-base.conf)
+
+unset(MSC_VER)
+
load(qt_config)
diff --git a/mkspecs/winrt-arm-msvc2015/qmake.conf b/mkspecs/winrt-arm-msvc2015/qmake.conf
index a5bb342456..7a9375246d 100644
--- a/mkspecs/winrt-arm-msvc2015/qmake.conf
+++ b/mkspecs/winrt-arm-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 ARM __ARM__ __arm__
diff --git a/mkspecs/winrt-x64-msvc2015/qmake.conf b/mkspecs/winrt-x64-msvc2015/qmake.conf
index 5b82f79981..ca2dc88bf0 100644
--- a/mkspecs/winrt-x64-msvc2015/qmake.conf
+++ b/mkspecs/winrt-x64-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900 _WIN32
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 X64 __X64__ __x64__
diff --git a/mkspecs/winrt-x86-msvc2015/qmake.conf b/mkspecs/winrt-x86-msvc2015/qmake.conf
index bc7cf4118e..3b2681e93d 100644
--- a/mkspecs/winrt-x86-msvc2015/qmake.conf
+++ b/mkspecs/winrt-x86-msvc2015/qmake.conf
@@ -4,6 +4,7 @@
# Written for Microsoft Visual C++ 2015
#
+MSC_VER = 1900
include(../common/winrt_winphone/qmake.conf)
QMAKE_COMPILER_DEFINES += _MSC_VER=1900 _WIN32
DEFINES += WINAPI_FAMILY=WINAPI_FAMILY_PC_APP WINAPI_PARTITION_PHONE_APP=1 X86 __X86__ __x86__