summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoshua Kinard <kumba@gentoo.org>2003-10-02 09:22:50 +0000
committerJoshua Kinard <kumba@gentoo.org>2003-10-02 09:22:50 +0000
commit1145c6129ce271d0e7b66aee63f5715e48d19940 (patch)
tree1e6efc924aee3c4c96c148081b1e104995094645 /app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch
parentAdded a patch that combines the older zoo-2.10pl1 patch and some gcc33 fixes;... (diff)
downloadhistorical-1145c6129ce271d0e7b66aee63f5715e48d19940.tar.gz
historical-1145c6129ce271d0e7b66aee63f5715e48d19940.tar.bz2
historical-1145c6129ce271d0e7b66aee63f5715e48d19940.zip
Added a patch that combines the older zoo-2.10pl1 patch and some gcc33 fixes; Closes Bug #29658
Diffstat (limited to 'app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch')
-rw-r--r--app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch719
1 files changed, 719 insertions, 0 deletions
diff --git a/app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch b/app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch
new file mode 100644
index 000000000000..a8c8ecca408f
--- /dev/null
+++ b/app-arch/zoo/files/zoo-2.10-gcc33-issues-fix.patch
@@ -0,0 +1,719 @@
+diff -ur zoo/ar.h zoo-gentoo/ar.h
+--- zoo/ar.h 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/ar.h 2003-09-26 23:58:43.000000000 +1200
+@@ -15,11 +15,9 @@
+ /* uchar should be 8 bits or more */
+ /* typedef unsigned char uchar; -- already in zoo.h */
+
+-typedef unsigned int uint; /* 16 bits or more */
+-#if !defined(__386BSD__) || !defined(_TYPES_H_)
+-typedef unsigned short ushort; /* 16 bits or more */
+-#endif
+-typedef unsigned long ulong; /* 32 bits or more */
++typedef unsigned int my_uint; /* 16 bits or more */
++typedef unsigned short my_ushort; /* 16 bits or more */
++typedef unsigned long my_ulong; /* 32 bits or more */
+
+ /* T_UINT16 must be #defined in options.h to be
+ a 16-bit unsigned integer type */
+@@ -49,7 +47,7 @@
+ /* ar.c */
+
+ extern int unpackable;
+-extern ulong origsize, compsize;
++extern my_ulong origsize, compsize;
+
+ /* all the prototypes follow here for all files */
+
+@@ -78,7 +76,7 @@
+
+ /* DECODE.C */
+ void decode_start PARMS((void ));
+-int decode PARMS((uint count , uchar *buffer));
++int decode PARMS((uint count , uchar buffer []));
+
+ /* ENCODE.C */
+ void encode PARMS((FILE *, FILE *));
+@@ -87,14 +85,14 @@
+ void output PARMS((uint c , uint p ));
+ void huf_encode_start PARMS((void ));
+ void huf_encode_end PARMS((void ));
+-uint decode_c PARMS((void ));
+-uint decode_p PARMS((void ));
++my_uint decode_c PARMS((void ));
++my_uint decode_p PARMS((void ));
+ void huf_decode_start PARMS((void ));
+
+ /* IO.C */
+ void make_crctable PARMS((void ));
+ void fillbuf PARMS((int n ));
+-uint getbits PARMS((int n ));
++my_uint getbits PARMS((int n ));
+ void putbits PARMS((int n , uint x ));
+ int fread_crc PARMS((uchar *p , int n , FILE *f ));
+ void fwrite_crc PARMS((uchar *p , int n , FILE *f ));
+diff -ur zoo/basename.c zoo-gentoo/basename.c
+--- zoo/basename.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/basename.c 2003-09-26 23:59:12.000000000 +1200
+@@ -18,7 +18,7 @@
+
+ /* This function strips device/directory information from
+ a pathname and returns just the plain filename */
+-void basename (pathname, fname)
++void mybasename (pathname, fname)
+ char *pathname;
+ char fname[];
+ {
+diff -ur zoo/bsd.c zoo-gentoo/bsd.c
+--- zoo/bsd.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/bsd.c 2003-09-27 00:00:44.000000000 +1200
+@@ -74,26 +74,14 @@
+ #define SEC_IN_DAY (24L * 60L * 60L)
+ #define INV_VALUE (SEC_IN_DAY + 1L)
+ static long retval = INV_VALUE; /* cache, init to impossible value */
+-#ifndef __386BSD__
+ struct timeval tp;
+ struct timezone tzp;
+-#else
+- time_t lt;
+- struct tm *tm;
+-#endif
+ if (retval != INV_VALUE) /* if have cached value, return it */
+ return retval;
+-#ifndef __386BSD__
+ gettimeofday (&tp, &tzp); /* specific to 4.3BSD */
+ /* return (tzp.tz_minuteswest * 60); */ /* old incorrect code */
+ /* Timezone fix thanks to Bill Davidsen <wedu@ge-crd.ARPA> */
+- /* !! - ache@hq.demos.su */
+- retval = tzp.tz_minuteswest * 60 - (tzp.tz_dsttime != 0) * 3600L;
+-#else
+- time(&lt);
+- tm = localtime(&lt);
+- retval = -tm->tm_gmtoff;
+-#endif
++ retval = tzp.tz_minuteswest * 60 - tzp.tz_dsttime * 3600L;
+ return retval;
+ }
+
+diff -ur zoo/decode.c zoo-gentoo/decode.c
+--- zoo/decode.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/decode.c 2003-09-27 00:02:18.000000000 +1200
+@@ -27,8 +27,8 @@
+ */
+
+ int decode(count, buffer)
+-uint count;
+-uchar *buffer;
++my_uint count;
++uchar buffer[];
+ /* The calling function must keep the number of
+ bytes to be processed. This function decodes
+ either 'count' bytes or 'DICSIZ' bytes, whichever
+@@ -37,8 +37,8 @@
+ Call decode_start() once for each new file
+ before calling this function. */
+ {
+- static uint i;
+- uint r, c;
++ static my_uint i;
++ my_uint r, c;
+
+ r = 0;
+ while (--j >= 0) {
+diff -ur zoo/encode.c zoo-gentoo/encode.c
+--- zoo/encode.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/encode.c 2003-09-27 00:02:56.000000000 +1200
+@@ -5,11 +5,6 @@
+ Adapted from "ar" archiver written by Haruhiko Okumura.
+ */
+
+-#ifdef ANSI_HDRS
+-# include <stdlib.h>
+-# include <string.h>
+-#endif
+-
+ #include "options.h"
+ #include "zoo.h"
+ #include "ar.h"
+@@ -20,6 +15,11 @@
+
+ #include <assert.h>
+
++#ifdef ANSI_HDRS
++# include <stdlib.h>
++# include <string.h>
++#endif
++
+ #include "errors.i"
+
+ FILE *lzh_infile;
+diff -ur zoo/huf.c zoo-gentoo/huf.c
+--- zoo/huf.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/huf.c 2003-09-27 00:03:20.000000000 +1200
+@@ -5,10 +5,6 @@
+
+ Adapted from "ar" archiver written by Haruhiko Okumura.
+ ***********************************************************/
+-#ifdef ANSI_HDRS
+-# include <stdlib.h>
+-#endif
+-
+ #include "options.h"
+ #include "zoo.h"
+ #include "ar.h"
+@@ -17,6 +13,10 @@
+
+ extern void prterror();
+
++#ifdef ANSI_HDRS
++# include <stdlib.h>
++#endif
++
+ #define NP (DICBIT + 1)
+ #define NT (CODE_BIT + 3)
+ #define PBIT 4 /* smallest integer such that (1U << PBIT) > NP */
+diff -ur zoo/lzd.c zoo-gentoo/lzd.c
+--- zoo/lzd.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/lzd.c 2003-09-27 00:03:54.000000000 +1200
+@@ -59,7 +59,7 @@
+ extern unsigned int filt_lzd_word;
+ #endif /* FILTER */
+
+-void xwr_dchar PARMS ((int));
++void xwr_dchar PARMS ((char));
+ static int firstchar PARMS ((int));
+ static void cbfill PARMS ((void));
+
+diff -ur zoo/lzh.c zoo-gentoo/lzh.c
+--- zoo/lzh.c 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/lzh.c 2003-09-27 00:04:56.000000000 +1200
+@@ -45,14 +45,14 @@
+
+ decode_start();
+ while (!decoded) {
+- n = decode((uint) DICSIZ, (uchar *)out_buf_adr); /* n = count of chars decoded */
++ n = decode((my_uint) DICSIZ, out_buf_adr); /* n = count of chars decoded */
+ #ifdef COUNT_BYTES
+ bytes_decoded += n; /*debug*/
+ #endif
+ #ifdef CHECK_BREAK
+ check_break();
+ #endif
+- fwrite_crc((uchar *)out_buf_adr, n, outfile);
++ fwrite_crc(out_buf_adr, n, outfile);
+ #ifdef SHOW_DOTS
+ (void) putc('.', stderr);
+ (void) fflush(stderr);
+diff -ur zoo/lzh.h zoo-gentoo/lzh.h
+--- zoo/lzh.h 2003-09-26 23:51:22.000000000 +1200
++++ zoo-gentoo/lzh.h 2003-09-27 00:05:21.000000000 +1200
+@@ -34,4 +34,4 @@
+ #define CBIT 9 /* $\lfloor \log_2 NC \rfloor + 1$ */
+ #define CODE_BIT 16 /* codeword length */
+
+-extern ushort left[], right[];
++extern my_ushort left[], right[];
+diff -ur zoo/makefile zoo-gentoo/makefile
+--- zoo/makefile 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/makefile 2003-09-27 00:06:54.000000000 +1200
+@@ -18,13 +18,13 @@
+
+ MAKE = make # needed for some systems e.g. older BSD
+
+-CC = cc
++CC = gcc
+ CFLAGS =
+ MODEL =
+ EXTRA = -DBIG_MEM -DNDEBUG
+ LINTFLAGS = -DLINT
+-OPTIM = -O
+-DESTDIR = /usr/local/bin
++OPTIM = -O3
++DESTDIR = /usr/bin
+
+ #List of all object files created for Zoo
+ ZOOOBJS = addbfcrc.o addfname.o basename.o comment.o crcdefs.o \
+@@ -50,6 +50,7 @@
+ @echo "generic: generic **IX environment, minimal functionlity"
+ @echo "bsd: 4.3BSD or reasonable equivalent"
+ @echo "bsdansi: 4.3BSD with ANSI C"
++ @echo "linux: Linux for Alpha & i386"
+ @echo "ultrix: ULTRIX 4.1"
+ @echo "convex: Convex C200 series"
+ @echo "sysv: System V Release 2 or 3; or SCO Xenix"
+@@ -106,6 +107,10 @@
+ convex:
+ $(MAKE) CFLAGS="-c $(OPTIM) -DBSD4_3 -DANSI_HDRS" $(TARGETS)
+
++# Linux
++linux:
++ $(MAKE) CFLAGS="-c $(OPTIM) -DSYS_V -DANSI_HDRS -DHAVE_MKDIR" $(TARGETS)
++
+ # SysV.2, V.3, SCO Xenix
+ sysv:
+ $(MAKE) CFLAGS="-c $(OPTIM) -DSYS_V" $(TARGETS)
+@@ -235,7 +240,7 @@
+ parse.o: zoofns.h zooio.h
+ portable.o: /usr/include/stdio.h assert.h debug.h machine.h options.h
+ portable.o: portable.h various.h zoo.h zoofns.h zooio.h
+-prterror.o: /usr/include/stdio.h /usr/include/varargs.h options.h various.h
++prterror.o: /usr/include/stdio.h options.h various.h
+ prterror.o: zoofns.h zooio.h
+ sysv.o: /usr/include/sys/stat.h /usr/include/sys/types.h /usr/include/time.h
+ sysv.o: nixmode.i nixtime.i
+diff -ur zoo/maketbl.c zoo-gentoo/maketbl.c
+--- zoo/maketbl.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/maketbl.c 2003-09-27 00:27:15.000000000 +1200
+@@ -16,10 +16,10 @@
+ int nchar;
+ uchar bitlen[];
+ int tablebits;
+-ushort table[];
++my_ushort table[];
+ {
+- ushort count[17], weight[17], start[18], *p;
+- uint i, k, len, ch, jutbits, avail, nextcode, mask;
++ my_ushort count[17], weight[17], start[18], *p;
++ my_uint i, k, len, ch, jutbits, avail, nextcode, mask;
+
+ for (i = 1; i <= 16; i++) count[i] = 0;
+ for (i = 0; i < nchar; i++) count[bitlen[i]]++;
+@@ -27,7 +27,7 @@
+ start[1] = 0;
+ for (i = 1; i <= 16; i++)
+ start[i + 1] = start[i] + (count[i] << (16 - i));
+- if (start[17] != (ushort)((unsigned) 1 << 16))
++ if (start[17] != (my_ushort)((unsigned) 1 << 16))
+ prterror('f', "Bad decode table\n");
+
+ jutbits = 16 - tablebits;
+@@ -41,7 +41,7 @@
+ }
+
+ i = start[tablebits + 1] >> jutbits;
+- if (i != (ushort)((unsigned) 1 << 16)) {
++ if (i != (my_ushort)((unsigned) 1 << 16)) {
+ k = 1 << tablebits;
+ while (i != k) table[i++] = 0;
+ }
+diff -ur zoo/maketree.c zoo-gentoo/maketree.c
+--- zoo/maketree.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/maketree.c 2003-09-27 00:09:06.000000000 +1200
+@@ -12,7 +12,7 @@
+
+ static int n, heapsize;
+ static short heap[NC + 1];
+-static ushort *freq, *sortptr, len_cnt[17];
++static my_ushort *freq, *sortptr, len_cnt[17];
+ static uchar *len;
+
+ static void count_len(i) /* call with i = root */
+@@ -33,7 +33,7 @@
+ int root;
+ {
+ int i, k;
+- uint cum;
++ my_uint cum;
+
+ for (i = 0; i <= 16; i++) len_cnt[i] = 0;
+ count_len(root);
+@@ -75,10 +75,10 @@
+ static void make_code(j, length, code)
+ int j;
+ uchar length[];
+-ushort code[];
++my_ushort code[];
+ {
+ int i;
+- ushort start[18];
++ my_ushort start[18];
+
+ start[1] = 0;
+ for (i = 1; i <= 16; i++)
+@@ -88,9 +88,9 @@
+
+ int make_tree(nparm, freqparm, lenparm, codeparm)
+ int nparm;
+-ushort freqparm[];
++my_ushort freqparm[];
+ uchar lenparm[];
+-ushort codeparm[];
++my_ushort codeparm[];
+ /* make tree, calculate len[], return root */
+ {
+ int i, j, k, avail;
+diff -ur zoo/options.h zoo-gentoo/options.h
+--- zoo/options.h 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/options.h 2003-09-27 00:12:07.000000000 +1200
+@@ -31,7 +31,7 @@
+ #define GETTZ
+ #define FATTR
+ #define T_SIGNAL void
+-#define VARARGS
++#define STDARG
+ #define NEED_MEMMOVE
+ /* #define NEED_MEMCPY */
+ #define T_UINT16 unsigned short /* must be 16 bit unsigned */
+@@ -73,6 +73,7 @@
+ /* #define UNBUF_LIMIT 512 */
+ #define T_SIGNAL void
+ #define DIRECT_CONVERT
++#define STDARG
+ #define CHECK_BREAK
+ #define check_break kbhit
+ #define HAVE_ISATTY
+@@ -88,6 +89,7 @@
+ /***********************************************************************/
+
+ #ifdef BSD4_3
++#define NOSTRCHR /* not really needed for 4.3BSD */
+ #define FILTER
+ #define IO_MACROS
+ #define EXISTS(f) (access(f, 00) == 0)
+@@ -101,23 +103,12 @@
+ #define SETBUF
+ #define GETTZ
+ #define FATTR
+-#ifdef __STDC__
+-#ifndef ANSI_HDRS
+-#define ANSI_HDRS
+-#endif
+-#define T_SIGNAL void
+-#define STDARG
+-#define ANSI_PROTO
+-#define VOIDPTR void *
+-#else
+-#define NOSTRCHR /* not really needed for 4.3BSD */
+ #define T_SIGNAL int
+ #define VARARGS
+ #define NEED_MEMMOVE
+-#define NEED_VPRINTF /* older BSDs only; newer ones have vprintf */
+-#endif
+ #define T_UINT16 unsigned short /* must be 16 bit unsigned */
+ #define HAVE_ISATTY
++#define NEED_VPRINTF /* older BSDs only; newer ones have vprintf */
+ #endif /* BSD4_3 */
+
+ /* Ultrix 4.1 */
+diff -ur zoo/prterror.c zoo-gentoo/prterror.c
+--- zoo/prterror.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/prterror.c 2003-09-27 00:26:15.000000000 +1200
+@@ -23,15 +23,7 @@
+ # include <ctype.h> /* for isdigit() */
+ #endif
+
+-#ifdef STDARG
+ # include <stdarg.h>
+-#else
+-# ifdef VARARGS
+-# include <varargs.h>
+-# else
+-# include "MUST DEFINE STDARG OR VARARGS"
+-# endif
+-#endif
+
+ #ifdef NEED_VPRINTF
+ static int zvfprintf();
+@@ -115,29 +107,11 @@
+ char could_not_open[] = "Could not open %s.\n";
+ #endif
+
+-#ifdef STDARG
+-void prterror(int level, char *format, ...)
+-#else
+-/*VARARGS*/
+-void prterror(va_alist)
+-va_dcl
+-#endif
++void prterror(level, format, a, b, c, d)
++register int level;
++char *format, *a, *b, *c, *d;
+ {
+- va_list args;
+ char string[120]; /* local format string */
+-#ifdef VARARGS
+- int level;
+- char *format;
+-#endif
+-
+-#ifdef STDARG
+- va_start(args, format);
+-#else
+- va_start(args);
+- level = va_arg(args, int);
+- format = va_arg(args, char *);
+-#endif
+-
+ *string = '\0'; /* get a null string to begin with */
+
+ #ifdef OOZ
+@@ -149,7 +123,7 @@
+ switch (level) {
+ case 'M': *string = '\0'; /* fall through to 'm' */
+ case 'm': if (quiet) return; break;
+- case 'w':
++ case 'w':
+ if (quiet > 1) return;
+ strcat (string, "WARNING: "); break;
+ case 'e':
+@@ -163,12 +137,8 @@
+ strcat (string, format); /* just append supplied format string */
+
+ /* and print the whole thing */
+-#ifdef NEED_VPRINTF
+- (void) zvfprintf(stdout, string, args);
+-#else
+- (void) vprintf(string, args);
+-#endif
+- fflush (stdout);
++ printf (string, a, b, c, d); /* and print the whole thing */
++ fflush (stdout);
+
+ if (level == 'f') /* and abort on fatal error 'f' but not 'F' */
+ zooexit (1);
+diff -ur zoo/sysv.c zoo-gentoo/sysv.c
+--- zoo/sysv.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/sysv.c 2003-09-27 00:13:00.000000000 +1200
+@@ -129,6 +129,7 @@
+ exists by the name of the needed directory.
+ */
+
++#ifndef HAVE_MKDIR
+ int mkdir(dirname)
+ char *dirname;
+ {
+@@ -140,6 +141,7 @@
+ }
+ return (0);
+ }
++#endif
+
+ /* No file truncate system call in older System V. If yours has one,
+ add it here -- see bsd.c for example. It's ok for zootrunc to be
+diff -ur zoo/zoo.1 zoo-gentoo/zoo.1
+--- zoo/zoo.1 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoo.1 2003-09-27 00:41:08.000000000 +1200
+@@ -176,15 +176,15 @@
+ Novice@@Equivalent
+ Command@Description@Expert Command
+ _
+-\-add@add files to archive@ahP
++\-add@add files to archive@aP:
+ \-extract@extract files from archive@x
+-\-move@move files to archive@ahMP
++\-move@move files to archive@aMP:
+ \-test@test archive integrity@xNd
+ \-print@extract files to standard output@xp
+ \-delete@delete files from archive@DP
+-\-list@list archive contents@Vm
+-\-update@add new or newer files@ahunP
+-\-freshen@by add newer files@ahuP
++\-list@list archive contents@VC
++\-update@add new or newer files@aunP:
++\-freshen@by add newer files@auP:
+ \-comment@add comments to files@c
+ .TE
+ .fi
+@@ -1041,7 +1041,7 @@
+ Matches any sequence of zero or more characters.
+ .PP
+ .TP
+-.B ?
++.B \?
+ Matches any single character.
+ .sp 1
+ Arbitrary combinations of
+diff -ur zoo/zoo.c zoo-gentoo/zoo.c
+--- zoo/zoo.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoo.c 2003-09-27 00:42:34.000000000 +1200
+@@ -225,17 +225,17 @@
+ if (cmd != NONE) {
+ switch (cmd) {
+
+- case ADD: zooadd (zooname, filecount, &argv[3], "ahP"); break;
+- case FRESHEN: zooadd (zooname, filecount, &argv[3], "ahuP"); break;
+- case UPDATE: zooadd (zooname, filecount, &argv[3], "ahunP"); break;
+- case MOVE: zooadd (zooname, filecount, &argv[3], "ahMP"); break;
++ case ADD: zooadd (zooname, filecount, &argv[3], "aP:"); break;
++ case FRESHEN: zooadd (zooname, filecount, &argv[3], "auP:"); break;
++ case UPDATE: zooadd (zooname, filecount, &argv[3], "aunP:"); break;
++ case MOVE: zooadd (zooname, filecount, &argv[3], "aMP:"); break;
+
+ case EXTRACT: zooext (zooname, "x"); break;
+ case TEST: zooext (zooname, "xNd"); break;
+ case PRINT: zooext (zooname, "xp"); break;
+
+ case DELETE: zoodel (zooname, "DP",1); break;
+- case LIST: zoolist (&argv[2], "Vm", argc-2); break;
++ case LIST: zoolist (&argv[2], "VC", argc-2); break;
+ case COMMENT: comment (zooname, "c"); break;
+ default: goto show_usage;
+ }
+diff -ur zoo/zoo.h zoo-gentoo/zoo.h
+--- zoo/zoo.h 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoo.h 2003-09-27 00:19:06.000000000 +1200
+@@ -1,9 +1,5 @@
+ /* derived from: zoo.h 2.16 88/01/27 23:21:36 */
+
+-#ifndef ZOO_H
+-
+-#define ZOO_H
+-
+ /*
+ The contents of this file are hereby released to the public domain.
+
+@@ -131,7 +127,7 @@
+ char fname[FNAMESIZE]; /* filename */
+
+ int var_dir_len; /* length of variable part of dir entry */
+- char tz; /* timezone where file was archived */
++ uchar tz; /* timezone where file was archived */
+ unsigned int dir_crc; /* CRC of directory entry */
+
+ /* fields for variable part of directory entry follow */
+@@ -244,5 +240,3 @@
+ #define MAXGEN 0x0f
+ /* version mask to prune down to correct size on large-word machines */
+ #define VER_MASK 0xffff
+-
+-#endif /* ZOO_H */
+diff -ur zoo/zoo.man zoo-gentoo/zoo.man
+--- zoo/zoo.man 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoo.man 2003-09-27 00:20:31.000000000 +1200
+@@ -121,15 +121,15 @@
+ Novice Equivalent
+ Command Description Expert Command
+ ____________________________________________________________
+- -add add files to archive ahP
++ -add add files to archive aP
+ -extract extract files from archive x
+- -move move files to archive ahMP
++ -move move files to archive aMP
+ -test test archive integrity xNd
+ -print extract files to standard output xp
+ -delete delete files from archive DP
+- -list list archive contents Vm
+- -update add new or newer files ahunP
+- -freshen by add newer files ahuP
++ -list list archive contents VC
++ -update add new or newer files aunP
++ -freshen by add newer files auP
+ -comment add comments to files c
+
+ Expert commands
+diff -ur zoo/zooadd.c zoo-gentoo/zooadd.c
+--- zoo/zooadd.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zooadd.c 2003-09-27 00:16:12.000000000 +1200
+@@ -34,9 +34,7 @@
+ int *, int *, int *, int *, int *, int *, int *, int *));
+ int ver_too_high PARMS ((struct zoo_header *));
+ void get_comment PARMS ((struct direntry *, ZOOFILE, char *));
+-#ifndef PORTABLE
+ void copyfields PARMS ((struct direntry *, struct tiny_header *));
+-#endif
+ void storefname PARMS ((struct direntry *, char *, int));
+ char *choosefname PARMS ((struct direntry *));
+
+@@ -134,7 +132,7 @@
+
+ if (zoo_file == NOFILE)
+ prterror ('f', could_not_open, zoo_path);
+-basename(zoo_path, zoo_fname); /* get basename of archive */
++mybasename(zoo_path, zoo_fname); /* get basename of archive */
+ rootname (zoo_path, zoo_bak); /* name without extension */
+ strcat (zoo_bak, BACKUP_EXT); /* name of backup of this archive */
+
+@@ -224,7 +222,7 @@
+ break;
+ }
+
+- basename (this_path, this_fname); /* get just filename for later */
++ mybasename (this_path, this_fname); /* get just filename for later */
+
+ this_file = zooopen(this_path, Z_READ);
+ if (this_file == NOFILE) {
+diff -ur zoo/zooadd2.c zoo-gentoo/zooadd2.c
+--- zoo/zooadd2.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zooadd2.c 2003-09-27 00:15:27.000000000 +1200
+@@ -263,7 +263,7 @@
+ direntry->zoo_tag = ZOO_TAG;
+ direntry->type = 2; /* type is now 2 */
+ #ifdef GETTZ
+- direntry->tz = gettz() / (15 * 60); /* seconds => 15-min units */
++ direntry->tz = (uchar) (gettz() / (15 * 60)); /* seconds => 15-min units */
+ #else
+ direntry->tz = NO_TZ; /* timezone unknown */
+ #endif
+diff -ur zoo/zooext.c zoo-gentoo/zooext.c
+--- zoo/zooext.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zooext.c 2003-09-27 00:17:24.000000000 +1200
+@@ -626,7 +626,7 @@
+
+ /* Ctrl_c() is called if ^C is hit while a file is being extracted.
+ It closes the files, deletes it, and exits. */
+-T_SIGNAL ctrl_c(int foo)
++T_SIGNAL ctrl_c()
+ {
+ #ifndef NOSIGNAL
+ signal (SIGINT, SIG_IGN); /* ignore any more */
+diff -ur zoo/zoofns.h zoo-gentoo/zoofns.h
+--- zoo/zoofns.h 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoofns.h 2003-09-27 00:18:14.000000000 +1200
+@@ -42,12 +42,12 @@
+ int cfactor PARMS ((long, long));
+ int chname PARMS ((char *, char *));
+ int cmpnum PARMS ((unsigned int, unsigned int, unsigned int, unsigned int));
+-T_SIGNAL ctrl_c PARMS ((int));
++T_SIGNAL ctrl_c PARMS ((void));
+ int exists PARMS ((char *));
+ int getfile PARMS ((ZOOFILE, ZOOFILE, long, int));
+ int getutime PARMS ((char *, unsigned *, unsigned *));
+ int gettime PARMS ((ZOOFILE, unsigned *, unsigned *));
+-T_SIGNAL handle_break PARMS ((int));
++T_SIGNAL handle_break PARMS ((void));
+
+ #ifdef USE_ASCII
+ int isupper PARMS ((int));
+@@ -85,7 +85,7 @@
+ void addfname PARMS ((char *, long, unsigned int, unsigned int,
+ unsigned, unsigned));
+ void add_version PARMS ((char *, struct direntry *));
+-void basename PARMS ((char *, char []));
++void mybasename PARMS ((char *, char []));
+ void break_off PARMS ((void));
+ void close_file PARMS ((ZOOFILE));
+ void comment PARMS ((char *, char *));
+diff -ur zoo/zooio.h zoo-gentoo/zooio.h
+--- zoo/zooio.h 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zooio.h 2003-09-27 00:19:49.000000000 +1200
+@@ -12,8 +12,6 @@
+ #define OK_STDIO
+ #endif
+
+-#include "zoo.h"
+-
+ #ifndef PARMS
+ #ifdef LINT_ARGS
+ #define PARMS(x) x
+diff -ur zoo/zoopack.c zoo-gentoo/zoopack.c
+--- zoo/zoopack.c 2003-09-26 23:51:23.000000000 +1200
++++ zoo-gentoo/zoopack.c 2003-09-27 00:21:21.000000000 +1200
+@@ -171,7 +171,7 @@
+ } else {
+ strcpy (temp_file, xes);
+ }
+-mktemp (temp_file); /* ... and make unique */
++mkstemp (temp_file); /* ... and make unique */
+ new_file = zoocreate (temp_file);
+ if (new_file == NOFILE)
+ prterror ('f', "Could not create temporary file %s.\n", temp_file);
+@@ -388,7 +388,7 @@
+
+ /* handle_break() */
+ /* Sets break_hit to 1 when called */
+-T_SIGNAL handle_break(int foo)
++T_SIGNAL handle_break()
+ {
+ #ifndef NOSIGNAL
+ signal (SIGINT, SIG_IGN); /* ignore future control ^Cs for now */
+