From patchwork Tue Jan 22 08:19:56 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [3/4] image.bbclass:support incremental deb image generation Date: Tue, 22 Jan 2013 08:19:56 -0000 From: Hongxu Jia X-Patchwork-Id: 43147 Message-Id: To: When use the deb incremental image generation, and the type of previous image is deb, don't remove the rootfs. The same rule to the rpm incremental image generation. If neither of them, rootfs will be removed. [YOCTO #1893] Signed-off-by: Hongxu Jia --- meta/classes/image.bbclass | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 0293d2e..5d93d59 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -203,16 +203,29 @@ run_intercept_scriptlets () { fakeroot do_rootfs () { #set -x - # When use the rpm incremental image generation, don't remove the rootfs - if [ "${INC_RPM_IMAGE_GEN}" != "1" -o "${IMAGE_PKGTYPE}" != "rpm" ]; then - rm -rf ${IMAGE_ROOTFS} - elif [ -d ${T}/saved_rpmlib/var/lib/rpm ]; then + # When use the rpm incremental image generation, and the type + # of previous image is rpm, don't remove the rootfs + if [ "${INC_RPM_IMAGE_GEN}" = "1" -a "${IMAGE_PKGTYPE}" = "rpm" \ + -a -d ${T}/saved_rpmlib/var/lib/rpm ]; then + + echo "start rpm incremental image generation" # Move the rpmlib back if [ ! -d ${IMAGE_ROOTFS}/var/lib/rpm ]; then mkdir -p ${IMAGE_ROOTFS}/var/lib/ mv ${T}/saved_rpmlib/var/lib/rpm ${IMAGE_ROOTFS}/var/lib/ fi + + # When use the deb incremental image generation, and the type + # of previous image is deb, don't remove the rootfs + elif [ "${INC_DEB_IMAGE_GEN}" = "1" -a "${IMAGE_PKGTYPE}" = "deb" \ + -a -e ${IMAGE_ROOTFS}/var/lib/dpkg/status ]; then + + echo "start deb incremental image generation" + else + rm -rf ${IMAGE_ROOTFS} + rm -rf ${T}/saved_rpmlib fi + rm -rf ${MULTILIB_TEMP_ROOTFS} mkdir -p ${IMAGE_ROOTFS} mkdir -p ${DEPLOY_DIR_IMAGE}