summaryrefslogtreecommitdiffstats
path: root/Source/cmTargetPropertyComputer.cxx
diff options
context:
space:
mode:
authorStephen Kelly <steveire@gmail.com>2016-10-12 22:18:24 (GMT)
committerStephen Kelly <steveire@gmail.com>2016-10-15 09:14:21 (GMT)
commit637e3f3ee131cf30f7337db06314f4a1af22c245 (patch)
tree12ada449eced14d26a9edbb1f7f450a6ac31f120 /Source/cmTargetPropertyComputer.cxx
parent05251e6d80b03ae14d6a89765f14c2eb10979bd4 (diff)
downloadCMake-637e3f3ee131cf30f7337db06314f4a1af22c245.zip
CMake-637e3f3ee131cf30f7337db06314f4a1af22c245.tar.gz
CMake-637e3f3ee131cf30f7337db06314f4a1af22c245.tar.bz2
cmTargetPropertyComputer: Unify whitelist handling from cmTarget
Diffstat (limited to 'Source/cmTargetPropertyComputer.cxx')
-rw-r--r--Source/cmTargetPropertyComputer.cxx16
1 files changed, 16 insertions, 0 deletions
diff --git a/Source/cmTargetPropertyComputer.cxx b/Source/cmTargetPropertyComputer.cxx
index 18135fa..3e39a8f 100644
--- a/Source/cmTargetPropertyComputer.cxx
+++ b/Source/cmTargetPropertyComputer.cxx
@@ -270,3 +270,19 @@ bool cmTargetPropertyComputer::WhiteListedInterfaceProperty(
return false;
}
+
+bool cmTargetPropertyComputer::PassesWhitelist(
+ cmState::TargetType tgtType, std::string const& prop, cmMessenger* messenger,
+ cmListFileBacktrace const& context)
+{
+ if (tgtType == cmState::INTERFACE_LIBRARY &&
+ !WhiteListedInterfaceProperty(prop)) {
+ std::ostringstream e;
+ e << "INTERFACE_LIBRARY targets may only have whitelisted properties. "
+ "The property \""
+ << prop << "\" is not allowed.";
+ messenger->IssueMessage(cmake::FATAL_ERROR, e.str(), context);
+ return false;
+ }
+ return true;
+}