summaryrefslogtreecommitdiffstats
path: root/Source/cmMakefileLibraryTargetGenerator.cxx
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2007-10-18 13:38:34 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2007-10-18 13:38:34 (GMT)
commit0fc4d10e38a90919604b5e128cb8743ab47cce1b (patch)
treeb16ee52492b0b2f140f8ef9c4ed5b431a18523a2 /Source/cmMakefileLibraryTargetGenerator.cxx
parent5c4eadba23a6341c3cd685f68e8c9b77ef186aea (diff)
downloadCMake-0fc4d10e38a90919604b5e128cb8743ab47cce1b.zip
CMake-0fc4d10e38a90919604b5e128cb8743ab47cce1b.tar.gz
CMake-0fc4d10e38a90919604b5e128cb8743ab47cce1b.tar.bz2
ENH: do not remove executables and dll's before linking them so that incremental links work, incremental links are still broken for vs 2005 and greater because of the manifest stuff
Diffstat (limited to 'Source/cmMakefileLibraryTargetGenerator.cxx')
-rw-r--r--Source/cmMakefileLibraryTargetGenerator.cxx22
1 files changed, 13 insertions, 9 deletions
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)