From 6107ee294afde395e39d084c33e8e94013c625a9 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Wed, 23 Jan 2013 14:27:33 +0000 Subject: Split do_packagedata task from do_package Currently, do_rootfs has a dependency on all the do_package output being present due to its usage of the pkgdata directories. This means that if you run: bitbake xxxx-image -c rootfs you end up having to fetch and unpack all the do_package data which is usually large and inefficient. It also means rm_work has to leave all the do_package data lying around so rootfs works. This patch splits the actual creation of the pkgdata directory off into a separate task, "packagedata" which happens immediately after do_package. We can then remap the dependencies so this task is depended upon, not do_package. Sstate can then be programmed not to require do_package at the appropriate times. Whilst this patch doesn't do so, it opens the possibility of rm_work wiping out the do_package output from WORKDIR as long as it also removed the do_package stamp (both normal and setscene variants) and allowing more space savings with rm_work which has been regularly requested. Signed-off-by: Richard Purdie --- meta/recipes-devtools/gcc/gcc-package-cross.inc | 1 + meta/recipes-devtools/gcc/gcc-package-runtime.inc | 6 +++--- meta/recipes-devtools/gcc/libgcc_4.7.bb | 8 ++++---- meta/recipes-devtools/installer/adt-installer_1.0.bb | 1 + 4 files changed, 9 insertions(+), 7 deletions(-) (limited to 'meta/recipes-devtools') diff --git a/meta/recipes-devtools/gcc/gcc-package-cross.inc b/meta/recipes-devtools/gcc/gcc-package-cross.inc index 9718101a3d..3d8167703f 100644 --- a/meta/recipes-devtools/gcc/gcc-package-cross.inc +++ b/meta/recipes-devtools/gcc/gcc-package-cross.inc @@ -42,6 +42,7 @@ do_install () { } do_package[noexec] = "1" +do_packagedata[noexec] = "1" do_package_write_ipk[noexec] = "1" do_package_write_rpm[noexec] = "1" do_package_write_deb[noexec] = "1" diff --git a/meta/recipes-devtools/gcc/gcc-package-runtime.inc b/meta/recipes-devtools/gcc/gcc-package-runtime.inc index 75847b6b92..2e2f75ab3a 100644 --- a/meta/recipes-devtools/gcc/gcc-package-runtime.inc +++ b/meta/recipes-devtools/gcc/gcc-package-runtime.inc @@ -75,6 +75,6 @@ FILES_libgomp-staticdev = "\ ${libdir}/libgomp*.a \ " -do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_package" -do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_package" -do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_package" +do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata" +do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata" +do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata" diff --git a/meta/recipes-devtools/gcc/libgcc_4.7.bb b/meta/recipes-devtools/gcc/libgcc_4.7.bb index 5eaa515570..c12aeefa25 100644 --- a/meta/recipes-devtools/gcc/libgcc_4.7.bb +++ b/meta/recipes-devtools/gcc/libgcc_4.7.bb @@ -61,10 +61,10 @@ do_install () { rm -rf ${D}${libdir}/${TARGET_SYS}/${BINV}/include } -do_package[depends] += "virtual/${MLPREFIX}libc:do_package" -do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_package" -do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_package" -do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_package" +do_package[depends] += "virtual/${MLPREFIX}libc:do_packagedata" +do_package_write_ipk[depends] += "virtual/${MLPREFIX}libc:do_packagedata" +do_package_write_deb[depends] += "virtual/${MLPREFIX}libc:do_packagedata" +do_package_write_rpm[depends] += "virtual/${MLPREFIX}libc:do_packagedata" BBCLASSEXTEND = "nativesdk" diff --git a/meta/recipes-devtools/installer/adt-installer_1.0.bb b/meta/recipes-devtools/installer/adt-installer_1.0.bb index 3624dbc5d4..227e866861 100644 --- a/meta/recipes-devtools/installer/adt-installer_1.0.bb +++ b/meta/recipes-devtools/installer/adt-installer_1.0.bb @@ -81,6 +81,7 @@ do_populate_adt[nostamp] = "1" do_configure[noexec] = "1" do_compile[noexec] = "1" do_package[noexec] = "1" +do_packagedata[noexec] = "1" do_package_write[noexec] = "1" do_package_write_ipk[noexec] = "1" do_package_write_rpm[noexec] = "1" -- cgit 1.2.3-korg