gzip, lzip, bzip2, tar, xz can compress and decompress.
zip is able just to compress. To decompress you need unzip. During the tests of Automake 1.14, in particular t/dist-formats.tap, the nogzip function called via
nogzip in ac and zip in ac
looks if zip is available and, if yes, tests the zip creation + unzip. If in your system zip is installed but unzip no, you will have a FAIL like the following:
/bin/sh: line 14: unzip: command not found make: *** [distcheck] Error 127 + tap_result_='not ok' + result_ 'not ok' -D '' -r '' -- 'ac=dist-zip,no-dist-gzip [distcheck]' + set +x not ok 45 - ac=dist-zip,no-dist-gzip [distcheck] FAIL: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck]
and so the final result of the "make check" operation will fail too.
In my opinion the unzip should be skipped if no unzip is available.
+have_decompressor () +{ + test $# -eq 1 || fatal_ "have_decompressor(): bad usage" + case $1 in + zip) + # 2013-08-24 matfanjol + # gzip, lzip, bzip2, tar, xz can compress and decompress. + # zip is able just to compress. To decompress you need unzip. + # Here I check if unzip is available. + # I checked "Oracle Solaris 11" and "Fedora 19": "unzip -v" is + # OK, "unzip --version" is NOT ok. + if unzip -v </dev/null >&2; then + return 0 + else + return 1 + fi + ;; + *) + # 2013-08-24 matfanjol + # gzip, lzip, bzip2, tar, xz can compress and decompress. + return 0 + ;; + esac + fatal_ "have_decompressor(): dead code reached" +} + + all_compression_formats='gzip lzip xz bzip2 zip'
all_compressors=$( @@ -165,6 +192,20 @@ fi }
+command_ok_if_have_compressor_and_decompressor () +{ + if have_compressor "$compressor"; then + if have_decompressor "$compressor"; then + command_ok_ "$@" + else + skip_ -r "decompressor for '$compressor' not available" "$1" + fi + else + skip_ -r "'$compressor' not available" "$1" + fi +} + + can_compress () { test $# -eq 2 || fatal_ "can_compress: bad number of arguments" @@ -276,8 +317,8 @@ command_ok_ "$desc [autoconf]" $AUTOCONF command_ok_ "$desc [configure]" ./configure command_ok_ "$desc [ark-name]" $MAKE check-ark-name - command_ok_if_have_compressor "$desc [distcheck]" $MAKE distcheck - command_ok_if_have_compressor "$desc [ark-exists]" $MAKE check-ark-exists + command_ok_if_have_compressor_and_decompressor "$desc [distcheck]" $MAKE distcheck + command_ok_if_have_compressor_and_decompressor "$desc [ark-exists]" $MAKE check-ark-exists command_ok_ "$desc [no .tar.gz]" $MAKE check-no-tar-gz
unset desc == PATCH END ====================================================
Bye Andrea matfanjol http://matfanjol.users.sourceforge.net/
[Prev in Thread]
Current Thread
[Next in Thread]
bug#15181: t/dist-formats.tap: zip + unzip,
Andrea Urbani<=