diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-09-26 12:56:58 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2012-09-26 15:02:25 +0100 |
commit | 42e8c8056719326b68b1602e0699eba00a924d2b (patch) | |
tree | 277665763728ca4567a3770b09f045c06a0c244d /meta/classes | |
parent | 8593c6c1d8995f449a41a99c6e3242e2e58e79a5 (diff) | |
download | poky-42e8c8056719326b68b1602e0699eba00a924d2b.tar.gz |
packagedata/multilib: Fix search patch for multilib builds
The current multilib search path code for packagedata is flawed since it
doesn't correctly handle changes in the TARGET_VENDOR/TARGET_OS that
multilib may make. This patch enhances the code to correctly build the
search paths so multilib packagedata is found correctly.
(From OE-Core rev: f50c5d36b2da9b36d56d95a7d89404509a1a3e9b)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/multilib.bbclass | 2 | ||||
-rw-r--r-- | meta/classes/multilib_global.bbclass | 5 |
2 files changed, 5 insertions, 2 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index 7d5fc41535..76cbac6d6a 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
@@ -36,8 +36,6 @@ python multilib_virtclass_handler () { | |||
36 | e.data.setVar("MLPREFIX", variant + "-") | 36 | e.data.setVar("MLPREFIX", variant + "-") |
37 | e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False)) | 37 | e.data.setVar("PN", variant + "-" + e.data.getVar("PN", False)) |
38 | e.data.setVar("SHLIBSDIR_virtclass-multilib-" + variant ,e.data.getVar("SHLIBSDIR", False) + "/" + variant) | 38 | e.data.setVar("SHLIBSDIR_virtclass-multilib-" + variant ,e.data.getVar("SHLIBSDIR", False) + "/" + variant) |
39 | if e.data.getVar("TARGET_VENDOR_virtclass-multilib-" + variant, False) is None: | ||
40 | e.data.setVar("TARGET_VENDOR_virtclass-multilib-" + variant, e.data.getVar("TARGET_VENDOR", False) + "ml" + variant) | ||
41 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) | 39 | e.data.setVar("OVERRIDES", e.data.getVar("OVERRIDES", False) + override) |
42 | } | 40 | } |
43 | 41 | ||
diff --git a/meta/classes/multilib_global.bbclass b/meta/classes/multilib_global.bbclass index b76fd94162..f55e3a25aa 100644 --- a/meta/classes/multilib_global.bbclass +++ b/meta/classes/multilib_global.bbclass | |||
@@ -2,6 +2,11 @@ python multilib_virtclass_handler_global () { | |||
2 | if not e.data: | 2 | if not e.data: |
3 | return | 3 | return |
4 | 4 | ||
5 | if isinstance(e, bb.event.RecipePreFinalise): | ||
6 | for v in e.data.getVar("MULTILIB_VARIANTS", True).split(): | ||
7 | if e.data.getVar("TARGET_VENDOR_virtclass-multilib-" + v, False) is None: | ||
8 | e.data.setVar("TARGET_VENDOR_virtclass-multilib-" + v, e.data.getVar("TARGET_VENDOR", False) + "ml" + v) | ||
9 | |||
5 | variant = e.data.getVar("BBEXTENDVARIANT", True) | 10 | variant = e.data.getVar("BBEXTENDVARIANT", True) |
6 | 11 | ||
7 | if isinstance(e, bb.event.RecipeParsed) and not variant: | 12 | if isinstance(e, bb.event.RecipeParsed) and not variant: |