summaryrefslogtreecommitdiffstats
path: root/mkspecs/common/msvc-based-version.conf
diff options
context:
space:
mode:
Diffstat (limited to 'mkspecs/common/msvc-based-version.conf')
-rw-r--r--mkspecs/common/msvc-based-version.conf32
1 files changed, 32 insertions, 0 deletions
diff --git a/mkspecs/common/msvc-based-version.conf b/mkspecs/common/msvc-based-version.conf
new file mode 100644
index 0000000000..38aecbaf59
--- /dev/null
+++ b/mkspecs/common/msvc-based-version.conf
@@ -0,0 +1,32 @@
+#
+# qmake configuration for Compilers based on the Microsoft Visual Studio
+# C/C++ Compilers like win32-clang-msvc
+
+#
+# Version-specific changes
+#
+
+isEmpty(QMAKE_MSC_VER): error("msvc-based-version.conf loaded but QMAKE_MSC_VER isn't set")
+
+MSVC_VER = 14.0
+COMPAT_MKSPEC = win32-msvc2015
+
+# -utf-8 compiler option for Visual Studio 2015 Update 2
+greaterThan(QMAKE_MSC_FULL_VER, 190023918):!intel_icl {
+ isEmpty(QT_CLANG_MAJOR_VERSION)|!lessThan(QT_CLANG_MAJOR_VERSION, 4) {
+ QMAKE_CFLAGS_UTF8_SOURCE = -utf-8
+ }
+}
+
+greaterThan(QMAKE_MSC_VER, 1909) {
+ # Visual Studio 2017 (15.0) / Visual C++ 19.10 and up
+ MSVC_VER = 15.0
+ COMPAT_MKSPEC = win32-msvc2017
+}
+
+greaterThan(QMAKE_MSC_VER, 1910) {
+ # No compat spec past MSVC 2017
+ COMPAT_MKSPEC =
+}
+
+!isEmpty(COMPAT_MKSPEC):!$$COMPAT_MKSPEC: CONFIG += $$COMPAT_MKSPEC