From d4ebbac1b3c6abbdbf5a67c75460c33998847233 Mon Sep 17 00:00:00 2001 From: Joerg Bornemann Date: Thu, 17 Sep 2015 18:06:57 +0200 Subject: fix parsing of WinRT compiler options Set defaults before parsing compiler options. UsePrecompiledHeader, CompileAsWinRT and GenerateWindowsMetadata options were overwritten after parsing the options. Task-number: QTBUG-46978 Change-Id: I8c4e423cd13f575fa679b114108b693937908549 Reviewed-by: Oswald Buddenhagen Reviewed-by: Andrew Knight --- qmake/generators/win32/msvc_vcproj.cpp | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/qmake/generators/win32/msvc_vcproj.cpp b/qmake/generators/win32/msvc_vcproj.cpp index 9acfa6588b..895bfbaf0d 100644 --- a/qmake/generators/win32/msvc_vcproj.cpp +++ b/qmake/generators/win32/msvc_vcproj.cpp @@ -1037,6 +1037,17 @@ void VcprojGenerator::initConfiguration() conf.suppressUnknownOptionWarnings = project->isActiveConfig("suppress_vcproj_warnings"); conf.CompilerVersion = which_dotnet_version(project->first("MSVC_VER").toLatin1()); + if (conf.CompilerVersion >= NET2012) { + conf.WinRT = project->isActiveConfig("winrt"); + if (conf.WinRT) { + conf.WinPhone = project->isActiveConfig("winphone"); + // Saner defaults + conf.compiler.UsePrecompiledHeader = pchNone; + conf.compiler.CompileAsWinRT = _False; + conf.linker.GenerateWindowsMetadata = _False; + } + } + initCompilerTool(); // Only on configuration per build @@ -1083,17 +1094,6 @@ void VcprojGenerator::initConfiguration() conf.PrimaryOutputExtension = '.' + targetSuffix; } - if (conf.CompilerVersion >= NET2012) { - conf.WinRT = project->isActiveConfig("winrt"); - if (conf.WinRT) { - conf.WinPhone = project->isActiveConfig("winphone"); - // Saner defaults - conf.compiler.UsePrecompiledHeader = pchNone; - conf.compiler.CompileAsWinRT = _False; - conf.linker.GenerateWindowsMetadata = _False; - } - } - conf.Name = project->values("BUILD_NAME").join(' '); if (conf.Name.isEmpty()) conf.Name = isDebug ? "Debug" : "Release"; -- cgit v1.2.3