summaryrefslogtreecommitdiff
path: root/archivers
diff options
context:
space:
mode:
Diffstat (limited to 'archivers')
-rw-r--r--archivers/Makefile22
-rw-r--r--archivers/arc/Makefile20
-rw-r--r--archivers/arc/files/md51
-rw-r--r--archivers/arc/patches/patch-aa94
-rw-r--r--archivers/arc/pkg/COMMENT1
-rw-r--r--archivers/arc/pkg/DESCR1
-rw-r--r--archivers/arc/pkg/PLIST3
-rw-r--r--archivers/bzip/Makefile28
-rw-r--r--archivers/bzip/files/COPYRIGHT21
-rw-r--r--archivers/bzip/files/md51
-rw-r--r--archivers/bzip/patches/patch-aa43
-rw-r--r--archivers/bzip/patches/patch-ab12
-rw-r--r--archivers/bzip/patches/patch-ac35
-rw-r--r--archivers/bzip/pkg/COMMENT1
-rw-r--r--archivers/bzip/pkg/DESCR20
-rw-r--r--archivers/bzip/pkg/PLIST4
-rw-r--r--archivers/freeze/Makefile19
-rw-r--r--archivers/freeze/files/md51
-rw-r--r--archivers/freeze/pkg/COMMENT1
-rw-r--r--archivers/freeze/pkg/DESCR28
-rw-r--r--archivers/freeze/pkg/PLIST10
-rw-r--r--archivers/ha/Makefile26
-rw-r--r--archivers/ha/files/md51
-rw-r--r--archivers/ha/patches/patch-aa19
-rw-r--r--archivers/ha/pkg/COMMENT1
-rw-r--r--archivers/ha/pkg/DESCR47
-rw-r--r--archivers/ha/pkg/PLIST1
-rw-r--r--archivers/lha/Makefile20
-rw-r--r--archivers/lha/files/md51
-rw-r--r--archivers/lha/patches/patch-aa57
-rw-r--r--archivers/lha/patches/patch-ab21
-rw-r--r--archivers/lha/pkg/COMMENT1
-rw-r--r--archivers/lha/pkg/DESCR16
-rw-r--r--archivers/lha/pkg/PLIST2
-rw-r--r--archivers/pkg/COMMENT1
-rw-r--r--archivers/rar/Makefile50
-rw-r--r--archivers/rar/files/md51
-rw-r--r--archivers/rar/pkg/COMMENT1
-rw-r--r--archivers/rar/pkg/DESCR4
-rw-r--r--archivers/rar/pkg/PLIST9
-rw-r--r--archivers/unarj/Makefile20
-rw-r--r--archivers/unarj/files/md51
-rw-r--r--archivers/unarj/patches/patch-aa84
-rw-r--r--archivers/unarj/pkg/COMMENT1
-rw-r--r--archivers/unarj/pkg/DESCR21
-rw-r--r--archivers/unarj/pkg/PLIST1
-rw-r--r--archivers/unrar/Makefile29
-rw-r--r--archivers/unrar/files/md51
-rw-r--r--archivers/unrar/patches/patch-aa45
-rw-r--r--archivers/unrar/patches/patch-ab23
-rw-r--r--archivers/unrar/pkg/COMMENT1
-rw-r--r--archivers/unrar/pkg/DESCR10
-rw-r--r--archivers/unrar/pkg/PLIST3
-rw-r--r--archivers/unzip/Makefile34
-rw-r--r--archivers/unzip/files/md51
-rw-r--r--archivers/unzip/pkg/COMMENT1
-rw-r--r--archivers/unzip/pkg/DESCR23
-rw-r--r--archivers/unzip/pkg/PLIST13
-rw-r--r--archivers/zip/Makefile35
-rw-r--r--archivers/zip/files/md51
-rw-r--r--archivers/zip/pkg/COMMENT1
-rw-r--r--archivers/zip/pkg/DESCR4
-rw-r--r--archivers/zip/pkg/PLIST5
-rw-r--r--archivers/zoo/Makefile21
-rw-r--r--archivers/zoo/files/md51
-rw-r--r--archivers/zoo/patches/patch-aa232
-rw-r--r--archivers/zoo/patches/patch-ab68
-rw-r--r--archivers/zoo/pkg/COMMENT1
-rw-r--r--archivers/zoo/pkg/DESCR7
-rw-r--r--archivers/zoo/pkg/PLIST4
70 files changed, 1337 insertions, 0 deletions
diff --git a/archivers/Makefile b/archivers/Makefile
new file mode 100644
index 00000000000..afbc86eba23
--- /dev/null
+++ b/archivers/Makefile
@@ -0,0 +1,22 @@
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:18:56 hubertf Exp $
+#
+
+ SUBDIR += arc
+ SUBDIR += bzip
+ SUBDIR += freeze
+ SUBDIR += gshar+gunshar
+ SUBDIR += ha
+ SUBDIR += hpack.non-usa.only
+ SUBDIR += lha
+ SUBDIR += nulib
+ SUBDIR += p5-Compress-Zlib
+ SUBDIR += rar
+ SUBDIR += unarj
+ SUBDIR += unrar
+ SUBDIR += unzip
+ SUBDIR += unzip.with_encryption
+ SUBDIR += zip
+ SUBDIR += zip.with_encryption
+ SUBDIR += zoo
+
+.include <bsd.port.subdir.mk>
diff --git a/archivers/arc/Makefile b/archivers/arc/Makefile
new file mode 100644
index 00000000000..7a48d134c43
--- /dev/null
+++ b/archivers/arc/Makefile
@@ -0,0 +1,20 @@
+# New ports collection makefile for: arc
+# Version required: 5.21e
+# Date created: 31 Dec 1994
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:18:56 hubertf Exp $
+#
+
+DISTNAME= arc521e.pl8
+PKGNAME= arc-5.21e
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.kiarchive.ru/pub/unix/arcers/
+EXTRACT_SUFX= .tar.Z
+
+MAINTAINER= ache@FreeBSD.ORG
+
+NO_WRKSUBDIR= yes
+MAN1= arc.1
+
+.include <bsd.port.mk>
diff --git a/archivers/arc/files/md5 b/archivers/arc/files/md5
new file mode 100644
index 00000000000..1e4a42c3c6d
--- /dev/null
+++ b/archivers/arc/files/md5
@@ -0,0 +1 @@
+MD5 (arc521e.pl8.tar.Z) = a6eca0eb9d8cfb8d9bb62753c85759cb
diff --git a/archivers/arc/patches/patch-aa b/archivers/arc/patches/patch-aa
new file mode 100644
index 00000000000..5b2f9b52c5c
--- /dev/null
+++ b/archivers/arc/patches/patch-aa
@@ -0,0 +1,94 @@
+*** Makefile.old Wed Apr 15 02:57:58 1992
+--- Makefile Sat Dec 31 20:36:07 1994
+***************
+*** 32,45 ****
+ OPT = -O
+ # For MWC 3.0 on the Atari ST, use:
+ #CFLAGS = -VCOMPAC -VPEEP
+! CFLAGS = $(OPT) $(SYSTEM)
+
+ # GNU's gcc is very nice, if you've got it. Otherwise just cc.
+ #CC = cgcc -mshort
+! CC = cc
+
+ # tmclock is only needed on Unix systems...
+! TMCLOCK = tmclock.o
+
+ # Files needed for System V
+ #SYSVOBJ = getwd.o rename.o scandir.o utimes.o
+--- 32,46 ----
+ OPT = -O
+ # For MWC 3.0 on the Atari ST, use:
+ #CFLAGS = -VCOMPAC -VPEEP
+! #CFLAGS = $(OPT) $(SYSTEM)
+! CFLAGS+=$(SYSTEM)
+
+ # GNU's gcc is very nice, if you've got it. Otherwise just cc.
+ #CC = cgcc -mshort
+! #CC = cc
+
+ # tmclock is only needed on Unix systems...
+! TMCLOCK = #tmclock.o
+
+ # Files needed for System V
+ #SYSVOBJ = getwd.o rename.o scandir.o utimes.o
+***************
+*** 61,66 ****
+--- 62,71 ----
+
+ clean:
+ -rm *.o arc$(PROG) marc$(PROG)
++
++ install:
++ install -cs -o bin -g bin arc marc ${PREFIX}/bin
++ install -c -o bin -g bin arc.1 ${PREFIX}/man/man1
+
+ arc.o: $(SRCDIR)arc.c $(HEADER)
+ $(CC) $(CFLAGS) -c $(SRCDIR)arc.c
+*** arcdos.c.old Wed Apr 15 02:58:21 1992
+--- arcdos.c Sat Dec 31 20:32:25 1994
+***************
+*** 173,186 ****
+--- 173,192 ----
+ struct tm tm;
+ struct timeval tvp[2];
+ int utimes();
++ #if !defined(__FreeSBD__) && !defined(__OpenBSD__)
+ long tmclock();
++ #endif
+ tm.tm_sec = (time & 31) * 2;
+ tm.tm_min = (time >> 5) & 63;
+ tm.tm_hour = (time >> 11);
+ tm.tm_mday = date & 31;
+ tm.tm_mon = ((date >> 5) & 15) - 1;
+ tm.tm_year = (date >> 9) + 80;
++ #if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ tvp[0].tv_sec = tmclock(&tm);
++ #else
++ tvp[0].tv_sec = timelocal(&tm);
++ #endif
+ tvp[1].tv_sec = tvp[0].tv_sec;
+ tvp[0].tv_usec = tvp[1].tv_usec = 0;
+ utimes(f, tvp);
+*** marc.c.old Wed Apr 15 02:59:21 1992
+--- marc.c Sat Dec 31 20:40:30 1994
+***************
+*** 35,40 ****
+--- 35,41 ----
+ #endif
+ VOID arcdie();
+ static VOID expandlst(), merge();
++ char *makefnam(); /* filename fixup routine */
+
+ FILE *src; /* source archive */
+ char srcname[STRLEN]; /* source archive name */
+***************
+*** 47,53 ****
+ int nargs; /* number of arguments */
+ char *arg[]; /* pointers to arguments */
+ {
+- char *makefnam(); /* filename fixup routine */
+ char *envfind();
+ #if !_MTS
+ char *arctemp2, *mktemp(); /* temp file stuff */
+--- 48,53 ----
diff --git a/archivers/arc/pkg/COMMENT b/archivers/arc/pkg/COMMENT
new file mode 100644
index 00000000000..dff7fe3aa36
--- /dev/null
+++ b/archivers/arc/pkg/COMMENT
@@ -0,0 +1 @@
+Create & extract files from DOS .ARC files.
diff --git a/archivers/arc/pkg/DESCR b/archivers/arc/pkg/DESCR
new file mode 100644
index 00000000000..004178c9f68
--- /dev/null
+++ b/archivers/arc/pkg/DESCR
@@ -0,0 +1 @@
+See the file work/Arc521.doc for more info .
diff --git a/archivers/arc/pkg/PLIST b/archivers/arc/pkg/PLIST
new file mode 100644
index 00000000000..4565b470211
--- /dev/null
+++ b/archivers/arc/pkg/PLIST
@@ -0,0 +1,3 @@
+bin/arc
+bin/marc
+man/man1/arc.1.gz
diff --git a/archivers/bzip/Makefile b/archivers/bzip/Makefile
new file mode 100644
index 00000000000..0a8ad78102a
--- /dev/null
+++ b/archivers/bzip/Makefile
@@ -0,0 +1,28 @@
+# New ports collection makefile for: bzip
+# Version required: 0.21
+# Date created: Fr 27 Sep 1996 11:47:35 MET DST
+# Whom: Andreas Klemm <andreas@klemm.gtn.com>
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:18:57 hubertf Exp $
+#
+
+DISTNAME= bzip-0.21
+CATEGORIES= archivers
+MASTER_SITES= http://www.cs.man.ac.uk/arch/people/j-seward/
+
+MAINTAINER= andreas@klemm.gtn.com
+
+NO_CDROM= "Restrictive copyright (don't sell for profit)"
+MAN1= bzip.1 bunzip.1
+
+pre-install:
+ @${CAT} ${FILESDIR}/COPYRIGHT
+
+do-install:
+ ${RM} -f ${PREFIX}/bin/bzip ${PREFIX}/bin/bunzip
+ ${INSTALL_PROGRAM} ${WRKSRC}/bzip ${PREFIX}/bin/bzip
+ ln -fs ${PREFIX}/bin/bzip ${PREFIX}/bin/bunzip
+ ${INSTALL_MAN} ${WRKSRC}/bzip.1 ${PREFIX}/man/man1/bzip.1
+ ${INSTALL_MAN} ${WRKSRC}/bzip.1 ${PREFIX}/man/man1/bunzip.1
+
+.include <bsd.port.mk>
diff --git a/archivers/bzip/files/COPYRIGHT b/archivers/bzip/files/COPYRIGHT
new file mode 100644
index 00000000000..5f20d917c09
--- /dev/null
+++ b/archivers/bzip/files/COPYRIGHT
@@ -0,0 +1,21 @@
+COPYRIGHT
+=========
+
+BZIP is distributed under the GNU General Public License version
+2; for details, see the file LICENSE. Pointers to the algorithms
+used are in ALGORITHMS.
+
+COMMERCIAL USE
+==============
+
+This program may or may not infringe certain US patents pertaining
+to arithmetic coding and to the block-sorting transformation itself.
+Opinions differ as to the precise legal status of some of the
+algorithms used. Nevertheless, you should be aware that commercial
+use of this program could render you liable to unfriendly legal
+action.
+
+ Julian Seward <sewardj@cs.man.ac.uk>
+ Manchester, UK
+ 18 July 1996 (version 0.15)
+ 25 August 1996 (version 0.21)
diff --git a/archivers/bzip/files/md5 b/archivers/bzip/files/md5
new file mode 100644
index 00000000000..697f194cd4e
--- /dev/null
+++ b/archivers/bzip/files/md5
@@ -0,0 +1 @@
+MD5 (bzip-0.21.tar.gz) = 03a7fe24ced5ac4401a32092409c78be
diff --git a/archivers/bzip/patches/patch-aa b/archivers/bzip/patches/patch-aa
new file mode 100644
index 00000000000..69b52ae7048
--- /dev/null
+++ b/archivers/bzip/patches/patch-aa
@@ -0,0 +1,43 @@
+--- Makefile.orig Sat Aug 31 09:50:33 1996
++++ Makefile Fri Sep 27 13:57:55 1996
+@@ -1,29 +1,17 @@
+-
+-CC = gcc
+-SH = /bin/sh
+-
+-CFLAGS = -O3 -fomit-frame-pointer -funroll-loops -Wall -Winline -Wshadow -W
+-
+-
++CFLAGS+= -fomit-frame-pointer
+
+ all:
+- cat words0
+ $(CC) $(CFLAGS) -o bzip bzip.c
+- rm -f bunzip
+- ln -s ./bzip ./bunzip
+- cat words1
+- ./bzip -Q -1 < sample1.ref > sample1.rbz
+- ./bzip -Q -2 < sample2.ref > sample2.rbz
+- ./bunzip -Q < sample1.bz > sample1.tst
+- ./bunzip -Q < sample2.bz > sample2.tst
+- cat words2
+- cmp sample1.bz sample1.rbz
+- cmp sample2.bz sample2.rbz
+- cmp sample1.tst sample1.ref
+- cmp sample2.tst sample2.ref
+- cat words3
+-
++ @ln -fs ./bzip ./bunzip
++ @echo "*** testing bzip and bunzip ***"
++ ./bzip -Q -1 < sample1.ref > sample1.rbz || exit 1
++ ./bzip -Q -2 < sample2.ref > sample2.rbz || exit 1
++ ./bunzip -Q < sample1.bz > sample1.tst || exit 1
++ ./bunzip -Q < sample2.bz > sample2.tst || exit 1
++ cmp sample1.bz sample1.rbz || exit 1
++ cmp sample2.bz sample2.rbz || exit 1
++ cmp sample1.tst sample1.ref || exit 1
++ cmp sample2.tst sample2.ref || exit 1
+
+ clean:
+ rm -f bzip bunzip sample*.tst sample*.rbz
+-
diff --git a/archivers/bzip/patches/patch-ab b/archivers/bzip/patches/patch-ab
new file mode 100644
index 00000000000..8a349de5f3e
--- /dev/null
+++ b/archivers/bzip/patches/patch-ab
@@ -0,0 +1,12 @@
+--- bzip.c.orig Fri Sep 27 12:33:18 1996
++++ bzip.c Fri Sep 27 12:35:48 1996
+@@ -116,7 +116,9 @@
+ #if BZ_UNIX_32
+ #include <utime.h>
+ #include <unistd.h>
++#if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) /* stdlib already included above */
+ #include <malloc.h>
++#endif
+ #include <sys/stat.h>
+ #include <sys/times.h>
+
diff --git a/archivers/bzip/patches/patch-ac b/archivers/bzip/patches/patch-ac
new file mode 100644
index 00000000000..ca210ce4094
--- /dev/null
+++ b/archivers/bzip/patches/patch-ac
@@ -0,0 +1,35 @@
+--- bzip.c.orig Sat Sep 28 03:32:05 1996
++++ bzip.c Sat Sep 28 03:37:53 1996
+@@ -114,6 +114,7 @@
+ --*/
+
+ #if BZ_UNIX_32
++ #include <sys/types.h>
+ #include <utime.h>
+ #include <unistd.h>
+ #if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__) /* stdlib already included above */
+@@ -3132,11 +3133,6 @@
+ signal (SIGBUS, mySIGSEGVorSIGBUScatcher);
+ #endif
+
+- if ( ! (argc > 1 && strcmp ( "-Q", argv[1] ) == 0) )
+- fprintf ( stderr,
+- "BZIP, a block-sorting file compressor. "
+- "Version 0.21, 25-August-96.\n" );
+-
+ #if DEBUG
+ if ( ! (argc > 1 && strcmp ( "-Q", argv[1] ) == 0) )
+ fprintf ( stderr, "BZIP: *** compiled with debugging ON ***\n" );
+@@ -3206,6 +3202,12 @@
+ exit ( 1 );
+ break;
+ }
++
++ if (verbose) {
++ fprintf ( stderr,
++ "BZIP, a block-sorting file compressor. "
++ "Version 0.21, 25-August-96.\n" );
++ }
+
+ if ( opMode == OM_FILE_TO_STDOUT && numFileNames != 1) {
+ fprintf ( stderr, "%s: Option -c requires you to supply exactly one filename.\n",
diff --git a/archivers/bzip/pkg/COMMENT b/archivers/bzip/pkg/COMMENT
new file mode 100644
index 00000000000..4a54023fe56
--- /dev/null
+++ b/archivers/bzip/pkg/COMMENT
@@ -0,0 +1 @@
+A block-sorting file compressor.
diff --git a/archivers/bzip/pkg/DESCR b/archivers/bzip/pkg/DESCR
new file mode 100644
index 00000000000..c773207da1f
--- /dev/null
+++ b/archivers/bzip/pkg/DESCR
@@ -0,0 +1,20 @@
+Bzip compresses files using the Burrows-Wheeler-Fenwick
+block-sorting text compression algorithm.
+
+Compression is generally considerably better than that achieved by
+more conventional LZ77/LZ78-based compressors, and competitive with
+all but the best of the PPM family of statistical compressors.
+
+BZIP is distributed under the GNU General Public License version
+2; for details, see the file LICENSE. Pointers to the algorithms
+used are in ALGORITHMS.
+
+COMMERCIAL USE
+==============
+
+This program may or may not infringe certain US patents pertaining
+to arithmetic coding and to the block-sorting transformation itself.
+Opinions differ as to the precise legal status of some of the
+algorithms used. Nevertheless, you should be aware that commercial
+use of this program could render you liable to unfriendly legal
+action.
diff --git a/archivers/bzip/pkg/PLIST b/archivers/bzip/pkg/PLIST
new file mode 100644
index 00000000000..be533fdb8c0
--- /dev/null
+++ b/archivers/bzip/pkg/PLIST
@@ -0,0 +1,4 @@
+bin/bzip
+bin/bunzip
+man/man1/bzip.1.gz
+man/man1/bunzip.1.gz
diff --git a/archivers/freeze/Makefile b/archivers/freeze/Makefile
new file mode 100644
index 00000000000..87f216f7e29
--- /dev/null
+++ b/archivers/freeze/Makefile
@@ -0,0 +1,19 @@
+# New ports collection makefile for: freeze
+# Version required: 2.5
+# Date created: 20 Jul 1996
+# Whom: lukin@okbmei.msk.su
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:18:58 hubertf Exp $
+#
+
+DISTNAME= freeze-2.5
+CATEGORIES= archivers
+MASTER_SITES= ftp://lupin.csv.warwick.ac.uk/pub/compression/
+
+MAINTAINER= lukin@okbmei.msk.su
+
+GNU_CONFIGURE= yes
+ALL_TARGET= prog
+MAN1= freeze.1 melt.1 unfreeze.1 fcat.1 statist.1
+
+.include <bsd.port.mk>
diff --git a/archivers/freeze/files/md5 b/archivers/freeze/files/md5
new file mode 100644
index 00000000000..863d32e3315
--- /dev/null
+++ b/archivers/freeze/files/md5
@@ -0,0 +1 @@
+MD5 (freeze-2.5.tar.gz) = 2bc3c88ad87eca6b2df2a40b2fae626c
diff --git a/archivers/freeze/pkg/COMMENT b/archivers/freeze/pkg/COMMENT
new file mode 100644
index 00000000000..3424c91de49
--- /dev/null
+++ b/archivers/freeze/pkg/COMMENT
@@ -0,0 +1 @@
+FREEZE / MELT compression program - often used in QNX
diff --git a/archivers/freeze/pkg/DESCR b/archivers/freeze/pkg/DESCR
new file mode 100644
index 00000000000..837884b86bc
--- /dev/null
+++ b/archivers/freeze/pkg/DESCR
@@ -0,0 +1,28 @@
+ FREEZE / MELT COMPRESSION PROGRAM
+
+This version is tested under SunOS 4.1.2, Xenix 2.3.2, MS-DOS.
+
+The format of frozen (2.X) file is incompatible with that of frozen (1.0),
+but if this package is compiled with -DCOMPAT switch, you will able to
+unpack frozen (1.0) files, if you have them.
+
+--------- CALGARY COMPRESSION CORPUS RESULTS --------
+
+ 41127 bib.F
+ 340447 book1.F
+ 229188 book2.F
+ 68610 geo.F
+ 155157 news.F
+ 10551 obj1.F
+ 86216 obj2.F
+ 19924 paper1.F
+ 32439 paper2.F
+ 54993 pic.F
+ 14180 progc.F
+ 17136 progl.F
+ 11771 progp.F
+ 22903 trans.F
+
+Average bits/byte on the standard set (except paper3-6) =
+ 1104642 * 8 / 3141622 = 2.813
+
diff --git a/archivers/freeze/pkg/PLIST b/archivers/freeze/pkg/PLIST
new file mode 100644
index 00000000000..482883f475d
--- /dev/null
+++ b/archivers/freeze/pkg/PLIST
@@ -0,0 +1,10 @@
+bin/freeze
+bin/melt
+bin/unfreeze
+bin/fcat
+bin/statist
+man/man1/freeze.1.gz
+man/man1/melt.1.gz
+man/man1/unfreeze.1.gz
+man/man1/fcat.1.gz
+man/man1/statist.1.gz
diff --git a/archivers/ha/Makefile b/archivers/ha/Makefile
new file mode 100644
index 00000000000..c0f5855cb4a
--- /dev/null
+++ b/archivers/ha/Makefile
@@ -0,0 +1,26 @@
+# New ports collection makefile for: ha
+# Version required: 0.999beta
+# Date created: 24 Jan 1995
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:18:59 hubertf Exp $
+#
+
+DISTNAME= ha0999
+PKGNAME= ha-0.999b
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.kiarchive.ru/pub/unix/arcers/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= ache@FreeBSD.ORG
+
+NO_WRKSUBDIR= yes
+MAKEFILE= makefile.nix
+MAKE_FLAGS= CC=cc -f
+ALL_TARGET= ha
+USE_GMAKE= yes
+
+do-install:
+ cd ${WRKSRC}; ${INSTALL} ${COPY} ${STRIP} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} ha ${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/archivers/ha/files/md5 b/archivers/ha/files/md5
new file mode 100644
index 00000000000..f3b341df4e2
--- /dev/null
+++ b/archivers/ha/files/md5
@@ -0,0 +1 @@
+MD5 (ha0999.tgz) = 77f3266a451712bec55d60df67f61486
diff --git a/archivers/ha/patches/patch-aa b/archivers/ha/patches/patch-aa
new file mode 100644
index 00000000000..0bdd3610fb1
--- /dev/null
+++ b/archivers/ha/patches/patch-aa
@@ -0,0 +1,19 @@
+*** nix/machine.c.bak Thu Jan 12 09:53:00 1995
+--- nix/machine.c Tue Jan 24 19:38:07 1995
+***************
+*** 417,423 ****
+ if (plainname!=NULL) free(plainname),plainname=NULL;
+ if ((plainname=malloc(strlen(mdfullpath)+1))==NULL)
+ error(1,ERR_MEM,"md_stripname()");
+! for (i=strlen(mdfullpath)-1;i>0;i--) {
+ if (mdfullpath[i]=='/') {
+ i++;
+ break;
+--- 417,423 ----
+ if (plainname!=NULL) free(plainname),plainname=NULL;
+ if ((plainname=malloc(strlen(mdfullpath)+1))==NULL)
+ error(1,ERR_MEM,"md_stripname()");
+! for (i=strlen(mdfullpath)-1;i>=0;i--) {
+ if (mdfullpath[i]=='/') {
+ i++;
+ break;
diff --git a/archivers/ha/pkg/COMMENT b/archivers/ha/pkg/COMMENT
new file mode 100644
index 00000000000..5ed70bed9b0
--- /dev/null
+++ b/archivers/ha/pkg/COMMENT
@@ -0,0 +1 @@
+The HA archiver using the HSC compression method.
diff --git a/archivers/ha/pkg/DESCR b/archivers/ha/pkg/DESCR
new file mode 100644
index 00000000000..551026c194b
--- /dev/null
+++ b/archivers/ha/pkg/DESCR
@@ -0,0 +1,47 @@
+HA is an archiver which I released in january 1993 as version 0.98.
+After that I had plans to improve speed, archive handling etc. which
+would have required total rewrite of the code. For that I unfortunately
+could not find time. Because there has been quite considerably interest
+for internals of HA (especially for the HSC compression method) I
+decided to make a source level release from my current test version
+(0.999 beta) and place it under GNU General Public License. The sources
+for this version are not very consistent or clean, but everything should
+work.
+
+There are several improvements which should be made before this could be
+called version 1.0. Some of the most obvious of these are:
+- Compression methods should be coded in assembler for PC and using more
+ efficient data structures for 32 bit platforms. Current version does
+ some things only to overcome 64kB segments of 8086.
+- UNIX port has still some problems and is missing some things (for example
+ a grouping operator in wildcard matches).
+- File handling is far from optimum.
+- Archive handling is not too clever either.
+- Testing should be done more thoroughly as there are many special cases
+ in compression routines which get used very rarely.
+- Documentation of code and algorithms is totally missing.
+
+This archive (ha0999.zip) contains this readme, MSDOS executable ha.exe
+and source files for HA 0.999beta. Ha.exe is NOT compiled directly from
+included sources. Some critical parts of it were compiled from hand
+optimized versions of compiler output. It is somewhat faster than "pure
+C" version.
+
+MSDOS sources are for Borland C 4.0 but older versions of bcc should
+work. Makefile needs some editing as some paths are hardcoded in it.
+UNIX sources are not very generic. I have only tested this using Linux
+on PC and AIX on IBM6000. Only compiler and make utility that I have
+tested are GCC and GNU MAKE.
+
+Porting HA should be fairly easy as all machine specific code is in
+machine.h and machine.c under machine specific directories. Md_funcs.txt
+documents these functions. Examples can be found from pc and nix
+directories.
+
+Email address where I can be reached is "harri.hirvola@vaisala.infonet.com".
+My email addresses have not been very stable and I would not be very
+surprised if this one too is only valid for some months...
+
+ Harri Hirvola
+
+
diff --git a/archivers/ha/pkg/PLIST b/archivers/ha/pkg/PLIST
new file mode 100644
index 00000000000..da4d162c3b5
--- /dev/null
+++ b/archivers/ha/pkg/PLIST
@@ -0,0 +1 @@
+bin/ha
diff --git a/archivers/lha/Makefile b/archivers/lha/Makefile
new file mode 100644
index 00000000000..489a793a2fe
--- /dev/null
+++ b/archivers/lha/Makefile
@@ -0,0 +1,20 @@
+# New ports collection makefile for: lha
+# Version required: 1.14C
+# Date created: 26 Dec 1994
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:01 hubertf Exp $
+#
+
+DISTNAME= lha-114c
+PKGNAME= lha-1.14c
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.leo.chubu.ac.jp/pub/tools/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= ache@FreeBSD.ORG
+
+MANLANG= ja_JP.EUC
+MAN1= lha.1
+
+.include <bsd.port.mk>
diff --git a/archivers/lha/files/md5 b/archivers/lha/files/md5
new file mode 100644
index 00000000000..71db78aa80e
--- /dev/null
+++ b/archivers/lha/files/md5
@@ -0,0 +1 @@
+MD5 (lha-114c.tgz) = b626a5af259773dfb2b12c3876bdfd46
diff --git a/archivers/lha/patches/patch-aa b/archivers/lha/patches/patch-aa
new file mode 100644
index 00000000000..6c00357c611
--- /dev/null
+++ b/archivers/lha/patches/patch-aa
@@ -0,0 +1,57 @@
+*** Makefile.orig Fri Mar 1 17:59:19 1996
+--- Makefile Sun Dec 15 11:00:17 1996
+***************
+*** 11,35 ****
+ #-----------------------------------------------------------------------
+
+ SHELL=/bin/sh
+! MAKE = make
+
+ #CC = cc
+! CC = gcc
+! SWITCHES = -DNEED_INCREMENTAL_INDICATOR \
+! -DTMP_FILENAME_TEMPLATE="\"/tmp/lhXXXXXX\""
+ #MACHINE = -DSYSTIME_HAS_NO_TM -DFTIME -DEUC
+! MACHINE = -DSYSTIME_HAS_NO_TM -DEUC -DFTIME
+ #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer -mv8
+ #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer
+! OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer
+
+! BINDIR = /usr/local/bin
+! MANDIR = /usr/local/man
+! MANSECT = n
+
+! INSTALL = install
+! INSTALLBIN = -s -m 755
+! INSTALLMAN = -m 644
+
+ SUBDIRS = src man
+
+--- 11,37 ----
+ #-----------------------------------------------------------------------
+
+ SHELL=/bin/sh
+! #MAKE = make
+
+ #CC = cc
+! #CC = gcc
+! SWITCHES = -DNEED_INCREMENTAL_INDICATOR
+ #MACHINE = -DSYSTIME_HAS_NO_TM -DFTIME -DEUC
+! MACHINE = -DSYSTIME_HAS_NO_TM -DTIMELOCAL -DUSESTRCASECMP \
+! -DSYSV_SYSTEM_DIR
+ #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer -mv8
+ #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer
+! #OPTIMIZE = -O2 -fstrength-reduce -fomit-frame-pointer
+! OPTIMIZE = ${CFLAGS}
+
+! PREFIX ?= /usr/local
+! BINDIR = ${PREFIX}/bin
+! MANDIR = ${PREFIX}/man/ja_JP.EUC
+! MANSECT = 1
+
+! #INSTALL = install
+! INSTALLBIN = -c -s -o ${BINOWN} -g ${BINGRP} -m ${BINMODE}
+! INSTALLMAN = -m 444 -o bin -g bin -c
+
+ SUBDIRS = src man
+
diff --git a/archivers/lha/patches/patch-ab b/archivers/lha/patches/patch-ab
new file mode 100644
index 00000000000..3424cadc53b
--- /dev/null
+++ b/archivers/lha/patches/patch-ab
@@ -0,0 +1,21 @@
+*** src/lharc.c.bak Fri Mar 8 09:09:06 1996
+--- src/lharc.c Wed Aug 28 21:13:02 1996
+***************
+*** 318,324 ****
+ cmd_filec = 0;
+ if ((xfilev = (char **) malloc(sizeof(char *) * xfilec)) == NULL)
+ fatal_error("Virtual memory exhausted\n");
+! while (gets(inpbuf)) {
+ if (cmd_filec >= xfilec) {
+ xfilec += 256;
+ cmd_filev = (char **) realloc(xfilev,
+--- 318,326 ----
+ cmd_filec = 0;
+ if ((xfilev = (char **) malloc(sizeof(char *) * xfilec)) == NULL)
+ fatal_error("Virtual memory exhausted\n");
+! while (fgets(inpbuf, sizeof(inpbuf), stdin)) {
+! if ((p = strchr(inpbuf, '\n')))
+! *p = '\0';
+ if (cmd_filec >= xfilec) {
+ xfilec += 256;
+ cmd_filev = (char **) realloc(xfilev,
diff --git a/archivers/lha/pkg/COMMENT b/archivers/lha/pkg/COMMENT
new file mode 100644
index 00000000000..5a8333559ac
--- /dev/null
+++ b/archivers/lha/pkg/COMMENT
@@ -0,0 +1 @@
+Archive files using LZW compression (.lzh files).
diff --git a/archivers/lha/pkg/DESCR b/archivers/lha/pkg/DESCR
new file mode 100644
index 00000000000..0a2bfc77c40
--- /dev/null
+++ b/archivers/lha/pkg/DESCR
@@ -0,0 +1,16 @@
+ LHa for UNIX version 1.14c Mar. 7 1996 by Tsugio Okamoto
+
+ This unofficial version of lha is based on Version 1.00. This
+version supports extraction & archiving using -lh5- as well as
+extraction using -lh6- algorithm.
+
+ All the bug reports on this version should be directed to Tsuguo
+Okamoto <GBA02146@NIFTYSERVE.OR.JP>.
+
+
+ If this software is included in medium that may be obtained by
+users without network connectivity, please notify Tsuguo Okamoto in
+advance. Redistribution over networks is not restricted.
+
+ According to Masafumi NAKANE <max@wide.ad.jp> the author gives
+permission to distribute this software on FreeBSD CDROM.
diff --git a/archivers/lha/pkg/PLIST b/archivers/lha/pkg/PLIST
new file mode 100644
index 00000000000..fd97da28da1
--- /dev/null
+++ b/archivers/lha/pkg/PLIST
@@ -0,0 +1,2 @@
+bin/lha
+man/ja_JP.EUC/man1/lha.1.gz
diff --git a/archivers/pkg/COMMENT b/archivers/pkg/COMMENT
new file mode 100644
index 00000000000..4953e94aa3e
--- /dev/null
+++ b/archivers/pkg/COMMENT
@@ -0,0 +1 @@
+Archivers.
diff --git a/archivers/rar/Makefile b/archivers/rar/Makefile
new file mode 100644
index 00000000000..f35fb19cafb
--- /dev/null
+++ b/archivers/rar/Makefile
@@ -0,0 +1,50 @@
+# New ports collection makefile for: rar
+# http://www.inetpros.net/rar.htm
+# Version required: 2.01
+# Date created: 15 May 1996
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:04 hubertf Exp $
+#
+
+DISTNAME= rarbsd
+PKGNAME= rar-2.01
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.inetpros.net/pub/rar/ \
+ ftp://ftp.kiarchive.ru/pub/unix/arcers/
+EXTRACT_SUFX= .exe
+
+MAINTAINER= ache@FreeBSD.ORG
+
+NO_PACKAGE= Only unmodified original package can be distributed
+
+NO_WRKSUBDIR= yes
+EXTRACT_CMD=
+EXTRACT_BEFORE_ARGS=
+
+post-fetch:
+ chmod a+x ${DISTDIR}/${DISTFILES}
+
+do-build:
+ cd ${WRKSRC} && \
+ for i in *.Txt *.Lst; do \
+ tr -d '\015' < $$i > $$i.tmp; \
+ mv $$i.tmp $$i; \
+ done
+
+do-install:
+ install -d -m 755 -o ${SHAREOWN} -g ${SHAREGRP} \
+ ${PREFIX}/share/doc/rar ${PREFIX}/share/rar
+ cd ${WRKSRC} && \
+ ${INSTALL_PROGRAM} RAR ${PREFIX}/bin/rar && \
+ ${INSTALL_MAN} Rar.Txt ${PREFIX}/man/cat1/rar.1 && \
+ ${INSTALL_MAN} Rar_FAQ.Txt TechNote.Txt License.Txt Internet.Txt \
+ ${PREFIX}/share/doc/rar && \
+ ${INSTALL_DATA} RarFiles.Lst \
+ ${PREFIX}/share/rar/rarfiles.lst && \
+ ${INSTALL_DATA} DEFAULT.SFX \
+ ${PREFIX}/share/rar/default.sfx && \
+ ${INSTALL_DATA} Dos.SFX \
+ ${PREFIX}/share/rar/dos.sfx
+
+.include <bsd.port.mk>
diff --git a/archivers/rar/files/md5 b/archivers/rar/files/md5
new file mode 100644
index 00000000000..ec5b7dab74a
--- /dev/null
+++ b/archivers/rar/files/md5
@@ -0,0 +1 @@
+MD5 (rarbsd.exe) = 6029daaab2569454341d6b798eb4e79a
diff --git a/archivers/rar/pkg/COMMENT b/archivers/rar/pkg/COMMENT
new file mode 100644
index 00000000000..0190de1c779
--- /dev/null
+++ b/archivers/rar/pkg/COMMENT
@@ -0,0 +1 @@
+File archiver (binary port)
diff --git a/archivers/rar/pkg/DESCR b/archivers/rar/pkg/DESCR
new file mode 100644
index 00000000000..290dfef64ae
--- /dev/null
+++ b/archivers/rar/pkg/DESCR
@@ -0,0 +1,4 @@
+ The rar archiver adds and extracts files to and from an archive. The
+ archive is usually a regular file, which name has ".rar" suffix in its
+ end. Archive could be a media like a floppy diskette, tape or any other
+ storage device.
diff --git a/archivers/rar/pkg/PLIST b/archivers/rar/pkg/PLIST
new file mode 100644
index 00000000000..32c465b5905
--- /dev/null
+++ b/archivers/rar/pkg/PLIST
@@ -0,0 +1,9 @@
+bin/rar
+man/cat1/rar.1
+share/rar/dos.sfx
+share/rar/default.sfx
+share/rar/rarfiles.lst
+share/doc/rar/TechNote.Txt
+share/doc/rar/Rar_FAQ.Txt
+share/doc/rar/License.Txt
+share/doc/rar/Internet.Txt
diff --git a/archivers/unarj/Makefile b/archivers/unarj/Makefile
new file mode 100644
index 00000000000..e63b3a677b6
--- /dev/null
+++ b/archivers/unarj/Makefile
@@ -0,0 +1,20 @@
+# New ports collection makefile for: unarj
+# Version required: 2.41
+# Date created: 28 Dec 1994
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:04 hubertf Exp $
+#
+
+DISTNAME= unarj
+PKGNAME= unarj-2.41
+CATEGORIES= archivers
+MASTER_SITES= ftp://garbo.uwasa.fi/unix/arcers/
+DISTFILES= unarj241.tar.Z
+
+MAINTAINER= ache@FreeBSD.ORG
+
+do-install:
+ cd ${WRKSRC}; ${INSTALL_PROGRAM} ${DISTNAME} ${PREFIX}/bin
+
+.include <bsd.port.mk>
diff --git a/archivers/unarj/files/md5 b/archivers/unarj/files/md5
new file mode 100644
index 00000000000..e862ec69900
--- /dev/null
+++ b/archivers/unarj/files/md5
@@ -0,0 +1 @@
+MD5 (unarj241.tar.Z) = 19d0849fa336847a49206778f1c61953
diff --git a/archivers/unarj/patches/patch-aa b/archivers/unarj/patches/patch-aa
new file mode 100644
index 00000000000..b8a59372191
--- /dev/null
+++ b/archivers/unarj/patches/patch-aa
@@ -0,0 +1,84 @@
+*** Makefile.old Wed Jul 17 22:02:20 1991
+--- Makefile Wed Dec 28 04:39:21 1994
+***************
+*** 1,5 ****
+!
+! CC=cc
+
+ all: unarj
+
+--- 1,4 ----
+! CFLAGS+=-DUNIX
+
+ all: unarj
+
+*** environ.c.old Wed Jun 23 09:07:20 1993
+--- environ.c Wed Dec 28 04:38:04 1994
+***************
+*** 534,541 ****
+ }
+
+ long
+! gettz() /* returns the offset from GMT in seconds */
+ {
+ #define NOONOFFSET 43200L
+ #define SEC_IN_DAY (24L * 60L * 60L)
+ #define INV_VALUE (SEC_IN_DAY + 1L)
+--- 534,545 ----
+ }
+
+ long
+! gettz(stamp) /* returns the offset from GMT in seconds */
+! time_t stamp;
+ {
++ #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
++ return -localtime(&stamp)->tm_gmtoff;
++ #else
+ #define NOONOFFSET 43200L
+ #define SEC_IN_DAY (24L * 60L * 60L)
+ #define INV_VALUE (SEC_IN_DAY + 1L)
+***************
+*** 551,556 ****
+--- 555,561 ----
+ noontm = localtime(&noon);
+ retval = NOONOFFSET - 60 * (60 * noontm->tm_hour - noontm->tm_min);
+ return retval;
++ #endif
+ }
+
+ long
+***************
+*** 608,614 ****
+ (uint) attribute;
+ (uint) host;
+
+! m_time = mstonix(tstamp) + gettz();
+
+ tb.mtime = m_time; /* Set modification time */
+ tb.atime = m_time; /* Set access time */
+--- 613,620 ----
+ (uint) attribute;
+ (uint) host;
+
+! m_time = mstonix(tstamp);
+! m_time += gettz(m_time);
+
+ tb.mtime = m_time; /* Set modification time */
+ tb.atime = m_time; /* Set access time */
+*** unarj.h.old Wed Jun 23 09:07:20 1993
+--- unarj.h Wed Dec 28 04:25:07 1994
+***************
+*** 104,111 ****
+--- 104,115 ----
+ #endif
+
+ typedef unsigned char uchar; /* 8 bits or more */
++ #if !defined(__FreeBSD__) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ typedef unsigned int uint; /* 16 - 32 bits or more */
+ typedef unsigned short ushort; /* 16 bits or more */
++ #else
++ # include <sys/types.h>
++ #endif
+ typedef unsigned long ulong; /* 32 bits or more */
+
+ #define USHRT_BIT (CHAR_BIT * sizeof(ushort))
diff --git a/archivers/unarj/pkg/COMMENT b/archivers/unarj/pkg/COMMENT
new file mode 100644
index 00000000000..0ff2edabcbd
--- /dev/null
+++ b/archivers/unarj/pkg/COMMENT
@@ -0,0 +1 @@
+Allows files to be extracted from ARJ archives.
diff --git a/archivers/unarj/pkg/DESCR b/archivers/unarj/pkg/DESCR
new file mode 100644
index 00000000000..08a524d8c4d
--- /dev/null
+++ b/archivers/unarj/pkg/DESCR
@@ -0,0 +1,21 @@
+This is an extract only program which allows access to the contents of ARJ
+archives.
+
+ COMMAND SYNTAX:
+
+ UNARJ has been modified to support the four commands: "e", "l", "t",
+ and "x". These are similar to the ARJ version of these commands.
+ However, UNARJ does not create directories when using the "x" command.
+
+ Usage: UNARJ archive[.arj] (list archive)
+ UNARJ e archive (extract archive)
+ UNARJ l archive (list archive)
+ UNARJ t archive (test archive)
+ UNARJ x archive (extract with pathnames)
+
+ UNARJ does not accept any other commands or options. You cannot
+ specify a base directory or select individual files to extract. UNARJ
+ does not support empty directories or volume labels. UNARJ is much
+ slower than ARJ because ARJ is highly optimized using assembly
+ language.
+
diff --git a/archivers/unarj/pkg/PLIST b/archivers/unarj/pkg/PLIST
new file mode 100644
index 00000000000..5b5f3fe9079
--- /dev/null
+++ b/archivers/unarj/pkg/PLIST
@@ -0,0 +1 @@
+bin/unarj
diff --git a/archivers/unrar/Makefile b/archivers/unrar/Makefile
new file mode 100644
index 00000000000..0d27eadc64b
--- /dev/null
+++ b/archivers/unrar/Makefile
@@ -0,0 +1,29 @@
+# New ports collection makefile for: unrar
+# Version required: 2.01
+# Date created: 28 Dec 1994
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:05 hubertf Exp $
+#
+
+DISTNAME= unrar-2.01
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.kiarchive.ru/pub/unix/arcers/
+EXTRACT_SUFX= .tgz
+
+MAINTAINER= ache@FreeBSD.ORG
+
+NO_WRKSUBDIR= Yes
+
+do-build:
+ cd ${WRKSRC} && \
+ ${CC} ${CFLAGS} -D_UNIX unrar.c -o unrar
+
+do-install:
+ install -d -m 755 -o ${SHAREOWN} -g ${SHAREGRP} \
+ ${PREFIX}/share/doc/unrar
+ cd ${WRKSRC} && ${INSTALL_PROGRAM} unrar ${PREFIX}/bin
+ cd ${WRKSRC} && ${INSTALL_MAN} readme.txt license.txt \
+ ${PREFIX}/share/doc/unrar
+
+.include <bsd.port.mk>
diff --git a/archivers/unrar/files/md5 b/archivers/unrar/files/md5
new file mode 100644
index 00000000000..9288eff03b6
--- /dev/null
+++ b/archivers/unrar/files/md5
@@ -0,0 +1 @@
+MD5 (unrar-2.01.tgz) = ba30fc400cd97b987b1076889c1736ef
diff --git a/archivers/unrar/patches/patch-aa b/archivers/unrar/patches/patch-aa
new file mode 100644
index 00000000000..f82d2fc0247
--- /dev/null
+++ b/archivers/unrar/patches/patch-aa
@@ -0,0 +1,45 @@
+*** smallfn.c.bak Mon May 19 23:58:11 1997
+--- smallfn.c Tue May 20 00:19:28 1997
+***************
+*** 92,99 ****
+ }
+ if (Choice==4)
+ {
+ mprintf(MAskNewName);
+! gets(Name);
+ continue;
+ }
+ if (Choice==5)
+--- 92,103 ----
+ }
+ if (Choice==4)
+ {
++ char *s;
+ mprintf(MAskNewName);
+! *Name = '\0';
+! fgets(Name, NM, stdin);
+! if ((s = strchr(Name, '\n')) != NULL)
+! *s = '\0';
+ continue;
+ }
+ if (Choice==5)
+***************
+*** 110,116 ****
+ int GetKey(void)
+ {
+ char Str[80];
+! gets(Str);
+ return(Str[0]);
+ }
+
+--- 114,123 ----
+ int GetKey(void)
+ {
+ char Str[80];
+! *Str = '\0';
+! fgets(Str, 80, stdin);
+! if (*Str == '\n')
+! *Str = '\0';
+ return(Str[0]);
+ }
+
diff --git a/archivers/unrar/patches/patch-ab b/archivers/unrar/patches/patch-ab
new file mode 100644
index 00000000000..4cf98c0389d
--- /dev/null
+++ b/archivers/unrar/patches/patch-ab
@@ -0,0 +1,23 @@
+*** os.c.bak Mon May 19 23:58:11 1997
+--- os.c Tue May 20 00:22:57 1997
+***************
+*** 67,73 ****
+
+ void GetPswStr(char *Str)
+ {
+! gets(Str);
+ }
+
+
+--- 67,77 ----
+
+ void GetPswStr(char *Str)
+ {
+! char *s;
+! *Str = '\0';
+! fgets(Str, 128, stdin);
+! if ((s = strchr(Str, '\n')) != NULL)
+! *s = '\0';
+ }
+
+
diff --git a/archivers/unrar/pkg/COMMENT b/archivers/unrar/pkg/COMMENT
new file mode 100644
index 00000000000..a332c5798ac
--- /dev/null
+++ b/archivers/unrar/pkg/COMMENT
@@ -0,0 +1 @@
+Extract, view & test RAR archives.
diff --git a/archivers/unrar/pkg/DESCR b/archivers/unrar/pkg/DESCR
new file mode 100644
index 00000000000..c96a88f1db9
--- /dev/null
+++ b/archivers/unrar/pkg/DESCR
@@ -0,0 +1,10 @@
+ The unRAR utility is a freeware program, distributed with source
+ code and developed for extracting, testing and viewing the
+ contents of archives created with the RAR archiver, version 1.50
+ and above. For the usage and distribution license please read the
+ file LICENSE.TXT.
+
+ The unRAR utility is a minor part of the RAR archiver and contains
+ RAR uncompression algorithm. UnRAR requires very small volume of
+ memory to operate.
+
diff --git a/archivers/unrar/pkg/PLIST b/archivers/unrar/pkg/PLIST
new file mode 100644
index 00000000000..230848d7145
--- /dev/null
+++ b/archivers/unrar/pkg/PLIST
@@ -0,0 +1,3 @@
+bin/unrar
+share/doc/unrar/license.txt
+share/doc/unrar/readme.txt
diff --git a/archivers/unzip/Makefile b/archivers/unzip/Makefile
new file mode 100644
index 00000000000..12f9c43ba64
--- /dev/null
+++ b/archivers/unzip/Makefile
@@ -0,0 +1,34 @@
+# New ports collection makefile for: unzip
+# Version required: 5.3.1
+# Date created: 17 October 1994
+# Whom: jmz
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:06 hubertf Exp $
+#
+
+DISTNAME= unzip-5.3.1
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.cdrom.com/pub/infozip/src/
+DISTFILES= unzip531.tar.gz
+
+MAINTAINER= ache@FreeBSD.ORG
+
+NO_WRKSUBDIR= YES
+MAKEFILE= unix/Makefile
+ALL_TARGET= bsd
+MAKE_FLAGS= LOCAL_UNZIP="${CFLAGS} -DUSE_UNSHRINK" -f
+MAN1= funzip.1 unzip.1 unzipsfx.1 zipgrep.1 zipinfo.1
+
+do-install:
+ cd ${WRKSRC} && \
+ ${INSTALL_PROGRAM} unzip funzip unzipsfx ${PREFIX}/bin
+ ln -sf unzip ${PREFIX}/bin/zipinfo
+ cd ${WRKSRC}/unix && \
+ ${INSTALL_SCRIPT} zipgrep ${PREFIX}/bin
+ cd ${WRKSRC}/unix && \
+ ${INSTALL_MAN} ${MAN1} ${PREFIX}/man/man1
+ install -d -m 555 -o ${SHAREOWN} -g ${SHAREGRP} ${PREFIX}/share/doc/unzip
+ cd ${WRKSRC} && \
+ ${INSTALL_DATA} README Where COPYING ${PREFIX}/share/doc/unzip
+
+.include <bsd.port.mk>
diff --git a/archivers/unzip/files/md5 b/archivers/unzip/files/md5
new file mode 100644
index 00000000000..21ef0de0829
--- /dev/null
+++ b/archivers/unzip/files/md5
@@ -0,0 +1 @@
+MD5 (unzip531.tar.gz) = 071a67ce0b9f561c1011a3d307c5acb0
diff --git a/archivers/unzip/pkg/COMMENT b/archivers/unzip/pkg/COMMENT
new file mode 100644
index 00000000000..cd1f4196edd
--- /dev/null
+++ b/archivers/unzip/pkg/COMMENT
@@ -0,0 +1 @@
+List, test and extract compressed files in a ZIP archive.
diff --git a/archivers/unzip/pkg/DESCR b/archivers/unzip/pkg/DESCR
new file mode 100644
index 00000000000..5171951acc8
--- /dev/null
+++ b/archivers/unzip/pkg/DESCR
@@ -0,0 +1,23 @@
+Unzip will list, test, or extract files from a ZIP archive, commonly
+found on MS-DOS systems. The default behavior (with no options) is to
+extract into the current directory (and subdirectories below it) all
+files from the specified ZIP archive. Unzip is compatible with
+archives created by PKWARE's PKZIP, but in many cases the program
+options or default behaviors differ.
+
+Zipinfo lists technical information about files in a ZIP archive, most
+commonly found on MS-DOS systems. Such information includes file access
+permissions, encryption status, type of compression, version and operating
+system or file system of compressing program, and the like.
+
+Funzip acts as a filter; that is, it assumes that a ZIP archive is
+being piped into standard input, and it extracts the first member from
+the archive to stdout. If there is an argument, then the input comes
+from the specified file instead of from stdin.
+
+Unzipsfx is a modified version of unzip designed to be prepended to
+existing ZIP archives in order to form self-extracting archives.
+Instead of taking its first non-flag argument to be the zipfile(s) to
+be extracted, unzipsfx seeks itself under the name by which it was
+invoked and tests or extracts the contents of the appended archive.
+
diff --git a/archivers/unzip/pkg/PLIST b/archivers/unzip/pkg/PLIST
new file mode 100644
index 00000000000..0953fdfe5b7
--- /dev/null
+++ b/archivers/unzip/pkg/PLIST
@@ -0,0 +1,13 @@
+bin/unzip
+@exec ln -sf %f %B/zipinfo
+bin/funzip
+bin/unzipsfx
+bin/zipgrep
+man/man1/funzip.1.gz
+man/man1/unzip.1.gz
+man/man1/unzipsfx.1.gz
+man/man1/zipgrep.1.gz
+man/man1/zipinfo.1.gz
+share/doc/unzip/README
+share/doc/unzip/COPYING
+share/doc/unzip/Where
diff --git a/archivers/zip/Makefile b/archivers/zip/Makefile
new file mode 100644
index 00000000000..f96b5fa07ad
--- /dev/null
+++ b/archivers/zip/Makefile
@@ -0,0 +1,35 @@
+# New ports collection makefile for: zip (without encryption)
+# http://infozip.cdrom.com/pub/infozip/
+#
+# Version required: 2.1
+# Date created: 22 Dec 1994
+# Whom: ache
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:07 hubertf Exp $
+#
+
+DISTNAME= zip21
+PKGNAME= zip-2.1
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.cdrom.com/pub/infozip/src/
+EXTRACT_SUFX= .zip
+
+MAINTAINER= ache@FreeBSD.ORG
+
+BUILD_DEPENDS= unzip:${PORTSDIR}/archivers/unzip
+
+EXTRACT_CMD= unzip
+EXTRACT_ARGS= -oq
+NO_WRKSUBDIR= yes
+MAKEFILE= unix/Makefile
+MAKE_FLAGS= LOCAL_ZIP="${CFLAGS}" -f
+ALL_TARGET= generic
+MAN1= zip.1
+
+do-install:
+ cd ${WRKSRC} && \
+ ${INSTALL_PROGRAM} zip zipnote zipsplit zipcloak ${PREFIX}/bin
+ cd ${WRKSRC}/man && \
+ ${INSTALL_MAN} ${MAN1} ${PREFIX}/man/man1
+
+.include <bsd.port.mk>
diff --git a/archivers/zip/files/md5 b/archivers/zip/files/md5
new file mode 100644
index 00000000000..58661107027
--- /dev/null
+++ b/archivers/zip/files/md5
@@ -0,0 +1 @@
+MD5 (zip21.zip) = 5e175cbb2f897eb31d5efc23de414dc6
diff --git a/archivers/zip/pkg/COMMENT b/archivers/zip/pkg/COMMENT
new file mode 100644
index 00000000000..63c8d329db8
--- /dev/null
+++ b/archivers/zip/pkg/COMMENT
@@ -0,0 +1 @@
+Create/update ZIP files compatabile with pkzip.
diff --git a/archivers/zip/pkg/DESCR b/archivers/zip/pkg/DESCR
new file mode 100644
index 00000000000..c4fc5c70291
--- /dev/null
+++ b/archivers/zip/pkg/DESCR
@@ -0,0 +1,4 @@
+Zip is a compression and file packaging utility. It is compatible with
+PKZIP 2.04g (Phil Katz ZIP) for MSDOS systems. There is a companion to zip
+called unzip (of course) which you should be able to find the same place
+you got zip.
diff --git a/archivers/zip/pkg/PLIST b/archivers/zip/pkg/PLIST
new file mode 100644
index 00000000000..7e761d7584b
--- /dev/null
+++ b/archivers/zip/pkg/PLIST
@@ -0,0 +1,5 @@
+man/man1/zip.1.gz
+bin/zip
+bin/zipnote
+bin/zipsplit
+bin/zipcloak
diff --git a/archivers/zoo/Makefile b/archivers/zoo/Makefile
new file mode 100644
index 00000000000..48a9266c419
--- /dev/null
+++ b/archivers/zoo/Makefile
@@ -0,0 +1,21 @@
+# New ports collection makefile for: zoo
+# Version required: 2.10pl1
+# Date created: 18 October 1994
+# Whom: jmz
+#
+# $Id: Makefile,v 1.1.1.1 1997/10/27 02:19:08 hubertf Exp $
+#
+
+DISTNAME= zoo-2.10pl1
+PKGNAME= zoo-2.10.1
+CATEGORIES= archivers
+MASTER_SITES= ftp://ftp.kiarchive.ru/pub/unix/arcers/
+
+MAINTAINER= jmz@FreeBSD.org
+
+NO_WRKSUBDIR= yes
+ALL_TARGET= bsdansi
+MAKEFILE= makefile
+MAN1= fiz.1 zoo.1
+
+.include <bsd.port.mk>
diff --git a/archivers/zoo/files/md5 b/archivers/zoo/files/md5
new file mode 100644
index 00000000000..40674ef5366
--- /dev/null
+++ b/archivers/zoo/files/md5
@@ -0,0 +1 @@
+MD5 (zoo-2.10pl1.tar.gz) = 70a0a785ecc8f7f747be1421e495d837
diff --git a/archivers/zoo/patches/patch-aa b/archivers/zoo/patches/patch-aa
new file mode 100644
index 00000000000..e2514e63e42
--- /dev/null
+++ b/archivers/zoo/patches/patch-aa
@@ -0,0 +1,232 @@
+*** bsd.c.old Thu Aug 8 09:34:07 1991
+--- bsd.c Thu Jan 5 05:20:03 1995
+***************
+*** 69,76 ****
+ }
+
+ /* Function gettz() returns the offset from GMT in seconds */
+! long gettz()
+ {
+ #define SEC_IN_DAY (24L * 60L * 60L)
+ #define INV_VALUE (SEC_IN_DAY + 1L)
+ static long retval = INV_VALUE; /* cache, init to impossible value */
+--- 69,80 ----
+ }
+
+ /* Function gettz() returns the offset from GMT in seconds */
+! long gettz(t)
+! long t;
+ {
++ #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
++ return -localtime(&t)->tm_gmtoff;
++ #else
+ #define SEC_IN_DAY (24L * 60L * 60L)
+ #define INV_VALUE (SEC_IN_DAY + 1L)
+ static long retval = INV_VALUE; /* cache, init to impossible value */
+***************
+*** 83,88 ****
+--- 87,93 ----
+ /* Timezone fix thanks to Bill Davidsen <wedu@ge-crd.ARPA> */
+ retval = tzp.tz_minuteswest * 60 - tzp.tz_dsttime * 3600L;
+ return retval;
++ #endif
+ }
+
+ /* Standard UNIX-compatible time routines */
+***************
+*** 91,105 ****
+ /* Standard UNIX-specific file attribute routines */
+ #include "nixmode.i"
+
+ #ifndef SEEK_CUR
+ # define SEEK_CUR 1
+ #endif
+
+ /* Truncate a file. */
+ int zootrunc(f) FILE *f;
+ {
+! extern long lseek();
+! long seekpos;
+ int fd = fileno(f);
+ seekpos = lseek(fd, 0L, SEEK_CUR);
+ if (seekpos >= 0)
+--- 96,114 ----
+ /* Standard UNIX-specific file attribute routines */
+ #include "nixmode.i"
+
++ #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__)
++ #include <unistd.h>
++ #else
+ #ifndef SEEK_CUR
+ # define SEEK_CUR 1
+ #endif
++ #endif
+
+ /* Truncate a file. */
+ int zootrunc(f) FILE *f;
+ {
+! extern off_t lseek();
+! off_t seekpos;
+ int fd = fileno(f);
+ seekpos = lseek(fd, 0L, SEEK_CUR);
+ if (seekpos >= 0)
+*** misc2.c.old Thu Aug 8 09:34:48 1991
+--- misc2.c Thu Jan 5 05:37:06 1995
+***************
+*** 314,323 ****
+ {
+ long diff_tz;
+ long longtime;
+ if (direntry->tz == NO_TZ) /* none stored */
+ return;
+! diff_tz = (long) direntry->tz * (3600/4) - gettz(); /* diff. in seconds */
+! longtime = mstonix (direntry->date, direntry->time) + diff_tz; /* adj tz */
+ mstime (longtime, &direntry->date, &direntry->time);
+ }
+ #endif /* GETTZ */
+--- 314,325 ----
+ {
+ long diff_tz;
+ long longtime;
++ long t;
+ if (direntry->tz == NO_TZ) /* none stored */
+ return;
+! t = mstonix (direntry->date, direntry->time);
+! diff_tz = (long) direntry->tz * (3600/4) - gettz(t); /* diff. in seconds */
+! longtime = t + diff_tz; /* adj tz */
+ mstime (longtime, &direntry->date, &direntry->time);
+ }
+ #endif /* GETTZ */
+*** nixtime.i.old Thu Aug 8 09:34:57 1991
+--- nixtime.i Thu Jan 5 05:16:28 1995
+***************
+*** 52,58 ****
+ long mstonix();
+ long gettz();
+ long utimbuf[2];
+! utimbuf[0] = utimbuf[1] = gettz() + mstonix (date, time);
+ return (utime (path, utimbuf));
+ }
+
+--- 52,59 ----
+ long mstonix();
+ long gettz();
+ long utimbuf[2];
+! long t = mstonix (date, time);
+! utimbuf[0] = utimbuf[1] = t + gettz(t);
+ return (utime (path, utimbuf));
+ }
+
+*** zoolist.c.old Thu Aug 8 09:36:09 1991
+--- zoolist.c Thu Jan 5 05:41:47 1995
+***************
+*** 539,548 ****
+ {
+ long gettz();
+ int diff_tz; /* timezone difference */
+ if (file_tz == NO_TZ) /* if no timezone stored ..*/
+ printf (" "); /* .. just pad with blanks */
+ else {
+! diff_tz = (file_tz / 4) - (int) (gettz() / 3600);
+ if (diff_tz == 0)
+ printf (" "); /* print nothing if same */
+ else if (diff_tz > 0) /* else print signed difference */
+--- 539,550 ----
+ {
+ long gettz();
+ int diff_tz; /* timezone difference */
++ long t;
+ if (file_tz == NO_TZ) /* if no timezone stored ..*/
+ printf (" "); /* .. just pad with blanks */
+ else {
+! time(&t);
+! diff_tz = (file_tz / 4) - (int) (gettz(t) / 3600);
+ if (diff_tz == 0)
+ printf (" "); /* print nothing if same */
+ else if (diff_tz > 0) /* else print signed difference */
+*** zoofns.h.bak Thu Aug 8 09:36:02 1991
+--- zoofns.h Thu Jan 5 06:03:04 1995
+***************
+*** 94,100 ****
+--- 94,104 ----
+ void fixslash PARMS ((char *));
+ void makelist PARMS ((int, char *[], char *[], int, char *, char *, char *, int *));
+ void memerr PARMS ((unsigned int));
++ #ifdef STDARG
++ void prterror(int level, char *format, ...);
++ #else
+ void prterror PARMS ((int, char *, ...));
++ #endif
+ void rootname PARMS ((char *, char *));
+ void skip_files PARMS ((ZOOFILE, unsigned int *, unsigned int *, int *,
+ char [], long *));
+*** options.h.orig Sat May 1 08:27:59 1993
+--- options.h Thu Jan 5 06:51:56 1995
+***************
+*** 96,102 ****
+ #define NIXTIME
+ #define NIXFNAME
+ #define NEEDCTYP
+- #define NOENUM
+ #define REN_STDC
+ #define SETBUF
+ #define GETTZ
+--- 96,101 ----
+***************
+*** 110,115 ****
+--- 109,115 ----
+ #define ANSI_PROTO
+ #define VOIDPTR void *
+ #else
++ #define NOENUM
+ #define NOSTRCHR /* not really needed for 4.3BSD */
+ #define T_SIGNAL int
+ #define VARARGS
+*** zooadd2.c.orig Sat Jul 20 02:38:10 1991
+--- zooadd2.c Thu Jan 5 06:55:40 1995
+***************
+*** 258,269 ****
+ register struct direntry *direntry;
+ {
+ #ifdef GETTZ
+ long gettz();
+ #endif
+ direntry->zoo_tag = ZOO_TAG;
+ direntry->type = 2; /* type is now 2 */
+ #ifdef GETTZ
+! direntry->tz = gettz() / (15 * 60); /* seconds => 15-min units */
+ #else
+ direntry->tz = NO_TZ; /* timezone unknown */
+ #endif
+--- 258,272 ----
+ register struct direntry *direntry;
+ {
+ #ifdef GETTZ
++ long mstonix();
+ long gettz();
++ long t;
+ #endif
+ direntry->zoo_tag = ZOO_TAG;
+ direntry->type = 2; /* type is now 2 */
+ #ifdef GETTZ
+! t = mstonix (direntry->date, direntry->time);
+! direntry->tz = gettz(t) / (15 * 60); /* seconds => 15-min units */
+ #else
+ direntry->tz = NO_TZ; /* timezone unknown */
+ #endif
+*** ar.h.orig Sat May 1 08:04:22 1993
+--- ar.h Thu Jan 5 07:05:36 1995
+***************
+*** 15,23 ****
+--- 15,25 ----
+ /* uchar should be 8 bits or more */
+ /* typedef unsigned char uchar; -- already in zoo.h */
+
++ #if !(defined(__FreeBSD__) && __FreeBSD__ < 3) && !defined(__OpenBSD__) && !defined(__NetBSD__)
+ typedef unsigned int uint; /* 16 bits or more */
+ #if !defined(__386BSD__) || !defined(_TYPES_H_)
+ typedef unsigned short ushort; /* 16 bits or more */
++ #endif
+ #endif
+ typedef unsigned long ulong; /* 32 bits or more */
+
diff --git a/archivers/zoo/patches/patch-ab b/archivers/zoo/patches/patch-ab
new file mode 100644
index 00000000000..6613d11bc3e
--- /dev/null
+++ b/archivers/zoo/patches/patch-ab
@@ -0,0 +1,68 @@
+*** makefile.old Thu Aug 8 09:34:44 1991
+--- makefile Thu Jan 5 05:07:23 1995
+***************
+*** 18,30 ****
+
+ MAKE = make # needed for some systems e.g. older BSD
+
+! CC = cc
+! CFLAGS =
+ MODEL =
+ EXTRA = -DBIG_MEM -DNDEBUG
+ LINTFLAGS = -DLINT
+! OPTIM = -O
+! DESTDIR = /usr/local/bin
+
+ #List of all object files created for Zoo
+ ZOOOBJS = addbfcrc.o addfname.o basename.o comment.o crcdefs.o \
+--- 18,30 ----
+
+ MAKE = make # needed for some systems e.g. older BSD
+
+! #CC = cc
+! #CFLAGS =
+ MODEL =
+ EXTRA = -DBIG_MEM -DNDEBUG
+ LINTFLAGS = -DLINT
+! OPTIM = $(CFLAGS)
+! DESTDIR = $(PREFIX)/bin
+
+ #List of all object files created for Zoo
+ ZOOOBJS = addbfcrc.o addfname.o basename.o comment.o crcdefs.o \
+***************
+*** 67,73 ****
+ @echo "lint_turboc: Run lint under **IX for checking Turbo C/MSDOS code"
+
+ # install alpha zoo as "tzoo"
+! install:
+ mv zoo $(DESTDIR)/tzoo
+
+ # install beta zoo as "bzoo"
+--- 67,73 ----
+ @echo "lint_turboc: Run lint under **IX for checking Turbo C/MSDOS code"
+
+ # install alpha zoo as "tzoo"
+! inst_test:
+ mv zoo $(DESTDIR)/tzoo
+
+ # install beta zoo as "bzoo"
+***************
+*** 75,82 ****
+ mv zoo $(DESTDIR)/bzoo
+
+ # install production zoo as "zoo"
+! inst_prod:
+! mv zoo $(DESTDIR)/zoo
+
+ # executable targets
+ TARGETS = zoo fiz
+--- 75,83 ----
+ mv zoo $(DESTDIR)/bzoo
+
+ # install production zoo as "zoo"
+! install:
+! $(INSTALL) $(COPY) $(STRIP) -o $(BINOWN) -g $(BINGRP) -m $(BINMODE) $(TARGETS) $(DESTDIR)
+! $(INSTALL) -c -o $(BINOWN) -g $(BINGRP) -m 444 zoo.1 fiz.1 $(PREFIX)/man/man1
+
+ # executable targets
+ TARGETS = zoo fiz
diff --git a/archivers/zoo/pkg/COMMENT b/archivers/zoo/pkg/COMMENT
new file mode 100644
index 00000000000..fdc07dc5494
--- /dev/null
+++ b/archivers/zoo/pkg/COMMENT
@@ -0,0 +1 @@
+Manipulate archives of files in compressed form.
diff --git a/archivers/zoo/pkg/DESCR b/archivers/zoo/pkg/DESCR
new file mode 100644
index 00000000000..6c9afde5eb0
--- /dev/null
+++ b/archivers/zoo/pkg/DESCR
@@ -0,0 +1,7 @@
+Zoo is used to create and maintain collections of files in compressed
+form. It uses a Lempel-Ziv compression algorithm that gives space
+savings in the range of 20% to 80% depending on the type of file
+data. Zoo can store and selectively extract multiple generations of
+the same file. Data can be recovered from damaged archives by
+skipping the damaged portion and locating undamaged data with the help
+of fiz(1).
diff --git a/archivers/zoo/pkg/PLIST b/archivers/zoo/pkg/PLIST
new file mode 100644
index 00000000000..32106e2191c
--- /dev/null
+++ b/archivers/zoo/pkg/PLIST
@@ -0,0 +1,4 @@
+bin/fiz
+bin/zoo
+man/man1/fiz.1.gz
+man/man1/zoo.1.gz