aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChris Larson <chris_larson@mentor.com>2010-10-26 12:14:42 -0700
committerChris Larson <chris_larson@mentor.com>2010-10-26 12:15:40 -0700
commit77c46353c6836668b67c28691279177ccce8d483 (patch)
treef02a8542dfdd645352b19f2300c66a9bda3cec19
parente2a741b3d2b4acef820d04efc7a0de96a7e1e2a5 (diff)
downloadopenembedded-77c46353c6836668b67c28691279177ccce8d483.tar.gz
Handle .lz/.tar.lz URIs
Signed-off-by: Chris Larson <chris_larson@mentor.com>
-rw-r--r--classes/base.bbclass5
-rw-r--r--lib/oe/unpack.py5
2 files changed, 10 insertions, 0 deletions
diff --git a/classes/base.bbclass b/classes/base.bbclass
index d4d8257c29..b1159e8ad4 100644
--- a/classes/base.bbclass
+++ b/classes/base.bbclass
@@ -386,6 +386,11 @@ python () {
depends = depends + " unzip-native:do_populate_sysroot"
bb.data.setVarFlag('do_unpack', 'depends', depends, d)
+ if ".lz" in src_uri:
+ depends = bb.data.getVarFlag('do_unpack', 'depends', d) or ""
+ depends = depends + " lzip-native:do_populate_sysroot"
+ bb.data.setVarFlag('do_unpack', 'depends', depends, d)
+
# 'multimachine' handling
mach_arch = bb.data.getVar('MACHINE_ARCH', d, 1)
pkg_arch = bb.data.getVar('PACKAGE_ARCH', d, 1)
diff --git a/lib/oe/unpack.py b/lib/oe/unpack.py
index 5a8334bc1a..e4fe5d8363 100644
--- a/lib/oe/unpack.py
+++ b/lib/oe/unpack.py
@@ -73,6 +73,11 @@ def unpack_file(file, destdir, dos=False, env=None):
elif file.endswith('.xz'):
root, ext = os.path.splitext(file)
cmd = 'xz -dc %s > %s' % (file, os.path.basename(root))
+ elif file.endswith('.tar.lz'):
+ cmd = 'lzip -dc %s | tar x --no-same-owner -f -' % file
+ elif file.endswith('.lz'):
+ root, ext = os.path.splitext(file)
+ cmd = 'lzip -dc %s > %s' % (file, os.path.basename(root))
elif file.endswith('.zip') or file.endswith('.jar'):
cmd = 'unzip -q -o'
if dos: