All pastes #405026 Raw Edit

Untitled

public text v1 · immutable
·published 2007-03-21 13:41 UTC
rendered paste body
hrw@home:~/devel/oe/org.openembedded/classes$ mtn dif .
#
# old_revision [8b675ccc53dfab5cb741e302ba279dca3cd6cf5c]
#
# patch "classes/package.bbclass"
#  from [11f1fb0bda9849ac1e65a798ecb45a9d4818f571]
#    to [be10d57037fcb23f8c76cbcdce5811fc6b480848]
#
============================================================
--- classes/package.bbclass     11f1fb0bda9849ac1e65a798ecb45a9d4818f571
+++ classes/package.bbclass     be10d57037fcb23f8c76cbcdce5811fc6b480848
@@ -573,11 +573,13 @@ python package_do_shlibs() {
        bb.mkdirhier(shlibs_dir)

        needed = {}
+       notneeded = {}
        for pkg in packages.split():
                needs_ldconfig = False
                bb.debug(2, "calculating shlib provides for %s" % pkg)

                needed[pkg] = []
+               notneeded[pkg] = []
                sonames = list()
                top = os.path.join(workdir, "install", pkg)
                for root, dirs, files in os.walk(top):
@@ -597,6 +599,7 @@ python package_do_shlibs() {
                                                m = re.match("\s+SONAME\s+([^\s]*)", l)
                                                if m and not m.group(1) in sonames:
                                                        sonames.append(m.group(1))
+                                                       notneeded[pkg].append(m.group(1))
                                                if m and libdir_re.match(root):
                                                        needs_ldconfig = True
                shlibs_file = os.path.join(shlibs_dir, pkg + ".list")
@@ -647,6 +650,11 @@ python package_do_shlibs() {
                bb.debug(2, "calculating shlib requirements for %s" % pkg)

                deps = list()
+
+               for nn in notneeded[pkg]:
+                       if needed[pkg].index(nn):
+                               needed[pkg].remove(nn)
+
                for n in needed[pkg]:
                        if n in shlib_provider.keys():
                                (dep_pkg, ver_needed) = shlib_provider[n]