[Cmake-commits] [cmake-commits] king committed cmLocalUnixMakefileGenerator3.cxx 1.247 1.248
cmake-commits at cmake.org
cmake-commits at cmake.org
Wed May 7 17:25:07 EDT 2008
Update of /cvsroot/CMake/CMake/Source
In directory public:/mounts/ram/cvs-serv456/Source
Modified Files:
cmLocalUnixMakefileGenerator3.cxx
Log Message:
BUG: Fix repeated re-scanning of dependencies when the results do not change.
- We re-scan deps when DependInfo.cmake is newer than depend.internal
- Therefore depend.internal should not be copy-if-different
Index: cmLocalUnixMakefileGenerator3.cxx
===================================================================
RCS file: /cvsroot/CMake/CMake/Source/cmLocalUnixMakefileGenerator3.cxx,v
retrieving revision 1.247
retrieving revision 1.248
diff -C 2 -d -r1.247 -r1.248
*** cmLocalUnixMakefileGenerator3.cxx 30 Apr 2008 19:58:56 -0000 1.247
--- cmLocalUnixMakefileGenerator3.cxx 7 May 2008 21:25:05 -0000 1.248
***************
*** 1438,1444 ****
// create the file stream for the depends file
std::string dir = targetDir;
!
! // Open the rule file. This should be copy-if-different because the
! // rules may depend on this file itself.
std::string ruleFileNameFull = dir;
ruleFileNameFull += "/depend.make";
--- 1438,1444 ----
// create the file stream for the depends file
std::string dir = targetDir;
!
! // Open the make depends file. This should be copy-if-different
! // because the make tool may try to reload it needlessly otherwise.
std::string ruleFileNameFull = dir;
ruleFileNameFull += "/depend.make";
***************
*** 1449,1457 ****
return false;
}
std::string internalRuleFileNameFull = dir;
internalRuleFileNameFull += "/depend.internal";
! cmGeneratedFileStream
internalRuleFileStream(internalRuleFileNameFull.c_str());
- internalRuleFileStream.SetCopyIfDifferent(true);
if(!internalRuleFileStream)
{
--- 1449,1460 ----
return false;
}
+
+ // Open the cmake dependency tracking file. This should not be
+ // copy-if-different because dependencies are re-scanned when it is
+ // older than the DependInfo.cmake.
std::string internalRuleFileNameFull = dir;
internalRuleFileNameFull += "/depend.internal";
! cmGeneratedFileStream
internalRuleFileStream(internalRuleFileNameFull.c_str());
if(!internalRuleFileStream)
{
More information about the Cmake-commits
mailing list