package*.bbclass: Switch to separate tasks for each packing type (from poky)
authorRichard Purdie <rpurdie@rpsys.net>
Tue, 4 Sep 2007 08:38:17 +0000 (08:38 +0000)
committerRichard Purdie <rpurdie@rpsys.net>
Tue, 4 Sep 2007 08:38:17 +0000 (08:38 +0000)
classes/debian.bbclass
classes/package.bbclass
classes/package_deb.bbclass
classes/package_ipk.bbclass
classes/package_rpm.bbclass
classes/package_tar.bbclass
classes/rootfs_deb.bbclass
classes/rootfs_ipk.bbclass

index 403c38c..a38f10d 100644 (file)
@@ -7,7 +7,10 @@ STAGING_PKGMAPS_DIR = "${STAGING_DIR}/pkgmaps/debian"
 #
 # Better expressed as ensure all RDEPENDS package before we package
 # This means we can't have circular RDEPENDS/RRECOMMENDS
-do_package_write[rdeptask] = "do_package"
+do_package_write_ipk[rdeptask] = "do_package"
+do_package_write_deb[rdeptask] = "do_package"
+do_package_write_tar[rdeptask] = "do_package"
+do_package_write_rpm[rdeptask] = "do_package"
 
 python debian_package_name_hook () {
        import glob, copy, stat, errno, re
index fe48ec6..5bff495 100644 (file)
@@ -120,18 +120,12 @@ PACKAGE_DEPENDS += "file-native"
 
 python () {
     import bb
-
     if bb.data.getVar('PACKAGES', d, True) != '':
         deps = bb.data.getVarFlag('do_package', 'depends', d) or ""
         for dep in (bb.data.getVar('PACKAGE_DEPENDS', d, True) or "").split():
             deps += " %s:do_populate_staging" % dep
         bb.data.setVarFlag('do_package', 'depends', deps, d)
 
-        deps = bb.data.getVarFlag('do_package_write', 'depends', d) or ""
-        for dep in (bb.data.getVar('PACKAGE_EXTRA_DEPENDS', d, True) or "").split():
-            deps += " %s:do_populate_staging" % dep
-        bb.data.setVarFlag('do_package_write', 'depends', deps, d)
-       
         # shlibs requires any DEPENDS to have already packaged for the *.list files
         bb.data.setVarFlag('do_package', 'deptask', 'do_package', d)
 }
@@ -906,21 +900,14 @@ python package_do_package () {
 do_package[dirs] = "${D}"
 addtask package before do_build after do_install
 
-
-
-PACKAGE_WRITE_FUNCS ?= "read_subpackage_metadata"
-
-python package_do_package_write () {
-       for f in (bb.data.getVar('PACKAGE_WRITE_FUNCS', d, 1) or '').split():
-               bb.build.exec_func(f, d)
+# Dummy task to mark when all packaging is complete
+do_package_write () {
+       :
 }
-do_package_write[dirs] = "${D}"
 addtask package_write before do_build after do_package
 
-
 EXPORT_FUNCTIONS do_package do_package_write
 
-
 #
 # Helper functions for the package writing classes
 #
index 94db923..2ab537f 100644 (file)
@@ -4,11 +4,8 @@
 
 inherit package
 
-PACKAGE_EXTRA_DEPENDS += "dpkg-native fakeroot-native"
-
 BOOTSTRAP_EXTRA_RDEPENDS += "dpkg"
 DISTRO_EXTRA_RDEPENDS += "dpkg"
-PACKAGE_WRITE_FUNCS += "do_package_deb"
 IMAGE_PKGTYPE ?= "deb"
 
 python package_deb_fn () {
@@ -271,5 +268,5 @@ python do_package_write_deb () {
        bb.build.exec_func("do_package_deb", d)
 }
 do_package_write_deb[dirs] = "${D}"
-#addtask package_write_deb before do_package_write after do_package
+addtask package_write_deb before do_package_write after do_package
 
index 3468680..e9e2145 100644 (file)
@@ -1,9 +1,6 @@
 inherit package
 
-PACKAGE_EXTRA_DEPENDS += "ipkg-utils-native fakeroot-native"
-
 BOOTSTRAP_EXTRA_RDEPENDS += "ipkg-collateral ipkg"
-PACKAGE_WRITE_FUNCS += "do_package_ipk"
 IMAGE_PKGTYPE ?= "ipk"
 
 IPKGCONF_TARGET = "${STAGING_ETCDIR_NATIVE}/ipkg.conf"
@@ -313,4 +310,4 @@ python do_package_write_ipk () {
        bb.build.exec_func("do_package_ipk", d)
 }
 do_package_write_ipk[dirs] = "${D}"
-
+addtask package_write_ipk before do_package_write after do_package
index bd4a0c2..7fc5e8e 100644 (file)
@@ -2,7 +2,6 @@ inherit package
 inherit rpm_core
 
 RPMBUILD="rpmbuild --short-circuit ${RPMOPTS}"
-PACKAGE_WRITE_FUNCS += "do_package_rpm"
 IMAGE_PKGTYPE ?= "rpm"
 
 python write_specfile() {
@@ -144,4 +143,4 @@ python do_package_write_rpm () {
        bb.build.exec_func("do_package_rpm", d)
 }
 do_package_write_rpm[dirs] = "${D}"
-#addtask package_write_rpm before do_build after do_package
+addtask package_write_rpm before do_build after do_package
index a56f2e2..cb4c42b 100644 (file)
@@ -1,8 +1,5 @@
 inherit package
 
-PACKAGE_EXTRA_DEPENDS += "tar-native"
-
-PACKAGE_WRITE_FUNCS += "do_package_tar"
 IMAGE_PKGTYPE ?= "tar"
 
 python package_tar_fn () {
@@ -111,4 +108,4 @@ python do_package_write_tar () {
        bb.build.exec_func("do_package_tar", d)
 }
 do_package_write_tar[dirs] = "${D}"
-#addtask package_write_tar before do_build after do_package
+addtask package_write_tar before do_build after do_package
index 6db02fa..d3e5832 100644 (file)
@@ -3,7 +3,7 @@
 #
 
 do_rootfs[depends] += "dpkg-native:do_populate_staging apt-native:do_populate_staging"
-do_rootfs[recrdeptask] += "do_package_write"
+do_rootfs[recrdeptask] += "do_package_write_deb"
 
 fakeroot rootfs_deb_do_rootfs () {
        set +e
index 8154318..6babee3 100644 (file)
@@ -6,7 +6,7 @@
 #
 
 do_rootfs[depends] += "ipkg-native:do_populate_staging ipkg-utils-native:do_populate_staging"
-do_rootfs[recrdeptask] += "do_package_write"
+do_rootfs[recrdeptask] += "do_package_write_ipk"
 
 IPKG_ARGS = "-f ${IPKGCONF_TARGET} -o ${IMAGE_ROOTFS} ${@base_conditional("PACKAGE_INSTALL_NO_DEPS", "1", "-nodeps", "", d)}"