diff options
author | Thiago Macieira <thiago.macieira@intel.com> | 2014-06-19 15:52:49 -0700 |
---|---|---|
committer | Thiago Macieira <thiago.macieira@intel.com> | 2014-12-13 05:11:25 +0100 |
commit | ce1c53b4130495b17addc45bf3f5b2a2dc052507 (patch) | |
tree | 7d964a0391a022fe99a0ee87b5547de8359f3aa7 /tools | |
parent | c23d1c76953704ecb52c833d7ef1de2e2f89b1e6 (diff) | |
download | qtbase-ce1c53b4130495b17addc45bf3f5b2a2dc052507.tar.gz |
Add detection of and support for Visual Studio 2015
Tested with the Preview release of November 2014.
Differences to the 2013 detection and support:
- Option -Zc:strictStrings is present in both debug and release mode
and is passed to qmake's own build
- New warnings 4456, 4457 and 4458 (shadowing) are disabled
- Compiler supports -arch:AVX2
Change-Id: I9572ff4d4aded4004c1fa5d6f13ffee5462043d6
Reviewed-by: Joerg Bornemann <joerg.bornemann@theqtcompany.com>
Diffstat (limited to 'tools')
-rw-r--r-- | tools/configure/configureapp.cpp | 3 | ||||
-rw-r--r-- | tools/configure/environment.cpp | 8 | ||||
-rw-r--r-- | tools/configure/environment.h | 3 |
3 files changed, 12 insertions, 2 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 7ed8f8dfe3..14bc8455c7 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1379,7 +1379,8 @@ void Configure::parseCmdLine() dictionary[ "QMAKESPEC" ].endsWith("-msvc2008") || dictionary[ "QMAKESPEC" ].endsWith("-msvc2010") || dictionary[ "QMAKESPEC" ].endsWith("-msvc2012") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2013")) { + dictionary[ "QMAKESPEC" ].endsWith("-msvc2013") || + dictionary[ "QMAKESPEC" ].endsWith("-msvc2015")) { if (dictionary[ "MAKE" ].isEmpty()) dictionary[ "MAKE" ] = "nmake"; dictionary[ "QMAKEMAKEFILE" ] = "Makefile.win32"; } else if (dictionary[ "QMAKESPEC" ] == QString("win32-g++")) { diff --git a/tools/configure/environment.cpp b/tools/configure/environment.cpp index 494b10e554..6eb0107098 100644 --- a/tools/configure/environment.cpp +++ b/tools/configure/environment.cpp @@ -78,6 +78,9 @@ struct CompilerInfo{ {CC_MSVC2012, "Microsoft (R) Visual Studio 2012 C/C++ Compiler (11.0)", "Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\11.0", "cl.exe"}, // link.exe, lib.exe {CC_MSVC2013, "Microsoft (R) Visual Studio 2013 C/C++ Compiler (12.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0", "cl.exe"}, // link.exe, lib.exe {CC_MSVC2013, "Microsoft (R) Visual Studio 2013 C/C++ Compiler (12.0)", "Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0", "cl.exe"}, // link.exe, lib.exe + // Microsoft skipped version 13 + {CC_MSVC2015, "Microsoft (R) Visual Studio 2015 C/C++ Compiler (14.0)", "Software\\Wow6432Node\\Microsoft\\VisualStudio\\SxS\\VS7\\14.0", "cl.exe"}, // link.exe, lib.exe + {CC_MSVC2015, "Microsoft (R) Visual Studio 2015 C/C++ Compiler (14.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VS7\\14.0", "cl.exe"}, // link.exe, lib.exe {CC_UNKNOWN, "Unknown", 0, 0}, }; @@ -103,6 +106,9 @@ QString Environment::detectQMakeSpec() { QString spec; switch (detectCompiler()) { + case CC_MSVC2015: + spec = "win32-msvc2015"; + break; case CC_MSVC2013: spec = "win32-msvc2013"; break; @@ -136,6 +142,8 @@ QString Environment::detectQMakeSpec() Compiler Environment::compilerFromQMakeSpec(const QString &qmakeSpec) { + if (qmakeSpec == QLatin1String("win32-msvc2015")) + return CC_MSVC2015; if (qmakeSpec == QLatin1String("win32-msvc2013")) return CC_MSVC2013; if (qmakeSpec == QLatin1String("win32-msvc2012")) diff --git a/tools/configure/environment.h b/tools/configure/environment.h index 446f5212f7..8d2aed13f1 100644 --- a/tools/configure/environment.h +++ b/tools/configure/environment.h @@ -45,7 +45,8 @@ enum Compiler { CC_MSVC2008 = 0x90, CC_MSVC2010 = 0xA0, CC_MSVC2012 = 0xB0, - CC_MSVC2013 = 0xC0 + CC_MSVC2013 = 0xC0, + CC_MSVC2015 = 0xD0 }; struct CompilerInfo; |