summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDongxiao Xu <dongxiao.xu@intel.com>2011-09-08 21:35:37 +0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-09-21 13:42:51 +0100
commit719e1edaebb13b8626a7dd85cdc8680f00a6b4ac (patch)
tree131d4341b527f44a38336813fa24a222895f8c65
parent59a08907eafffde664079b9a2068f47131dd3f5d (diff)
downloadpoky-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.bbclass5
-rw-r--r--meta/classes/rootfs_rpm.bbclass4
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}