[OE-core] [CONSOLIDATED PULL 07/27] package_rpm: Fix package rename issue in multilib case
Saul Wold
sgw at linux.intel.com
Wed Aug 17 06:26:30 UTC 2011
From: Dongxiao Xu <dongxiao.xu at intel.com>
do_package task will write information into pkgdata and
do_package_write_rpm will read them out. Take lib32-dates as an example,
one of its RDEPENDS is li32-gtk+, and PKG_lib32-gtk+ = "libgtk-2.0",
these info is stored at:
tmp/pkgdata/x86_64-pokymllib32-linux/runtime/lib32-dates.
Function "mapping_rename_hook" in do_package_write_rpm is to handle
those renamed packages. However before it executes, translate_vers
has stripped the multilib prefix out, making it failed to find PKG_gtk+
value in pkgdata.
This commit moves the strip_multilib out of translate_vers and call it
after "mapping_rename_hook".
[YOCTO #1368]
CC: Mark Hatle <mark.hatle at windriver.com>
Signed-off-by: Dongxiao Xu <dongxiao.xu at intel.com>
Signed-off-by: Lianhao Lu <lianhao.lu at intel.com>
---
meta/classes/package_rpm.bbclass | 14 +++++++-------
1 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass
index 7a0c6da..9ef1acd 100644
--- a/meta/classes/package_rpm.bbclass
+++ b/meta/classes/package_rpm.bbclass
@@ -394,7 +394,7 @@ python write_specfile () {
pv = subd['PKGV']
reppv = pv.replace('-', '+')
ver = ver.replace(pv, reppv)
- newdeps_dict[strip_multilib(dep, d)] = ver
+ newdeps_dict[dep] = ver
depends = bb.utils.join_deps(newdeps_dict)
bb.data.setVar(varname, depends.strip(), d)
@@ -516,12 +516,12 @@ python write_specfile () {
# Map the dependencies into their final form
bb.build.exec_func("mapping_rename_hook", localdata)
- splitrdepends = bb.data.getVar('RDEPENDS', localdata, True) or ""
- splitrrecommends = bb.data.getVar('RRECOMMENDS', localdata, True) or ""
- splitrsuggests = bb.data.getVar('RSUGGESTS', localdata, True) or ""
- splitrprovides = bb.data.getVar('RPROVIDES', localdata, True) or ""
- splitrreplaces = bb.data.getVar('RREPLACES', localdata, True) or ""
- splitrconflicts = bb.data.getVar('RCONFLICTS', localdata, True) or ""
+ splitrdepends = strip_multilib(bb.data.getVar('RDEPENDS', localdata, True), d) or ""
+ splitrrecommends = strip_multilib(bb.data.getVar('RRECOMMENDS', localdata, True), d) or ""
+ splitrsuggests = strip_multilib(bb.data.getVar('RSUGGESTS', localdata, True), d) or ""
+ splitrprovides = strip_multilib(bb.data.getVar('RPROVIDES', localdata, True), d) or ""
+ splitrreplaces = strip_multilib(bb.data.getVar('RREPLACES', localdata, True), d) or ""
+ splitrconflicts = strip_multilib(bb.data.getVar('RCONFLICTS', localdata, True), d) or ""
splitrobsoletes = []
# For now we need to manually supplement RPROVIDES with any update-alternatives links
--
1.7.6
More information about the Openembedded-core
mailing list