diff options
| -rw-r--r-- | meta/classes/blacklist.bbclass | 25 | ||||
| -rw-r--r-- | meta/classes/multilib.bbclass | 6 |
2 files changed, 6 insertions, 25 deletions
diff --git a/meta/classes/blacklist.bbclass b/meta/classes/blacklist.bbclass index 3413a5b0aa..e58564c34e 100644 --- a/meta/classes/blacklist.bbclass +++ b/meta/classes/blacklist.bbclass | |||
| @@ -12,31 +12,6 @@ | |||
| 12 | # PNBLACKLIST[pn] = "message" | 12 | # PNBLACKLIST[pn] = "message" |
| 13 | # | 13 | # |
| 14 | 14 | ||
| 15 | # Cope with PNBLACKLIST flags for multilib case | ||
| 16 | addhandler blacklist_multilib_eventhandler | ||
| 17 | blacklist_multilib_eventhandler[eventmask] = "bb.event.ConfigParsed" | ||
| 18 | python blacklist_multilib_eventhandler() { | ||
| 19 | multilibs = e.data.getVar('MULTILIBS') | ||
| 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): | ||
| 37 | e.data.setVarFlag('PNBLACKLIST', newpkg, reason) | ||
| 38 | } | ||
| 39 | |||
| 40 | python () { | 15 | python () { |
| 41 | blacklist = d.getVarFlag('PNBLACKLIST', d.getVar('PN')) | 16 | blacklist = d.getVarFlag('PNBLACKLIST', d.getVar('PN')) |
| 42 | 17 | ||
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index 401e0c2cc0..ab04597f93 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
| @@ -53,6 +53,12 @@ python multilib_virtclass_handler () { | |||
| 53 | 53 | ||
| 54 | override = ":virtclass-multilib-" + variant | 54 | override = ":virtclass-multilib-" + variant |
| 55 | 55 | ||
| 56 | blacklist = e.data.getVarFlag('PNBLACKLIST', e.data.getVar('PN')) | ||
| 57 | if blacklist: | ||
| 58 | pn_new = variant + "-" + e.data.getVar('PN') | ||
| 59 | if not e.data.getVarFlag('PNBLACKLIST', pn_new): | ||
| 60 | e.data.setVarFlag('PNBLACKLIST', pn_new, blacklist) | ||
| 61 | |||
| 56 | e.data.setVar("MLPREFIX", variant + "-") | 62 | e.data.setVar("MLPREFIX", variant + "-") |
| 57 | e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False)) | 63 | e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False)) |
| 58 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) | 64 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) |
