summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32/msbuild_objectmodel.cpp
diff options
context:
space:
mode:
authorJoerg Bornemann <joerg.bornemann@nokia.com>2012-09-21 16:28:11 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2012-09-25 07:26:37 +0200
commit461a01c1df88cdea0e8109948d125fc58a185cf8 (patch)
tree26786e9d65a360581bfa5edb1f04225ef1b08e78 /qmake/generators/win32/msbuild_objectmodel.cpp
parent07c44f7bd3c0b6061cba5a525995f616f1083672 (diff)
qmake: support for Visual Studio 2012 project files added
The differences to VS 2010 project files are the version number (surprise!) and the PlatformToolSet tag which sets the version of the toolchain. Change-Id: If26f08fad1a69d7e6cd28cc5e860ff964f19b264 Reviewed-by: Andy Shaw <andy.shaw@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Diffstat (limited to 'qmake/generators/win32/msbuild_objectmodel.cpp')
-rw-r--r--qmake/generators/win32/msbuild_objectmodel.cpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp
index afbb2f8be7..e691416a4a 100644
--- a/qmake/generators/win32/msbuild_objectmodel.cpp
+++ b/qmake/generators/win32/msbuild_objectmodel.cpp
@@ -451,6 +451,10 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProjectSingleConfig &tool)
<< attrTag("Condition", condition)
<< valueTag(tool.Configuration.IntermediateDirectory);
}
+ if (tool.Configuration.CompilerVersion >= NET2012) {
+ xml << tagValue("PlatformToolSet",
+ platformToolSetVersion(tool.Configuration.CompilerVersion));
+ }
if ( !tool.Configuration.PrimaryOutput.isEmpty() ) {
xml<< tag("TargetName")
<< attrTag("Condition", condition)
@@ -652,6 +656,10 @@ void VCXProjectWriter::write(XmlOutput &xml, VCProject &tool)
<< attrTag("Condition", condition)
<< valueTag(config.IntermediateDirectory);
}
+ if (config.CompilerVersion >= NET2012) {
+ xml << tagValue("PlatformToolSet",
+ platformToolSetVersion(config.CompilerVersion));
+ }
if (!config.PrimaryOutput.isEmpty()) {
xml << tag("TargetName")
<< attrTag("Condition", condition)
@@ -2034,4 +2042,15 @@ QString VCXProjectWriter::generateCondition(const VCConfiguration &config)
return QStringLiteral("'$(Configuration)|$(Platform)'=='") + config.Name + QLatin1Char('\'');
}
+QString VCXProjectWriter::platformToolSetVersion(const DotNET version)
+{
+ switch (version)
+ {
+ case NET2012:
+ return "v110";
+ }
+ Q_ASSERT(!"This MSVC version does not support the PlatformToolSet tag!");
+ return QString();
+}
+
QT_END_NAMESPACE