[OE-core] [PATCH 2/4] classes/package_tar: fix conflicts with package_deb / package_ipk
Paul Eggleton
paul.eggleton at linux.intel.com
Mon Feb 24 16:05:45 UTC 2014
Avoid tar noticing that the directory is changing when
do_package_write_deb or do_package_write_ipk are running at the same
time as do_package_write_tar (because DEBIAN and CONTROL are being added
and removed while tar is running so the directory changes).
Fixes [YOCTO #5652]
Signed-off-by: Paul Eggleton <paul.eggleton at linux.intel.com>
---
meta/classes/package_tar.bbclass | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/meta/classes/package_tar.bbclass b/meta/classes/package_tar.bbclass
index 2d6fc8f..fed2c28 100644
--- a/meta/classes/package_tar.bbclass
+++ b/meta/classes/package_tar.bbclass
@@ -41,11 +41,12 @@ python do_package_tar () {
basedir = os.path.dirname(root)
tarfn = localdata.expand("${DEPLOY_DIR_TAR}/${PKG}-${PKGV}-${PKGR}.tar.gz")
os.chdir(root)
- from glob import glob
- if not glob('*'):
+ dlist = os.listdir(root)
+ if not dlist:
bb.note("Not creating empty archive for %s-%s-%s" % (pkg, localdata.getVar('PKGV', True), localdata.getVar('PKGR', True)))
continue
- ret = subprocess.call("tar -czf %s %s" % (tarfn, '.'), shell=True)
+ args = "tar -cz --exclude=CONTROL --exclude=DEBIAN -f".split()
+ ret = subprocess.call(args + [tarfn] + dlist)
if ret != 0:
bb.error("Creation of tar %s failed." % tarfn)
}
--
1.8.5.3
More information about the Openembedded-core
mailing list