summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileExecutableTargetGenerator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2006-03-09 19:30:35 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2006-03-09 19:30:35 (GMT)
commit4c5ba06fa13a2bc07f7e0a26bf455dc0b09d5e9c (patch)
tree36dd3cbb29d7773e102a0c58dee4ef3a5063c7c9 /Source/cmMakefileExecutableTargetGenerator.cxx
parentd253baab99663f531d91d406faf6fe2b822f5cb8 (diff)
downloadCMake-4c5ba06fa13a2bc07f7e0a26bf455dc0b09d5e9c.zip
CMake-4c5ba06fa13a2bc07f7e0a26bf455dc0b09d5e9c.tar.gz
CMake-4c5ba06fa13a2bc07f7e0a26bf455dc0b09d5e9c.tar.bz2
ENH: use a cmake script to do the clean step, this allows for large numbers of files to be removed without making the command line too long
Diffstat (limited to 'Source/cmMakefileExecutableTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileExecutableTargetGenerator.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/Source/cmMakefileExecutableTargetGenerator.cxx b/Source/cmMakefileExecutableTargetGenerator.cxx
index 73b1e59..1bdf709 100644
--- a/Source/cmMakefileExecutableTargetGenerator.cxx
+++ b/Source/cmMakefileExecutableTargetGenerator.cxx
@@ -225,18 +225,19 @@ void cmMakefileExecutableTargetGenerator::WriteExecutableRule(bool relink)
std::string cleanFullRealName = outpath + cleanRealName;
exeCleanFiles.push_back(this->Convert(cleanFullName.c_str(),
cmLocalGenerator::START_OUTPUT,
- cmLocalGenerator::MAKEFILE));
+ cmLocalGenerator::UNCHANGED));
if(cleanRealName != cleanName)
{
exeCleanFiles.push_back(this->Convert(cleanFullRealName.c_str(),
cmLocalGenerator::START_OUTPUT,
- cmLocalGenerator::MAKEFILE));
+ cmLocalGenerator::UNCHANGED));
}
}
// Add a command to remove any existing files for this executable.
std::vector<std::string> commands1;
- this->LocalGenerator->AppendCleanCommand(commands1, exeCleanFiles);
+ this->LocalGenerator->AppendCleanCommand(commands1, exeCleanFiles,
+ *this->Target, "target");
this->LocalGenerator->CreateCDCommand(commands1,
this->Makefile->GetStartOutputDirectory(),
this->Makefile->GetHomeOutputDirectory());
@@ -352,6 +353,8 @@ void cmMakefileExecutableTargetGenerator::WriteExecutableRule(bool relink)
this->CleanFiles.insert(this->CleanFiles.end(),
exeCleanFiles.begin(),
exeCleanFiles.end());
- this->CleanFiles.push_back(cleanObjs);
+ this->CleanFiles.insert(this->CleanFiles.end(),
+ this->Objects.begin(),
+ this->Objects.end());
}