Commit 43669f0e authored by Brad King's avatar Brad King

BUG: Avoid cmTarget::GetDirectory for utilities

Since utility targets have no main output files like executables or
libraries, they do not define an output directory.  This removes a call
to cmTarget::GetDirectory from cmLocalVisualStudio{6,7}Generator for
such targets.
parent 44021718
......@@ -882,9 +882,6 @@ void cmLocalVisualStudio6Generator
const char *libName, cmTarget &target,
std::vector<cmSourceGroup> &)
{
// Lookup the output directory for the target.
std::string outPath = target.GetDirectory();
bool targetBuilds = (target.GetType() >= cmTarget::EXECUTABLE &&
target.GetType() <= cmTarget::MODULE_LIBRARY);
#ifdef CM_USE_OLD_VS6
......@@ -1415,10 +1412,15 @@ void cmLocalVisualStudio6Generator
removeQuotes(this->ConvertToOptionallyRelativeOutputPath
(exePath.c_str())).c_str());
#endif
cmSystemTools::ReplaceString
(line, "OUTPUT_DIRECTORY",
removeQuotes(this->ConvertToOptionallyRelativeOutputPath
(outPath.c_str())).c_str());
if(targetBuilds)
{
std::string outPath = target.GetDirectory();
cmSystemTools::ReplaceString
(line, "OUTPUT_DIRECTORY",
removeQuotes(this->ConvertToOptionallyRelativeOutputPath
(outPath.c_str())).c_str());
}
cmSystemTools::ReplaceString(line,
"EXTRA_DEFINES",
......
......@@ -864,7 +864,7 @@ void cmLocalVisualStudio7Generator::WriteConfiguration(std::ostream& fout,
// end of <Tool Name=VCMIDLTool
// Check if we need the FAT32 workaround.
if ( this->Version >= 8 )
if(targetBuilds && this->Version >= 8)
{
// Check the filesystem type where the target will be written.
if(cmLVS6G_IsFAT(target.GetDirectory(configName).c_str()))
......
......@@ -38,7 +38,6 @@ MTL=midl.exe
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "OUTPUT_DIRECTORY\Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
......@@ -53,7 +52,6 @@ CMAKE_CUSTOM_RULE_CODE_RELEASE
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "OUTPUT_DIRECTORY\Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
......@@ -68,7 +66,6 @@ CMAKE_CUSTOM_RULE_CODE_DEBUG
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "OUTPUT_DIRECTORY\MinSizeRel"
# PROP Intermediate_Dir "MinSizeRel"
# PROP Target_Dir ""
......@@ -83,7 +80,6 @@ CMAKE_CUSTOM_RULE_CODE_MINSIZEREL
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "OUTPUT_DIRECTORY\RelWithDebInfo"
# PROP Intermediate_Dir "RelWithDebInfo"
# PROP Target_Dir ""
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment