summaryrefslogtreecommitdiffstats
path: root/qmake/generators/win32/msbuild_objectmodel.cpp
diff options
context:
space:
mode:
authorMat Sutcliffe <oktal3700@gmail.com>2014-02-03 20:33:48 +0000
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-28 18:02:14 +0100
commit0de55b6c9f5d266f891b746e2d63e6a45d3b3c32 (patch)
treee7cf165ca4a40358caad9dbe450366c2a88acbba /qmake/generators/win32/msbuild_objectmodel.cpp
parent5119bbc6424742860abafe7a371fa5234f03eabb (diff)
Honor the value of the PlatformToolset environment variable.
The Windows SDK 7.1 command prompt sets this value to "WindowsSDK7.1" through its SetEnv.cmd batch script. The MSVC Express Editions do not include a 64bit compiler toolchain, but the Windows SDK does, so this change makes it easier to build qmake projects for x86_64 when using the Express Editions, by running qmake from the SDK command prompt. See also: http://msdn.microsoft.com/en-us/library/9yb4317s%28v=vs.100%29.aspx http://msdn.microsoft.com/en-us/library/ff660764%28v=vs.100%29.aspx Task-number: QTBUG-31185 Change-Id: I49d3e159ed67f64490a3d57c5471d540d76ae13f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@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.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/qmake/generators/win32/msbuild_objectmodel.cpp b/qmake/generators/win32/msbuild_objectmodel.cpp
index 7702496f3c..51cb73f0ce 100644
--- a/qmake/generators/win32/msbuild_objectmodel.cpp
+++ b/qmake/generators/win32/msbuild_objectmodel.cpp
@@ -2195,6 +2195,16 @@ QString VCXProjectWriter::generateCondition(const VCConfiguration &config)
QString VCXProjectWriter::platformToolSetVersion(const DotNET version, bool winphoneBuild)
{
+ // The PlatformToolset string corresponds to the name of a directory in
+ // $(VCTargetsPath)\Platforms\{Win32,x64,...}\PlatformToolsets
+ // e.g. v90, v100, v110, v110_xp, v120_CTP_Nov, v120, or WindowsSDK7.1
+
+ // This environment variable may be set by a commandline build
+ // environment such as the Windows SDK command prompt
+ QByteArray envVar = qgetenv("PlatformToolset");
+ if (!envVar.isEmpty())
+ return envVar;
+
switch (version)
{
case NET2012: