From 770ffb1699948071bac6f60444b3cb1eb28f3ba6 Mon Sep 17 00:00:00 2001 From: Brad King Date: Wed, 14 Mar 2007 09:34:31 -0400 Subject: 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. --- Source/cmLocalVisualStudio7Generator.cxx | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx index 80d257b..100d791 100644 --- a/Source/cmLocalVisualStudio7Generator.cxx +++ b/Source/cmLocalVisualStudio7Generator.cxx @@ -390,7 +390,6 @@ public: // Check for specific options. bool UsingUnicode(); - bool UsingDebugPDB(); // Write options to output. void OutputPreprocessorDefinitions(std::ostream& fout, @@ -579,12 +578,13 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(std::ostream& fout, targetOptions.OutputPreprocessorDefinitions(fout, "\t\t\t\t", "\n"); fout << "\t\t\t\tAssemblerListingLocation=\"" << configName << "\"\n"; fout << "\t\t\t\tObjectFile=\"$(IntDir)\\\"\n"; - if(targetOptions.UsingDebugPDB() && - (target.GetType() == cmTarget::EXECUTABLE || - target.GetType() == cmTarget::STATIC_LIBRARY || - target.GetType() == cmTarget::SHARED_LIBRARY || - target.GetType() == cmTarget::MODULE_LIBRARY)) + if(target.GetType() == cmTarget::EXECUTABLE || + target.GetType() == cmTarget::STATIC_LIBRARY || + target.GetType() == cmTarget::SHARED_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=\"" << target.GetDirectory(configName) << "/" << target.GetPDBName(configName) << "\"\n"; @@ -1698,21 +1698,6 @@ bool cmLocalVisualStudio7GeneratorOptions::UsingUnicode() } //---------------------------------------------------------------------------- -bool cmLocalVisualStudio7GeneratorOptions::UsingDebugPDB() -{ - std::map::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) { // Parse the input string as a windows command line since the string -- cgit v0.12