diff options
author | Dongxiao Xu <dongxiao.xu@intel.com> | 2011-09-08 21:35:37 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-09-21 13:42:51 +0100 |
commit | 719e1edaebb13b8626a7dd85cdc8680f00a6b4ac (patch) | |
tree | 131d4341b527f44a38336813fa24a222895f8c65 | |
parent | 59a08907eafffde664079b9a2068f47131dd3f5d (diff) | |
download | poky-719e1edaebb13b8626a7dd85cdc8680f00a6b4ac.tar.gz |
rpm: add multilib prefix for archs under deploy/rpm
Currently MACHINE_ARCH deploy folder is unique in multilib system, thus
a lib32 version of rpm package will override a normal rpm package if
its PACKAGE_ARCH is ${MACHINE_ARCH}.
Define different deploy folder for multilib architectures to avoid the
confliction.
(From OE-Core rev: 921f984aa65e23d5a8ec5c2e58a96cb8a4790b5d)
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r-- | meta/classes/multilib.bbclass | 5 | ||||
-rw-r--r-- | meta/classes/rootfs_rpm.bbclass | 4 |
2 files changed, 8 insertions, 1 deletions
diff --git a/meta/classes/multilib.bbclass b/meta/classes/multilib.bbclass index 583d76b0f3..138dd27a6e 100644 --- a/meta/classes/multilib.bbclass +++ b/meta/classes/multilib.bbclass | |||
@@ -76,4 +76,9 @@ python __anonymous () { | |||
76 | multilib_map_variable("PACKAGES_DYNAMIC", variant, d) | 76 | multilib_map_variable("PACKAGES_DYNAMIC", variant, d) |
77 | multilib_map_variable("PACKAGE_INSTALL", variant, d) | 77 | multilib_map_variable("PACKAGE_INSTALL", variant, d) |
78 | multilib_map_variable("INITSCRIPT_PACKAGES", variant, d) | 78 | multilib_map_variable("INITSCRIPT_PACKAGES", variant, d) |
79 | |||
80 | package_arch = d.getVar("PACKAGE_ARCH", True) | ||
81 | machine_arch = d.getVar("MACHINE_ARCH", True) | ||
82 | if package_arch == machine_arch: | ||
83 | d.setVar("PACKAGE_ARCH", variant + "_" + package_arch) | ||
79 | } | 84 | } |
diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass index 135ca75fa5..7936d77b96 100644 --- a/meta/classes/rootfs_rpm.bbclass +++ b/meta/classes/rootfs_rpm.bbclass | |||
@@ -218,7 +218,9 @@ python () { | |||
218 | default_tune = localdata.getVar("DEFAULTTUNE_virtclass-multilib-" + eext[1], False) | 218 | default_tune = localdata.getVar("DEFAULTTUNE_virtclass-multilib-" + eext[1], False) |
219 | if default_tune: | 219 | if default_tune: |
220 | localdata.setVar("DEFAULTTUNE", default_tune) | 220 | localdata.setVar("DEFAULTTUNE", default_tune) |
221 | ml_package_archs += localdata.getVar("PACKAGE_ARCHS", True) or "" | 221 | localdata.setVar("MACHINE_ARCH", eext[1] + "_" + localdata.getVar("MACHINE_ARCH", False)) |
222 | package_archs = localdata.getVar("PACKAGE_ARCHS", True) or "" | ||
223 | ml_package_archs += " " + package_archs | ||
222 | #bb.note("ML_PACKAGE_ARCHS %s %s %s" % (eext[1], localdata.getVar("PACKAGE_ARCHS", True) or "(none)", overrides)) | 224 | #bb.note("ML_PACKAGE_ARCHS %s %s %s" % (eext[1], localdata.getVar("PACKAGE_ARCHS", True) or "(none)", overrides)) |
223 | bb.data.setVar('MULTILIB_PACKAGE_ARCHS', ml_package_archs, d) | 225 | bb.data.setVar('MULTILIB_PACKAGE_ARCHS', ml_package_archs, d) |
224 | } | 226 | } |