summaryrefslogtreecommitdiffstats
path: root/meta/classes/blacklist.bbclass
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@ossystems.com.br>2013-08-10 17:19:30 -0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2013-08-13 23:06:03 +0100
commit9bb0b1c28578128a861dccf053ed611cd1c4b8bb (patch)
tree29a6628697071a7724ebd2bdef049ff3afb194b4 /meta/classes/blacklist.bbclass
parent3aabe00df69f1a2aa7eff97e042ed0ce15613f0f (diff)
downloadpoky-9bb0b1c28578128a861dccf053ed611cd1c4b8bb.tar.gz
blacklist.bbclass: Avoid blacklist specific handle in base.bbclass
base.bbclass had code which handled the PNBLACKLIST in case of multilib use. This is better to be done in the blacklist.bbclass so it has all logic in a single place. (From OE-Core rev: 04f0fefeccc1e7e3af8a1f741350492ae3f171fc) Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/blacklist.bbclass')
-rw-r--r--meta/classes/blacklist.bbclass25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/classes/blacklist.bbclass b/meta/classes/blacklist.bbclass
index 75abd99c29..a0141a82c0 100644
--- a/meta/classes/blacklist.bbclass
+++ b/meta/classes/blacklist.bbclass
@@ -12,6 +12,31 @@
12# PNBLACKLIST[pn] = "message" 12# PNBLACKLIST[pn] = "message"
13# 13#
14 14
15# Cope with PNBLACKLIST flags for multilib case
16addhandler blacklist_multilib_eventhandler
17blacklist_multilib_eventhandler[eventmask] = "bb.event.ConfigParsed"
18python blacklist_multilib_eventhandler() {
19 multilibs = e.data.getVar('MULTILIBS', True)
20 if not multilibs:
21 return
22
23 # this block has been copied from base.bbclass so keep it in sync
24 prefixes = []
25 for ext in multilibs.split():
26 eext = ext.split(':')
27 if len(eext) > 1 and eext[0] == 'multilib':
28 prefixes.append(eext[1])
29
30 blacklists = e.data.getVarFlags('PNBLACKLIST') or {}
31 for pkg, reason in blacklists.items():
32 if pkg.endswith(("-native", "-crosssdk")) or pkg.startswith(("nativesdk-", "virtual/nativesdk-")) or 'cross-canadian' in pkg:
33 continue
34 for p in prefixes:
35 newpkg = p + "-" + pkg
36 if not e.data.getVarFlag('PNBLACKLIST', newpkg, True):
37 e.data.setVarFlag('PNBLACKLIST', newpkg, reason)
38}
39
15python () { 40python () {
16 blacklist = d.getVarFlag('PNBLACKLIST', d.getVar('PN', True), True) 41 blacklist = d.getVarFlag('PNBLACKLIST', d.getVar('PN', True), True)
17 42