From 0e0fadb400b4656c4b15ae4120aa39ff8ed72985 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Thu, 7 Oct 2010 15:41:17 +0100 Subject: rootfs_rpm: Add lock file in the rpm deploy directory to allow mutliple rootfs creation tasks to coexist without breaking each other Signed-off-by: Richard Purdie --- meta/classes/image.bbclass | 2 +- meta/classes/rootfs_rpm.bbclass | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) (limited to 'meta/classes') diff --git a/meta/classes/image.bbclass b/meta/classes/image.bbclass index 1b34ac423b..3db34ac193 100644 --- a/meta/classes/image.bbclass +++ b/meta/classes/image.bbclass @@ -90,7 +90,7 @@ LINGUAS_INSTALL = "${@" ".join(map(lambda s: "locale-base-%s" % s, bb.data.getVa do_rootfs[nostamp] = "1" do_rootfs[dirs] = "${TOPDIR}" -do_rootfs[lockfiles] = "${IMAGE_ROOTFS}.lock" +do_rootfs[lockfiles] += "${IMAGE_ROOTFS}.lock" do_build[nostamp] = "1" # Must call real_do_rootfs() from inside here, rather than as a separate diff --git a/meta/classes/rootfs_rpm.bbclass b/meta/classes/rootfs_rpm.bbclass index a57894ae5d..f82fcacf5d 100644 --- a/meta/classes/rootfs_rpm.bbclass +++ b/meta/classes/rootfs_rpm.bbclass @@ -28,6 +28,10 @@ opkglibdir = "${localstatedir}/lib/opkg" RPMOPTS="--dbpath ${rpmlibdir} --define='_openall_before_chroot 1'" RPM="rpm ${RPMOPTS}" +# RPM doesn't work with multiple rootfs generation at once due to collisions in the use of files +# in ${DEPLOY_DIR_RPM}. This can be removed if package_update_index_rpm can be called concurrently +do_rootfs[lockfiles] += "${DEPLOY_DIR_RPM}/rpm.lock" + fakeroot rootfs_rpm_do_rootfs () { set +x -- cgit v1.2.3-54-g00ecf