diff options
author | wiz <wiz> | 2010-03-03 16:27:57 +0000 |
---|---|---|
committer | wiz <wiz> | 2010-03-03 16:27:57 +0000 |
commit | aee182a5afe684a0129c8c554d08d65cbb42bea1 (patch) | |
tree | a9ddefb0ab03e44f991e8c124bdf60a347f0aa59 /archivers | |
parent | d934dd5fcaa9a5aa5caf494343c1860e01eed2a7 (diff) | |
download | pkgsrc-aee182a5afe684a0129c8c554d08d65cbb42bea1.tar.gz |
Update to 6.0:
New features in UnZip 6.0, released 20 April 2009:
* Support PKWARE ZIP64 extensions, allowing Zip archives and Zip
archive entries larger than 4 GiBytes and more than 65536 entries
within a single Zip archive. This support is currently only
available for Unix, OpenVMS and Win32/Win64.
* Support for bzip2 compression method.
* Support for UTF-8 encoded entry names, both through PKWARE's
"General Purpose Flags Bit 11" indicator and Info-ZIP's new "up"
unicode path extra field. (Currently, on Windows the UTF-8
handling is limited to the character subset contained in the
configured non-unicode "system code page".)
* Added "wrong implementation used" warning to error messages of
the MSDOS port when used under Win32, in an attempt to reduce
false bug reports.
* Fixed "Time of Creation/Time of Use" vulnerability when setting
attributes of extracted files, for Unix and Unix-like ports.
* Fixed memory leak when processing invalid deflated data.
* Fixed long-standing bug in unshrink (partial_clear), added
boundary checks against invalid compressed data.
* On Unix, keep inherited SGID attribute bit for extracted
directories unless restoration of owner/group id or SUID/SGID/Tacky
attributes was requested.
* On Unix, allow extracted filenames to contain embedded control
characters when explicitly requested by specifying the new command
line option "-^".
* On Unix, support restoration of symbolic link attributes.
* On Unix, support restoration of 32-bit UID/GID data using the
new "ux" IZUNIX3 extra field introduced with Zip 3.0.
* Support for ODS5 extended filename syntax on new OpenVMS systems.
* Support symbolic links zipped up on VMS.
* On VMS (only 8.x or better), support symbolic link creation.
* On VMS, support option to create converted text files in
Stream_LF format.
* New -D option to suppress restoration of timestamps for extracted
directory entries (on those ports that support setting of directory
timestamps). By specifying "-DD", this new option also allows
to suppress timestamp restoration for ALL extracted files on
all UnZip ports which support restoration of timestamps. On
VMS, the default behaviour is now to skip restoration of
directory timestamps; here, "--D" restores ALL timestamps,
"-D" restores none.
* On OS/2, Win32, and Unix, the (previously optional) feature
UNIXBACKUP to allow saving backup copies of overwritten files on
extraction is now enabled by default.
For the UnZip 6.0 release, we want to give special credit to Myles
Bennet, who started the job of supporting ZIP64 extensions and
Large-File (> 2GiB) and provided a first (alpha-state) port.
Diffstat (limited to 'archivers')
-rw-r--r-- | archivers/unzip/Makefile | 14 | ||||
-rw-r--r-- | archivers/unzip/PLIST | 4 | ||||
-rw-r--r-- | archivers/unzip/distinfo | 14 | ||||
-rw-r--r-- | archivers/unzip/patches/patch-ab | 10 | ||||
-rw-r--r-- | archivers/unzip/patches/patch-ac | 88 | ||||
-rw-r--r-- | archivers/unzip/patches/patch-ad | 27 | ||||
-rw-r--r-- | archivers/unzip/patches/patch-ae | 52 |
7 files changed, 44 insertions, 165 deletions
diff --git a/archivers/unzip/Makefile b/archivers/unzip/Makefile index 1ab1905fa78..a25bca87587 100644 --- a/archivers/unzip/Makefile +++ b/archivers/unzip/Makefile @@ -1,8 +1,7 @@ -# $NetBSD: Makefile,v 1.72 2010/01/21 16:32:21 heinz Exp $ +# $NetBSD: Makefile,v 1.73 2010/03/03 16:27:57 wiz Exp $ -DISTNAME= unzip552 -PKGNAME= unzip-5.52 -PKGREVISION= 4 +DISTNAME= unzip60 +PKGNAME= unzip-6.0 CATEGORIES= archivers MASTER_SITES= ftp://ftp.info-zip.org/pub/infozip/src/ EXTRACT_SUFX= .tgz @@ -15,8 +14,6 @@ LICENSE= info-zip PKG_INSTALLATION_TYPES= overwrite pkgviews PKG_DESTDIR_SUPPORT= user-destdir -DIST_SUBDIR= ${PKGNAME_NOREV} # Remove on next update. -WRKSRC= ${WRKDIR}/${PKGNAME_NOREV} USE_TOOLS+= gmake CONFLICTS= fcrackzip<1.0nb1 @@ -32,7 +29,7 @@ CFLAGS+= -I. -DUNIX -Dunix -DUSE_UNSHRINK MAKE_FLAGS+= CF=${CPPFLAGS:Q}\ ${CFLAGS:Q} MAKE_FLAGS+= LF2=${_STRIPFLAG_CC:Q}\ ${LDFLAGS:Q}\ -lz -INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/doc +INSTALLATION_DIRS= bin ${PKGMANDIR}/man1 share/doc/unzip TEST_TARGET= check @@ -42,11 +39,10 @@ do-install: cd ${WRKSRC}/unix && ${INSTALL_SCRIPT} zipgrep ${DESTDIR}${PREFIX}/bin cd ${WRKSRC}/man && ${INSTALL_MAN} funzip.1 unzip.1 unzipsfx.1 \ zipgrep.1 zipinfo.1 ${DESTDIR}${PREFIX}/${PKGMANDIR}/man1 - ${INSTALL_DATA_DIR} ${DESTDIR}${PREFIX}/share/doc/unzip cd ${WRKSRC} && ${INSTALL_DATA} BUGS LICENSE README WHERE \ ${DESTDIR}${PREFIX}/share/doc/unzip cd ${WRKSRC} && ${INSTALL_DATA} COPYING.OLD \ - ${DESTDIR}${PREFIX}/share/doc/unzip/COPYING + ${DESTDIR}${PREFIX}/share/doc/unzip .include "../../devel/zlib/buildlink3.mk" .include "../../mk/bsd.pkg.mk" diff --git a/archivers/unzip/PLIST b/archivers/unzip/PLIST index d6a34f477bf..5b88f720046 100644 --- a/archivers/unzip/PLIST +++ b/archivers/unzip/PLIST @@ -1,4 +1,4 @@ -@comment $NetBSD: PLIST,v 1.3 2009/06/14 17:28:18 joerg Exp $ +@comment $NetBSD: PLIST,v 1.4 2010/03/03 16:27:57 wiz Exp $ bin/funzip bin/unzip bin/unzipsfx @@ -10,7 +10,7 @@ man/man1/unzipsfx.1 man/man1/zipgrep.1 man/man1/zipinfo.1 share/doc/unzip/BUGS -share/doc/unzip/COPYING +share/doc/unzip/COPYING.OLD share/doc/unzip/LICENSE share/doc/unzip/README share/doc/unzip/WHERE diff --git a/archivers/unzip/distinfo b/archivers/unzip/distinfo index 34e52075a2b..aceebca07f4 100644 --- a/archivers/unzip/distinfo +++ b/archivers/unzip/distinfo @@ -1,10 +1,8 @@ -$NetBSD: distinfo,v 1.18 2008/03/23 13:03:13 tron Exp $ +$NetBSD: distinfo,v 1.19 2010/03/03 16:27:57 wiz Exp $ -SHA1 (unzip-5.52/unzip552.tgz) = 1831bd59b9e607a69052f83b263384895e2d4a19 -RMD160 (unzip-5.52/unzip552.tgz) = b749b0923bc4cceaa6f937aef688e9713a84328c -Size (unzip-5.52/unzip552.tgz) = 1140291 bytes +SHA1 (unzip60.tgz) = abf7de8a4018a983590ed6f5cbd990d4740f8a22 +RMD160 (unzip60.tgz) = 48af66606e9472e45fbb94bc4e285da23d1b89ba +Size (unzip60.tgz) = 1376845 bytes SHA1 (patch-aa) = de66b7b5c45904167e8596ce5235d957c2df4d2a -SHA1 (patch-ab) = dd426fdf4b774bd73f4ee46da470ffa3c2cf6513 -SHA1 (patch-ac) = ada9059d9b3384396bbf6437f55fa40f2f6c0c73 -SHA1 (patch-ad) = a0ad66bc1f13dd1ec9f9d7c9eb5b49ca3edb09be -SHA1 (patch-ae) = b6f50523a0020b57e3385731dd0c7b447b1a9242 +SHA1 (patch-ab) = 3b15e24ac04af371b2b424251582b5434e14a91f +SHA1 (patch-ac) = 7891fad33d07746d1067e373bf955086489e0fee diff --git a/archivers/unzip/patches/patch-ab b/archivers/unzip/patches/patch-ab index 494b398008d..60a3deff651 100644 --- a/archivers/unzip/patches/patch-ab +++ b/archivers/unzip/patches/patch-ab @@ -1,6 +1,6 @@ -$NetBSD: patch-ab,v 1.5 2004/01/22 12:25:59 grant Exp $ +$NetBSD: patch-ab,v 1.6 2010/03/03 16:27:57 wiz Exp $ ---- unix/Makefile.orig 2002-02-17 04:00:38.000000000 +1100 +--- unix/Makefile.orig 2009-01-18 22:41:18.000000000 +0000 +++ unix/Makefile @@ -42,7 +42,7 @@ # such as -DDOSWILD). @@ -10,8 +10,8 @@ $NetBSD: patch-ab,v 1.5 2004/01/22 12:25:59 grant Exp $ +#CC = cc# try using "gcc" target rather than changing this (CC and LD LD = $(CC)# must match, else "unresolved symbol: ___main" is possible) AS = as - LOC = $(LOCAL_UNZIP) -@@ -552,7 +552,7 @@ generic3: unix_make # third try if unkn + LOC = $(D_USE_BZ2) $(LOCAL_UNZIP) +@@ -580,7 +580,7 @@ generic_bz2: unix_make generic_zlib: unix_make @echo\ "This target assumes zlib (libz.a or libz.so.*) is already installed." @@ -20,7 +20,7 @@ $NetBSD: patch-ab,v 1.5 2004/01/22 12:25:59 grant Exp $ # Generic GNU C shared library. This is an example of how to compile UnZip as # a shared library. (Doing so as a static library would be similar.) See also -@@ -613,7 +613,7 @@ vax: unzips # general-purpose VAX targe +@@ -651,7 +651,7 @@ vax: unzips # general-purpose VAX targe bsd: _bsd # generic BSD (BSD 4.2 & Ultrix handled in unzip.h) _bsd: unix_make diff --git a/archivers/unzip/patches/patch-ac b/archivers/unzip/patches/patch-ac index 062be0cbd3e..30e9d46fc0b 100644 --- a/archivers/unzip/patches/patch-ac +++ b/archivers/unzip/patches/patch-ac @@ -1,64 +1,28 @@ -$NetBSD: patch-ac,v 1.1 2005/08/04 14:20:35 tron Exp $ +$NetBSD: patch-ac,v 1.2 2010/03/03 16:27:57 wiz Exp $ ---- unix/unix.c.orig 2005-02-26 19:43:42.000000000 +0000 -+++ unix/unix.c 2005-08-04 15:15:17.000000000 +0100 -@@ -1042,8 +1042,6 @@ - ush z_uidgid[2]; - int have_uidgid_flg; - -- fclose(G.outfile); -- - /*--------------------------------------------------------------------------- - If symbolic links are supported, allocate storage for a symlink control - structure, put the uncompressed "data" and other required info in it, and -@@ -1059,6 +1057,8 @@ - strlen(G.filename); - slinkentry *slnk_entry; - -+ fclose(G.outfile); -+ - if ((unsigned)slnk_entrysize < ucsize) { - Info(slide, 0x201, ((char *)slide, - "warning: symbolic link (%s) failed: mem alloc overflow\n", -@@ -1107,6 +1107,11 @@ - } - #endif /* SYMLINKS */ - -+#ifndef NO_CHMOD -+ if (fchmod(fileno(G.outfile), filtattr(__G__ G.pInfo->file_attr))) -+ perror("chmod (file attributes) error"); +--- inflate.c.orig 2008-07-30 01:31:08.000000000 +0000 ++++ inflate.c +@@ -473,7 +473,11 @@ int UZinflate(__G__ is_defl64) + retval = 2; + } else { + /* output write failure */ ++#ifdef FUNZIP ++ retval = PK_DISK; ++#else + retval = (G.disk_full != 0 ? PK_DISK : IZ_CTRLC); +#endif -+ - #ifdef QLZIP - if (G.extra_field) { - static void qlfix OF((__GPRO__ uch *ef_ptr, unsigned ef_len)); -@@ -1120,7 +1125,7 @@ - /* if -X option was specified and we have UID/GID info, restore it */ - if (have_uidgid_flg) { - TTrace((stderr, "close_outfile: restoring Unix UID/GID info\n")); -- if (chown(G.filename, (uid_t)z_uidgid[0], (gid_t)z_uidgid[1])) -+ if (fchown(fileno(G.outfile), (uid_t)z_uidgid[0], (gid_t)z_uidgid[1])) - { - if (uO.qflag) - Info(slide, 0x201, ((char *)slide, -@@ -1133,6 +1138,8 @@ - } - } - -+ fclose(G.outfile); -+ - /* set the file's access and modification times */ - if (utime(G.filename, &(zt.t2))) { - #ifdef AOS_VS -@@ -1156,11 +1163,6 @@ - zipfile. - ---------------------------------------------------------------------------*/ - --#ifndef NO_CHMOD -- if (chmod(G.filename, filtattr(__G__ G.pInfo->file_attr))) -- perror("chmod (file attributes) error"); --#endif -- - } /* end function close_outfile() */ - - #endif /* !MTS */ + } + } else { + Trace((stderr, "oops! (inflateBack9() err = %d)\n", err)); +@@ -538,7 +542,11 @@ int UZinflate(__G__ is_defl64) + retval = 2; + } else { + /* output write failure */ ++#ifdef FUNZIP ++ retval = PK_DISK; ++#else + retval = (G.disk_full != 0 ? PK_DISK : IZ_CTRLC); ++#endif + } + } else { + Trace((stderr, "oops! (inflateBack() err = %d)\n", err)); diff --git a/archivers/unzip/patches/patch-ad b/archivers/unzip/patches/patch-ad deleted file mode 100644 index 604b13444cd..00000000000 --- a/archivers/unzip/patches/patch-ad +++ /dev/null @@ -1,27 +0,0 @@ -$NetBSD: patch-ad,v 1.1 2006/11/03 07:53:55 rillig Exp $ - -unzipsfx does not need libz, so a special compile rule is needed for it. - ---- unix/Makefile.orig Mon Oct 30 22:45:35 2006 -+++ unix/Makefile Mon Oct 30 22:48:02 2006 -@@ -87,7 +87,7 @@ - OBJS = $(OBJS1) $(OBJS2) $(OBJS3) $M$O - LOBJS = $(OBJS) - OBJSDLL = $(OBJS:.o=.pic.o) api.pic.o --OBJX = unzipsfx$O $(CRC32)$O crctab_$O crypt_$O extract_$O fileio_$O \ -+OBJX = unzipsfx$O crc32_$O crctab_$O crypt_$O extract_$O fileio_$O \ - globals_$O inflate_$O match_$O process_$O ttyio_$O $M_$O - LOBJX = $(OBJX) - OBJF = funzip$O $(CRC32)$O cryptf$O globalsf$O inflatef$O ttyiof$O -@@ -306,6 +306,11 @@ - -$(CP) unzip.c unzipsfx.c - $(CC) -c $(CF) -DSFX unzipsfx.c - $(RM) unzipsfx.c -+ -+crc32_$O: crc32.c $(UNZIP_H) zip.h # unzipsfx only -+ -$(CP) crc32.c crc32_.c -+ $(CC) -c $(CF) -DSFX crc32_.c -+ $(RM) crc32_.c - - crctab_$O: crctab.c $(UNZIP_H) zip.h - -$(CP) crctab.c crctab_.c diff --git a/archivers/unzip/patches/patch-ae b/archivers/unzip/patches/patch-ae deleted file mode 100644 index 42d7502fe36..00000000000 --- a/archivers/unzip/patches/patch-ae +++ /dev/null @@ -1,52 +0,0 @@ -$NetBSD: patch-ae,v 1.1 2008/03/23 13:03:13 tron Exp $ - ---- inflate.c.orig 2005-02-27 06:08:46.000000000 +0000 -+++ inflate.c 2008-03-23 12:58:42.000000000 +0000 -@@ -983,6 +983,7 @@ - unsigned l; /* last length */ - unsigned m; /* mask for bit lengths table */ - unsigned n; /* number of lengths to get */ -+ struct huft *tlp; - struct huft *tl; /* literal/length code table */ - struct huft *td; /* distance code table */ - unsigned bl; /* lookup bits for tl */ -@@ -996,6 +997,8 @@ - int retval = 0; /* error code returned: initialized to "no error" */ - - -+ td = tlp = tl = (struct huft *)NULL; -+ - /* make local bit buffer */ - Trace((stderr, "\ndynamic block")); - b = G.bb; -@@ -1047,9 +1050,9 @@ - while (i < n) - { - NEEDBITS(bl) -- j = (td = tl + ((unsigned)b & m))->b; -+ j = (tlp = tl + ((unsigned)b & m))->b; - DUMPBITS(j) -- j = td->v.n; -+ j = tlp->v.n; - if (j < 16) /* length of code in bits (0..15) */ - ll[i++] = l = j; /* save last length in l */ - else if (j == 16) /* repeat last length 3 to 6 times */ -@@ -1141,6 +1144,7 @@ - huft_free(td); - } - huft_free(tl); -+ - return retval; - } - -@@ -1149,8 +1153,8 @@ - - cleanup_and_exit: - /* free the decoding tables, return */ -- huft_free(tl); -- huft_free(td); -+ if (tl) huft_free(tl); -+ if (td) huft_free(td); - return retval; - } - |