aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-08-25 18:30:18 +0200
committerYann E. MORIN" <yann.morin.1998@anciens.enib.fr>2011-08-25 18:30:18 +0200
commit04250cc896d00b28ba518ece4e2eae7b9b0bb048 (patch)
treeab08e06b9b3dbada025a4668aef86c2b8077b06a
parent4bf42bfd02901694812054b3a78fd1518dbd5d63 (diff)
downloadcrosstool-ng-04250cc896d00b28ba518ece4e2eae7b9b0bb048.tar.gz
crosstool-ng-04250cc896d00b28ba518ece4e2eae7b9b0bb048.tar.bz2
crosstool-ng-04250cc896d00b28ba518ece4e2eae7b9b0bb048.zip
configure: check for lzma
Some packages are available as LZMA tarballs. LZMA is a relatively recent compression algorithm; it's slightly better than bzip2, but offers much faster decompression. LZMA is now deprecated in favor of XZ, but some packages switched to LZMA when XZ was not yet available, or still in its infancy. Latest XZ (which totaly obsoletes LZMA) offers a backward LZMA- compatible utility, so we can check for 'lzma' nonetheless. Signed-off-by: "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
-rwxr-xr-xconfigure3
-rw-r--r--scripts/functions4
2 files changed, 7 insertions, 0 deletions
diff --git a/configure b/configure
index c645e181..f52af9ef 100755
--- a/configure
+++ b/configure
@@ -504,6 +504,9 @@ has_or_abort prog=bzip2
has_or_warn prog=xz \
kconfig=has_xzutils \
err="xz-compressed tarballs will not be used"
+has_or_warn prog=lzma \
+ kconfig=has_lzma \
+ err="lzma-compressed tarballs will not be used"
has_or_abort prog=readlink
has_or_abort prog=objcopy var=objcopy
has_or_abort prog=objdump var=objdump
diff --git a/scripts/functions b/scripts/functions
index bb24264e..d2b45cfd 100644
--- a/scripts/functions
+++ b/scripts/functions
@@ -403,6 +403,9 @@ CT_DoListTarballExt() {
if [ "${CT_CONFIGURE_has_xzutils}" = "y" ]; then
printf ".tar.xz\n"
fi
+ if [ "${CT_CONFIGURE_has_lzma}" = "y" ]; then
+ printf ".tar.lzma\n"
+ fi
printf ".tar.bz2\n"
printf ".tar.gz\n.tgz\n"
printf ".tar\n"
@@ -757,6 +760,7 @@ CT_Extract() {
tar_opts+=( "-xv" )
case "${ext}" in
.tar.xz) CT_DoExecLog FILE tar "${tar_opts[@]}" --use-compress-program=xz -f "${full_file}";;
+ .tar.lzma) CT_DoExecLog FILE tar "${tar_opts[@]}" --use-compress-program=lzma -f "${full_file}";;
.tar.bz2) CT_DoExecLog FILE tar "${tar_opts[@]}" -j -f "${full_file}";;
.tar.gz|.tgz) CT_DoExecLog FILE tar "${tar_opts[@]}" -z -f "${full_file}";;
.tar) CT_DoExecLog FILE tar "${tar_opts[@]}" -f "${full_file}";;