diff options
author | Stephen Kelly <steveire@gmail.com> | 2015-06-07 12:50:54 (GMT) |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2015-06-08 20:23:44 (GMT) |
commit | 52b9d828ab482f5eaae3313d821d9a4a492f069b (patch) | |
tree | 5bfd46840fe306a15b23d3ddf65ea4fe3dea73ca /Source/cmGetPropertyCommand.cxx | |
parent | fe603c7dfb8a3d0dfc892b46f9df0b4c32a892f9 (diff) | |
download | CMake-52b9d828ab482f5eaae3313d821d9a4a492f069b.zip CMake-52b9d828ab482f5eaae3313d821d9a4a492f069b.tar.gz CMake-52b9d828ab482f5eaae3313d821d9a4a492f069b.tar.bz2 |
cmMakefile: Move CMP0059 handling to command code.
Don't pay a penalty for it in all GetProperty calls.
Additionally, the storage of properties will eventually move to
cmState, which should only contain state and not logic for policies
like this.
Diffstat (limited to 'Source/cmGetPropertyCommand.cxx')
-rw-r--r-- | Source/cmGetPropertyCommand.cxx | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/cmGetPropertyCommand.cxx b/Source/cmGetPropertyCommand.cxx index 36b6c64..33d638b 100644 --- a/Source/cmGetPropertyCommand.cxx +++ b/Source/cmGetPropertyCommand.cxx @@ -279,6 +279,22 @@ bool cmGetPropertyCommand::HandleDirectoryMode() } } + if (this->PropertyName == "DEFINITIONS") + { + switch(mf->GetPolicyStatus(cmPolicies::CMP0059)) + { + case cmPolicies::WARN: + mf->IssueMessage(cmake::AUTHOR_WARNING, + cmPolicies::GetPolicyWarning(cmPolicies::CMP0059)); + case cmPolicies::OLD: + return this->StoreResult(mf->GetDefineFlagsCMP0059()); + case cmPolicies::NEW: + case cmPolicies::REQUIRED_ALWAYS: + case cmPolicies::REQUIRED_IF_USED: + break; + } + } + // Get the property. return this->StoreResult(mf->GetProperty(this->PropertyName)); } |