From 5b88504f650c7bcd3d404853b26292b50fa6f141 Mon Sep 17 00:00:00 2001 From: Stephen Kelly Date: Tue, 12 Feb 2013 10:35:28 +0100 Subject: [PATCH] Rename the IncludeDirectoriesEntry to be more generic. --- Source/cmListFileCache.h | 9 +++++++ Source/cmMakefile.cxx | 12 ++++----- Source/cmMakefile.h | 7 ++--- Source/cmMakefileIncludeDirectoriesEntry.h | 28 -------------------- Source/cmTarget.cxx | 6 ++--- Source/cmTarget.h | 4 +-- Source/cmTargetCompileDefinitionsCommand.cxx | 2 -- Source/cmTargetIncludeDirectoriesCommand.cxx | 4 +-- 8 files changed, 23 insertions(+), 49 deletions(-) delete mode 100644 Source/cmMakefileIncludeDirectoriesEntry.h diff --git a/Source/cmListFileCache.h b/Source/cmListFileCache.h index c057754a3c..fec3d07d89 100644 --- a/Source/cmListFileCache.h +++ b/Source/cmListFileCache.h @@ -76,4 +76,13 @@ struct cmListFile std::vector Functions; }; +struct cmValueWithOrigin { + cmValueWithOrigin(const std::string &value, + const cmListFileBacktrace &bt) + : Value(value), Backtrace(bt) + {} + std::string Value; + cmListFileBacktrace Backtrace; +}; + #endif diff --git a/Source/cmMakefile.cxx b/Source/cmMakefile.cxx index 299e5646fc..25ccbc739a 100644 --- a/Source/cmMakefile.cxx +++ b/Source/cmMakefile.cxx @@ -1487,7 +1487,7 @@ void cmMakefile::InitializeFromParent() // Initialize definitions with the closure of the parent scope. this->Internal->VarStack.top() = parent->Internal->VarStack.top().Closure(); - const std::vector parentIncludes = + const std::vector parentIncludes = parent->GetIncludeDirectoriesEntries(); this->IncludeDirectoriesEntries.insert(this->IncludeDirectoriesEntries.end(), parentIncludes.begin(), @@ -1636,13 +1636,13 @@ void cmMakefile::AddIncludeDirectories(const std::vector &incs, sep = ";"; } - std::vector::iterator position = + std::vector::iterator position = before ? this->IncludeDirectoriesEntries.begin() : this->IncludeDirectoriesEntries.end(); cmListFileBacktrace lfbt; this->GetBacktrace(lfbt); - IncludeDirectoriesEntry entry(incString, lfbt); + cmValueWithOrigin entry(incString, lfbt); this->IncludeDirectoriesEntries.insert(position, entry); // Property on each target: @@ -3461,7 +3461,7 @@ void cmMakefile::SetProperty(const char* prop, const char* value) cmListFileBacktrace lfbt; this->GetBacktrace(lfbt); this->IncludeDirectoriesEntries.push_back( - IncludeDirectoriesEntry(value, lfbt)); + cmValueWithOrigin(value, lfbt)); return; } @@ -3500,7 +3500,7 @@ void cmMakefile::AppendProperty(const char* prop, const char* value, cmListFileBacktrace lfbt; this->GetBacktrace(lfbt); this->IncludeDirectoriesEntries.push_back( - IncludeDirectoriesEntry(value, lfbt)); + cmValueWithOrigin(value, lfbt)); return; } if ( propname == "LINK_DIRECTORIES" ) @@ -3617,7 +3617,7 @@ const char *cmMakefile::GetProperty(const char* prop, else if (!strcmp("INCLUDE_DIRECTORIES",prop)) { std::string sep; - for (std::vector::const_iterator + for (std::vector::const_iterator it = this->IncludeDirectoriesEntries.begin(), end = this->IncludeDirectoriesEntries.end(); it != end; ++it) diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index c0020bf6b5..74a731d5bc 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -22,7 +22,6 @@ #include "cmNewLineStyle.h" #include "cmGeneratorTarget.h" #include "cmake.h" -#include "cmMakefileIncludeDirectoriesEntry.h" #if defined(CMAKE_BUILD_WITH_CMAKE) #include "cmSourceGroup.h" @@ -863,9 +862,7 @@ public: /** Set whether or not to report a CMP0000 violation. */ void SetCheckCMP0000(bool b) { this->CheckCMP0000 = b; } - typedef cmMakefileIncludeDirectoriesEntry IncludeDirectoriesEntry; - - std::vector GetIncludeDirectoriesEntries() const + std::vector GetIncludeDirectoriesEntries() const { return this->IncludeDirectoriesEntries; } @@ -921,7 +918,7 @@ protected: std::vector HeaderFileExtensions; std::string DefineFlags; - std::vector IncludeDirectoriesEntries; + std::vector IncludeDirectoriesEntries; // Track the value of the computed DEFINITIONS property. void AddDefineFlag(const char*, std::string&); diff --git a/Source/cmMakefileIncludeDirectoriesEntry.h b/Source/cmMakefileIncludeDirectoriesEntry.h deleted file mode 100644 index f35642dfb6..0000000000 --- a/Source/cmMakefileIncludeDirectoriesEntry.h +++ /dev/null @@ -1,28 +0,0 @@ -/*============================================================================ - CMake - Cross Platform Makefile Generator - Copyright 2012 Stephen Kelly - - Distributed under the OSI-approved BSD License (the "License"); - see accompanying file Copyright.txt for details. - - This software is distributed WITHOUT ANY WARRANTY; without even the - implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. - See the License for more information. -============================================================================*/ - -#ifndef cmMakefileIncludeDirectoriesEntry_h -#define cmMakefileIncludeDirectoriesEntry_h - -#include -#include "cmListFileCache.h" - -struct cmMakefileIncludeDirectoriesEntry { - cmMakefileIncludeDirectoriesEntry(const std::string &value, - const cmListFileBacktrace &bt) - : Value(value), Backtrace(bt) - {} - std::string Value; - cmListFileBacktrace Backtrace; -}; - -#endif diff --git a/Source/cmTarget.cxx b/Source/cmTarget.cxx index bf918d52e2..6da6957c21 100644 --- a/Source/cmTarget.cxx +++ b/Source/cmTarget.cxx @@ -1496,10 +1496,10 @@ void cmTarget::SetMakefile(cmMakefile* mf) // Initialize the INCLUDE_DIRECTORIES property based on the current value // of the same directory property: - const std::vector parentIncludes = + const std::vector parentIncludes = this->Makefile->GetIncludeDirectoriesEntries(); - for (std::vector::const_iterator it + for (std::vector::const_iterator it = parentIncludes.begin(); it != parentIncludes.end(); ++it) { this->InsertInclude(*it); @@ -2743,7 +2743,7 @@ void cmTarget::AppendBuildInterfaceIncludes() } //---------------------------------------------------------------------------- -void cmTarget::InsertInclude(const cmMakefileIncludeDirectoriesEntry &entry, +void cmTarget::InsertInclude(const cmValueWithOrigin &entry, bool before) { cmGeneratorExpression ge(entry.Backtrace); diff --git a/Source/cmTarget.h b/Source/cmTarget.h index fb1496fa21..028a55e537 100644 --- a/Source/cmTarget.h +++ b/Source/cmTarget.h @@ -15,7 +15,7 @@ #include "cmCustomCommand.h" #include "cmPropertyMap.h" #include "cmPolicies.h" -#include "cmMakefileIncludeDirectoriesEntry.h" +#include "cmListFileCache.h" #include @@ -493,7 +493,7 @@ public: std::string GetFrameworkDirectory(const char* config = 0); std::vector GetIncludeDirectories(const char *config); - void InsertInclude(const cmMakefileIncludeDirectoriesEntry &entry, + void InsertInclude(const cmValueWithOrigin &entry, bool before = false); void AppendBuildInterfaceIncludes(); diff --git a/Source/cmTargetCompileDefinitionsCommand.cxx b/Source/cmTargetCompileDefinitionsCommand.cxx index 76458338cd..ba0ad59868 100644 --- a/Source/cmTargetCompileDefinitionsCommand.cxx +++ b/Source/cmTargetCompileDefinitionsCommand.cxx @@ -11,8 +11,6 @@ ============================================================================*/ #include "cmTargetCompileDefinitionsCommand.h" -#include "cmMakefileIncludeDirectoriesEntry.h" - bool cmTargetCompileDefinitionsCommand ::InitialPass(std::vector const& args, cmExecutionStatus &) { diff --git a/Source/cmTargetIncludeDirectoriesCommand.cxx b/Source/cmTargetIncludeDirectoriesCommand.cxx index 808806a3a4..12d0a515f6 100644 --- a/Source/cmTargetIncludeDirectoriesCommand.cxx +++ b/Source/cmTargetIncludeDirectoriesCommand.cxx @@ -11,8 +11,6 @@ ============================================================================*/ #include "cmTargetIncludeDirectoriesCommand.h" -#include "cmMakefileIncludeDirectoriesEntry.h" - //---------------------------------------------------------------------------- bool cmTargetIncludeDirectoriesCommand ::InitialPass(std::vector const& args, cmExecutionStatus &) @@ -71,6 +69,6 @@ void cmTargetIncludeDirectoriesCommand { cmListFileBacktrace lfbt; this->Makefile->GetBacktrace(lfbt); - cmMakefileIncludeDirectoriesEntry entry(this->Join(content), lfbt); + cmValueWithOrigin entry(this->Join(content), lfbt); tgt->InsertInclude(entry, prepend); }