summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalUnixMakefileGenerator3.h
diff options
context:
space:
mode:
authorBrad King <brad.king@kitware.com>2009-09-28 21:34:23 (GMT)
committerBrad King <brad.king@kitware.com>2009-09-28 21:34:23 (GMT)
commit0089f9cf8f0ff484b83b03d1fc11fbd2536d59b9 (patch)
treecb804e30c4ab3b3ccd0afde7fdd147a6db3e4d99 /Source/cmGlobalUnixMakefileGenerator3.h
parenta091e99cb9a126e6a2d0093a916450cf894be2f3 (diff)
downloadCMake-0089f9cf8f0ff484b83b03d1fc11fbd2536d59b9.zip
CMake-0089f9cf8f0ff484b83b03d1fc11fbd2536d59b9.tar.gz
CMake-0089f9cf8f0ff484b83b03d1fc11fbd2536d59b9.tar.bz2
Fix support for OLD behavior of policy CMP0002
The commit "Cleanup make progress rule generation code" introduced a map from target name to the progress.make file location. Policy CMP0002's OLD behavior allows duplicate target names in different directories, so only one ends up with a progress.make file. This commit fixes the map to order by target name first and build directory second, restoring support for duplicate target names.
Diffstat (limited to 'Source/cmGlobalUnixMakefileGenerator3.h')
-rw-r--r--Source/cmGlobalUnixMakefileGenerator3.h4
1 files changed, 3 insertions, 1 deletions
diff --git a/Source/cmGlobalUnixMakefileGenerator3.h b/Source/cmGlobalUnixMakefileGenerator3.h
index e038eaa..54363e4 100644
--- a/Source/cmGlobalUnixMakefileGenerator3.h
+++ b/Source/cmGlobalUnixMakefileGenerator3.h
@@ -180,7 +180,9 @@ protected:
std::vector<int> Marks;
void WriteProgressVariables(unsigned long total, unsigned long& current);
};
- typedef std::map<cmStdString, TargetProgress> ProgressMapType;
+ struct ProgressMapCompare { bool operator()(cmTarget*,cmTarget*); };
+ typedef std::map<cmTarget*, TargetProgress,
+ ProgressMapCompare> ProgressMapType;
ProgressMapType ProgressMap;
size_t CountProgressMarksInTarget(cmTarget* target,