summaryrefslogtreecommitdiffstats
path: root/gettext-tools/misc/autopoint.in
diff options
context:
space:
mode:
Diffstat (limited to 'gettext-tools/misc/autopoint.in')
-rw-r--r--gettext-tools/misc/autopoint.in13
1 files changed, 9 insertions, 4 deletions
diff --git a/gettext-tools/misc/autopoint.in b/gettext-tools/misc/autopoint.in
index 4de582a..48f661d 100644
--- a/gettext-tools/misc/autopoint.in
+++ b/gettext-tools/misc/autopoint.in
@@ -387,10 +387,15 @@ mkdir "$work_dir" || {
# -------+-----------------------------+--------------------+
case "@ARCHIVE_FORMAT@" in
- dir)
- # The archive of different versions is very large, but using it does not
- # require special tools.
- gzip -d -c < "$gettext_dir/archive.dir.tar.gz" | (cd "$work_dir" && tar xf - "gettext-$ver")
+ dir*)
+ # The archive of different versions is very large (unless xz compression is
+ # used), but using it does not require special tools.
+ case "@ARCHIVE_FORMAT@" in
+ dirgz) gzip -d -c < "$gettext_dir/archive.dir.tar.gz" ;;
+ dirbz2) bzip2 -d -c < "$gettext_dir/archive.dir.tar.bz2" ;;
+ dirxz) xz -d -c < "$gettext_dir/archive.dir.tar.xz" ;;
+ esac \
+ | (cd "$work_dir" && tar xf - "gettext-$ver")
if test `find "$work_dir" -type f -print | wc -l` = 0; then
rm -rf "$work_dir"
func_fatal_error "infrastructure files for version $ver not found; this is autopoint from GNU $package $version"