diff --git a/meta/classes/kernel.bbclass b/meta/classes/kernel.bbclass index 4805944ccb..00117a6cd8 100644 --- a/meta/classes/kernel.bbclass +++ b/meta/classes/kernel.bbclass @@ -301,7 +301,9 @@ if [ x"$D" = "x" ]; then fi } -python populate_packages_prepend () { +PACKAGESPLITFUNCS_prepend = "split_kernel_packages " + +python split_kernel_packages () { import re modinfoexp = re.compile("([^=]+)=(.*)") diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index a93fef984c..6e7e06ed53 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass @@ -1759,6 +1759,9 @@ PACKAGEBUILDPKGD ?= " \ ${PACKAGE_PREPROCESS_FUNCS} \ split_and_strip_files \ fixup_perms \ + " +# Functions which split PKGD up into separate packages +PACKAGESPLITFUNCS ?= " \ package_do_split_locales \ populate_packages" # Functions which process metadata based on split packages @@ -1798,6 +1801,9 @@ python do_package () { for f in (d.getVar('PACKAGEBUILDPKGD', True) or '').split(): bb.build.exec_func(f, d) + for f in (d.getVar('PACKAGESPLITFUNCS', True) or '').split(): + bb.build.exec_func(f, d) + # Build global list of files in each split package global pkgfiles pkgfiles = {} diff --git a/meta/classes/update-alternatives.bbclass b/meta/classes/update-alternatives.bbclass index 90bc56b9fb..8f4d0976a9 100644 --- a/meta/classes/update-alternatives.bbclass +++ b/meta/classes/update-alternatives.bbclass @@ -282,7 +282,9 @@ python perform_packagecopy_append () { bb.warn('%s: Unable to resolve dangling symlink: %s' % (pn, alt_target)) } -python populate_packages_prepend () { +PACKAGESPLITFUNCS_prepend = "populate_packages_updatealternatives " + +python populate_packages_updatealternatives () { pn = d.getVar('BPN', True) # Do actual update alternatives processing diff --git a/meta/classes/update-rc.d_real.bbclass b/meta/classes/update-rc.d_real.bbclass index 0cd671fe77..f9d55fbec8 100644 --- a/meta/classes/update-rc.d_real.bbclass +++ b/meta/classes/update-rc.d_real.bbclass @@ -47,7 +47,9 @@ python __anonymous() { update_rc_after_parse(d) } -python populate_packages_prepend () { +PACKAGESPLITFUNCS_prepend = "populate_packages_updatercd " + +python populate_packages_updatercd () { def update_rcd_package(pkg): bb.debug(1, 'adding update-rc.d calls to postinst/postrm for %s' % pkg) """