Recipe fixups for package_dbg usage
authorChris Larson <chris_larson@mentor.com>
Wed, 4 Aug 2010 00:09:25 +0000 (17:09 -0700)
committerChris Larson <chris_larson@mentor.com>
Wed, 4 Aug 2010 00:41:44 +0000 (17:41 -0700)
Signed-off-by: Chris Larson <chris_larson@mentor.com>
classes/kernel.bbclass
recipes/perl/perl_5.10.1.bb
recipes/perl/perl_5.8.8.bb

index b0c6534..9555f30 100644 (file)
@@ -476,6 +476,7 @@ python populate_packages_prepend () {
        bb.data.setVar('ALLOW_EMPTY_' + metapkg, "1", d)
        bb.data.setVar('FILES_' + metapkg, "", d)
        blacklist = [ 'kernel-dev', 'kernel-image', 'kernel-base', 'kernel-vmlinux' ]
+       depchains = (d.getVar("DEPCHAIN_POST", True) or "").split()
        for l in module_deps.values():
                for i in l:
                        pkg = module_pattern % legitimize_package_name(re.match(module_regex, os.path.basename(i)).group(1))
@@ -483,7 +484,7 @@ python populate_packages_prepend () {
        metapkg_rdepends = []
        packages = bb.data.getVar('PACKAGES', d, 1).split()
        for pkg in packages[1:]:
-               if not pkg in blacklist and not pkg in metapkg_rdepends:
+               if not pkg in blacklist and not pkg in metapkg_rdepends and not any(pkg.endswith(post) for post in depchains):
                        metapkg_rdepends.append(pkg)
        bb.data.setVar('RDEPENDS_' + metapkg, ' '.join(metapkg_rdepends), d)
        bb.data.setVar('DESCRIPTION_' + metapkg, 'Kernel modules meta package', d)
index c469cf9..75993b5 100644 (file)
@@ -210,11 +210,18 @@ FILES_${PN}-doc = "${datadir}/perl/${PV}/*/*.txt \
 
 RPROVIDES_perl-lib = "perl-lib"
 
+def all_perl_packages(d):
+    depchains = (d.getVar("DEPCHAIN_POST", True) or "").split()
+    blacklist = ["perl-modules", "perl-misc", "perl-pod", "perl-doc"]
+    for pkg in d.getVar("PACKAGES", True).split():
+        if not pkg in blacklist and not any(pkg.endswith(post) for post in depchains):
+            yield pkg
+
 # Create a perl-modules package recommending all the other perl
 # packages (actually the non modules packages and not created too)
 ALLOW_EMPTY_perl-modules = "1"
 PACKAGES_append = " perl-modules "
-RRECOMMENDS_perl-modules = "${@bb.data.getVar('PACKAGES', d, 1).replace('perl-modules ', '').replace('perl-dbg ', '').replace('perl-misc ', '').replace('perl-dev ', '').replace('perl-pod ', '').replace('perl-doc ', '')}"
+RRECOMMENDS_perl-modules = "${@' '.join(all_perl_packages(d))}"
 
 python populate_packages_prepend () {
         libdir = bb.data.expand('${libdir}/perl/${PV}', d)
index 0b9135d..ed489f4 100644 (file)
@@ -210,11 +210,18 @@ FILES_${PN}-doc = "${datadir}/perl/${PV}/*/*.txt \
 
 RPROVIDES_perl-lib = "perl-lib"
 
+def all_perl_packages(d):
+    depchains = (d.getVar("DEPCHAIN_POST", True) or "").split()
+    blacklist = ["perl-modules", "perl-misc", "perl-pod", "perl-doc"]
+    for pkg in d.getVar("PACKAGES", True).split():
+        if not pkg in blacklist and not any(pkg.endswith(post) for post in depchains):
+            yield pkg
+
 # Create a perl-modules package recommending all the other perl
 # packages (actually the non modules packages and not created too)
 ALLOW_EMPTY_perl-modules = "1"
 PACKAGES_append = " perl-modules "
-RRECOMMENDS_perl-modules = "${@bb.data.getVar('PACKAGES', d, 1).replace('perl-modules ', '').replace('perl-dbg ', '').replace('perl-misc ', '').replace('perl-dev ', '').replace('perl-pod ', '').replace('perl-doc ', '')}"
+RRECOMMENDS_perl-modules = "${@' '.join(all_perl_packages(d))}"
 
 python populate_packages_prepend () {
         libdir = bb.data.expand('${libdir}/perl/${PV}', d)