diff options
author | Peter Kümmel <syntheticpp@gmx.net> | 2012-09-14 09:24:18 (GMT) |
---|---|---|
committer | Qt by Nokia <qt-info@nokia.com> | 2012-09-17 15:00:39 (GMT) |
commit | 370a8f0c2678e5a5a688eaa22e27d98ca8f1d82d (patch) | |
tree | 64d00133ca0699a932f71ec671d5362c90be716d /tools | |
parent | 1df4b49a182dbff10ea7753009a33dca86ba436a (diff) | |
download | Qt-370a8f0c2678e5a5a688eaa22e27d98ca8f1d82d.zip Qt-370a8f0c2678e5a5a688eaa22e27d98ca8f1d82d.tar.gz Qt-370a8f0c2678e5a5a688eaa22e27d98ca8f1d82d.tar.bz2 |
Add msvc2012 support
The only essential difference to msvc2010 is the define of _ALLOW_KEYWORD_MACROS.
It is a documented breaking change:
http://msdn.microsoft.com/en-us/library/bb531344.aspx
Updated backport of qtbase/1a4f58d3e67f3d271d9e24d7f52950f796542d2f
Change-Id: Iee8b900a214a9e5f289b2139d65f2e00c8113669
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/configure/configure.pro | 1 | ||||
-rw-r--r-- | tools/configure/configureapp.cpp | 5 | ||||
-rw-r--r-- | tools/configure/environment.cpp | 5 | ||||
-rw-r--r-- | tools/configure/environment.h | 3 |
4 files changed, 11 insertions, 3 deletions
diff --git a/tools/configure/configure.pro b/tools/configure/configure.pro index 542c740..dab29b0 100644 --- a/tools/configure/configure.pro +++ b/tools/configure/configure.pro @@ -19,6 +19,7 @@ win32-msvc* { QMAKE_CXXFLAGS_DEBUG -= -MDd QMAKE_CXXFLAGS_DEBUG += -MTd } +win32-msvc2012: DEFINES += _ALLOW_KEYWORD_MACROS PRECOMPILED_HEADER = configure_pch.h diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index d98b5bb..bc3ee6e 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1344,7 +1344,8 @@ void Configure::parseCmdLine() qmakeSpec.endsWith("-msvc2003") || qmakeSpec.endsWith("-msvc2005") || qmakeSpec.endsWith("-msvc2008") || - qmakeSpec.endsWith("-msvc2010")) { + qmakeSpec.endsWith("-msvc2010") || + qmakeSpec.endsWith("-msvc2012")) { if (dictionary[ "MAKE" ].isEmpty()) dictionary[ "MAKE" ] = "nmake"; dictionary[ "QMAKEMAKEFILE" ] = "Makefile.win32"; } else if (qmakeSpec.contains("win32-g++")) { @@ -2346,7 +2347,7 @@ bool Configure::checkAvailability(const QString &part) } else if (part == "WEBKIT") { const QString qmakeSpec = dictionary.value("QMAKESPEC"); available = qmakeSpec == "win32-msvc2005" || qmakeSpec == "win32-msvc2008" || - qmakeSpec == "win32-msvc2010" || qmakeSpec.startsWith("win32-g++"); + qmakeSpec == "win32-msvc2010" || qmakeSpec == "win32-msvc2012" || qmakeSpec.startsWith("win32-g++"); if (dictionary[ "SHARED" ] == "no") { cout << endl << "WARNING: Using static linking will disable the WebKit module." << endl << endl; diff --git a/tools/configure/environment.cpp b/tools/configure/environment.cpp index 4da5557..68007fe 100644 --- a/tools/configure/environment.cpp +++ b/tools/configure/environment.cpp @@ -80,6 +80,8 @@ struct CompilerInfo{ {CC_NET2005, "Microsoft (R) 32-bit C/C++ Optimizing Compiler.NET 2005 (8.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\8.0", "cl.exe"}, // link.exe, lib.exe {CC_NET2008, "Microsoft (R) 32-bit C/C++ Optimizing Compiler.NET 2008 (9.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\9.0", "cl.exe"}, // link.exe, lib.exe {CC_NET2010, "Microsoft (R) 32-bit C/C++ Optimizing Compiler.NET 2010 (10.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\10.0", "cl.exe"}, // link.exe, lib.exe + {CC_NET2012, "Microsoft (R) 32-bit C/C++ Optimizing Compiler.NET 2012 (11.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\11.0", "cl.exe"}, // link.exe, lib.exe + {CC_NET2012, "Microsoft (R) 32-bit C/C++ Optimizing Compiler.NET 2012 (11.0)", "Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\11.0", "cl.exe"}, // link.exe, lib.exe {CC_UNKNOWN, "Unknown", 0, 0}, }; @@ -105,6 +107,9 @@ QString Environment::detectQMakeSpec() { QString spec; switch (detectCompiler()) { + case CC_NET2012: + spec = "win32-msvc2012"; + break; case CC_NET2010: spec = "win32-msvc2010"; break; diff --git a/tools/configure/environment.h b/tools/configure/environment.h index f300125..57c4be9 100644 --- a/tools/configure/environment.h +++ b/tools/configure/environment.h @@ -54,7 +54,8 @@ enum Compiler { CC_NET2003 = 0x71, CC_NET2005 = 0x80, CC_NET2008 = 0x90, - CC_NET2010 = 0x91 + CC_NET2010 = 0xA0, + CC_NET2012 = 0xB0 }; struct CompilerInfo; |