Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 Oct 2009 14:39:53 -0400 (EDT)
From:      David Sze <dsze@alumni.uwaterloo.ca>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/139971: Update port: archivers/unzip Update to 6.0
Message-ID:  <200910251839.n9PIdr2d045280@mail.firecow.net>
Resent-Message-ID: <200910251910.n9PJA10S082181@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         139971
>Category:       ports
>Synopsis:       Update port: archivers/unzip Update to 6.0
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sun Oct 25 19:10:00 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     David Sze
>Release:        FreeBSD 7.2-RELEASE-p4 amd64
>Organization:
>Environment:
System: FreeBSD host.example.com 7.2-RELEASE-p4 FreeBSD 7.2-RELEASE-p4 #2: Tue Oct 6 16:24:54 EDT 2009 root@host.example.com:/usr/obj/usr/src/sys/GENERIC amd64


	
>Description:
	The biggest new feature in 6.0 is ZIP64 support (http://www.info-zip.org/UnZip.html#Release);
	i.e. Support for archives and archive entries greater than 4GB, and support for more than 65536 entries in a single archive.

>How-To-Repeat:
	
>Fix:

	

--- unzip60.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	unzip
#	unzip/pkg-descr
#	unzip/Makefile
#	unzip/distinfo
#	unzip/files
#	unzip/files/patch-ab
#	unzip/files/patch-aa
#	unzip/files/patch-process.c
#	unzip/files/patch-contsts.h
#
echo c - unzip
mkdir -p unzip > /dev/null 2>&1
echo x - unzip/pkg-descr
sed 's/^X//' >unzip/pkg-descr << '3098e1e939a5907661d293b31a8bad5a'
XUnzip will list, test, or extract files from a ZIP archive, commonly
Xfound on MS-DOS systems.  The default behavior (with no options) is to
Xextract into the current directory (and subdirectories below it) all
Xfiles from the specified ZIP archive. Unzip is compatible with
Xarchives created by PKWARE's PKZIP, but in many cases the program
Xoptions or default behaviors differ.
X
XZipinfo lists technical information about files in a ZIP archive, most
Xcommonly found on MS-DOS systems.  Such information includes file access
Xpermissions, encryption status, type of compression, version and operating
Xsystem or file system of compressing program, and the like.  
X
XFunzip acts as a filter; that is, it assumes that a ZIP archive is
Xbeing piped into standard input, and it extracts the first member from
Xthe archive to stdout.  If there is an argument, then the input comes
Xfrom the specified file instead of from stdin.
X
XUnzipsfx may be used to create self-extracting ZIP archives from previously
Xcreated ZIP archives.
X
XWWW: http://www.info-zip.org/UnZip.html
3098e1e939a5907661d293b31a8bad5a
echo x - unzip/Makefile
sed 's/^X//' >unzip/Makefile << '3564c0c0e65482973302f819c67f6497'
X# New ports collection makefile for:	unzip
X# Date created:		17 October 1994
X# Whom:			jmz
X#
X# $FreeBSD: ports/archivers/unzip/Makefile,v 1.64 2009/08/22 00:12:55 amdmi3 Exp $
X#
X
XPORTNAME=	unzip
XPORTVERSION=	6.0
XCATEGORIES?=	archivers
XMASTER_SITES=	SF/infozip/UnZip%206.x%20(latest)/UnZip%20${PORTVERSION} \
X				SF/infozip/UnZip%205.x%20and%20earlier/5.51:unreduce
XDISTNAME=	${PORTNAME}60
X.if defined(WITH_UNZIP_UNREDUCE)
XDISTFILES=	${DISTNAME}${EXTRACT_SUFX} unreduce_full.zip:unreduce
XEXTRACT_ONLY=	${PORTNAME}60.tar.gz
X.endif
X
XMAINTAINER=	ache@FreeBSD.org
XCOMMENT=	List, test and extract compressed files in a ZIP archive
X
XMAKEFILE=	unix/Makefile
X.if defined(INSTALL_AS_INFOUNZIP)
XUNZIP_NAME=	info-unzip
X.else
XUNZIP_NAME=	unzip
X.endif
XPLIST_FILES=	bin/${UNZIP_NAME} bin/funzip bin/unzipsfx bin/zipgrep bin/zipinfo
XPORTDOCS=	README WHERE
XMAN1=		${UNZIP_NAME}.1 funzip.1 unzipsfx.1 zipgrep.1 zipinfo.1
X
XCFLAGS+=	-D_FILE_OFFSET_BITS=64
XLOCAL_UNZIP=	${CFLAGS} -DACORN_FTYPE_NFS -DWILD_STOP_AT_DIR
X
X.if defined(WITH_UNZIP_UNREDUCE)
XLOCAL_UNZIP+=	-DUSE_SMITH_CODE
X.endif
X
XMAKE_ENV=	LOCAL_UNZIP="${LOCAL_UNZIP}"
X
X.ifdef USE_UNZIP
X.error You have `USE_UNZIP' variable defined either in environment or in make(1) arguments. Please undefine and try again.
X.endif
X
X.include <bsd.port.pre.mk>
X
X.if ${ARCH} == "i386"
XALL_TARGET=	freebsd
X.else
XALL_TARGET=	bsd
X.endif
X
X.if !defined(INSTALL_AS_INFOUNZIP)
Xpre-fetch:
X	@${ECHO} ""
X	@${ECHO} "Use INSTALL_AS_INFOUNZIP=yes to install Info Unzip as ${PREFIX}/bin/info-unzip"
X	@${ECHO} ""
X.endif
X
X.if defined(WITH_UNZIP_UNREDUCE)
Xpre-build:
X	@(cd ${BUILD_WRKSRC}; ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} unzip)
X	@(cd ${WRKSRC}; \
X		./unzip -o ${_DISTDIR}unreduce_full.zip; \
X		${MV} unreduce_full.c unreduce.c)
X	@(cd ${BUILD_WRKSRC}; ${MAKE} ${MAKE_FLAGS} ${MAKEFILE} ${MAKE_ARGS} clean)
X.endif
X
Xdo-install:
X	${INSTALL_PROGRAM} ${WRKSRC}/unzip ${PREFIX}/bin/${UNZIP_NAME}
X.for file in funzip unzipsfx
X	${INSTALL_PROGRAM} ${WRKSRC}/${file} ${PREFIX}/bin
X.endfor
X	${LN} -sf ${UNZIP_NAME} ${PREFIX}/bin/zipinfo
X	${INSTALL_SCRIPT} ${WRKSRC}/unix/zipgrep ${PREFIX}/bin
X	${INSTALL_MAN} ${WRKSRC}/man/unzip.1 ${MAN1PREFIX}/man/man1/${UNZIP_NAME}.1
X.for f in ${MAN1:Nunzip.1:Ninfo-unzip.1}
X	${INSTALL_MAN} ${WRKSRC}/man/${f} ${MAN1PREFIX}/man/man1
X.endfor
X.if !defined(NOPORTDOCS)
X	@${MKDIR} ${DOCSDIR}
X.for f in ${PORTDOCS}
X	${INSTALL_DATA} ${WRKSRC}/${f} ${DOCSDIR}
X.endfor
X.endif
X
X.include <bsd.port.post.mk>
3564c0c0e65482973302f819c67f6497
echo x - unzip/distinfo
sed 's/^X//' >unzip/distinfo << 'b5cffac6e83a73176211e55eb35b77fd'
XMD5 (unzip60.tar.gz) = 62b490407489521db863b523a7f86375
XSHA256 (unzip60.tar.gz) = 036d96991646d0449ed0aa952e4fbe21b476ce994abc276e49d30e686708bd37
XSIZE (unzip60.tar.gz) = 1376845
XMD5 (unreduce_full.zip) = b7cde206d69b403e7551b9b0c25bd345
XSHA256 (unreduce_full.zip) = 1f4d93d2250dc1a1d1d2b8aac09d9989d4f9dd2cb0967373bf41fdf5f108cec1
XSIZE (unreduce_full.zip) = 2849
b5cffac6e83a73176211e55eb35b77fd
echo c - unzip/files
mkdir -p unzip/files > /dev/null 2>&1
echo x - unzip/files/patch-ab
sed 's/^X//' >unzip/files/patch-ab << '650e63a88a07244dca3c762510ed9364'
X--- unix/unix.c.bak	2009-01-23 18:31:26.000000000 -0500
X+++ unix/unix.c	2009-10-25 13:30:00.352982162 -0400
X@@ -610,7 +610,7 @@
X                  * else allow 8-bit characters (e.g. UTF-8) in filenames:
X                  */
X                 if (uO.cflxflag ||
X-                    (isprint(workch) || (128 <= workch && workch <= 254)))
X+                    (isprint(workch) || (128 <= workch && workch <= 255)))
X                     *pp++ = (char)workch;
X         } /* end switch */
X 
650e63a88a07244dca3c762510ed9364
echo x - unzip/files/patch-aa
sed 's/^X//' >unzip/files/patch-aa << 'b88cf56f370558d03eb866b98c3290bd'
X--- unix/Makefile.orig	2009-01-18 17:41:18.000000000 -0500
X+++ unix/Makefile	2009-10-25 13:26:32.828688434 -0400
X@@ -42,7 +42,7 @@
X # such as -DDOSWILD).
X 
X # UnZip flags
X-CC = cc#	try using "gcc" target rather than changing this (CC and LD
X+CC ?= cc#	try using "gcc" target rather than changing this (CC and LD
X LD = $(CC)#	must match, else "unresolved symbol:  ___main" is possible)
X AS = as
X LOC = $(D_USE_BZ2) $(LOCAL_UNZIP)
X@@ -763,8 +763,8 @@
X # FreeBSD on Intel:
X freebsd:		unix_make
X 	@echo 'NOTE:  use bsd target for non-Intel FreeBSD compiles (if any).'
X-	$(MAKE) unzips CC=gcc LD=gcc AS=gcc\
X-	 CFLAGS="-O3 -Wall -DASM_CRC -DBSD"\
X+	$(MAKE) unzips CC="$(CC)" LD="$(CC)" AS="$(CC)"\
X+	 CFLAGS="-Wall -DASM_CRC -DBSD"\
X 	 AF="-Di386 $(AF)" CRCA_O=crc_gcc$O
X 
X # Generic BSDish Unix gcc.  ``The -O3 only works with later versions of gcc;
b88cf56f370558d03eb866b98c3290bd
echo x - unzip/files/patch-process.c
sed 's/^X//' >unzip/files/patch-process.c << '07fbae14a41447b17a48baf55558545f'
X--- process.c.orig	2009-03-05 20:25:10.000000000 -0500
X+++ process.c	2009-10-25 13:45:28.019104431 -0400
X@@ -83,7 +83,7 @@
X # endif
X # if !(defined(UNIX) || defined(AMIGA))
X    static ZCONST char Far CannotFindWildcardMatch[] =
X-     "%s:  cannot find any matches for wildcard specification \"%s\".\n";
X+     "%s:  cannot find any matches for wildcard specification \"%.512s\".\n";
X # endif /* !(UNIX || AMIGA) */
X    static ZCONST char Far FilesProcessOK[] =
X      "%d archive%s successfully processed.\n";
X@@ -101,20 +101,20 @@
X    /* do_seekable() strings */
X # ifdef UNIX
X    static ZCONST char Far CannotFindZipfileDirMsg[] =
X-     "%s:  cannot find zipfile directory in one of %s or\n\
X-        %s%s.zip, and cannot find %s, period.\n";
X+     "%s:  cannot find zipfile directory in one of %.512s or\n\
X+        %s%.512s.zip, and cannot find %.512s, period.\n";
X    static ZCONST char Far CannotFindEitherZipfile[] =
X-     "%s:  cannot find or open %s, %s.zip or %s.\n";
X+     "%s:  cannot find or open %.512s, %.512s.zip or %.512s.\n";
X # else /* !UNIX */
X    static ZCONST char Far CannotFindZipfileDirMsg[] =
X-     "%s:  cannot find zipfile directory in %s,\n\
X-        %sand cannot find %s, period.\n";
X+     "%s:  cannot find zipfile directory in %.512s,\n\
X+        %sand cannot find %.512s, period.\n";
X # ifdef VMS
X    static ZCONST char Far CannotFindEitherZipfile[] =
X-     "%s:  cannot find %s (%s).\n";
X+     "%s:  cannot find %.512s (%.512s).\n";
X # else /* !VMS */
X    static ZCONST char Far CannotFindEitherZipfile[] =
X-     "%s:  cannot find either %s or %s.\n";
X+     "%s:  cannot find either %.512s or %.512s.\n";
X # endif /* ?VMS */
X # endif /* ?UNIX */
X    extern ZCONST char Far Zipnfo[];       /* in unzip.c */
07fbae14a41447b17a48baf55558545f
echo x - unzip/files/patch-contsts.h
sed 's/^X//' >unzip/files/patch-contsts.h << '7618bb91f36f361b247a30d1127d300b'
X--- unzip-5.52.orig/consts.h
X+++ consts.h
X@@ -34,9 +34,9 @@
X   "error:  expected central file header signature not found (file #%lu).\n";
X ZCONST char Far SeekMsg[] =
X   "error [%s]:  attempt to seek before beginning of zipfile\n%s";
X-ZCONST char Far FilenameNotMatched[] = "caution: filename not matched:  %s\n";
X+ZCONST char Far FilenameNotMatched[] = "caution: filename not matched:  %.512s\n";
X ZCONST char Far ExclFilenameNotMatched[] =
X-  "caution: excluded filename not matched:  %s\n";
X+  "caution: excluded filename not matched:  %.512s\n";
X 
X #ifdef VMS
X   ZCONST char Far ReportMsg[] = "\
7618bb91f36f361b247a30d1127d300b
exit
--- unzip60.shar ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200910251839.n9PIdr2d045280>