[bitbake-devel] [PATCH 24/32] Hob(crumbs/hoblistmodel.py): Add mapping for rprovides and pkg
Xu, Dongxiao
dongxiao.xu at intel.com
Thu Mar 1 04:20:12 UTC 2012
On Wed, 2012-02-29 at 13:30 -0800, Joshua Lock wrote:
>
> On 29/02/12 06:15, Shane Wang wrote:
> > From: Dongxiao Xu<dongxiao.xu at intel.com>
> >
> > When checking the package's RDEPENDS information, we will see some case like
> > A RDEPENDS virtual-b, and B RPROVIDES virtual-b, we need to reflect this relationship
> > in packaging selection.
> >
> > Signed-off-by: Dongxiao Xu<dongxiao.xu at intel.com>
> > ---
> > bitbake/lib/bb/ui/crumbs/hoblistmodel.py | 18 +++++++++++++++---
> > 1 files changed, 15 insertions(+), 3 deletions(-)
> >
> > diff --git a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
> > index e440979..e910944 100644
> > --- a/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
> > +++ b/bitbake/lib/bb/ui/crumbs/hoblistmodel.py
> > @@ -51,6 +51,7 @@ class PackageListModel(gtk.TreeStore):
> > self.pkgs_size = 0
> > self.pn_path = {}
> > self.pkg_path = {}
> > + self.rprov_pkg = {}
> >
> > gtk.TreeStore.__init__ (self,
> > gobject.TYPE_STRING,
> > @@ -71,10 +72,18 @@ class PackageListModel(gtk.TreeStore):
> > Returns the path in the model or None
> > """
> > def find_path_for_item(self, item_name):
> > + pkg = item_name
> > + if item_name == "virtual-locale-en-gb":
> > + print("xdx: item name in pkg_path.keys: %s" % (item_name in self.pkg_path.keys()))
> > + print("xdx: item name in rprov_pkg.keys: %s" % (item_name in self.rprov_pkg.keys()))
>
> Was this left in on purpose?
Oops... I should check it carefully.
Thanks,
Dongxiao
>
> > if item_name not in self.pkg_path.keys():
> > - return None
> > - else:
> > - return self.pkg_path[item_name]
> > + if item_name not in self.rprov_pkg.keys():
> > + return None
> > + pkg = self.rprov_pkg[item_name]
> > + if pkg not in self.pkg_path.keys():
> > + return None
> > +
> > + return self.pkg_path[pkg]
> >
> > def find_item_for_path(self, item_path):
> > return self[item_path][self.COL_NAME]
> > @@ -137,6 +146,7 @@ class PackageListModel(gtk.TreeStore):
> > self.pkgs_size = 0
> > self.pn_path = {}
> > self.pkg_path = {}
> > + self.rprov_pkg = {}
> >
> > for pkginfo in pkginfolist:
> > pn = pkginfo['PN']
> > @@ -160,6 +170,8 @@ class PackageListModel(gtk.TreeStore):
> > rdep = pkginfo['RDEPENDS_%s' % pkg] if 'RDEPENDS_%s' % pkg in pkginfo.keys() else ""
> > rrec = pkginfo['RRECOMMENDS_%s' % pkg] if 'RRECOMMENDS_%s' % pkg in pkginfo.keys() else ""
> > rprov = pkginfo['RPROVIDES_%s' % pkg] if 'RPROVIDES_%s' % pkg in pkginfo.keys() else ""
> > + for i in rprov.split():
> > + self.rprov_pkg[i] = pkg
> >
> > if 'ALLOW_EMPTY_%s' % pkg in pkginfo.keys():
> > allow_empty = pkginfo['ALLOW_EMPTY_%s' % pkg]
>
More information about the bitbake-devel
mailing list