summaryrefslogtreecommitdiffstats
path: root/Source/cmGlobalGenerator.h
diff options
context:
space:
mode:
authorBen Boeckel <ben.boeckel@kitware.com>2014-04-30 19:40:39 (GMT)
committerBen Boeckel <ben.boeckel@kitware.com>2014-05-07 19:48:32 (GMT)
commit325599caa2974f30d35f9ad0dbe1fc0760290b3e (patch)
treecda65fc2558c65435fefaad29434b5dfb5eb599f /Source/cmGlobalGenerator.h
parentac4106c69abea254e6a887dd42997fcdaca3a001 (diff)
downloadCMake-325599caa2974f30d35f9ad0dbe1fc0760290b3e.zip
CMake-325599caa2974f30d35f9ad0dbe1fc0760290b3e.tar.gz
CMake-325599caa2974f30d35f9ad0dbe1fc0760290b3e.tar.bz2
cmGlobalGenerator: Store targets in hash maps
Diffstat (limited to 'Source/cmGlobalGenerator.h')
-rw-r--r--Source/cmGlobalGenerator.h15
1 files changed, 12 insertions, 3 deletions
diff --git a/Source/cmGlobalGenerator.h b/Source/cmGlobalGenerator.h
index 82fb1e5..14ec99a 100644
--- a/Source/cmGlobalGenerator.h
+++ b/Source/cmGlobalGenerator.h
@@ -22,6 +22,10 @@
#include "cmGeneratorTarget.h"
#include "cmGeneratorExpression.h"
+#if defined(CMAKE_BUILD_WITH_CMAKE)
+# include <cmsys/hash_map.hxx>
+#endif
+
class cmake;
class cmGeneratorTarget;
class cmGeneratorExpressionEvaluationFile;
@@ -389,9 +393,14 @@ protected:
cmTargetManifest TargetManifest;
// All targets in the entire project.
- std::map<std::string,cmTarget *> TotalTargets;
- std::map<std::string,cmTarget *> AliasTargets;
- std::map<std::string,cmTarget *> ImportedTargets;
+#if defined(CMAKE_BUILD_WITH_CMAKE)
+ typedef cmsys::hash_map<std::string, cmTarget*> TargetMap;
+#else
+ typedef std::map<std::string,cmTarget *> TargetMap;
+#endif
+ TargetMap TotalTargets;
+ TargetMap AliasTargets;
+ TargetMap ImportedTargets;
std::vector<cmGeneratorExpressionEvaluationFile*> EvaluationFiles;
virtual const char* GetPredefinedTargetsFolder();