Good morning, 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. == PATCH BEGIN ==================================================== --- t/dist-formats.tap.orig 2013-06-19 11:29:50.000000000 +0200 +++ t/dist-formats.tap 2013-08-24 07:12:42.000000000 +0200 @@ -97,6 +97,33 @@ fatal_ "have_compressor(): dead code reached" } +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/