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.ha...@windriver.com>
Signed-off-by: Dongxiao Xu <dongxiao...@intel.com>
Signed-off-by: Lianhao Lu <lianhao...@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.1


_______________________________________________
Openembedded-core mailing list
Openembedded-core@lists.openembedded.org
http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core

Reply via email to