From 4219debe9ddbd0ea6d814d9d4c535c7e5b217b34 Mon Sep 17 00:00:00 2001 From: Dongxiao Xu Date: Wed, 3 Aug 2011 22:53:15 +0800 Subject: package_rpm: Fix package rename issue in multilib case 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 (From OE-Core rev: 216a1cfe7973e99e3e79585040e91f7a6e298884) Signed-off-by: Dongxiao Xu Signed-off-by: Lianhao Lu Signed-off-by: Richard Purdie --- meta/classes/package_rpm.bbclass | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'meta/classes/package_rpm.bbclass') diff --git a/meta/classes/package_rpm.bbclass b/meta/classes/package_rpm.bbclass index 7a0c6daae1..9ef1acd475 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 -- cgit v1.2.3-54-g00ecf