summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmMakefileExecutableTargetGenerator.cxx13
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx22
2 files changed, 14 insertions, 21 deletions
diff --git a/Source/cmMakefileExecutableTargetGenerator.cxx b/Source/cmMakefileExecutableTargetGenerator.cxx
index 17b2578..195a34b 100644
--- a/Source/cmMakefileExecutableTargetGenerator.cxx
+++ b/Source/cmMakefileExecutableTargetGenerator.cxx
@@ -329,18 +329,6 @@ void cmMakefileExecutableTargetGenerator::WriteExecutableRule(bool relink)
cmLocalGenerator::UNCHANGED));
}
- // Add a command to remove any existing files for this executable.
- std::vector<std::string> commands1;
- this->LocalGenerator->AppendCleanCommand(commands1, exeCleanFiles,
- *this->Target, "target");
- this->LocalGenerator->CreateCDCommand
- (commands1,
- this->Makefile->GetStartOutputDirectory(),
- this->Makefile->GetHomeOutputDirectory());
-
- commands.insert(commands.end(), commands1.begin(), commands1.end());
- commands1.clear();
-
// Add the pre-build and pre-link rules building but not when relinking.
if(!relink)
{
@@ -356,6 +344,7 @@ void cmMakefileExecutableTargetGenerator::WriteExecutableRule(bool relink)
linkRuleVar += "_LINK_EXECUTABLE";
std::string linkRule =
this->Makefile->GetRequiredDefinition(linkRuleVar.c_str());
+ std::vector<std::string> commands1;
cmSystemTools::ExpandListArgument(linkRule, commands1);
if(this->Target->GetPropertyAsBool("ENABLE_EXPORTS"))
{
diff --git a/Source/cmMakefileLibraryTargetGenerator.cxx b/Source/cmMakefileLibraryTargetGenerator.cxx
index a2aedd5..8a2ade8 100644
--- a/Source/cmMakefileLibraryTargetGenerator.cxx
+++ b/Source/cmMakefileLibraryTargetGenerator.cxx
@@ -643,16 +643,20 @@ void cmMakefileLibraryTargetGenerator::WriteLibraryRules
}
#endif
- // Add a command to remove any existing files for this library.
std::vector<std::string> commands1;
- this->LocalGenerator->AppendCleanCommand(commands1, libCleanFiles,
- *this->Target, "target");
- this->LocalGenerator->CreateCDCommand
- (commands1,
- this->Makefile->GetStartOutputDirectory(),
- this->Makefile->GetHomeOutputDirectory());
- commands.insert(commands.end(), commands1.begin(), commands1.end());
- commands1.clear();
+ // Add a command to remove any existing files for this library.
+ // for static libs only
+ if(this->Target->GetType() == cmTarget::STATIC_LIBRARY)
+ {
+ this->LocalGenerator->AppendCleanCommand(commands1, libCleanFiles,
+ *this->Target, "target");
+ this->LocalGenerator->CreateCDCommand
+ (commands1,
+ this->Makefile->GetStartOutputDirectory(),
+ this->Makefile->GetHomeOutputDirectory());
+ commands.insert(commands.end(), commands1.begin(), commands1.end());
+ commands1.clear();
+ }
// Add the pre-build and pre-link rules building but not when relinking.
if(!relink)