[OE-core] [PATCH 2/2] rootfs_deb: move the lock from WORKDIR to DEPLOY_DIR_DEB
Robert Yang
liezhi.yang at windriver.com
Tue Aug 14 09:41:02 UTC 2012
* There would be race issue if we put the lock to the WORKDIR, for
example:
bitbake core-image-sato core-image-sato-sdk
If the lock is in their own WORKDIR, the apt-rootfs.conf and
Packages.gz maybe be written by two tasks at the same time, which
would cause unexpected errors.
* Create ${target_rootfs}/etc since the "tar -C" needs it.
Note:
* The rpm has put the lock to DEPLOY_DIR_RPM
* The ipk doesn't need it since it has locks for each deploy directory
and put the opkg.conf in his own WORKDIR, which doesn't like deb put
the apt-rootfs.conf in ${STAGING_ETCDIR_NATIVE}/apt/.
[YOCTO #2495]
Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
---
meta/classes/populate_sdk_deb.bbclass | 3 ++-
meta/classes/rootfs_deb.bbclass | 2 +-
2 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/meta/classes/populate_sdk_deb.bbclass b/meta/classes/populate_sdk_deb.bbclass
index 6f89dcf..f2d0621 100644
--- a/meta/classes/populate_sdk_deb.bbclass
+++ b/meta/classes/populate_sdk_deb.bbclass
@@ -6,12 +6,13 @@ DEB_SDK_ARCH = "${@[d.getVar('SDK_ARCH', True), "i386"]\
[d.getVar('SDK_ARCH', True) in \
["x86", "i486", "i586", "i686", "pentium"]]}"
-do_populate_sdk[lockfiles] += "${WORKDIR}/deb.lock"
+do_populate_sdk[lockfiles] += "${DEPLOY_DIR_DEB}/deb.lock"
populate_sdk_post_deb () {
local target_rootfs=$1
+ mkdir -p ${target_rootfs}/etc
tar -cf - -C ${STAGING_ETCDIR_NATIVE} -ps apt | tar -xf - -C ${target_rootfs}/etc
}
diff --git a/meta/classes/rootfs_deb.bbclass b/meta/classes/rootfs_deb.bbclass
index 750a8ca..881fdbd 100644
--- a/meta/classes/rootfs_deb.bbclass
+++ b/meta/classes/rootfs_deb.bbclass
@@ -8,7 +8,7 @@ ROOTFS_PKGMANAGE_BOOTSTRAP = "run-postinsts"
do_rootfs[depends] += "dpkg-native:do_populate_sysroot apt-native:do_populate_sysroot"
do_rootfs[recrdeptask] += "do_package_write_deb"
-do_rootfs[lockfiles] += "${WORKDIR}/deb.lock"
+do_rootfs[lockfiles] += "${DEPLOY_DIR_DEB}/deb.lock"
DEB_POSTPROCESS_COMMANDS = ""
--
1.7.1
More information about the Openembedded-core
mailing list