Merge topic 'constify'

af4c109 cmGeneratorTarget: Make some accessors const.
6bdea06 cmTarget: Make some accessors const.
This commit is contained in:
Brad King 2013-11-04 07:54:03 -05:00 committed by CMake Topic Stage
commit eb3761ae68
4 changed files with 36 additions and 35 deletions

View File

@ -42,16 +42,16 @@ const char *cmGeneratorTarget::GetName() const
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
const char *cmGeneratorTarget::GetProperty(const char *prop) const char *cmGeneratorTarget::GetProperty(const char *prop) const
{ {
return this->Target->GetProperty(prop); return this->Target->GetProperty(prop);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::vector<cmSourceFile*> const* std::vector<cmSourceFile*> const*
cmGeneratorTarget::GetSourceDepends(cmSourceFile* sf) cmGeneratorTarget::GetSourceDepends(cmSourceFile* sf) const
{ {
SourceEntriesType::iterator i = this->SourceEntries.find(sf); SourceEntriesType::const_iterator i = this->SourceEntries.find(sf);
if(i != this->SourceEntries.end()) if(i != this->SourceEntries.end())
{ {
return &i->second.Depends; return &i->second.Depends;
@ -61,7 +61,7 @@ cmGeneratorTarget::GetSourceDepends(cmSourceFile* sf)
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
bool cmGeneratorTarget::IsSystemIncludeDirectory(const char *dir, bool cmGeneratorTarget::IsSystemIncludeDirectory(const char *dir,
const char *config) const char *config) const
{ {
std::string config_upper; std::string config_upper;
if(config && *config) if(config && *config)
@ -70,7 +70,7 @@ bool cmGeneratorTarget::IsSystemIncludeDirectory(const char *dir,
} }
typedef std::map<std::string, std::vector<std::string> > IncludeCacheType; typedef std::map<std::string, std::vector<std::string> > IncludeCacheType;
IncludeCacheType::iterator iter = IncludeCacheType::const_iterator iter =
this->SystemIncludesCache.find(config_upper); this->SystemIncludesCache.find(config_upper);
if (iter == this->SystemIncludesCache.end()) if (iter == this->SystemIncludesCache.end())
@ -111,13 +111,13 @@ bool cmGeneratorTarget::IsSystemIncludeDirectory(const char *dir,
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
bool cmGeneratorTarget::GetPropertyAsBool(const char *prop) bool cmGeneratorTarget::GetPropertyAsBool(const char *prop) const
{ {
return this->Target->GetPropertyAsBool(prop); return this->Target->GetPropertyAsBool(prop);
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::vector<cmSourceFile*> const& cmGeneratorTarget::GetSourceFiles() std::vector<cmSourceFile*> const& cmGeneratorTarget::GetSourceFiles() const
{ {
return this->Target->GetSourceFiles(); return this->Target->GetSourceFiles();
} }
@ -270,7 +270,8 @@ void cmGeneratorTarget::LookupObjectLibraries()
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void cmGeneratorTarget::UseObjectLibraries(std::vector<std::string>& objs) void
cmGeneratorTarget::UseObjectLibraries(std::vector<std::string>& objs) const
{ {
for(std::vector<cmTarget*>::const_iterator for(std::vector<cmTarget*>::const_iterator
ti = this->ObjectLibraries.begin(); ti = this->ObjectLibraries.begin();
@ -571,7 +572,7 @@ void cmGeneratorTarget::TraceDependencies()
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void cmGeneratorTarget::GetAppleArchs(const char* config, void cmGeneratorTarget::GetAppleArchs(const char* config,
std::vector<std::string>& archVec) std::vector<std::string>& archVec) const
{ {
const char* archs = 0; const char* archs = 0;
if(config && *config) if(config && *config)
@ -591,7 +592,7 @@ void cmGeneratorTarget::GetAppleArchs(const char* config,
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
const char* cmGeneratorTarget::GetCreateRuleVariable() const char* cmGeneratorTarget::GetCreateRuleVariable() const
{ {
switch(this->GetType()) switch(this->GetType())
{ {
@ -617,7 +618,7 @@ std::vector<std::string> cmGeneratorTarget::GetIncludeDirectories(
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void cmGeneratorTarget::GenerateTargetManifest(const char* config) void cmGeneratorTarget::GenerateTargetManifest(const char* config) const
{ {
if (this->Target->IsImported()) if (this->Target->IsImported())
{ {

View File

@ -28,9 +28,9 @@ public:
int GetType() const; int GetType() const;
const char *GetName() const; const char *GetName() const;
const char *GetProperty(const char *prop); const char *GetProperty(const char *prop) const;
bool GetPropertyAsBool(const char *prop); bool GetPropertyAsBool(const char *prop) const;
std::vector<cmSourceFile*> const& GetSourceFiles(); std::vector<cmSourceFile*> const& GetSourceFiles() const;
cmTarget* Target; cmTarget* Target;
cmMakefile* Makefile; cmMakefile* Makefile;
@ -60,22 +60,22 @@ public:
std::vector<cmTarget*> ObjectLibraries; std::vector<cmTarget*> ObjectLibraries;
void UseObjectLibraries(std::vector<std::string>& objs); void UseObjectLibraries(std::vector<std::string>& objs) const;
void GetAppleArchs(const char* config, void GetAppleArchs(const char* config,
std::vector<std::string>& archVec); std::vector<std::string>& archVec) const;
///! Return the rule variable used to create this type of target, ///! Return the rule variable used to create this type of target,
// need to add CMAKE_(LANG) for full name. // need to add CMAKE_(LANG) for full name.
const char* GetCreateRuleVariable(); const char* GetCreateRuleVariable() const;
/** Get the include directories for this target. */ /** Get the include directories for this target. */
std::vector<std::string> GetIncludeDirectories(const char *config); std::vector<std::string> GetIncludeDirectories(const char *config);
bool IsSystemIncludeDirectory(const char *dir, const char *config); bool IsSystemIncludeDirectory(const char *dir, const char *config) const;
/** Add the target output files to the global generator manifest. */ /** Add the target output files to the global generator manifest. */
void GenerateTargetManifest(const char* config); void GenerateTargetManifest(const char* config) const;
/** /**
* Trace through the source files in this target and add al source files * Trace through the source files in this target and add al source files
@ -87,14 +87,14 @@ public:
void LookupObjectLibraries(); void LookupObjectLibraries();
/** Get sources that must be built before the given source. */ /** Get sources that must be built before the given source. */
std::vector<cmSourceFile*> const* GetSourceDepends(cmSourceFile* sf); std::vector<cmSourceFile*> const* GetSourceDepends(cmSourceFile* sf) const;
struct SourceEntry { std::vector<cmSourceFile*> Depends; }; struct SourceEntry { std::vector<cmSourceFile*> Depends; };
typedef std::map<cmSourceFile*, SourceEntry> SourceEntriesType; typedef std::map<cmSourceFile*, SourceEntry> SourceEntriesType;
SourceEntriesType SourceEntries; SourceEntriesType SourceEntries;
private: private:
std::map<std::string, std::vector<std::string> > SystemIncludesCache; mutable std::map<std::string, std::vector<std::string> > SystemIncludesCache;
cmGeneratorTarget(cmGeneratorTarget const&); cmGeneratorTarget(cmGeneratorTarget const&);
void operator=(cmGeneratorTarget const&); void operator=(cmGeneratorTarget const&);

View File

@ -507,7 +507,7 @@ bool cmTarget::FindSourceFiles()
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::vector<cmSourceFile*> const& cmTarget::GetSourceFiles() std::vector<cmSourceFile*> const& cmTarget::GetSourceFiles() const
{ {
return this->SourceFiles; return this->SourceFiles;
} }
@ -3086,7 +3086,7 @@ std::string cmTarget::GetSOName(const char* config) const
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
bool cmTarget::HasMacOSXRpath(const char* config) bool cmTarget::HasMacOSXRpath(const char* config) const
{ {
bool install_name_is_rpath = false; bool install_name_is_rpath = false;
bool macosx_rpath = this->GetPropertyAsBool("MACOSX_RPATH"); bool macosx_rpath = this->GetPropertyAsBool("MACOSX_RPATH");
@ -3233,7 +3233,7 @@ cmTarget::GetFullNameImported(const char* config, bool implib) const
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
void cmTarget::GetFullNameComponents(std::string& prefix, std::string& base, void cmTarget::GetFullNameComponents(std::string& prefix, std::string& base,
std::string& suffix, const char* config, std::string& suffix, const char* config,
bool implib) bool implib) const
{ {
this->GetFullNameInternal(config, implib, prefix, base, suffix); this->GetFullNameInternal(config, implib, prefix, base, suffix);
} }
@ -3669,7 +3669,7 @@ bool cmTarget::HaveInstallTreeRPATH() const
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
bool cmTarget::NeedRelinkBeforeInstall(const char* config) bool cmTarget::NeedRelinkBeforeInstall(const char* config) const
{ {
// Only executables and shared libraries can have an rpath and may // Only executables and shared libraries can have an rpath and may
// need relinking. // need relinking.
@ -3732,7 +3732,7 @@ bool cmTarget::NeedRelinkBeforeInstall(const char* config)
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::string cmTarget::GetInstallNameDirForBuildTree(const char* config) std::string cmTarget::GetInstallNameDirForBuildTree(const char* config) const
{ {
// If building directly for installation then the build tree install_name // If building directly for installation then the build tree install_name
// is the same as the install tree. // is the same as the install tree.
@ -3765,7 +3765,7 @@ std::string cmTarget::GetInstallNameDirForBuildTree(const char* config)
} }
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::string cmTarget::GetInstallNameDirForInstallTree() std::string cmTarget::GetInstallNameDirForInstallTree() const
{ {
if(this->Makefile->IsOn("CMAKE_PLATFORM_HAS_INSTALLNAME")) if(this->Makefile->IsOn("CMAKE_PLATFORM_HAS_INSTALLNAME"))
{ {
@ -5802,7 +5802,7 @@ std::string cmTarget::BuildMacContentDirectory(const std::string& base,
//---------------------------------------------------------------------------- //----------------------------------------------------------------------------
std::string cmTarget::GetMacContentDirectory(const char* config, std::string cmTarget::GetMacContentDirectory(const char* config,
bool implib) bool implib) const
{ {
// Start with the output directory for the target. // Start with the output directory for the target.
std::string fpath = this->GetDirectory(config, implib); std::string fpath = this->GetDirectory(config, implib);

View File

@ -124,7 +124,7 @@ public:
/** /**
* Get the list of the source files used by this target * Get the list of the source files used by this target
*/ */
std::vector<cmSourceFile*> const& GetSourceFiles(); std::vector<cmSourceFile*> const& GetSourceFiles() const;
void AddSourceFile(cmSourceFile* sf); void AddSourceFile(cmSourceFile* sf);
std::vector<std::string> const& GetObjectLibraries() const std::vector<std::string> const& GetObjectLibraries() const
{ {
@ -361,7 +361,7 @@ public:
std::string GetFullName(const char* config=0, bool implib = false) const; std::string GetFullName(const char* config=0, bool implib = false) const;
void GetFullNameComponents(std::string& prefix, void GetFullNameComponents(std::string& prefix,
std::string& base, std::string& suffix, std::string& base, std::string& suffix,
const char* config=0, bool implib = false); const char* config=0, bool implib = false) const;
/** Get the name of the pdb file for the target. */ /** Get the name of the pdb file for the target. */
std::string GetPDBName(const char* config=0) const; std::string GetPDBName(const char* config=0) const;
@ -373,7 +373,7 @@ public:
std::string GetSOName(const char* config) const; std::string GetSOName(const char* config) const;
/** Whether this library has \@rpath and platform supports it. */ /** Whether this library has \@rpath and platform supports it. */
bool HasMacOSXRpath(const char* config); bool HasMacOSXRpath(const char* config) const;
/** Test for special case of a third-party shared library that has /** Test for special case of a third-party shared library that has
no soname at all. */ no soname at all. */
@ -409,7 +409,7 @@ public:
/** /**
* Compute whether this target must be relinked before installing. * Compute whether this target must be relinked before installing.
*/ */
bool NeedRelinkBeforeInstall(const char* config); bool NeedRelinkBeforeInstall(const char* config) const;
bool HaveBuildTreeRPATH(const char *config) const; bool HaveBuildTreeRPATH(const char *config) const;
bool HaveInstallTreeRPATH() const; bool HaveInstallTreeRPATH() const;
@ -420,11 +420,11 @@ public:
/** Return the install name directory for the target in the /** Return the install name directory for the target in the
* build tree. For example: "\@rpath/", "\@loader_path/", * build tree. For example: "\@rpath/", "\@loader_path/",
* or "/full/path/to/library". */ * or "/full/path/to/library". */
std::string GetInstallNameDirForBuildTree(const char* config); std::string GetInstallNameDirForBuildTree(const char* config) const;
/** Return the install name directory for the target in the /** Return the install name directory for the target in the
* install tree. For example: "\@rpath/" or "\@loader_path/". */ * install tree. For example: "\@rpath/" or "\@loader_path/". */
std::string GetInstallNameDirForInstallTree(); std::string GetInstallNameDirForInstallTree() const;
cmComputeLinkInformation* GetLinkInformation(const char* config, cmComputeLinkInformation* GetLinkInformation(const char* config,
cmTarget const* head = 0) const; cmTarget const* head = 0) const;
@ -497,7 +497,7 @@ public:
/** @return the mac content directory for this target. */ /** @return the mac content directory for this target. */
std::string GetMacContentDirectory(const char* config, std::string GetMacContentDirectory(const char* config,
bool implib); bool implib) const;
/** @return whether this target have a well defined output file name. */ /** @return whether this target have a well defined output file name. */
bool HaveWellDefinedOutputFiles() const; bool HaveWellDefinedOutputFiles() const;