summaryrefslogtreecommitdiffstats
path: root/tools/configure
diff options
context:
space:
mode:
authorPeter Kümmel <syntheticpp@gmx.net>2012-09-14 09:24:18 (GMT)
committerQt by Nokia <qt-info@nokia.com>2012-09-17 15:00:39 (GMT)
commit370a8f0c2678e5a5a688eaa22e27d98ca8f1d82d (patch)
tree64d00133ca0699a932f71ec671d5362c90be716d /tools/configure
parent1df4b49a182dbff10ea7753009a33dca86ba436a (diff)
downloadQt-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/configure')
-rw-r--r--tools/configure/configure.pro1
-rw-r--r--tools/configure/configureapp.cpp5
-rw-r--r--tools/configure/environment.cpp5
-rw-r--r--tools/configure/environment.h3
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;