If zip or unzip is not installed: ============================================================================ Testsuite summary for GNU Automake 1.14.1 ============================================================================ # TOTAL: 2981 # PASS: 2835 # SKIP: 106 # XFAIL: 40 # FAIL: 0 # XPASS: 0 # ERROR: 0 ============================================================================ If both zip and unzip are installed (see 'have_compressor ()' from t/dist-formats.tap): FAIL: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck] ... ============================================================================ Testsuite summary for GNU Automake 1.14.1 ============================================================================ # TOTAL: 2981 # PASS: 2837 # SKIP: 103 # XFAIL: 40 # FAIL: 1 # XPASS: 0 # ERROR: 0 ============================================================================ from work/automake-1.14.1/test-suite.log: Archive: nogzip-zip-1.0.zip creating: nogzip-zip-1.0/ inflating: nogzip-zip-1.0/missing inflating: nogzip-zip-1.0/install-sh inflating: nogzip-zip-1.0/aclocal.m4 inflating: nogzip-zip-1.0/configure.ac inflating: nogzip-zip-1.0/configure inflating: nogzip-zip-1.0/Makefile.am inflating: nogzip-zip-1.0/Makefile.in chmod -R a-w nogzip-zip-1.0 chmod u+w nogzip-zip-1.0 mkdir nogzip-zip-1.0/_build nogzip-zip-1.0/_inst chmod a-w nogzip-zip-1.0 test -d nogzip-zip-1.0/_build || exit 0; \ dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd nogzip-zip-1.0/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \ && am__cwd=`pwd` \ && CDPATH="${ZSH_VERSION+.}:" && cd nogzip-zip-1.0/_build \ && ../configure \ \ \ --srcdir=.. --prefix="$dc_install_base" \ && make \ && make dvi \ && make check \ && make install \ && make installcheck \ && make uninstall \ && make distuninstallcheck_dir="$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$dc_destdir") \ && make DESTDIR="$dc_destdir" install \ && make DESTDIR="$dc_destdir" uninstall \ && make DESTDIR="$dc_destdir" \ distuninstallcheck_dir="$dc_destdir" distuninstallcheck; \ } || { rm -rf "$dc_destdir"; exit 1; }) \ && rm -rf "$dc_destdir" \ && make dist \ && rm -rf nogzip-zip-1.0.zip \ && make distcleancheck \ && cd "$am__cwd" \ || exit 1 /bin/bash: line 8: ../configure: Permission denied Makefile:327: recipe for target 'distcheck' failed make: *** [distcheck] Error 1 + 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] # ls -lad ./t/dist-formats.dir/nogzip-zip/{,nogzip-zip-1.0/}{,configure} drwxr-xr-x 4 portage portage 300 Jun 11 14:50 ./t/dist-formats.dir/nogzip-zip/ -rwxr-xr-x 1 portage portage 104057 Jun 11 14:50 ./t/dist-formats.dir/nogzip-zip/configure dr-xr-xr-x 4 portage portage 220 Jun 11 14:50 ./t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0/ -r--r--r-- 1 portage portage 104057 Jun 11 14:50 ./t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0/configure Obviously the problem is in wrong permissions.
Same failure for automake-1.15.1-r2 and automake-1.16.
Please attach complete build.log and `emerge --info` output. > PASS: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck] Works for me and automake-1.16.
Created attachment 521218 [details] build.log (automake-1.16-r1) (In reply to Thomas Deutschmann from comment #2) > Please attach complete build.log and `emerge --info` output. This is the build.log for automake-1.16-r1. > > PASS: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck] > Works for me and automake-1.16. FAIL: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck] # emerge --info '=sys-devel/automake-1.16-r1::gentoo' Portage 2.3.24 (python 3.5.4-final-0, default/linux/amd64/17.0/no-multilib/hardened, gcc-7.3.0, glibc-2.26-r6, 4.15.6 x86_64) ================================================================= System Settings ================================================================= System uname: Linux-4.15.6-x86_64-Intel-R-_Core-TM-_i7-3720QM_CPU_@_2.60GHz-with-gentoo-2.4.1 KiB Mem: 16388112 total, 12751216 free KiB Swap: 17825788 total, 17825788 free Timestamp of repository gentoo: Tue, 27 Feb 2018 01:30:01 +0000 Head commit of repository gentoo: 309af559ed7f4c2de32538fd1cf7df79796b9bae sh bash 4.4_p19 ld GNU ld (Gentoo 2.30 p1) 2.30.0 app-shells/bash: 4.4_p19::gentoo dev-java/java-config: 2.2.0-r3::gentoo dev-lang/perl: 5.26.1-r2::gentoo dev-lang/python: 2.7.14-r1::gentoo, 3.5.4-r1::gentoo, 3.6.4::gentoo dev-util/cmake: 3.10.2::gentoo dev-util/pkgconfig: 0.29.2::gentoo sys-apps/baselayout: 2.4.1-r2::gentoo sys-apps/openrc: 0.34.11::gentoo sys-apps/sandbox: 2.13::gentoo sys-devel/autoconf: 2.13::gentoo, 2.69-r4::gentoo sys-devel/automake: 1.15.1-r2::gentoo sys-devel/binutils: 2.30::gentoo sys-devel/gcc: 6.4.0-r1::gentoo, 7.3.0::gentoo sys-devel/gcc-config: 1.9.1::gentoo sys-devel/libtool: 2.4.6-r4::gentoo sys-devel/make: 4.2.1-r2::gentoo sys-kernel/linux-headers: 4.15::gentoo (virtual/os-headers) sys-libs/glibc: 2.26-r6::gentoo Repositories: gentoo location: /usr/portage sync-type: rsync sync-uri: rsync://rsync.gentoo.org/gentoo-portage priority: -1000 sync-rsync-verify-metamanifest: yes sync-rsync-extra-opts: local location: /var/lib/portage-local/local masters: gentoo priority: 0 testing location: /var/lib/portage-local/testing masters: gentoo priority: 1 ACCEPT_KEYWORDS="amd64 ~amd64" ACCEPT_LICENSE="* -@EULA" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=native -mtune=native -O2 -pipe" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c" CXXFLAGS="-march=native -mtune=native -O2 -pipe" DISTDIR="/usr/portage/distfiles" EMERGE_DEFAULT_OPTS="--with-bdeps=y" FCFLAGS="-O2 -pipe" FEATURES="assume-digests binpkg-logs cgroup collision-protect config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch preserve-libs protect-owned sandbox sfperms strict test unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr" FFLAGS="-O2 -pipe" GENTOO_MIRRORS="http://distfiles.gentoo.org" LDFLAGS="-Wl,-O1 -Wl,--as-needed -Wl,--hash-style=gnu" LINGUAS="" MAKEOPTS="-j8" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git" PORTAGE_TMPDIR="/var/tmp" USE="X a52 acl acpi alsa amd64 avx bzip2 cairo caps cdda cddb cdparanoia crypt cups cxx dbus dri dts dvd fam ffmpeg fftw flac fontconfig gif gimp gmp gnutls gtk hardened iconv icu idn ipv6 jpeg lame lcms libnotify lzma mad matroska mmap mmx mmxext mp3 mpeg ncurses networkmanager nptl ogg opengl openmp pam pcre pie png policykit ppds readline sasl sdl seccomp sse sse2 sse3 sse4 sse4_1 sse4_2 ssl ssp ssse3 startup-notification svg theora threads tiff truetype udev unicode upower vaapi vorbis wayland x264 xattr xcb xinerama xml xtpax xv xvid zlib" ABI_X86="64" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx f16c mmx mmxext popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="pc" INPUT_DEVICES="evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-6 php7-0" POSTGRES_TARGETS="postgres9_5" PYTHON_SINGLE_TARGET="python3_5" PYTHON_TARGETS="python2_7 python3_5" RUBY_TARGETS="ruby22 ruby23" USERLAND="GNU" VIDEO_CARDS="i965 intel nouveau" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account" Unset: CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LANG, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS # emerge -pqv '=sys-devel/automake-1.16-r1::gentoo' [ebuild NS ] sys-devel/automake-1.16-r1 [1.15.1-r2] USE="{test}" (In reply to Nikoli from comment #0) > If both zip and unzip are installed (see 'have_compressor ()' from > t/dist-formats.tap): > FAIL: t/dist-formats.tap 45 - ac=dist-zip,no-dist-gzip [distcheck] I have also installed both packages: # emerge -pqv zip unzip [ebuild R ] app-arch/unzip-6.0_p21-r2 USE="bzip2 natspec unicode" [ebuild R ] app-arch/zip-3.0-r3 USE="bzip2 crypt natspec unicode"
Created attachment 521222 [details] test-suite.log (automake-1.16-r1) FAIL: t/dist-formats ==================== [...] PASS: t/dist-formats.tap 44 - ac=dist-zip,no-dist-gzip [ark-name] + command_ok_if_have_compressor 'ac=dist-zip,no-dist-gzip [distcheck]' make distcheck + have_compressor zip + case " $missing_compressors " in + : + command_ok_ 'ac=dist-zip,no-dist-gzip [distcheck]' make distcheck + tap_directive_= + tap_reason_= + test 3 -gt 0 + tap_description_='ac=dist-zip,no-dist-gzip [distcheck]' + shift + test 2 -gt 0 + case $1 in + break + tap_result_=ok + make distcheck make dist-zip am__post_remove_distdir='@:' make[1]: Entering directory '/var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip' make distdir-am make[2]: Entering directory '/var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip' if test -d "nogzip-zip-1.0"; then find "nogzip-zip-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "nogzip-zip-1.0" || { sleep 5 && rm -rf "nogzip-zip-1.0"; }; else :; fi test -d "nogzip-zip-1.0" || mkdir "nogzip-zip-1.0" test -n "" \ || find "nogzip-zip-1.0" -type d ! -perm -755 \ -exec chmod u+rwx,go+rx {} \; -o \ ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \ ! -type d ! -perm -400 -exec chmod a+r {} \; -o \ ! -type d ! -perm -444 -exec /bin/sh /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/install-sh -c -m a+r {} {} \; \ || chmod -R a+r "nogzip-zip-1.0" make[2]: Leaving directory '/var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip' rm -f nogzip-zip-1.0.zip zip -rq nogzip-zip-1.0.zip nogzip-zip-1.0 make[1]: Leaving directory '/var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip' if test -d "nogzip-zip-1.0"; then find "nogzip-zip-1.0" -type d ! -perm -200 -exec chmod u+w {} ';' && rm -rf "nogzip-zip-1.0" || { sleep 5 && rm -rf "nogzip-zip-1.0"; }; else :; fi case 'nogzip-zip-1.0.zip' in \ *.tar.gz*) \ eval GZIP= gzip --best -dc nogzip-zip-1.0.tar.gz | ${TAR-tar} xf - ;;\ *.tar.bz2*) \ bzip2 -dc nogzip-zip-1.0.tar.bz2 | ${TAR-tar} xf - ;;\ *.tar.lz*) \ lzip -dc nogzip-zip-1.0.tar.lz | ${TAR-tar} xf - ;;\ *.tar.xz*) \ xz -dc nogzip-zip-1.0.tar.xz | ${TAR-tar} xf - ;;\ *.tar.Z*) \ uncompress -c nogzip-zip-1.0.tar.Z | ${TAR-tar} xf - ;;\ *.shar.gz*) \ eval GZIP= gzip --best -dc nogzip-zip-1.0.shar.gz | unshar ;;\ *.zip*) \ unzip nogzip-zip-1.0.zip ;;\ esac Archive: nogzip-zip-1.0.zip creating: nogzip-zip-1.0/ inflating: nogzip-zip-1.0/missing inflating: nogzip-zip-1.0/install-sh inflating: nogzip-zip-1.0/Makefile.in inflating: nogzip-zip-1.0/aclocal.m4 inflating: nogzip-zip-1.0/configure.ac inflating: nogzip-zip-1.0/configure inflating: nogzip-zip-1.0/Makefile.am chmod -R a-w nogzip-zip-1.0 chmod u+w nogzip-zip-1.0 mkdir nogzip-zip-1.0/_build nogzip-zip-1.0/_build/sub nogzip-zip-1.0/_inst chmod a-w nogzip-zip-1.0 test -d nogzip-zip-1.0/_build || exit 0; \ dc_install_base=`CDPATH="${ZSH_VERSION+.}:" && cd nogzip-zip-1.0/_inst && pwd | sed -e 's,^[^:\\/]:[\\/],/,'` \ && dc_destdir="${TMPDIR-/tmp}/am-dc-$$/" \ && am__cwd=`pwd` \ && CDPATH="${ZSH_VERSION+.}:" && cd nogzip-zip-1.0/_build/sub \ && ../../configure \ \ \ --srcdir=../.. --prefix="$dc_install_base" \ && make \ && make dvi \ && make check \ && make install \ && make installcheck \ && make uninstall \ && make distuninstallcheck_dir="$dc_install_base" \ distuninstallcheck \ && chmod -R a-w "$dc_install_base" \ && ({ \ (cd ../.. && umask 077 && mkdir "$dc_destdir") \ && make DESTDIR="$dc_destdir" install \ && make DESTDIR="$dc_destdir" uninstall \ && make DESTDIR="$dc_destdir" \ distuninstallcheck_dir="$dc_destdir" distuninstallcheck; \ } || { rm -rf "$dc_destdir"; exit 1; }) \ && rm -rf "$dc_destdir" \ && make dist \ && rm -rf nogzip-zip-1.0.zip \ && make distcleancheck \ && cd "$am__cwd" \ || exit 1 /bin/sh: line 8: ../../configure: Permission denied make: *** [Makefile:344: distcheck] Error 1 + 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]
When this test is failing you should end up with > /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0.zip file. Now list its content/permission: > $ unzip -Z /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0.zip > Archive: /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0.zip > Zip file size: 54584 bytes, number of entries: 8 > drwxr-xr-x 3.0 unx 0 bx stor 18-Feb-27 13:02 nogzip-zip-1.0/ > -rw-r--r-- 3.0 unx 27310 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/aclocal.m4 > -rw-r--r-- 3.0 unx 164 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/Makefile.am > -rwxr-xr-x 3.0 unx 15279 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/install-sh > -rwxr-xr-x 3.0 unx 104098 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/configure > -rw-r--r-- 3.0 unx 16904 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/Makefile.in > -rwxr-xr-x 3.0 unx 6878 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/missing > -rw-r--r-- 3.0 unx 109 tx defN 18-Feb-27 13:02 nogzip-zip-1.0/configure.ac > 8 files, 170742 bytes uncompressed, 53158 bytes compressed: 68.9% Like you can see, *my* ZIP file contains configure with executable bit set. Now, please show us yours. If your ZIP file also contains an executable configure file, please show us the mount option of the mount point, where the file will be extracted.
In my ZIP file, the configure is not marked as executable. > $ unzip -Z /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0.zip > Archive: /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/nogzip-zip/nogzip-zip-1.0.zip > Zip file size: 54584 bytes, number of entries: 8 > drwx--- 2.0 fat 0 bx stor 18-Feb-27 15:50 nogzip-zip-1.0/ > -rw---- 2.0 fat 6878 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/missing > -rw---- 2.0 fat 15279 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/install-sh > -rw---- 2.0 fat 16904 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/Makefile.in > -rw---- 2.0 fat 27310 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/aclocal.m4 > -rw---- 2.0 fat 109 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/configure.ac > -rw---- 2.0 fat 104098 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/configure > -rw---- 2.0 fat 164 tx defN 18-Feb-27 15:50 nogzip-zip-1.0/Makefile.am > 8 files, 170742 bytes uncompressed, 53158 bytes compressed: 68.9% The build and tests run in a tmpfs mounted as follows > tmpfs /var/tmp/portagetmpfs defaults,noatime,mode=1777 0 0 > tmpfs on /var/tmp/portage type tmpfs (rw,noatime)
The build and tests run in a tmpfs mounted as follows > tmpfs /var/tmp/portage tmpfs defaults,noatime,mode=1777 0 0 > $ mount > tmpfs on /var/tmp/portage type tmpfs (rw,noatime)
Please show me the output of > tree -pug /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/defaults
> # tree -pug /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/defaults > /var/tmp/portage/sys-devel/automake-1.16-r1/work/automake-1.16/t/dist-formats.dir/defaults > ├── [-rw-r--r-- portage portage ] Makefile > ├── [-rw-r--r-- portage portage ] Makefile.am > ├── [-rw-r--r-- portage portage ] Makefile.in > ├── [-rw-r--r-- portage portage ] aclocal.m4 > ├── [drwxr-xr-x portage portage ] autom4te.cache > │ ├── [-rw-r--r-- portage portage ] output.0 > │ ├── [-rw-r--r-- portage portage ] requests > │ └── [-rw-r--r-- portage portage ] traces.0 > ├── [-rw-r--r-- portage portage ] config.log > ├── [-rwxr-xr-x portage portage ] config.status > ├── [-rwxr-xr-x portage portage ] configure > ├── [-rw-r--r-- portage portage ] configure.ac > ├── [-rw-r--r-- portage portage ] defaults-1.0.zip > ├── [-rwxr-xr-x portage portage ] install-sh > └── [-rwxr-xr-x portage portage ] missing > > 1 directory, 14 files
Interesting, please show us the output of > $ mkdir /tmp/zip-test > $ date > /tmp/zip-test/file.sh > $ chmod +x /tmp/zip-test/file.sh > $ zip -rq /tmp/zip-test.zip /tmp/zip-test/ > $ unzip -A /tmp/zip-test.zip > $ zip -v > $ unzip -v
> $ mkdir /tmp/zip-test > $ date > /tmp/zip-test/file.sh > $ chmod +x /tmp/zip-test/file.sh > $ zip -rq /tmp/zip-test.zip /tmp/zip-test/ > $ unzip -A /tmp/zip-test.zip > UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send > bug reports using http://www.info-zip.org/zip-bug.html; see README for details. > > Usage: unzip [-Z] [-opts[modifiers]] file[.zip] [list] [-x xlist] [-d exdir] > Default action is to extract files in list, except those in xlist, to exdir; > file[.zip] may be a wildcard. -Z => ZipInfo mode ("unzip -Z" for usage). > > -p extract files to pipe, no messages -l list files (short format) > -f freshen existing files, create none -t test compressed archive data > -u update files, create if necessary -z display archive comment only > -v list verbosely/show version info -T timestamp archive to latest > -x exclude files that follow (in xlist) -d extract files into exdir > modifiers: > -n never overwrite existing files -q quiet mode (-qq => quieter) > -o overwrite files WITHOUT prompting -a auto-convert any text files > -j junk paths (do not make directories) -aa treat ALL files as text > -U use escapes for all non-ASCII Unicode -UU ignore any Unicode fields > -C match filenames case-insensitively -L make (some) names lowercase > -X restore UID/GID info -V retain VMS version numbers > -K keep setuid/setgid/tacky permissions -M pipe through "more" pager > -O CHARSET specify a character encoding for DOS, Windows and OS/2 archives > -I CHARSET specify a character encoding for UNIX and other archives > See "unzip -hh" or unzip.txt for more help. Examples: > unzip data1 -x joe => extract all files except joe from zipfile data1.zip > unzip -p foo | more => send contents of foo.zip via pipe into program more > unzip -fo foo ReadMe => quietly replace existing ReadMe if archive file newer > $ zip -v > Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license. > This is Zip 3.0 (July 5th 2008), by Info-ZIP. > Currently maintained by E. Gordon. Please send bug reports to > the authors using the web page at www.info-zip.org; see README for details. > > Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip, > as of above date; see http://www.info-zip.org/ for other sites. > > Compiled with gcc 4.9.2 for Unix (Linux ELF) on Jan 28 2015. > > Zip special compilation options: > USE_EF_UT_TIME (store Universal Time) > BZIP2_SUPPORT (bzip2 library version 1.0.6, 6-Sept-2010) > bzip2 code and library copyright (c) Julian R Seward > (See the bzip2 license for terms of use) > SYMLINK_SUPPORT (symbolic links supported) > LARGE_FILE_SUPPORT (can read and write large files on file system) > ZIP64_SUPPORT (use Zip64 to store large files in archives) > UNICODE_SUPPORT (store and read UTF-8 Unicode paths) > STORE_UNIX_UIDs_GIDs (store UID/GID sizes/values using new extra field) > UIDGID_NOT_16BIT (old Unix 16-bit UID/GID extra field not used) > [encryption, version 2.91 of 05 Jan 2007] (modified for Zip 3) > > Encryption notice: > The encryption code of this program is not copyrighted and is > put in the public domain. It was originally written in Europe > and, to the best of our knowledge, can be freely distributed > in both source and object forms from any country, including > the USA under License Exception TSU of the U.S. Export > Administration Regulations (section 740.13(e)) of 6 June 2002. > > Zip environment options: > ZIP: [none] > ZIPOPT: [none] > $ unzip -v > UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send > bug reports using http://www.info-zip.org/zip-bug.html; see README for details. > > Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip/ ; > see ftp://ftp.info-zip.org/pub/infozip/UnZip.html for other sites. > > Compiled with gcc 7.2.0 for Unix (Linux ELF). > > UnZip special compilation options: > COPYRIGHT_CLEAN (PKZIP 0.9x unreducing method not supported) > SET_DIR_ATTRIB > SYMLINKS (symbolic links supported, if RTL and file system permit) > TIMESTAMP > UNIXBACKUP > USE_EF_UT_TIME > USE_UNSHRINK (PKZIP/Zip 1.x unshrinking method supported) > USE_DEFLATE64 (PKZIP 4.x Deflate64(tm) supported) > UNICODE_SUPPORT [wide-chars, char coding: UTF-8] (handle UTF-8 paths) > LARGE_FILE_SUPPORT (large files over 2 GiB supported) > ZIP64_SUPPORT (archives using Zip64 for large files supported) > USE_BZIP2 (PKZIP 4.6+, using bzip2 lib version 1.0.6, 6-Sept-2010) > VMS_TEXT_CONV > [decryption, version 2.11 of 05 Jan 2007] > > UnZip and ZipInfo environment options: > UNZIP: [none] > UNZIPOPT: [none] > ZIPINFO: [none] > ZIPINFOOPT: [none] > $
Sorry, please re-run the commands. Last line must be "unzip -Z" because I want to know if a manually created zip file contains permissions on your system or not. So please re-run: > $ mkdir /tmp/zip-test2 > $ date > /tmp/zip-test2/file.sh > $ chmod +x /tmp/zip-test2/file.sh > $ zip -rq /tmp/zip-test2.zip /tmp/zip-test2/ > $ unzip -Z /tmp/zip-test2.zip
> $ mkdir /tmp/zip-test2 > $ date > /tmp/zip-test2/file.sh > $ chmod +x /tmp/zip-test2/file.sh > $ zip -rq /tmp/zip-test2.zip /tmp/zip-test2/ > $ unzip -Z /tmp/zip-test2.zip > Archive: /tmp/zip-test2.zip > Zip file size: 377 bytes, number of entries: 2 > drwx--- 2.0 fat 0 bx stor 18-Feb-28 02:15 tmp/zip-test2/ > -rw---- 2.0 fat 29 tx stor 18-Feb-28 02:15 tmp/zip-test2/file.sh > 2 files, 29 bytes uncompressed, 29 bytes compressed: 0.0% Interestingly, it doesn't. The original file however does. > $ ls -l /tmp/zip-test2/file.sh > -rwxr-x--- 1 tka tka 29 Feb 28 02:15 /tmp/zip-test2/file.sh
OK, so you are having problems with app-arch/zip, not sys-devel/automake. Please rebuild app-arch/zip on your system and attach build.log.
...of course only when the problem isn't solved after a rebuild. Note that your zip is build with GCC 4.x, unzip is build with GCC 7.x... you should make sure that all packages/deps are build with the same toolchain.
Created attachment 521746 [details] build.log (zip-3.0-r3) The executable flag is still not preserved in the ZIP file: > $ mkdir /tmp/zip-test > $ date > /tmp/zip-test/file.sh > $ chmod +x /tmp/zip-test/file.sh > $ zip -rq /tmp/zip-test.zip /tmp/zip-test/ > $ unzip -Z /tmp/zip-test.zip > Archive: /tmp/zip-test.zip > Zip file size: 373 bytes, number of entries: 2 > drwx--- 2.0 fat 0 bx stor 18-Mar-01 20:45 tmp/zip-test/ > -rw---- 2.0 fat 29 tx stor 18-Mar-01 20:45 tmp/zip-test/file.sh > 2 files, 29 bytes uncompressed, 29 bytes compressed: 0.0% > $ zip -v > Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license. > This is Zip 3.0 (July 5th 2008), by Info-ZIP. > Currently maintained by E. Gordon. Please send bug reports to > the authors using the web page at www.info-zip.org; see README for details. > > Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip, > as of above date; see http://www.info-zip.org/ for other sites. > > Compiled with gcc 7.3.0 for Unix (Linux ELF) on Mar 1 2018. > > Zip special compilation options: > USE_EF_UT_TIME (store Universal Time) > BZIP2_SUPPORT (bzip2 library version 1.0.6, 6-Sept-2010) > bzip2 code and library copyright (c) Julian R Seward > (See the bzip2 license for terms of use) > SYMLINK_SUPPORT (symbolic links supported) > LARGE_FILE_SUPPORT (can read and write large files on file system) > ZIP64_SUPPORT (use Zip64 to store large files in archives) > UNICODE_SUPPORT (store and read UTF-8 Unicode paths) > STORE_UNIX_UIDs_GIDs (store UID/GID sizes/values using new extra field) > UIDGID_NOT_16BIT (old Unix 16-bit UID/GID extra field not used) > [encryption, version 2.91 of 05 Jan 2007] (modified for Zip 3) > > Encryption notice: > The encryption code of this program is not copyrighted and is > put in the public domain. It was originally written in Europe > and, to the best of our knowledge, can be freely distributed > in both source and object forms from any country, including > the USA under License Exception TSU of the U.S. Export > Administration Regulations (section 740.13(e)) of 6 June 2002. > > Zip environment options: > ZIP: [none] > ZIPOPT: [none] > $ unzip -v > UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send > bug reports using http://www.info-zip.org/zip-bug.html; see README for details. > > Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip/ ; > see ftp://ftp.info-zip.org/pub/infozip/UnZip.html for other sites. > > Compiled with gcc 7.3.0 for Unix (Linux ELF). > > UnZip special compilation options: > COPYRIGHT_CLEAN (PKZIP 0.9x unreducing method not supported) > SET_DIR_ATTRIB > SYMLINKS (symbolic links supported, if RTL and file system permit) > TIMESTAMP > UNIXBACKUP > USE_EF_UT_TIME > USE_UNSHRINK (PKZIP/Zip 1.x unshrinking method supported) > USE_DEFLATE64 (PKZIP 4.x Deflate64(tm) supported) > UNICODE_SUPPORT [wide-chars, char coding: UTF-8] (handle UTF-8 paths) > LARGE_FILE_SUPPORT (large files over 2 GiB supported) > ZIP64_SUPPORT (archives using Zip64 for large files supported) > USE_BZIP2 (PKZIP 4.6+, using bzip2 lib version 1.0.6, 6-Sept-2010) > VMS_TEXT_CONV > [decryption, version 2.11 of 05 Jan 2007] > > UnZip and ZipInfo environment options: > UNZIP: [none] > UNZIPOPT: [none] > ZIPINFO: [none] > ZIPINFOOPT: [none]
I can reproduce this behavior by enabling the "natspec" USE flag on app-arch/zip. This seems to cause zip to use version "2.0" and "fat" as the OS. With natspec disabled, I see version "3.0" and "unx", and the file mode is saved.
To resolve the automake test issue, I would propose adding a blocker to DEPEND: test? ( !!app-arch/zip[natspec(-)] )
How about fixing the natspec patch? Line https://gitweb.gentoo.org/repo/gentoo.git/tree/app-arch/zip/files/zip-3.0-natspec.patch#n83 forces zip to always create archives for Windows. I would suggest to only create archives for Windows when requested per command line.
(In reply to Thomas Deutschmann from comment #19) Sounds like a good idea, but I'm not sure why the patch forces that value, or what may break if we mess with it.