summaryrefslogtreecommitdiffstats
path: root/Source/cmLocalVisualStudio7Generator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2008-01-30 17:04:38 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2008-01-30 17:04:38 (GMT)
commit8a83f096371ecc4f73afe43830e94899c704d5cf (patch)
treee035e45d661fcc35189daafa686484577b502ddc /Source/cmLocalVisualStudio7Generator.cxx
parent21e6791789be947c471d0c551e69364e9f475b7e (diff)
downloadCMake-8a83f096371ecc4f73afe43830e94899c704d5cf.zip
CMake-8a83f096371ecc4f73afe43830e94899c704d5cf.tar.gz
CMake-8a83f096371ecc4f73afe43830e94899c704d5cf.tar.bz2
ENH: fix for bug 3218 dependant projects are written out automatically if they are in the project. Also fix bug 5829, remove hard coded CMAKE_CONFIGURATION_TYPES from vs 7 generator
Diffstat (limited to 'Source/cmLocalVisualStudio7Generator.cxx')
-rw-r--r--Source/cmLocalVisualStudio7Generator.cxx18
1 files changed, 12 insertions, 6 deletions
diff --git a/Source/cmLocalVisualStudio7Generator.cxx b/Source/cmLocalVisualStudio7Generator.cxx
index 18b5721..a22f509 100644
--- a/Source/cmLocalVisualStudio7Generator.cxx
+++ b/Source/cmLocalVisualStudio7Generator.cxx
@@ -419,6 +419,7 @@ public:
// Check for specific options.
bool UsingUnicode();
+ bool IsDebug();
// Write options to output.
void OutputPreprocessorDefinitions(std::ostream& fout,
const char* prefix,
@@ -667,7 +668,7 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(std::ostream& fout,
}
this->OutputTargetRules(fout, configName, target, libName);
- this->OutputBuildTool(fout, configName, target);
+ this->OutputBuildTool(fout, configName, target, targetOptions.IsDebug());
fout << "\t\t</Configuration>\n";
}
@@ -689,7 +690,8 @@ cmLocalVisualStudio7Generator
void cmLocalVisualStudio7Generator::OutputBuildTool(std::ostream& fout,
const char* configName,
- cmTarget &target)
+ cmTarget &target,
+ bool isDebug)
{
std::string temp;
std::string extraLinkOptions;
@@ -802,8 +804,7 @@ void cmLocalVisualStudio7Generator::OutputBuildTool(std::ostream& fout,
temp += targetNamePDB;
fout << "\t\t\t\tProgramDataBaseFile=\"" <<
this->ConvertToXMLOutputPathSingle(temp.c_str()) << "\"\n";
- if(strcmp(configName, "Debug") == 0
- || strcmp(configName, "RelWithDebInfo") == 0)
+ if(isDebug)
{
fout << "\t\t\t\tGenerateDebugInformation=\"TRUE\"\n";
}
@@ -869,8 +870,7 @@ void cmLocalVisualStudio7Generator::OutputBuildTool(std::ostream& fout,
fout << "\t\t\t\tProgramDataBaseFile=\""
<< target.GetDirectory(configName) << "/" << targetNamePDB
<< "\"\n";
- if(strcmp(configName, "Debug") == 0
- || strcmp(configName, "RelWithDebInfo") == 0)
+ if(isDebug)
{
fout << "\t\t\t\tGenerateDebugInformation=\"TRUE\"\n";
}
@@ -1813,6 +1813,12 @@ void cmLocalVisualStudio7GeneratorOptions::AddFlag(const char* flag,
this->FlagMap[flag] = value;
}
+
+bool cmLocalVisualStudio7GeneratorOptions::IsDebug()
+{
+ return this->FlagMap.find("DebugInformationFormat") != this->FlagMap.end();
+}
+
//----------------------------------------------------------------------------
bool cmLocalVisualStudio7GeneratorOptions::UsingUnicode()
{