qmake: added CompileAsWinRT switch to the VCCLCompilerTool (the cl /ZW option)

Change-Id: I2a67779bcb38af85a2c43d3e9a15aa3ba45b4788
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This commit is contained in:
Kamil Trzcinski 2013-02-11 23:51:18 +01:00 committed by The Qt Project
parent 1d4e1e12d8
commit 6008eb525e
3 changed files with 10 additions and 0 deletions

View File

@ -89,6 +89,7 @@ const char _CLRUnmanagedCodeCheck[] = "CLRUnmanagedCodeCheck";
const char _Command[] = "Command"; const char _Command[] = "Command";
const char _CompileAs[] = "CompileAs"; const char _CompileAs[] = "CompileAs";
const char _CompileAsManaged[] = "CompileAsManaged"; const char _CompileAsManaged[] = "CompileAsManaged";
const char _CompileAsWinRT[] = "CompileAsWinRT";
const char _ConfigurationType[] = "ConfigurationType"; const char _ConfigurationType[] = "ConfigurationType";
const char _CPreprocessOptions[] = "CPreprocessOptions"; const char _CPreprocessOptions[] = "CPreprocessOptions";
const char _CreateHotpatchableImage[] = "CreateHotpatchableImage"; const char _CreateHotpatchableImage[] = "CreateHotpatchableImage";
@ -1389,6 +1390,7 @@ void VCXProjectWriter::write(XmlOutput &xml, const VCCLCompilerTool &tool)
<< attrTagS(_CallingConvention, toString(tool.CallingConvention)) << attrTagS(_CallingConvention, toString(tool.CallingConvention))
<< attrTagS(_CompileAs, toString(tool.CompileAs)) << attrTagS(_CompileAs, toString(tool.CompileAs))
<< attrTagS(_CompileAsManaged, toString(tool.CompileAsManaged)) << attrTagS(_CompileAsManaged, toString(tool.CompileAsManaged))
<< attrTagT(_CompileAsWinRT, tool.CompileAsWinRT)
<< attrTagT(_CreateHotpatchableImage, tool.CreateHotpatchableImage) << attrTagT(_CreateHotpatchableImage, tool.CreateHotpatchableImage)
<< attrTagS(_DebugInformationFormat, toString(tool.DebugInformationFormat)) << attrTagS(_DebugInformationFormat, toString(tool.DebugInformationFormat))
<< attrTagT(_DisableLanguageExtensions, tool.DisableLanguageExtensions) << attrTagT(_DisableLanguageExtensions, tool.DisableLanguageExtensions)

View File

@ -320,6 +320,7 @@ VCCLCompilerTool::VCCLCompilerTool()
CallingConvention(callConventionDefault), CallingConvention(callConventionDefault),
CompileAs(compileAsDefault), CompileAs(compileAsDefault),
CompileAsManaged(managedDefault), CompileAsManaged(managedDefault),
CompileAsWinRT(unset),
CompileOnly(unset), CompileOnly(unset),
DebugInformationFormat(debugDisabled), DebugInformationFormat(debugDisabled),
DefaultCharIsUnsigned(unset), DefaultCharIsUnsigned(unset),
@ -942,6 +943,12 @@ bool VCCLCompilerTool::parseOption(const char* option)
found = false; break; found = false; break;
} }
break; break;
case 'W':
if (third == '-')
CompileAsWinRT = _False;
else
CompileAsWinRT = _True;
break;
default: default:
found = false; break; found = false; break;
} }

View File

@ -511,6 +511,7 @@ public:
callingConventionOption CallingConvention; callingConventionOption CallingConvention;
CompileAsOptions CompileAs; CompileAsOptions CompileAs;
compileAsManagedOptions CompileAsManaged; compileAsManagedOptions CompileAsManaged;
triState CompileAsWinRT;
triState CompileOnly; triState CompileOnly;
debugOption DebugInformationFormat; debugOption DebugInformationFormat;
triState DefaultCharIsUnsigned; triState DefaultCharIsUnsigned;