set empty PDB file name in release config of VS 2012 vcxproj files
In release configs qmake sets DebugInformationFormat to None. If ProgramDataBaseFileName is left unset, then VS 2012 will always rebuild the complete project. Therefore, qmake now inserts an empty ProgramDataBaseFileName tag if DebugInformationFormat is None. Task-number: QTBUG-35570 Change-Id: Ifb91b0bbcf6614621bfe3b12429e2624bd16e77a Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
This commit is contained in:
parent
6e13f4b3e0
commit
26c33dc892
@ -1384,6 +1384,17 @@ static inline triState toTriState(termSvrAwarenessType option)
|
||||
return unset;
|
||||
}
|
||||
|
||||
static XmlOutput::xml_output fixedProgramDataBaseFileNameOutput(const VCCLCompilerTool &tool)
|
||||
{
|
||||
if (tool.config->CompilerVersion >= NET2012
|
||||
&& tool.DebugInformationFormat == debugDisabled
|
||||
&& tool.ProgramDataBaseFileName.isEmpty()) {
|
||||
// Force the creation of an empty tag to work-around Visual Studio bug. See QTBUG-35570.
|
||||
return tagValue(_ProgramDataBaseFileName, tool.ProgramDataBaseFileName);
|
||||
}
|
||||
return attrTagS(_ProgramDataBaseFileName, tool.ProgramDataBaseFileName);
|
||||
}
|
||||
|
||||
void VCXProjectWriter::write(XmlOutput &xml, const VCCLCompilerTool &tool)
|
||||
{
|
||||
xml
|
||||
@ -1440,7 +1451,7 @@ void VCXProjectWriter::write(XmlOutput &xml, const VCCLCompilerTool &tool)
|
||||
<< attrTagS(_PreprocessOutputPath, tool.PreprocessOutputPath)
|
||||
<< attrTagT(_PreprocessSuppressLineNumbers, tool.PreprocessSuppressLineNumbers)
|
||||
<< attrTagT(_PreprocessToFile, toTriState(tool.GeneratePreprocessedFile))
|
||||
<< attrTagS(_ProgramDataBaseFileName, tool.ProgramDataBaseFileName)
|
||||
<< fixedProgramDataBaseFileNameOutput(tool)
|
||||
<< attrTagS(_ProcessorNumber, tool.MultiProcessorCompilationProcessorCount)
|
||||
<< attrTagS(_RuntimeLibrary, toString(tool.RuntimeLibrary))
|
||||
<< attrTagT(_RuntimeTypeInfo, tool.RuntimeTypeInfo)
|
||||
|
Loading…
Reference in New Issue
Block a user