BUG: All executable and library project types should specify a program database file name for all configurations. Even when debug information is not used the .pdb file specified is used to construct the name of a .idb file that exists for all configurations when building with the VS IDE.
This commit is contained in:
parent
c53b26baf2
commit
770ffb1699
|
@ -390,7 +390,6 @@ public:
|
||||||
|
|
||||||
// Check for specific options.
|
// Check for specific options.
|
||||||
bool UsingUnicode();
|
bool UsingUnicode();
|
||||||
bool UsingDebugPDB();
|
|
||||||
|
|
||||||
// Write options to output.
|
// Write options to output.
|
||||||
void OutputPreprocessorDefinitions(std::ostream& fout,
|
void OutputPreprocessorDefinitions(std::ostream& fout,
|
||||||
|
@ -579,12 +578,13 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(std::ostream& fout,
|
||||||
targetOptions.OutputPreprocessorDefinitions(fout, "\t\t\t\t", "\n");
|
targetOptions.OutputPreprocessorDefinitions(fout, "\t\t\t\t", "\n");
|
||||||
fout << "\t\t\t\tAssemblerListingLocation=\"" << configName << "\"\n";
|
fout << "\t\t\t\tAssemblerListingLocation=\"" << configName << "\"\n";
|
||||||
fout << "\t\t\t\tObjectFile=\"$(IntDir)\\\"\n";
|
fout << "\t\t\t\tObjectFile=\"$(IntDir)\\\"\n";
|
||||||
if(targetOptions.UsingDebugPDB() &&
|
if(target.GetType() == cmTarget::EXECUTABLE ||
|
||||||
(target.GetType() == cmTarget::EXECUTABLE ||
|
target.GetType() == cmTarget::STATIC_LIBRARY ||
|
||||||
target.GetType() == cmTarget::STATIC_LIBRARY ||
|
target.GetType() == cmTarget::SHARED_LIBRARY ||
|
||||||
target.GetType() == cmTarget::SHARED_LIBRARY ||
|
target.GetType() == cmTarget::MODULE_LIBRARY)
|
||||||
target.GetType() == cmTarget::MODULE_LIBRARY))
|
|
||||||
{
|
{
|
||||||
|
// We need to specify a program database file name even for
|
||||||
|
// non-debug configurations because VS still creates .idb files.
|
||||||
fout << "\t\t\t\tProgramDataBaseFileName=\""
|
fout << "\t\t\t\tProgramDataBaseFileName=\""
|
||||||
<< target.GetDirectory(configName) << "/"
|
<< target.GetDirectory(configName) << "/"
|
||||||
<< target.GetPDBName(configName) << "\"\n";
|
<< target.GetPDBName(configName) << "\"\n";
|
||||||
|
@ -1697,21 +1697,6 @@ bool cmLocalVisualStudio7GeneratorOptions::UsingUnicode()
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
|
||||||
bool cmLocalVisualStudio7GeneratorOptions::UsingDebugPDB()
|
|
||||||
{
|
|
||||||
std::map<cmStdString, cmStdString>::iterator mi =
|
|
||||||
this->FlagMap.find("DebugInformationFormat");
|
|
||||||
if(mi != this->FlagMap.end() && mi->second != "1")
|
|
||||||
{
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
void cmLocalVisualStudio7GeneratorOptions::Parse(const char* flags)
|
void cmLocalVisualStudio7GeneratorOptions::Parse(const char* flags)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue