diff options
author | Nils Gladitz <nilsgladitz@gmail.com> | 2014-09-04 18:21:28 (GMT) |
---|---|---|
committer | Nils Gladitz <nilsgladitz@gmail.com> | 2014-09-11 19:23:17 (GMT) |
commit | 188a1f236e1594fc46163fbad5e062e3978c1e5a (patch) | |
tree | ee62bcd7bc77a1defe2080a17451c01a985d293a /Source/cmMakefile.h | |
parent | b900c1ccaae7a500dda88240873122d0d899bf93 (diff) | |
download | CMake-188a1f236e1594fc46163fbad5e062e3978c1e5a.zip CMake-188a1f236e1594fc46163fbad5e062e3978c1e5a.tar.gz CMake-188a1f236e1594fc46163fbad5e062e3978c1e5a.tar.bz2 |
If: Introduce policy CMP0054 - don't dereference quoted variables in if()
Diffstat (limited to 'Source/cmMakefile.h')
-rw-r--r-- | Source/cmMakefile.h | 35 |
1 files changed, 34 insertions, 1 deletions
diff --git a/Source/cmMakefile.h b/Source/cmMakefile.h index d728a62..164290a 100644 --- a/Source/cmMakefile.h +++ b/Source/cmMakefile.h @@ -21,6 +21,7 @@ #include "cmTarget.h" #include "cmNewLineStyle.h" #include "cmGeneratorTarget.h" +#include "cmExpandedCommandArgument.h" #include "cmake.h" #if defined(CMAKE_BUILD_WITH_CMAKE) @@ -375,7 +376,35 @@ public: /** * Get the Policies Instance */ - cmPolicies *GetPolicies() const; + cmPolicies *GetPolicies() const; + + struct cmCMP0054Id + { + cmCMP0054Id(cmListFileContext const& context): + Context(context) + { + + } + + bool operator< (cmCMP0054Id const& id) const + { + if(this->Context.FilePath != id.Context.FilePath) + return this->Context.FilePath < id.Context.FilePath; + + return this->Context.Line < id.Context.Line; + } + + cmListFileContext Context; + }; + + mutable std::set<cmCMP0054Id> CMP0054ReportedIds; + + /** + * Determine if the given context, name pair has already been reported + * in context of CMP0054. + */ + bool HasCMP0054AlreadyBeenReported( + cmListFileContext context) const; /** * Add an auxiliary directory to the build. @@ -770,6 +799,10 @@ public: */ bool ExpandArguments(std::vector<cmListFileArgument> const& inArgs, std::vector<std::string>& outArgs) const; + + bool ExpandArguments(std::vector<cmListFileArgument> const& inArgs, + std::vector<cmExpandedCommandArgument>& outArgs) const; + /** * Get the instance */ |