summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Source/cmMakefile.cxx10
-rw-r--r--Source/cmMakefile.h4
2 files changed, 6 insertions, 8 deletions
diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx
index 4a2153d..6be1fdd 100644
--- a/Source/cmMakefile.cxx
+++ b/Source/cmMakefile.cxx
@@ -3822,21 +3822,19 @@ const char* cmMakefile::GetFeature(const char* feature, const char* config)
return 0;
}
-cmTarget* cmMakefile::FindTarget(const char* name, bool excludeAliases)
+cmTarget* cmMakefile::FindTarget(const char* name, bool excludeAliases) const
{
if (!excludeAliases)
{
- std::map<std::string, cmTarget*>::iterator i
+ std::map<std::string, cmTarget*>::const_iterator i
= this->AliasTargets.find(name);
if (i != this->AliasTargets.end())
{
return i->second;
}
}
- cmTargets& tgts = this->GetTargets();
-
- cmTargets::iterator i = tgts.find ( name );
- if ( i != tgts.end() )
+ cmTargets::iterator i = this->Targets.find( name );
+ if ( i != this->Targets.end() )
{
return &i->second;
}
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h
index 76958ca..44aaa66 100644
--- a/Source/cmMakefile.h
+++ b/Source/cmMakefile.h
@@ -533,7 +533,7 @@ public:
this->GeneratorTargets = targets;
}
- cmTarget* FindTarget(const char* name, bool excludeAliases = false);
+ cmTarget* FindTarget(const char* name, bool excludeAliases = false) const;
/** Find a target to use in place of the given name. The target
returned may be imported or built within the project. */
@@ -902,7 +902,7 @@ protected:
std::string ProjectName; // project name
// libraries, classes, and executables
- cmTargets Targets;
+ mutable cmTargets Targets;
std::map<std::string, cmTarget*> AliasTargets;
cmGeneratorTargetsType GeneratorTargets;
std::vector<cmSourceFile*> SourceFiles;