diff options
author | Kai Kang <kai.kang@windriver.com> | 2018-09-11 19:25:17 -0400 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2018-09-13 07:42:28 +0100 |
commit | d9ba0219b2f6643ffc825d4b8d3494d07237dd0b (patch) | |
tree | a9b272b8d30c962443cddddf8db9469767de7988 /meta/classes/allarch.bbclass | |
parent | c2d00e2f83cdf3d2923660448756ed29296a06a6 (diff) | |
download | poky-d9ba0219b2f6643ffc825d4b8d3494d07237dd0b.tar.gz |
allarch: only enable allarch when multilib is not used
Some allarch packages rdepends non-allarch packages. when multilib is
used, it doesn't expand the dependency chain correctly, e.g.
core-image-sato -> ca-certificates(allarch) -> openssl
we expect dependency chain for lib32-core-image-sato:
lib32-core-image-sato -> ca-certificates(allarch) -> lib32-openssl
it should install lib32-openssl for ca-certificates but openssl is still
wrongly required.
Only enable allarch when multilib is not used to fix the issue.
(From OE-Core rev: a23c482cab4f874f4a6a6889716123569eb5ece9)
Signed-off-by: Kai Kang <kai.kang@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes/allarch.bbclass')
-rw-r--r-- | meta/classes/allarch.bbclass | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/meta/classes/allarch.bbclass b/meta/classes/allarch.bbclass index 1eebe0bf2e..5bd5c44a27 100644 --- a/meta/classes/allarch.bbclass +++ b/meta/classes/allarch.bbclass | |||
@@ -2,7 +2,18 @@ | |||
2 | # This class is used for architecture independent recipes/data files (usually scripts) | 2 | # This class is used for architecture independent recipes/data files (usually scripts) |
3 | # | 3 | # |
4 | 4 | ||
5 | PACKAGE_ARCH = "all" | 5 | python allarch_package_arch_handler () { |
6 | if bb.data.inherits_class("native", d) or bb.data.inherits_class("nativesdk", d) \ | ||
7 | or bb.data.inherits_class("crosssdk", d): | ||
8 | return | ||
9 | |||
10 | variants = d.getVar("MULTILIB_VARIANTS") | ||
11 | if not variants: | ||
12 | d.setVar("PACKAGE_ARCH", "all" ) | ||
13 | } | ||
14 | |||
15 | addhandler allarch_package_arch_handler | ||
16 | allarch_package_arch_handler[eventmask] = "bb.event.RecipePreFinalise" | ||
6 | 17 | ||
7 | python () { | 18 | python () { |
8 | # Allow this class to be included but overridden - only set | 19 | # Allow this class to be included but overridden - only set |