From dcac9be6aa33601db1b32f4efd9f724a97f8844b Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Wed, 6 Nov 2013 12:33:17 +0100 Subject: [PATCH] Make accessors for compile-related information const. These can be moved to cmGeneratorTarget in CMake 4.0. --- Source/cmTarget.cxx | 27 ++++++++++++++------------- Source/cmTarget.h | 12 ++++++------ 2 files changed, 20 insertions(+), 19 deletions(-) diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index 9162d177f..dc6529706 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -138,16 +138,16 @@ public: std::vector CompileDefinitionsEntries; std::vector LinkInterfacePropertyEntries; - std::map > + mutable std::map > CachedLinkInterfaceIncludeDirectoriesEntries; - std::map > + mutable std::map > CachedLinkInterfaceCompileOptionsEntries; - std::map > + mutable std::map > CachedLinkInterfaceCompileDefinitionsEntries; - std::map CacheLinkInterfaceIncludeDirectoriesDone; - std::map CacheLinkInterfaceCompileDefinitionsDone; - std::map CacheLinkInterfaceCompileOptionsDone; + mutable std::map CacheLinkInterfaceIncludeDirectoriesDone; + mutable std::map CacheLinkInterfaceCompileDefinitionsDone; + mutable std::map CacheLinkInterfaceCompileOptionsDone; }; //---------------------------------------------------------------------------- @@ -1598,7 +1598,7 @@ void cmTarget::InsertCompileDefinition(const cmValueWithOrigin &entry, } //---------------------------------------------------------------------------- -static void processIncludeDirectories(cmTarget *tgt, +static void processIncludeDirectories(cmTarget const* tgt, const std::vector &entries, std::vector &includes, std::set &uniqueIncludes, @@ -1767,7 +1767,8 @@ static void processIncludeDirectories(cmTarget *tgt, } //---------------------------------------------------------------------------- -std::vector cmTarget::GetIncludeDirectories(const char *config) +std::vector +cmTarget::GetIncludeDirectories(const char *config) const { std::vector includes; std::set uniqueIncludes; @@ -1899,7 +1900,7 @@ std::vector cmTarget::GetIncludeDirectories(const char *config) } //---------------------------------------------------------------------------- -static void processCompileOptionsInternal(cmTarget *tgt, +static void processCompileOptionsInternal(cmTarget const* tgt, const std::vector &entries, std::vector &options, std::set &uniqueOptions, @@ -1958,7 +1959,7 @@ static void processCompileOptionsInternal(cmTarget *tgt, } //---------------------------------------------------------------------------- -static void processCompileOptions(cmTarget *tgt, +static void processCompileOptions(cmTarget const* tgt, const std::vector &entries, std::vector &options, std::set &uniqueOptions, @@ -1971,7 +1972,7 @@ static void processCompileOptions(cmTarget *tgt, //---------------------------------------------------------------------------- void cmTarget::GetCompileOptions(std::vector &result, - const char *config) + const char *config) const { std::set uniqueOptions; cmListFileBacktrace lfbt; @@ -2070,7 +2071,7 @@ void cmTarget::GetCompileOptions(std::vector &result, } //---------------------------------------------------------------------------- -static void processCompileDefinitions(cmTarget *tgt, +static void processCompileDefinitions(cmTarget const* tgt, const std::vector &entries, std::vector &options, std::set &uniqueOptions, @@ -2084,7 +2085,7 @@ static void processCompileDefinitions(cmTarget *tgt, //---------------------------------------------------------------------------- void cmTarget::GetCompileDefinitions(std::vector &list, - const char *config) + const char *config) const { std::set uniqueOptions; cmListFileBacktrace lfbt; diff --git a/Source/cmTarget.h b/Source/cmTarget.h index fbb49141f..b516a0a46 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -445,7 +445,7 @@ public: const char* GetExportMacro(); void GetCompileDefinitions(std::vector &result, - const char *config); + const char *config) const; // Compute the set of languages compiled by the target. This is // computed every time it is called because the languages can change @@ -512,7 +512,7 @@ public: std::string GetAppBundleDirectory(const char* config, bool contentOnly) const; - std::vector GetIncludeDirectories(const char *config); + std::vector GetIncludeDirectories(const char *config) const; void InsertInclude(const cmValueWithOrigin &entry, bool before = false); void InsertCompileOption(const cmValueWithOrigin &entry, @@ -523,7 +523,7 @@ public: void AppendBuildInterfaceIncludes(); void GetCompileOptions(std::vector &result, - const char *config); + const char *config) const; bool IsNullImpliedByLinkLibraries(const std::string &p) const; bool IsLinkInterfaceDependentBoolProperty(const std::string &p, @@ -679,9 +679,9 @@ private: bool DLLPlatform; bool IsApple; bool IsImportedTarget; - bool DebugIncludesDone; - bool DebugCompileOptionsDone; - bool DebugCompileDefinitionsDone; + mutable bool DebugIncludesDone; + mutable bool DebugCompileOptionsDone; + mutable bool DebugCompileDefinitionsDone; mutable std::set LinkImplicitNullProperties; bool BuildInterfaceIncludesAppended;