[OE-core] [oe-core][PATCH 1/1] blacklist: add BPNBLACKLIST support
Joe Slater
jslater at windriver.com
Wed Jun 22 21:59:24 UTC 2016
PNBLACKLIST[pn] in a recipe does not work for multilib.
Add BPNBLACKLIST specifically for use in recipes.
Signed-off-by: Joe Slater <jslater at windriver.com>
---
meta/classes/blacklist.bbclass | 24 ++++++++++++++++++++----
1 file changed, 20 insertions(+), 4 deletions(-)
diff --git a/meta/classes/blacklist.bbclass b/meta/classes/blacklist.bbclass
index a0141a8..d92b0bc 100644
--- a/meta/classes/blacklist.bbclass
+++ b/meta/classes/blacklist.bbclass
@@ -8,9 +8,20 @@
#
# Features:
#
-# * To add a package to the blacklist, set:
+# * To add a recipe to the blacklist, set:
# PNBLACKLIST[pn] = "message"
#
+# This blacklist works by matching 'pn' to the exact 'PN' of
+# a recipe. The 'PN' of a recipe may be influenced by the recipe
+# itself, multilib and classextensions.
+#
+# * Another way to blacklist a recipe, set:
+# BPNBLACKLIST[bpn] = "message"
+#
+# This blacklist works by matching 'bpn' to the exact 'BPN' set by
+# a recipe. While unusual, a recipe may modify the BPN, but multilib
+# and classextensions generally do not.
+
# Cope with PNBLACKLIST flags for multilib case
addhandler blacklist_multilib_eventhandler
@@ -38,8 +49,13 @@ python blacklist_multilib_eventhandler() {
}
python () {
- blacklist = d.getVarFlag('PNBLACKLIST', d.getVar('PN', True), True)
+ reason = d.getVarFlag('BPNBLACKLIST', d.getVar('BPN', True), True)
+
+ if reason:
+ raise bb.parse.SkipRecipe("BPN is blacklisted: %s" % (reason))
+
+ reason = d.getVarFlag('PNBLACKLIST', d.getVar('PN', True), True)
- if blacklist:
- raise bb.parse.SkipPackage("Recipe is blacklisted: %s" % (blacklist))
+ if reason:
+ raise bb.parse.SkipRecipe("PN is blacklisted: %s" % (reason))
}
--
1.7.9.5
More information about the Openembedded-core
mailing list