home *** CD-ROM | disk | FTP | other *** search
/ Source Code 1994 March / Source_Code_CD-ROM_Walnut_Creek_March_1994.iso / compsrcs / misc / volume31 / unzip50 / part13 < prev    next >
Encoding:
Text File  |  1992-08-22  |  60.8 KB  |  1,635 lines

  1. Newsgroups: comp.sources.misc
  2. From: zip-bugs@cs.ucla.edu (Info-ZIP group)
  3. Subject:  v31i116:  unzip50 - Info-ZIP portable UnZip, version 5.0, Part13/14
  4. Message-ID: <1992Aug24.025836.25347@sparky.imd.sterling.com>
  5. X-Md4-Signature: 1b341038a370ce875fb7bde5b4220895
  6. Date: Mon, 24 Aug 1992 02:58:36 GMT
  7. Approved: kent@sparky.imd.sterling.com
  8.  
  9. Submitted-by: zip-bugs@cs.ucla.edu (Info-ZIP group)
  10. Posting-number: Volume 31, Issue 116
  11. Archive-name: unzip50/part13
  12. Supersedes: unzip: Volume 29, Issue 31-42
  13. Environment: UNIX, VMS, OS/2, MS-DOS, MACINTOSH, WIN-NT, LINUX, MINIX, COHERENT AMIGA?, !ATARI, symlink, SGI, DEC, Cray, Convex, Amdahl, Sun
  14.  
  15. #! /bin/sh
  16. # This is a shell archive.  Remove anything before this line, then feed it
  17. # into a shell via "sh file" or similar.  To overwrite existing files,
  18. # type "sh file -c".
  19. # The tool that generated this appeared in the comp.sources.unix newsgroup;
  20. # send mail to comp-sources-unix@uunet.uu.net if you want that tool.
  21. # Contents:  AMIGA/Contents AMIGA/DMakefile AMIGA/lmkfile
  22. #   AMIGA/patch.pw AMIGA/readme.pw ATARI/Contents.UU
  23. #   ATARI/Makefile.st.UU ATARI/makeit.UU ATARI/unzip.lnk.UU
  24. #   MAC/mpw.make.UU MAC/thinkc.rsrc.hqx MSDOS/Contents
  25. #   MSDOS/bcc/tcconfig.tc.UU MSDOS/makefile.bcc MSDOS/makefile.qc
  26. #   MSDOS/tcc/unzip.tc.UU MSDOS/tcc/unzip_cr.prj
  27. #   MSDOS/tcc/unzip_cr.tc.UU MSDOS/tcc/zi_make.bat
  28. #   MSDOS/tcc/zipinfo.tc.UU NT/makefile.nt VMS/Contents
  29. #   VMS/bilf/make_bilf.com VMS/descrip.mms VMS/make_gcc_unzip.com
  30. #   VMS/make_vaxc_unzip.com VMS/makefile funzip.1 funzip.doc
  31. # Wrapped by kent@sparky on Sun Aug 23 21:09:36 1992
  32. PATH=/bin:/usr/bin:/usr/ucb ; export PATH
  33. echo If this archive is complete, you will see the following message:
  34. echo '          "shar: End of archive 13 (of 14)."'
  35. if test -f 'AMIGA/Contents' -a "${1}" != "-c" ; then 
  36.   echo shar: Will not clobber existing file \"'AMIGA/Contents'\"
  37. else
  38.   echo shar: Extracting \"'AMIGA/Contents'\" \(1150 characters\)
  39.   sed "s/^X//" >'AMIGA/Contents' <<'END_OF_FILE'
  40. XContents of the AMIGA sub-archive for UnZip 5.0 and later:
  41. X
  42. X  Contents      this file
  43. X  DMakefile     DICE compiler makefile for UnZip
  44. X  lmkfile       SAS/C makefile for UnZip
  45. X  patch.pw      Paul Wells _TZ patch, subsequently modified (see below)
  46. X  readme.pw     Paul Wells comments
  47. X  stat.c        stat() function for Paul Wells port
  48. X  utime.c       utime() function for Paul Wells port
  49. X
  50. XNotes:  Paul Wells' original Amiga port for SAS/C and Lattice C (I think)
  51. Xwas subsequently modified for another compiler (probably DICE by Georg
  52. XSassen), and possibly no longer compiles under the original compilers.
  53. XThe suspect code is in file_io.c and has to do with Paul's _TZ code, which
  54. Xis presently commented out and replaced by a specialized SetFileDate call.
  55. XThe file patch.pw will give you some idea of how the code originally looked.
  56. XPresumably all three compilers have predefined macros which identify them,
  57. Xso there need not be any conflict; but there may be one at the moment.
  58. X
  59. XNote also that the DICE compiler version does not require either of the
  60. Xtwo source files included here, and that none of the Amiga stuff has been
  61. Xtested since UnZip 4.1.
  62. END_OF_FILE
  63.   if test 1150 -ne `wc -c <'AMIGA/Contents'`; then
  64.     echo shar: \"'AMIGA/Contents'\" unpacked with wrong size!
  65.   fi
  66.   # end of 'AMIGA/Contents'
  67. fi
  68. if test -f 'AMIGA/DMakefile' -a "${1}" != "-c" ; then 
  69.   echo shar: Will not clobber existing file \"'AMIGA/DMakefile'\"
  70. else
  71.   echo shar: Extracting \"'AMIGA/DMakefile'\" \(854 characters\)
  72.   sed "s/^X//" >'AMIGA/DMakefile' <<'END_OF_FILE'
  73. X# DMakefile for UnZip 5.x with Amiga DICE compiler                 24 June 1992
  74. X#
  75. X# Not tested since v4.1.  Edit directories as required.
  76. X#
  77. X#Georg Sassen, D-5100 Aachen,+49-241-875158 subnet: georg@bluemoon.tunix.sub.org
  78. X#georg@bluemoon.GUN.de, georg@cip-s01.informatik.rwth-aachen.de, 2:242/7.11@fido
  79. X
  80. XCRYPTF =
  81. XCRYPTC =
  82. X# Uncomment following two lines for decryption version:
  83. X#CRYPTF = -DCRYPT
  84. X#CRYPTC = crypt.c
  85. X
  86. XEXE = DH0:bin/unzip
  87. XOD  = dtmp:unzip/
  88. XSRC1 = unzip.c $(CRYPTC) envargs.c explode.c extract.c file_io.c inflate.c
  89. XSRC2 = mapname.c match.c misc.c unreduce.c unshrink.c
  90. XSRCS = $(SRC1) $(SRC2)
  91. XCFLAGS = -mD $(CRYPTF)
  92. XOBJS = $(SRCS:"*.c":"$(OD)*.o") $(SRCS:"*.a":"$(OD)*.o")
  93. X
  94. Xall : $(EXE)
  95. X
  96. X$(OBJS) : $(SRCS) unzip.h zip.h
  97. X    dcc $(CFLAGS) -c -o %(left) %(right)
  98. X
  99. X$(EXE) : $(OBJS)
  100. X    dcc $(CFLAGS) -o %(left) %(right)
  101. X
  102. Xclean:
  103. X    rm -v $(OBJS)
  104. END_OF_FILE
  105.   if test 854 -ne `wc -c <'AMIGA/DMakefile'`; then
  106.     echo shar: \"'AMIGA/DMakefile'\" unpacked with wrong size!
  107.   fi
  108.   # end of 'AMIGA/DMakefile'
  109. fi
  110. if test -f 'AMIGA/lmkfile' -a "${1}" != "-c" ; then 
  111.   echo shar: Will not clobber existing file \"'AMIGA/lmkfile'\"
  112. else
  113.   echo shar: Extracting \"'AMIGA/lmkfile'\" \(1502 characters\)
  114.   sed "s/^X//" >'AMIGA/lmkfile' <<'END_OF_FILE'
  115. X# Makefile for UnZip 5.x using SAS/C 5.10a                       24 June 1992
  116. X#
  117. X# Not tested since UnZip 4.1.  May need to change directory names for stat.c
  118. X# and utime.c.
  119. X
  120. X#####################
  121. X# MACRO DEFINITIONS #
  122. X#####################
  123. X
  124. XCRYPTF =
  125. XCRYPTO =
  126. X# Uncomment following two lines for decryption version:
  127. X#CRYPTF = -DCRYPT
  128. X#CRYPTO = crypt.o
  129. X
  130. XCC = lc
  131. XCFLAGS = -O -DUNIX $(CRYPTF) -v -m0t -cuaisfr -rr
  132. XLD = blink
  133. XLDFLAGS = TO unzip FROM LIB:c.o
  134. XLDFLAGS2 = LIB LIB:lc.lib LIB:amiga.lib
  135. XEXE =
  136. XO = .o
  137. XOBJS = unzip$O $(CRYPTO) envargs$O explode$O extract$O file_io$O inflate$O\
  138. X       mapname$O match$O misc$O unreduce$O unshrink$O utime$O stat$O
  139. X
  140. X###############################################
  141. X# BASIC COMPILE INSTRUCTIONS AND DEPENDENCIES #
  142. X###############################################
  143. X
  144. X.c$O :
  145. X        $(CC) -o$@ $(CFLAGS) $*.c
  146. X
  147. Xunzip$(EXE):    $(OBJS)
  148. X        $(LD) $(LDFLAGS) $(OBJS) $(LDFLAGS2)
  149. X
  150. Xcrypt$O:        crypt.c unzip.h zip.h    # may or may not be in distribution
  151. Xenvargs$O:      envargs.c unzip.h
  152. Xexplode$O:      explode.c unzip.h
  153. Xextract$O:      extract.c unzip.h
  154. Xfile_io$O:      file_io.c unzip.h
  155. Xinflate$O:      inflate.c unzip.h
  156. Xmapname$O:      mapname.c unzip.h
  157. Xmatch$O:        match.c unzip.h
  158. Xmisc$O:         misc.c unzip.h
  159. Xunreduce$O:     unreduce.c unzip.h
  160. Xunshrink$O:     unshrink.c unzip.h
  161. Xunzip$O:        unzip.c unzip.h
  162. Xstat$O:         amiga/stat.c    # may need to change or remove directory name
  163. Xutime$O:        amiga/utime.c    # may need to change or remove directory name
  164. END_OF_FILE
  165.   if test 1502 -ne `wc -c <'AMIGA/lmkfile'`; then
  166.     echo shar: \"'AMIGA/lmkfile'\" unpacked with wrong size!
  167.   fi
  168.   # end of 'AMIGA/lmkfile'
  169. fi
  170. if test -f 'AMIGA/patch.pw' -a "${1}" != "-c" ; then 
  171.   echo shar: Will not clobber existing file \"'AMIGA/patch.pw'\"
  172. else
  173.   echo shar: Extracting \"'AMIGA/patch.pw'\" \(786 characters\)
  174.   sed "s/^X//" >'AMIGA/patch.pw' <<'END_OF_FILE'
  175. X*** v41/file_io.c Mon May 20 22:01:51 1991
  176. X--- v41a/file_io.c Mon May 20 22:53:32 1991
  177. X***************
  178. X*** 719,727 ****
  179. X  #ifdef BSD
  180. X      static struct timeb tbp;
  181. X  #else
  182. X      extern long timezone;
  183. X  #endif
  184. X! 
  185. X  
  186. X      close(outfd);
  187. X  
  188. X--- 720,731 ----
  189. X  #ifdef BSD
  190. X      static struct timeb tbp;
  191. X  #else
  192. X+ #ifdef AMIGA
  193. X+     extern char *_TZ;
  194. X+ #else
  195. X      extern long timezone;
  196. X  #endif
  197. X! #endif
  198. X  
  199. X      close(outfd);
  200. X  
  201. X***************
  202. X*** 794,799 ****
  203. X--- 798,806 ----
  204. X     ftime(&tbp);
  205. X     m_time += tbp.timezone * 60L;
  206. X  #else                                   /* !BSD */
  207. X+ #ifdef AMIGA
  208. X+     _TZ = getenv("TZ");
  209. X+ #endif
  210. X      tzset();                            /* Set `timezone'. */
  211. X      m_time += timezone;                 /* account for timezone differences */
  212. X  #endif
  213. END_OF_FILE
  214.   if test 786 -ne `wc -c <'AMIGA/patch.pw'`; then
  215.     echo shar: \"'AMIGA/patch.pw'\" unpacked with wrong size!
  216.   fi
  217.   # end of 'AMIGA/patch.pw'
  218. fi
  219. if test -f 'AMIGA/readme.pw' -a "${1}" != "-c" ; then 
  220.   echo shar: Will not clobber existing file \"'AMIGA/readme.pw'\"
  221. else
  222.   echo shar: Extracting \"'AMIGA/readme.pw'\" \(940 characters\)
  223.   sed "s/^X//" >'AMIGA/readme.pw' <<'END_OF_FILE'
  224. XDate: Tue, 21 May 91 12:46:10 EST
  225. XFrom: mailrus!gatech!simcity!paul@uunet.UU.NET (Paul Wells)
  226. XSubject: mods for unzip 4.1 for Amiga
  227. XMessage-ID: <9105211746.AA03598@simcity.UUCP>
  228. X
  229. XPlease find enclosed a shar file for Amiga SAS/C 5.10a.  Two source files
  230. Xfor the Amiga are included:  utime.c, so we can alter the date of a file,
  231. Xand stat.c, which isn't really needed for the SAS compiler, but is necessary
  232. Xfor the Lattice.  Sorry, sys/stat.h is not mine, hence, not included; utime.c
  233. Xand stat.c are my original code and released to the public domain.  The patches
  234. Xpertain primarily to ANSI prototyping; however, please note that the SAS
  235. Xcompiler doesn't know what a dup function is.  Everything was compiled with
  236. X-DUNIX -DNOTINT16 and other appropriate SAS/C flags, as noted in lmkfile.
  237. XI hope this is useful for others, but apologize if I didn't get there first.
  238. X
  239. XPaul Wells
  240. X..!gatech!wa4mei!paulw         (or)
  241. X..!gatech!wa4mei!simcity!paul
  242. END_OF_FILE
  243.   if test 940 -ne `wc -c <'AMIGA/readme.pw'`; then
  244.     echo shar: \"'AMIGA/readme.pw'\" unpacked with wrong size!
  245.   fi
  246.   # end of 'AMIGA/readme.pw'
  247. fi
  248. if test -f 'ATARI/Contents.UU' -a "${1}" != "-c" ; then 
  249.   echo shar: Will not clobber existing file \"'ATARI/Contents.UU'\"
  250. else
  251.   echo shar: Extracting \"'ATARI/Contents.UU'\" \(1901 characters\)
  252.   sed "s/^X//" >'ATARI/Contents.UU' <<'END_OF_FILE'
  253. Xbegin 666 ATARI/Contents
  254. XM0V]N=&5N=',@;V8@=&AE($%405))('-U8BUA<F-H:79E(&9O<B!5;EII<" T
  255. XM+C$Z#0H-"B @0V]N=&5N=',@(" @('1H:7,@9FEL90T*("!!=&%R:5-4+G!A
  256. XM=" @<&%T8VAE<R!T;R!5;EII<" T+C$@9F]R($%T87)I(%-4#0H@($UA:V5F
  257. XM:6QE+G-T("!-87)K(%=I;&QI86US(&UA:V5F:6QE(&9O<B!4=7)B;R!#(&-O
  258. XM;7!I;&5R#0H@(&UA:V5I=" @(" @("!S:6UP;&4@8V]M;6%N9"!S8W)I<'0@
  259. XM=&\@;6%K92!5;EII< T*("!214%$344N<W)C(" @;F]T97,@9G)O;2!-87)T
  260. XM:6X@4V-H=6QZ(&]N(&AI<R!P871C:&5S#0H@('1C+F-F9R @(" @("!4=7)B
  261. XM;R!#(&=E;F5R86P@8V]N9FEG=7)A=&EO;B!F:6QE(&9O<B!5;EII<" H8FEN
  262. XM87)Y*0T*("!U;GII<"YL;FL@(" @<F5F97)R960@=&\@87,@(E1,24Y++D]0
  263. XM5"(@:6X@;F]T97,_/PT*("!U;GII<"YP<FH@(" @5'5R8F\@0R!P<F]J96-T
  264. XM(&9I;&4@9F]R(%5N6FEP#0H-"D%L;"!M871E<FEA;"!I;B!T:&ES('-U8BUA
  265. XM<F-H:79E('=A<R!P<F]V:61E9"!B>2!-87)T:6X@4V-H=6QZ+@T*56YF;W)T
  266. XM=6YA=&5L>2P@:&ES('!A=&-H97,@86=A:6YS="!V-"XQ(&%R<FEV960@:G5S
  267. XM="!A<R!V-"XR('=A<R -"G)E;&5A<V5D(&%S(&$@9FEN86P@(F9E871U<F4M
  268. XM9G)E97IE(B!B971A+"!T;V\@;&%T92!T;R!I;F-O<G!O<F%T92X-"E-I;F-E
  269. XM('1H92!F:6QE<R!F;W(@56Y::7 @:&%V92!C:&%N9V5D(&-O;G-I9&5R86)L
  270. XM>2!B971W965N('9E<BT-"G-I;VYS+2UI;B!P87)T:6-U;&%R+"!U;GII<"YC
  271. XM+"!E>'1R86-T+F,@86YD(&9I;&5?:6\N8RTM=&AE('!A=&-H97,-"G!R;W9I
  272. XM9&5D(&AE<F4@=VEL;"!F86EL(&UI<V5R86)L>2X@(%=E('=I;&PL(&AO=V5V
  273. XM97(L('-E92!W:&%T('=E#0IC86X@9&\@=&\@:6YC;W)P;W)A=&4@;6]S="!O
  274. XM9B!T:&5M(&)E9F]R92!V-2XP+@T*#0I4:&4@;F]N+4%T87)I('!A=&-H97,@
  275. XM;65N=&EO;F5D(&EN($UA<G1I;B=S(')E861M92!F:6QE(&%R92!N;W0-"FEN
  276. XM8VQU9&5D(&AE<F4N("!";W1H('1H92!5;FEX(&)L86YK<R!P871C:"!A;F0@
  277. XM=&AE('-Y;6)O;&EC(&QI;FMS#0IP871C:&5S(&%R92!N;R!L;VYG97(@;F5C
  278. XM97-S87)Y("AA8W1U86QL>2P@=&AE<F4@:7,@82!B=6<@:6X@=&AE#0IE>&ES
  279. XM=&EN9R!S>6UB;VQI8R!L:6YK<R!C;V1E+2UI="!W;VXG="!D;R!C;VUP<F5S
  280. XM<V5D(&QI;FMS('!R;W!E<FQY#0HM+6)U="!T:&ES(&ES(&$@<F%R92!P<F]B
  281. XM;&5M*3L@=&AE(&]P=&EM:7IA=&EO;B!P871C:"!I<R!O;B!H;VQD#0IB=70@
  282. XM=VEL;"!P<F]B86)L>2!B92!I;F-O<G!O<F%T960@:6X@=C4N,"!A<R!W96QL
  283. XM+"!A<W-U;6EN9R!I= T*9&]E<VXG="!B<F5A:R!A;GD@;W1H97(@<WES=&5M
  284. X$<RX-"G-U
  285. Xend
  286. END_OF_FILE
  287.  if test 1901 -ne `wc -c <'ATARI/Contents.UU'`; then
  288.     echo shar: \"'ATARI/Contents.UU'\" unpacked with wrong size!
  289.   else
  290.     echo shar: Uudecoding \"'ATARI/Contents'\" \(1354 characters\)
  291.     cat ATARI/Contents.UU | uudecode
  292.     if test 1354 -ne `wc -c <'ATARI/Contents'`; then
  293.       echo shar: \"'ATARI/Contents'\" uudecoded with wrong size!
  294.     else
  295.       rm ATARI/Contents.UU
  296.     fi
  297.   fi
  298.   # end of 'ATARI/Contents.UU'
  299. fi
  300. if test -f 'ATARI/Makefile.st.UU' -a "${1}" != "-c" ; then 
  301.   echo shar: Will not clobber existing file \"'ATARI/Makefile.st.UU'\"
  302. else
  303.   echo shar: Extracting \"'ATARI/Makefile.st.UU'\" \(1622 characters\)
  304.   sed "s/^X//" >'ATARI/Makefile.st.UU' <<'END_OF_FILE'
  305. Xbegin 666 ATARI/Makefile.st
  306. XM(R @36%K969I;&4N<W0)36%K969I;&4@9F]R(%5N6FEP(#0N,"P-"B,@('5S
  307. XM:6YG(%1U<F)O($,@,BXP(&9O<B!T:&4@071A<FD@4U0@86YD#0HC("!M86ME
  308. XM(&9R;VT@=&AE($UA<FL@5VEL;&EA;7,@0R S+CD@*'-O<G)Y(&9O<B!T:&%T
  309. XM(&UI>'1U<F4I#0HC#0H-"B,@55!015)#05-%(&9I;&4@;F%M97,@9F%C:6QI
  310. XM=&%T92!41"=S('5N9&5R<W1A;F1I;F<@;V8@;6]D=6QE<RX-"BY3549&25A%
  311. XM4SH@+F\@+D\@+F,@+D,@+G,-"@T*5$-(3TU%"3T@13I<=&,-"@T*(R,C(R,C
  312. XM(R,C(R,C(R,C(R,C(R,C#0HC($U!0U)/($1%1DE.251)3TY3(",-"B,C(R,C
  313. XM(R,C(R,C(R,C(R,C(R,C(PT*#0I#0PD]('1C8PT*(T-&3$%'4PD]("U$051!
  314. XM4DE?4U0],2 M62 M23TD*%1#2$]-12E<:6YC;'5D90T*0T9,04=3"3T@+41!
  315. XM5$%225]35#TQ("U)/20H5$-(3TU%*5QI;F-L=61E#0HC3$9,04=3"3T@+4P@
  316. XM+5D-"DQ&3$%'4PD]#0I,24()/2 D*%1#2$]-12E<;&EB#0I,1 D]('1L:6YK
  317. XM#0H-"D]"2E,@/2!U;GII<"YO(&9I;&5?:6\N;R!M87!N86UE+F\@;6%T8V@N
  318. XM;R!M:7-C+F]<#0H@(" @(" @=6YI;7!L;V0N;R!U;G)E9'5C92YO('5N<VAR
  319. XM:6YK+F\-"@T*#0HC(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C
  320. XM(R,C(R,C(R,C(R,C(PT*(R!"05-)0R!#3TU024Q%($E.4U1254-424].4R!!
  321. XM3D0@1$5014Y$14Y#2453(",-"B,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C(R,C
  322. XM(R,C(R,C(R,C(R,C(R,C(R,C(R,C#0H-"D%,3 DZ('5N>FEP+G!R9PT*"65C
  323. XM:&\@9&]N90T*#0IU;GII<"YO.B @(" @('5N>FEP+F,@=6YZ:7 N: T*#0IF
  324. XM:6QE7VEO+F\Z(" @(&9I;&5?:6\N8R!U;GII<"YH#0H-"FUA<&YA;64N;SH@
  325. XM(" @;6%P;F%M92YC('5N>FEP+F@-"@T*;6%T8V@N;SH@(" @("!M871C:"YC
  326. XM('5N>FEP+F@-"@T*;6ES8RYO.B @(" @("!M:7-C+F,@=6YZ:7 N: T*#0IU
  327. XM;FEM<&QO9"YO.B @('5N:6UP;&]D+F,@=6YZ:7 N: T*#0IU;G)E9'5C92YO
  328. XM.B @('5N<F5D=6-E+F,@=6YZ:7 N: T*#0IU;G-H<FEN:RYO.B @('5N<VAR
  329. XM:6YK+F,@=6YZ:7 N: T*#0IU;GII<"YP<F<Z(" @(" D*$]"2E,I#0H)=&QI
  330. XM;FL@+4\])$ @)"A,1DQ!1U,I("U3/3@Q.3(@+4,]=6YZ:7 N;&YK#0H-"BYC
  331. X:+F\Z#0H)=&-C("0H0T9,04=3*2 D/ T*#0H@
  332. Xend
  333. END_OF_FILE
  334.  if test 1622 -ne `wc -c <'ATARI/Makefile.st.UU'`; then
  335.     echo shar: \"'ATARI/Makefile.st.UU'\" unpacked with wrong size!
  336.   else
  337.     echo shar: Uudecoding \"'ATARI/Makefile.st'\" \(1151 characters\)
  338.     cat ATARI/Makefile.st.UU | uudecode
  339.     if test 1151 -ne `wc -c <'ATARI/Makefile.st'`; then
  340.       echo shar: \"'ATARI/Makefile.st'\" uudecoded with wrong size!
  341.     else
  342.       rm ATARI/Makefile.st.UU
  343.     fi
  344.   fi
  345.   # end of 'ATARI/Makefile.st.UU'
  346. fi
  347. if test -f 'ATARI/makeit.UU' -a "${1}" != "-c" ; then 
  348.   echo shar: Will not clobber existing file \"'ATARI/makeit.UU'\"
  349. else
  350.   echo shar: Extracting \"'ATARI/makeit.UU'\" \(597 characters\)
  351.   sed "s/^X//" >'ATARI/makeit.UU' <<'END_OF_FILE'
  352. Xbegin 666 ATARI/makeit
  353. XM=&-C("U$051!4DE?4U0],2 M23U%.EQT8UQI;F-L=61E('5N>FEP+F,-"G1C
  354. XM8R M1$%405))7U-4/3$@+4D]13I<=&-<:6YC;'5D92!F:6QE7VEO+F,-"G1C
  355. XM8R M1$%405))7U-4/3$@+4D]13I<=&-<:6YC;'5D92!M87!N86UE+F,-"G1C
  356. XM8R M1$%405))7U-4/3$@+4D]13I<=&-<:6YC;'5D92!M871C:"YC#0IT8V,@
  357. XM+41!5$%225]35#TQ("U)/44Z7'1C7&EN8VQU9&4@;6ES8RYC#0IT8V,@+41!
  358. XM5$%225]35#TQ("U)/44Z7'1C7&EN8VQU9&4@=6YI;7!L;V0N8PT*=&-C("U$
  359. XM051!4DE?4U0],2 M23U%.EQT8UQI;F-L=61E('5N<F5D=6-E+F,-"G1C8R M
  360. XM1$%405))7U-4/3$@+4D]13I<=&-<:6YC;'5D92!U;G-H<FEN:RYC#0IT;&EN
  361. XM:R M3SUU;GII<"YP<F<@("U3/3@Q.3(@+4,]=6YZ:7 N;&YK#0IE8VAO(&1O
  362. X$;F4-"CUU
  363. Xend
  364. END_OF_FILE
  365.  if test 597 -ne `wc -c <'ATARI/makeit.UU'`; then
  366.     echo shar: \"'ATARI/makeit.UU'\" unpacked with wrong size!
  367.   else
  368.     echo shar: Uudecoding \"'ATARI/makeit'\" \(409 characters\)
  369.     cat ATARI/makeit.UU | uudecode
  370.     if test 409 -ne `wc -c <'ATARI/makeit'`; then
  371.       echo shar: \"'ATARI/makeit'\" uudecoded with wrong size!
  372.     else
  373.       rm ATARI/makeit.UU
  374.     fi
  375.   fi
  376.   # end of 'ATARI/makeit.UU'
  377. fi
  378. if test -f 'ATARI/unzip.lnk.UU' -a "${1}" != "-c" ; then 
  379.   echo shar: Will not clobber existing file \"'ATARI/unzip.lnk.UU'\"
  380. else
  381.   echo shar: Extracting \"'ATARI/unzip.lnk.UU'\" \(310 characters\)
  382.   sed "s/^X//" >'ATARI/unzip.lnk.UU' <<'END_OF_FILE'
  383. Xbegin 666 ATARI/unzip.lnk
  384. XM93I<=&-<;&EB7&UY<W1A<G0N;PT*=6YZ:7 N;PT*9FEL95]I;RYO#0IM87!N
  385. XM86UE+F\-"FUA=&-H+F\-"FUI<V,N;PT*=6YI;7!L;V0N;PT*=6YR961U8V4N
  386. XM;PT*=6YS:')I;FLN;PT*93I<=&-<;&EB7'1C<W1D;&EB+FQI8@T*93I<=&-<
  387. XM;&EB7'1C97AT;&EB+FQI8@T*93I<=&-<;&EB7'1C=&]S;&EB+FQI8@T*93I<
  388. X5=&-<;&EB7'1C<W1D;&EB+FQI8@T*
  389. Xend
  390. END_OF_FILE
  391.  if test 310 -ne `wc -c <'ATARI/unzip.lnk.UU'`; then
  392.     echo shar: \"'ATARI/unzip.lnk.UU'\" unpacked with wrong size!
  393.   else
  394.     echo shar: Uudecoding \"'ATARI/unzip.lnk'\" \(201 characters\)
  395.     cat ATARI/unzip.lnk.UU | uudecode
  396.     if test 201 -ne `wc -c <'ATARI/unzip.lnk'`; then
  397.       echo shar: \"'ATARI/unzip.lnk'\" uudecoded with wrong size!
  398.     else
  399.       rm ATARI/unzip.lnk.UU
  400.     fi
  401.   fi
  402.   # end of 'ATARI/unzip.lnk.UU'
  403. fi
  404. if test -f 'MAC/mpw.make.UU' -a "${1}" != "-c" ; then 
  405.   echo shar: Will not clobber existing file \"'MAC/mpw.make.UU'\"
  406. else
  407.   echo shar: Extracting \"'MAC/mpw.make.UU'\" \(2023 characters\)
  408.   sed "s/^X//" >'MAC/mpw.make.UU' <<'END_OF_FILE'
  409. Xbegin 666 MAC/mpw.make
  410. XM(R @(%1H:7,@35!7(&UA:V5F:6QE(&ES(&1E<VEG;F5D('1O(&)E('5S960@
  411. XM=&\@8V]M<&EL92!A;B!-4%<@=F5R<VEO;@HC(" @;V8@=6YZ:7 @=7-I;F<@
  412. XM=&AE($U05R!#(&-O;7!I;&5R+"!V97)S:6]N(#,N,BX@4VEM<&QY(')E;F%M
  413. XM90HC(" @=&AI<R!F:6QE(&%S('5N>FEP+FUA:V4@86YD(&1O(&%N($U05R!B
  414. XM=6EL9"X*"@HC(" @1FEL93H@(" @(" @=6YZ:7 N;6%K90HC(" @5&%R9V5T
  415. XM.B @(" @56YZ:7 *(R @(%-O=7)C97,Z(" @('5N>FEP+F,*(R @(" @(" @
  416. XM(" @(" @(&-R>7!T+F,*(R @(" @(" @(" @(" @(&5N=F%R9W,N8PHC(" @
  417. XM(" @(" @(" @(" @97AP;&]D92YC"B,@(" @(" @(" @(" @("!E>'1R86-T
  418. XM+F,*(R @(" @(" @(" @(" @(&9I;&5?:6\N8PHC(" @(" @(" @(" @(" @
  419. XM:6YF;&%T92YC"B,@(" @(" @(" @(" @("!M86-F:6QE+F,*(R @(" @(" @
  420. XM(" @(" @(&UA8W-T870N8PHC(" @(" @(" @(" @(" @;6%P;F%M92YC"B,@
  421. XM(" @(" @(" @(" @("!M871C:"YC"B,@(" @(" @(" @(" @("!M:7-C+F,*
  422. XM(R @(" @(" @(" @(" @('5N<F5D=6-E+F,*(R @(" @(" @(" @(" @('5N
  423. XM<VAR:6YK+F,*(R @($-R96%T960Z(" @($9R:61A>2P@36%Y(#DL(#$Y.3(@
  424. XM.3HP,#HP,"!030H*"D-&3$%'4R ]("UD($U05R C("UD($-265!4"@I,1DQ!
  425. XM1U,@/2 M;0H*"BYC+F\@Q" N8R!U;GII<"YH('5N>FEP+FUA:V4*(" @(" @
  426. XM("!#('M#1DQ!1U-]('M$969A=6QT?2YC"@I/0DI%0U13(#T@M@H@(" @(" @
  427. XM('5N>FEP+F,N;R"V"B,@(" @(" @8W)Y<'0N8RYO(+8*(" @(" @("!E;G9A
  428. XM<F=S+F,N;R"V"B @(" @(" @97AP;&]D92YC+F\@M@H@(" @(" @(&5X=')A
  429. XM8W0N8RYO(+8*(" @(" @("!F:6QE7VEO+F,N;R"V"B @(" @(" @:6YF;&%T
  430. XM92YC+F\@M@H@(" @(" @(&UA8V9I;&4N8RYO(+8*(" @(" @("!M86-S=&%T
  431. XM+F,N;R"V"B @(" @(" @;6%P;F%M92YC+F\@M@H@(" @(" @(&UA=&-H+F,N
  432. XM;R"V"B @(" @(" @;6ES8RYC+F\@M@H@(" @(" @('5N<F5D=6-E+F,N;R"V
  433. XM"B @(" @(" @=6YS:')I;FLN8RYO"@I5;GII<"#$('M/0DI%0U13?2!U;GII
  434. XM<"YR"B @(" @(" @3&EN:R M9" M8R G35!3("<@+70@35!35""V"B @(" @
  435. XM(" @(" @(" @("![3T)*14-44WT@M@H@(" @(" @(" @(" @(" @(GM#3&EB
  436. XM<F%R:65S?2)3=&1#;&EB+F\@M@H@(" @(" @(" @(" @(" @(GM,:6)R87)I
  437. XM97-](E-T=6)S+F\@M@H@(" @(" @(" @(" @(" @(GM,:6)R87)I97-](E)U
  438. XM;G1I;64N;R"V"B @(" @(" @(" @(" @(" B>TQI8G)A<FEE<WTB26YT97)F
  439. XM86-E+F\@M@H@(" @(" @(" @(" @(" @+6\@56YZ:7 *(" @(" @("!R97H@
  440. XM+6%P<&5N9" M;R!5;GII<"!U;GII<"YR"@IU;GII<"YR(,0@=6YZ:7 N=&AI
  441. XM;FMC+G)S<F,*(" @(" @("!D97)E>B!U;GII<"YT:&EN:V,N<G-R8R ^('5N
  442. X&>FEP+G(*
  443. Xend
  444. END_OF_FILE
  445.  if test 2023 -ne `wc -c <'MAC/mpw.make.UU'`; then
  446.     echo shar: \"'MAC/mpw.make.UU'\" unpacked with wrong size!
  447.   else
  448.     echo shar: Uudecoding \"'MAC/mpw.make'\" \(1446 characters\)
  449.     cat MAC/mpw.make.UU | uudecode
  450.     if test 1446 -ne `wc -c <'MAC/mpw.make'`; then
  451.       echo shar: \"'MAC/mpw.make'\" uudecoded with wrong size!
  452.     else
  453.       rm MAC/mpw.make.UU
  454.     fi
  455.   fi
  456.   # end of 'MAC/mpw.make.UU'
  457. fi
  458. if test -f 'MAC/thinkc.rsrc.hqx' -a "${1}" != "-c" ; then 
  459.   echo shar: Will not clobber existing file \"'MAC/thinkc.rsrc.hqx'\"
  460. else
  461.   echo shar: Extracting \"'MAC/thinkc.rsrc.hqx'\" \(1105 characters\)
  462.   sed "s/^X//" >'MAC/thinkc.rsrc.hqx' <<'END_OF_FILE'
  463. X(This file must be converted with BinHex 4.0)
  464. X
  465. X:%A9ZHQP`,R4SD@jVBbjbFh*M!(*cFQ058d9%!*!)!`@QeJ#3"!%!N!-#M`!!!Bm
  466. X!N!0fFR)T$3N*)#"l$3N*)*!%HLdqE%4TFNP%)$dJF'eT,4&eERTTF#jdD'PZDf-
  467. XZFR0bB`)!N!0bFh*M8P0&4!%!N!0bFh*M8P0&4!%!!*`"!*!6TQrieJ#3"J-&DA0
  468. Xd)#T`HLN0H`dJ)%eKBdPZCQmJ+R"YD5!p)'0KE'a[BbJJ-5`JFfPkC@pQ)#KcG(*
  469. XeBh3J6@&M5@jQEbNT1`dJ)!dJ)'PQ)#K`E@NT$5!JH`dJN!4$5@jQEe"#8Q9M)'0
  470. XTF'*b1`dJN!43BA*KE8*XEf0V8Q9M)("LFMX0)#!!N!-8"3#!!*!$!c8Z-!P9ERT
  471. XTF#!e,M!!N!06"3#!!*!$'%PZCQmY@QP`*h-J9@jkDA!JCQpb)%eKBc0*EQC[,9T
  472. XTF#Gc)&9ZHQP`)'C[FL"dD'8J6@&MD@jdEh0S,#"$Eh"jFQPRD(3JU6%j16)!N!0
  473. X%"m!I-$m)I`4r"2m#r`,rrS(qJIj"r%(m)IJCm!I!!!!(`"r`2rKrr(rmrrlrr[r
  474. XqrrlrrRrmIr`rq"r`"m!!N!-(!!F!N!0%"m!Im$riAr42j)I#Ji+"!S1#Km*2j&r
  475. Xd2rJIm!I!!!!(`"r`2rKrr(rmrrlrr[rqrrlrrRrmIr`rq"r`"m!!N!-(!!F!N!0
  476. X%"m!Cm#(i3Ia"r)(qJIlrr[m#r`*r"(m%2`JI-!I!!!!(`"r`2rKrr(rmrrlrr[r
  477. XqrrlrrRrmIr`rq"r`"m!!N!-(!!F!N!0%"m!B-#!)F"ai22aqr[lrrT!$r(ji2(!
  478. XF)!JB-!I!!!!(`"r`2rKrr(rmrrlrr[rqrrlrrRrmIr`rq"r`"m!!N!-(!!F!!!%
  479. X!N!-#M`!!!Bm!N!0f!"`p)!4U!*!$(!"f!!&fCA*c!!%!%N098P-!!`!U!!(rr`#
  480. X3!aJ!($[8!!,rr`#3"4`m)!#!rrm%!!"[!*!&JIrr"!!!Y`#3"B,rr`3!!2m!N!@
  481. X$rrm%!!&(!*!%JiB:
  482. END_OF_FILE
  483.   if test 1105 -ne `wc -c <'MAC/thinkc.rsrc.hqx'`; then
  484.     echo shar: \"'MAC/thinkc.rsrc.hqx'\" unpacked with wrong size!
  485.   fi
  486.   # end of 'MAC/thinkc.rsrc.hqx'
  487. fi
  488. if test -f 'MSDOS/Contents' -a "${1}" != "-c" ; then 
  489.   echo shar: Will not clobber existing file \"'MSDOS/Contents'\"
  490. else
  491.   echo shar: Extracting \"'MSDOS/Contents'\" \(2453 characters\)
  492.   sed "s/^X//" >'MSDOS/Contents' <<'END_OF_FILE'
  493. XContents of the MSDOS sub-archive for UnZip 5.0 and later:
  494. X
  495. X  Contents          this file
  496. X  Borland.fix       patches to fix Borland executables for grokking Unix EOLs
  497. X  makefile          makefile for Turbo C and old Microsoft C
  498. X  makefile.bcc      makefile for Borland C++
  499. X  makefile.qc       makefile for Quick C and nmake
  500. X  tcc/unzip.prj     Turbo C project file for UnZip
  501. X  tcc/unzip.tc      Turbo C configuration file for UnZip (binary)
  502. X  tcc/unzip_cr.prj  Turbo C project file for UnZip + decryption (need crypt.c)
  503. X  tcc/unzip_cr.tc   Turbo C configuration file for UnZip + decryption (binary)
  504. X  tcc/zi_make.bat   batch file to make ZipInfo with Turbo C
  505. X  tcc/zipinfo.prj   Turbo C project file for ZipInfo
  506. X  tcc/zipinfo.tc    Turbo C configuration file for ZipInfo (binary)
  507. X  bcc/tcconfig.tc   BC++ general configuration file (binary)
  508. X  bcc/unzip.prj     BC++ project file for UnZip (binary)
  509. X  bcc/unzip_cr.prj  BC++ project file for UnZip/decryption (binary; need crypt)
  510. X  bcc/zipinfo.prj   BC++ project file for ZipInfo (binary)
  511. X
  512. XNote:  despite the similarity in names to the corresponding Turbo C files,
  513. Xthe Borland C++ files apparently are NOT compatible with the older compilers
  514. X(although they seem to be compatible with Turbo C++).  So the old TC project
  515. Xfiles are also included.  FOR BOTH COMPILERS, you must indicate "rebuild" for
  516. Xunzip or zipinfo (whichever you do second), because the two misc.obj's are not
  517. Xcompatible with each other.  This is not a problem if you use the makefile(s),
  518. Xin which case zipinfo's is called misc_.obj, but (1) the project files are
  519. Xmuch faster on older machines, and (2) the Turbo C makefile doesn't seem to 
  520. Xwork properly yet.  As always, if anyone manages to make it go, please send
  521. Xus your fixes.
  522. X
  523. XNote also:  for MSC 6.0 or later, use the msc_dos and zi_dos targets in the
  524. Xmain Unix Makefile--with NMAKE, not MAKE.  The msc_dos target has been re-
  525. Xwritten to use a response file in order to get around the DOS 128-character 
  526. Xcommand-line limit, but the nmake command itself may have trouble.  Give it 
  527. Xa try, however.
  528. X
  529. XOne last note:  the binary patches in Borland.fix are NOT required; they may
  530. Xbe useful if you regularly deal with Unix sources, but casual users should
  531. Xprobably make use of an external utility like Rahul Dhesi's FLIP to convert 
  532. Xbetween Unix and DOS/OS2 end-of-line characters.  If you know how to patch
  533. Xbinary executables, you should be able to figure out how to use these patches.
  534. END_OF_FILE
  535.   if test 2453 -ne `wc -c <'MSDOS/Contents'`; then
  536.     echo shar: \"'MSDOS/Contents'\" unpacked with wrong size!
  537.   fi
  538.   # end of 'MSDOS/Contents'
  539. fi
  540. if test -f 'MSDOS/bcc/tcconfig.tc.UU' -a "${1}" != "-c" ; then 
  541.   echo shar: Will not clobber existing file \"'MSDOS/bcc/tcconfig.tc.UU'\"
  542. else
  543.   echo shar: Extracting \"'MSDOS/bcc/tcconfig.tc.UU'\" \(2548 characters\)
  544.   sed "s/^X//" >'MSDOS/bcc/tcconfig.tc.UU' <<'END_OF_FILE'
  545. Xbegin 666 MSDOS/bcc/tcconfig.tc
  546. XM5'5R8F\@0R!#;VYF:6=U<F%T:6]N($9I;&4@&@ !#1(7 1H   L( 'P D0$"
  547. XM    D@$"  $ E0$!  26 0(   "7 0( &0"8 0(   "9 0( !P"< 00 .   
  548. XM )T! @ " )\! @ ' * ! @ B Z$! @"'_Z(! @   *,! @   *0! @   *4!
  549. XM 0  I@$"  $ IP$"    J $"    J0$"    __\   D EP,7 ^\"        
  550. XM_\!____A?___X                     #_^___               !    
  551. XM                 5@ %@"P !, _  : &0!& #$ 08  0 # @, _P$$ .T!
  552. XM!0#Q 08 !0('  D""  ' @D :0(+ -P!# #' @X 90(/ .(!$ "U A$ WP$2
  553. XM /L!$P#O 10 $ (6 -L"%P#X 1@ \P$9  L"&@#U 0X !P() &D"1P 2 D@ 
  554. XM\0%) /L!2P#O 4T [0%/ !0"4 #S 5$ _P%2 -L"4P ) G,  P)T  4"=0 9
  555. XM G8 'P)W !8"A  < AL 3P(" 28" P%5 @0!MP(( 5,""0%A @L!*@(, 2X"
  556. XM$ '7 A$!MP(2 ;\"$P'G A0!.0(5 6,"%@%9 A<!NP(9 5T", !K C$ ;@(R
  557. XM '$",P!T C0 =P(U 'H"-@!] C< @ (X (,".0"& @$!RP(" 40" P$? @0!
  558. XM% (% 18"!@'# @L!2 (0 4P"$@$< A,!$@(8 1D"&0$. C  B0(Q (T",@"1
  559. XM C, E0(T )D"-0"= C8 H0(W *4". "I CD K0(; ;$"'0&S @8!X0() =T"
  560. XM#P$B A(!Y0(4 >,"%0'? @(" 0(# 0($ 1(!$0$3 10!5 %5 14!%@$9/0$:
  561. XM/0$^5CT!/E<] 1<!& $I 2@!)1T!)@$G 1T!'@$S'P$S( $S(0$S(@$>.0T!
  562. XM3BHL 4XK+ %.01X3*Q0=*BQ" 4Y!$1=+*Q<J+$(!,RX_ 3,O/P$T/P%; 5P!
  563. XM+0$P+#\!,2P_ 3(_3@%% 48!.0T4 5,!-P !-P$!-P(!-P,!-P0!-P4!-P8!
  564. XM-P<!-P@!-PD!-@ _ 38!/P$V C\!-@,_ 38$/P$V!3\!-@8_ 38'/P$V"#\!
  565. XM-@D_ 4P!30$Y 0,!  $# @ ! P,  0,$  $#!0 ! P8  0,)  $#"@ ! PL 
  566. XM 2,!1P%) 5(!4 %9 0,2  $#$P ! "\J*B\!*  I  %; %T  7L ?0 !/  ^
  567. XM   B "(  "< )P "                                            
  568. XM                                                            
  569. XM                                                            
  570. XM            "P#3 @AP('!X="0(<"!P>'0D<' @<'AT)!<7<1X73A\?&A,Q
  571. XM,3!/  <'?P]_3@\/"A,Q,0<  #$Q*S$_3C\_.A,Q,0   #$Q*S$_3C\_.A,Q
  572. XM,0     W/C >,0 Q,3$3$P  ,# ^,!XQ/S\Z,1,3?G .<0  =' ?<0 ?&A,Q
  573. XM,0                                           #$Q*S$_3C\_.A,Q
  574. XM,0   #$Q*S$_3C\_.A,Q,0   ']_ '      >C$Q$P   ']^<'YP?G]^>!,;
  575. XM'APO+BLN("YX&R\?+Q\>$!X7'QHP/B\X/SXP/C@'!W '#P\/!P=P!P\/#P<'
  576. XM< </#P\'!W '!W /#P]W#P\/<  '!W '#W /#P]W#P\'   '!W '#W /#P]W
  577. XM#P\    '!W '#W /#P]W#P\    /!P\'< \/#P]W#P\   \'#P=P#P\/#W</
  578. XM#W!P#W    \'<'< #P]W#P\                                     
  579. XM       '!W '#W /#P]W#P\    '!W '#W /#P]W#P\    /< !P     '!W
  580. XM#P\    /< =P!W /<'@'!P<'#W '< =P> =P#W '#P</> \/!P=P> ]P!P]X
  581. XM"'@'>'AP#PAX!WAX< \(> =X>' /!P=P#P]P#P\/=P\/#W  !P=P!P\/#P\/
  582. XM=P\/!P  !P=P!P\/#P\/=P\/    !P=P!P\/#P\/=P\/    #P</!W (#P\/
  583. XM=P\/   /!P\'< @/#P]W#P]P< ]X   /!W!P  \/=P\/                
  584. XM                            !P=P!P\/#P\/=P\/    !P=P!P\/#P\/
  585. XM=P\/    #W  <     !P=P\/    #W '< =P#W!X!P<'!P]P!W '<'@'< ]P
  586. X4!P\'#W@/#P<'<'@/< </>/__    
  587. Xend
  588. END_OF_FILE
  589.   if test 2548 -ne `wc -c <'MSDOS/bcc/tcconfig.tc.UU'`; then
  590.     echo shar: \"'MSDOS/bcc/tcconfig.tc.UU'\" unpacked with wrong size!
  591.   else
  592.     echo shar: Uudecoding \"'MSDOS/bcc/tcconfig.tc'\" \(1820 characters\)
  593.     cat MSDOS/bcc/tcconfig.tc.UU | uudecode
  594.     if test 1820 -ne `wc -c <'MSDOS/bcc/tcconfig.tc'`; then
  595.       echo shar: \"'MSDOS/bcc/tcconfig.tc'\" uudecoded with wrong size!
  596.     else
  597.       rm MSDOS/bcc/tcconfig.tc.UU
  598.     fi
  599.   fi
  600.   # end of 'MSDOS/bcc/tcconfig.tc.UU'
  601. fi
  602. if test -f 'MSDOS/makefile.bcc' -a "${1}" != "-c" ; then 
  603.   echo shar: Will not clobber existing file \"'MSDOS/makefile.bcc'\"
  604. else
  605.   echo shar: Extracting \"'MSDOS/makefile.bcc'\" \(2249 characters\)
  606.   sed "s/^X//" >'MSDOS/makefile.bcc' <<'END_OF_FILE'
  607. X# Makefile for unzip and zipinfo for Borland C++ 3.0             Alvin Koh
  608. X# Version: 5.0                                                26 June 1992
  609. X#
  610. X# Toad Hall: Works great for BC++ v2.0 too!  [some spaces should be tabs?]
  611. X
  612. X# make definitions
  613. X
  614. XCC = bcc
  615. XTASM = tasm
  616. XTLINK = tlink
  617. XMODEL = s               # small model
  618. X
  619. XCRYPTO =
  620. XCRYPTF =
  621. X# definitions for crypt version
  622. X#CRYPTO = crypt.obj
  623. X#CRYPTF = -DCRYPT
  624. X
  625. X# compiler flags
  626. X
  627. XGENFLAGS = -m$(MODEL) -ff- -k- -wamb -wamp -wasm -wpro -wdef -wnod -wstv \
  628. X           -wucp -wuse -P-.C
  629. XCFLAGS = $(GENFLAGS) $(CRYPTF)
  630. XZIFLAGS = $(GENFLAGS) -K -d -wcln -wsig -DZIPINFO
  631. X
  632. X# implicit rules
  633. X
  634. X.c.obj:
  635. X        $(CC) -c $(CFLAGS) {$< }
  636. X
  637. X# list macros
  638. X
  639. Xunzip_dependencies = \
  640. X        unzip.obj $(CRYPTO) \
  641. X        envargs.obj \
  642. X        explode.obj \
  643. X        extract.obj \
  644. X        file_io.obj \
  645. X        inflate.obj \
  646. X        mapname.obj \
  647. X        match.obj \
  648. X        misc.obj \
  649. X        unreduce.obj \
  650. X        unshrink.obj
  651. X
  652. Xzipinfo_dependencies = \
  653. X        zipinfo.obj \
  654. X        envargs.obj \
  655. X        match.obj \
  656. X        misc_.obj
  657. X
  658. X# explicit rules
  659. X
  660. Xall:    unzip.exe zipinfo.exe
  661. X
  662. Xunzip.exe:      $(unzip_dependencies)
  663. X        $(TLINK) /x/n/c/d/P- @&&|
  664. Xc0$(MODEL).obj+
  665. Xunzip.obj $(CRYPTO)+
  666. Xenvargs.obj+
  667. Xexplode.obj+
  668. Xextract.obj+
  669. Xfile_io.obj+
  670. Xinflate.obj+
  671. Xmapname.obj+
  672. Xmatch.obj+
  673. Xmisc.obj+
  674. Xunreduce.obj+
  675. Xunshrink.obj
  676. Xunzip.exe
  677. X                # no map file
  678. Xemu.lib+
  679. Xmath$(MODEL).lib+
  680. Xc$(MODEL).lib
  681. X|
  682. X
  683. Xzipinfo.exe:    $(zipinfo_dependencies)
  684. X        $(TLINK) /x/n/c/d/P- @&&|
  685. Xc0$(MODEL).obj+
  686. Xzipinfo.obj+
  687. Xenvargs.obj+
  688. Xmatch.obj+
  689. Xmisc_.obj
  690. Xzipinfo.exe
  691. X                # no map file
  692. Xemu.lib+
  693. Xmath$(MODEL).lib+
  694. Xc$(MODEL).lib
  695. X|
  696. X
  697. X# individual file dependencies
  698. X
  699. Xunzip.obj:      unzip.c unzip.h
  700. Xcrypt.obj:      crypt.c unzip.h zip.h
  701. Xenvargs.obj:    envargs.c unzip.h
  702. Xexplode.obj:    explode.c unzip.h
  703. Xextract.obj:    extract.c unzip.h
  704. Xfile_io.obj:    file_io.c unzip.h
  705. Xinflate.obj:    inflate.c unzip.h
  706. Xmapname.obj:    mapname.c unzip.h
  707. Xmatch.obj:      match.c unzip.h
  708. Xmisc.obj:       misc.c unzip.h
  709. Xunreduce.obj:   unreduce.c unzip.h
  710. Xunshrink.obj:   unshrink.c unzip.h
  711. X
  712. Xzipinfo.obj:    zipinfo.c unzip.h
  713. X        $(CC) -c $(ZIFLAGS) zipinfo.c
  714. X
  715. Xmisc_.obj:      misc.c unzip.h
  716. X        $(CC) -c $(ZIFLAGS) -omisc_.obj misc.c
  717. END_OF_FILE
  718.   if test 2249 -ne `wc -c <'MSDOS/makefile.bcc'`; then
  719.     echo shar: \"'MSDOS/makefile.bcc'\" unpacked with wrong size!
  720.   fi
  721.   # end of 'MSDOS/makefile.bcc'
  722. fi
  723. if test -f 'MSDOS/makefile.qc' -a "${1}" != "-c" ; then 
  724.   echo shar: Will not clobber existing file \"'MSDOS/makefile.qc'\"
  725. else
  726.   echo shar: Extracting \"'MSDOS/makefile.qc'\" \(1113 characters\)
  727.   sed "s/^X//" >'MSDOS/makefile.qc' <<'END_OF_FILE'
  728. X# From: Richard A Seay <g0rick@cdf.toronto.edu>, 4 Apr 92
  729. X#
  730. X# I successfully compiled both Zip and UnZip for MSDOS using the Microsoft
  731. X# Quick C 2.0 compiler and linker.  Here are the NMAKE files that I used.
  732. X
  733. XPROJ    =UNZIP
  734. XCC    =qcl
  735. XCFLAGS  = /AS /W1 /Za /Olt
  736. XLFLAGS  = /NOI /E
  737. XOBJS_EXT =
  738. XLIBS_EXT =
  739. X
  740. Xall:    $(PROJ).exe
  741. X
  742. Xunzip.obj:      unzip.c unzip.h
  743. X
  744. Xenvargs.obj:    envargs.c unzip.h
  745. X
  746. Xexplode.obj:    explode.c unzip.h
  747. X
  748. Xextract.obj:    extract.c unzip.h
  749. X
  750. Xfile_io.obj:    file_io.c unzip.h
  751. X
  752. Xinflate.obj:    inflate.c unzip.h
  753. X
  754. Xmapname.obj:    mapname.c unzip.h
  755. X
  756. Xmatch.obj:      match.c unzip.h
  757. X
  758. Xmisc.obj:       misc.c unzip.h
  759. X
  760. Xunreduce.obj:   unreduce.c unzip.h
  761. X
  762. Xunshrink.obj:   unshrink.c unzip.h
  763. X
  764. X$(PROJ).exe:    unzip.obj envargs.obj explode.obj extract.obj file_io.obj\
  765. X    inflate.obj mapname.obj match.obj misc.obj unreduce.obj unshrink.obj\
  766. X    $(OBJS_EXT)
  767. X    echo >NUL @<<$(PROJ).crf
  768. Xunzip.obj +
  769. Xenvargs.obj +
  770. Xexplode.obj +
  771. Xextract.obj +
  772. Xfile_io.obj +
  773. Xinflate.obj +
  774. Xmapname.obj +
  775. Xmatch.obj +
  776. Xmisc.obj +
  777. Xunreduce.obj +
  778. Xunshrink.obj +
  779. X$(OBJS_EXT)
  780. X$(PROJ).exe
  781. X$(LIBS_EXT);
  782. X<<
  783. X    link $(LFLAGS) @$(PROJ).crf
  784. X    del $(PROJ).crf
  785. END_OF_FILE
  786.   if test 1113 -ne `wc -c <'MSDOS/makefile.qc'`; then
  787.     echo shar: \"'MSDOS/makefile.qc'\" unpacked with wrong size!
  788.   fi
  789.   # end of 'MSDOS/makefile.qc'
  790. fi
  791. if test -f 'MSDOS/tcc/unzip.tc.UU' -a "${1}" != "-c" ; then 
  792.   echo shar: Will not clobber existing file \"'MSDOS/tcc/unzip.tc.UU'\"
  793. else
  794.   echo shar: Extracting \"'MSDOS/tcc/unzip.tc.UU'\" \(2367 characters\)
  795.   sed "s/^X//" >'MSDOS/tcc/unzip.tc.UU' <<'END_OF_FILE'
  796. Xbegin 666 MSDOS/tcc/unzip.tc
  797. XM5'5R8F\@0R!#;VYF:6=U<F%T:6]N($9I;&4@&@ !#1(7 1H  @$!  (    "
  798. XM  (  0 #  (  @ $  $   4  0  !@ !   (  $  0D  @    T  @ !  X 
  799. XM @   !$  0 $$@ "    $P " !D %  "  $ %0 "  $ %@ "  ( %P "    
  800. XM&  "    9  !  %E  $  68  0 !9P !  %H  $  6D  0 !:@ !  %K  $ 
  801. XM 6P  0 !;0 !  %N  $  6\  0 !<  !  %Q  $  7(  0 !<P !  %T  $ 
  802. XM 74  0 !=@ !  %W  $  7@  0 !>0 !  %Z  $  7L  0  ?  !  %]  $ 
  803. XM 7X  0 !?P !  &   $  8(  0  A  !  "%  $  <@  0  R0 !  '*  $ 
  804. XM <L  0  S  !  '-  $  ,X  0 !SP !  #0  $ &=$  0!DT@ ! "#5  $ 
  805. XM -<  0  V  !  '9  $  =H  0 !VP !  #<  $  -T  0 !W@ !  '?  $ 
  806. XM .   0  X0 !  #B  $  2P!1                                   
  807. XM                                                         "T!
  808. XM@ !#.EQ40UQ)3D-,541%                                        
  809. XM                                                            
  810. XM                                                     "X!@ !#
  811. XM.EQ40UQ,24(                                                 
  812. XM                                                            
  813. XM                                                 "\!4 !53EI)
  814. XM4"Y04DH                                                     
  815. XM                                         # !!  S,@  ,0$% #(U
  816. XM    ,@$% #$P,   ,P%_                                        
  817. XM                                                            
  818. XM                                                            
  819. XM           T 1X *@                                      -0$>
  820. XM "H                                      #8!'@ J            
  821. XM                           W 1X *@                          
  822. XM            . $> "H                                      #D!
  823. XM'@ J                                       Z 1X *@          
  824. XM                            .P$> "H                         
  825. XM             #P!'@ J                                       ]
  826. XM 8                                                          
  827. XM                                                            
  828. XM                                                       ^ 00 
  829. XM-    #\!4   0U!)0TLN5$-0                                    
  830. XM                                                         $ !
  831. XM1 !#.EQ40P                                                  
  832. XM                                 $$!4 !53EI)4"Y# $,         
  833. XM                                                            
  834. X9                         /__ @ :    
  835. Xend
  836. END_OF_FILE
  837.   if test 2367 -ne `wc -c <'MSDOS/tcc/unzip.tc.UU'`; then
  838.     echo shar: \"'MSDOS/tcc/unzip.tc.UU'\" unpacked with wrong size!
  839.   else
  840.     echo shar: Uudecoding \"'MSDOS/tcc/unzip.tc'\" \(1690 characters\)
  841.     cat MSDOS/tcc/unzip.tc.UU | uudecode
  842.     if test 1690 -ne `wc -c <'MSDOS/tcc/unzip.tc'`; then
  843.       echo shar: \"'MSDOS/tcc/unzip.tc'\" uudecoded with wrong size!
  844.     else
  845.       rm MSDOS/tcc/unzip.tc.UU
  846.     fi
  847.   fi
  848.   # end of 'MSDOS/tcc/unzip.tc.UU'
  849. fi
  850. if test -f 'MSDOS/tcc/unzip_cr.prj' -a "${1}" != "-c" ; then 
  851.   echo shar: Will not clobber existing file \"'MSDOS/tcc/unzip_cr.prj'\"
  852. else
  853.   echo shar: Extracting \"'MSDOS/tcc/unzip_cr.prj'\" \(311 characters\)
  854.   sed "s/^X//" >'MSDOS/tcc/unzip_cr.prj' <<'END_OF_FILE'
  855. Xunzip.c        (unzip.h)
  856. Xcrypt.c         (unzip.h zip.h)
  857. Xexplode.c       (unzip.h)
  858. Xextract.c       (unzip.h)
  859. Xfile_io.c       (unzip.h)
  860. Xinflate.c       (unzip.h)
  861. Xmapname.c       (unzip.h)
  862. Xmatch.c         (unzip.h)
  863. Xmisc.c          (unzip.h)
  864. Xunreduce.c      (unzip.h)
  865. Xunshrink.c      (unzip.h)
  866. Xenvargs.c       (unzip.h)
  867. END_OF_FILE
  868.   if test 311 -ne `wc -c <'MSDOS/tcc/unzip_cr.prj'`; then
  869.     echo shar: \"'MSDOS/tcc/unzip_cr.prj'\" unpacked with wrong size!
  870.   fi
  871.   # end of 'MSDOS/tcc/unzip_cr.prj'
  872. fi
  873. if test -f 'MSDOS/tcc/unzip_cr.tc.UU' -a "${1}" != "-c" ; then 
  874.   echo shar: Will not clobber existing file \"'MSDOS/tcc/unzip_cr.tc.UU'\"
  875. else
  876.   echo shar: Extracting \"'MSDOS/tcc/unzip_cr.tc.UU'\" \(2370 characters\)
  877.   sed "s/^X//" >'MSDOS/tcc/unzip_cr.tc.UU' <<'END_OF_FILE'
  878. Xbegin 666 MSDOS/tcc/unzip_cr.tc
  879. XM5'5R8F\@0R!#;VYF:6=U<F%T:6]N($9I;&4@&@ !#1(7 1H  @$!  (    "
  880. XM  (  0 #  (  @ $  $   4  0  !@ !   (  $  0D  @    T  @ !  X 
  881. XM @   !$  0 $$@ "    $P " !D %  "  $ %0 "  $ %@ "  ( %P "    
  882. XM&  "    9  !  %E  $  68  0 !9P !  %H  $  6D  0 !:@ !  %K  $ 
  883. XM 6P  0 !;0 !  %N  $  6\  0 !<  !  %Q  $  7(  0 !<P !  %T  $ 
  884. XM 74  0 !=@ !  %W  $  7@  0 !>0 !  %Z  $  7L  0  ?  !  %]  $ 
  885. XM 7X  0 !?P !  &   $  8(  0  A  !  "%  $  <@  0  R0 !  '*  $ 
  886. XM <L  0  S  !  '-  $  ,X  0 !SP !  #0  $ &=$  0!DT@ ! "#5  $ 
  887. XM -<  0  V  !  '9  $  =H  0 !VP !  #<  $  -T  0 !W@ !  '?  $ 
  888. XM .   0  X0 !  #B  $  2P!1                                   
  889. XM                                                         "T!
  890. XM@ !#.EQ40UQ)3D-,541%                                        
  891. XM                                                            
  892. XM                                                     "X!@ !#
  893. XM.EQ40UQ,24(                                                 
  894. XM                                                            
  895. XM                                                 "\!4 !53EI)
  896. XM4%]#4BY04DH                                                 
  897. XM                                         # !!  S,@  ,0$% #(U
  898. XM    ,@$% #$P,   ,P%_ $-265!4                                
  899. XM                                                            
  900. XM                                                            
  901. XM           T 1X *@                                      -0$>
  902. XM "H                                      #8!'@ J            
  903. XM                           W 1X *@                          
  904. XM            . $> "H                                      #D!
  905. XM'@ J                                       Z 1X *@          
  906. XM                            .P$> "H                         
  907. XM             #P!'@ J                                       ]
  908. XM 8                                                          
  909. XM                                                            
  910. XM                                                       ^ 00 
  911. XM-    #\!4   0U!)0TLN5$-0                                    
  912. XM                                                         $ !
  913. XM1 !#.EQ40P                                                  
  914. XM                                 $$!4 !53EI)4"Y#            
  915. XM                                                            
  916. X9                         /__ @ :    
  917. Xend
  918. END_OF_FILE
  919.   if test 2370 -ne `wc -c <'MSDOS/tcc/unzip_cr.tc.UU'`; then
  920.     echo shar: \"'MSDOS/tcc/unzip_cr.tc.UU'\" unpacked with wrong size!
  921.   else
  922.     echo shar: Uudecoding \"'MSDOS/tcc/unzip_cr.tc'\" \(1690 characters\)
  923.     cat MSDOS/tcc/unzip_cr.tc.UU | uudecode
  924.     if test 1690 -ne `wc -c <'MSDOS/tcc/unzip_cr.tc'`; then
  925.       echo shar: \"'MSDOS/tcc/unzip_cr.tc'\" uudecoded with wrong size!
  926.     else
  927.       rm MSDOS/tcc/unzip_cr.tc.UU
  928.     fi
  929.   fi
  930.   # end of 'MSDOS/tcc/unzip_cr.tc.UU'
  931. fi
  932. if test -f 'MSDOS/tcc/zi_make.bat' -a "${1}" != "-c" ; then 
  933.   echo shar: Will not clobber existing file \"'MSDOS/tcc/zi_make.bat'\"
  934. else
  935.   echo shar: Extracting \"'MSDOS/tcc/zi_make.bat'\" \(255 characters\)
  936.   sed "s/^X//" >'MSDOS/tcc/zi_make.bat' <<'END_OF_FILE'
  937. Xtcc -c -w -K -G -a -d -O -Z zipinfo.c envargs.c match.c
  938. Xtcc -c -w -K -G -a -d -O -Z -DZIPINFO -omisc_.obj misc.c
  939. Xtcc -K -G -a -d -O -Z zipinfo.obj envargs.obj match.obj misc_.obj
  940. Xrem del zipinfo.obj
  941. Xrem del match.obj
  942. Xrem del misc_.obj
  943. Xrem del envargs.obj
  944. END_OF_FILE
  945.   if test 255 -ne `wc -c <'MSDOS/tcc/zi_make.bat'`; then
  946.     echo shar: \"'MSDOS/tcc/zi_make.bat'\" unpacked with wrong size!
  947.   fi
  948.   # end of 'MSDOS/tcc/zi_make.bat'
  949. fi
  950. if test -f 'MSDOS/tcc/zipinfo.tc.UU' -a "${1}" != "-c" ; then 
  951.   echo shar: Will not clobber existing file \"'MSDOS/tcc/zipinfo.tc.UU'\"
  952. else
  953.   echo shar: Extracting \"'MSDOS/tcc/zipinfo.tc.UU'\" \(2369 characters\)
  954.   sed "s/^X//" >'MSDOS/tcc/zipinfo.tc.UU' <<'END_OF_FILE'
  955. Xbegin 666 MSDOS/tcc/zipinfo.tc
  956. XM5'5R8F\@0R!#;VYF:6=U<F%T:6]N($9I;&4@&@ !#1(7 1H  @$!  (    "
  957. XM  (  0 #  (  @ $  $   4  0  !@ !   (  $  0D  @    T  @ !  X 
  958. XM @   !$  0 $$@ "    $P " !D %  "  $ %0 "  $ %@ "  ( %P "    
  959. XM&  "    9  !  %E  $  68  0 !9P !  %H  $  6D  0 !:@ !  %K  $ 
  960. XM 6P  0 !;0 !  %N  $  6\  0 !<  !  %Q  $  7(  0 !<P !  %T  $ 
  961. XM 74  0 !=@ !  %W  $  7@  0 !>0 !  %Z  $  7L  0  ?  !  %]  $ 
  962. XM 7X  0 !?P !  &   $  8(  0  A  !  "%  $  <@  0  R0 !  '*  $ 
  963. XM <L  0  S  !  '-  $  ,X  0 !SP !  #0  $ &=$  0!DT@ ! "#5  $ 
  964. XM -<  0  V  !  '9  $  =H  0 !VP !  #<  $  -T  0 !W@ !  '?  $ 
  965. XM .   0  X0 !  #B  $  2P!1                                   
  966. XM                                                         "T!
  967. XM@ !#.EQ40UQ)3D-,541%                                        
  968. XM                                                            
  969. XM                                                     "X!@ !#
  970. XM.EQ40UQ,24(                                                 
  971. XM                                                            
  972. XM                                                 "\!4 !:25!)
  973. XM3D9/+E!22@                                                  
  974. XM                                         # !!  S,@  ,0$% #(U
  975. XM    ,@$% #$P,   ,P%_ %I)4$E.1D\                             
  976. XM                                                            
  977. XM                                                            
  978. XM           T 1X *@                                      -0$>
  979. XM "H                                      #8!'@ J            
  980. XM                           W 1X *@                          
  981. XM            . $> "H                                      #D!
  982. XM'@ J                                       Z 1X *@          
  983. XM                            .P$> "H                         
  984. XM             #P!'@ J                                       ]
  985. XM 8                                                          
  986. XM                                                            
  987. XM                                                       ^ 00 
  988. XM-    #\!4   0U!)0TLN5$-0                                    
  989. XM                                                         $ !
  990. XM1 !#.EQ40P                                                  
  991. XM                                 $$!4 !:25!)3D9/+D,         
  992. XM                                                            
  993. X9                         /__ @ :    
  994. Xend
  995. END_OF_FILE
  996.   if test 2369 -ne `wc -c <'MSDOS/tcc/zipinfo.tc.UU'`; then
  997.     echo shar: \"'MSDOS/tcc/zipinfo.tc.UU'\" unpacked with wrong size!
  998.   else
  999.     echo shar: Uudecoding \"'MSDOS/tcc/zipinfo.tc'\" \(1690 characters\)
  1000.     cat MSDOS/tcc/zipinfo.tc.UU | uudecode
  1001.     if test 1690 -ne `wc -c <'MSDOS/tcc/zipinfo.tc'`; then
  1002.       echo shar: \"'MSDOS/tcc/zipinfo.tc'\" uudecoded with wrong size!
  1003.     else
  1004.       rm MSDOS/tcc/zipinfo.tc.UU
  1005.     fi
  1006.   fi
  1007.   # end of 'MSDOS/tcc/zipinfo.tc.UU'
  1008. fi
  1009. if test -f 'NT/makefile.nt' -a "${1}" != "-c" ; then 
  1010.   echo shar: Will not clobber existing file \"'NT/makefile.nt'\"
  1011. else
  1012.   echo shar: Extracting \"'NT/makefile.nt'\" \(1607 characters\)
  1013.   sed "s/^X//" >'NT/makefile.nt' <<'END_OF_FILE'
  1014. X# NMAKE Makefile
  1015. X# D. Feinleib 7/92 t-davefe@microsoft.com
  1016. X# Windows NT
  1017. X
  1018. X# Nmake macros for building Windows NT applications
  1019. X!include <ntwin32.mak>
  1020. X
  1021. XCRYPTF=
  1022. XCRYPTO=
  1023. X# For decryption version, uncomment next two lines:
  1024. X# CRYPTF=-DCRYPT
  1025. X# CRYPTO=CRYPT.obj
  1026. X
  1027. XPROJ=unzip
  1028. XOBJA=ENVARGS.obj EXPLODE.obj EXTRACT.obj FILE_IO.obj INFLATE.obj
  1029. XOBJB=MAPNAME.obj MATCH.obj MISC.obj UNREDUCE.obj UNSHRINK.obj UNZIP.obj
  1030. X
  1031. XOBJ=$(OBJA) $(OBJB) $(CRYPTO)
  1032. X
  1033. Xcvars=$(cvars) $(CRYPTF)
  1034. X
  1035. Xall : UNZIP.exe
  1036. X
  1037. XCRYPT.obj : CRYPT.c
  1038. X    $(cc) $(cflags) $(cvars) CRYPT.c
  1039. X    $(cvtobj) CRYPT.obj
  1040. X
  1041. XENVARGS.obj : ENVARGS.c
  1042. X    $(cc) $(cflags) $(cvars) ENVARGS.c
  1043. X    $(cvtobj) ENVARGS.obj
  1044. X
  1045. XEXPLODE.obj : EXPLODE.c
  1046. X    $(cc) $(cflags) $(cvars) EXPLODE.c
  1047. X    $(cvtobj) EXPLODE.obj
  1048. X
  1049. XEXTRACT.obj : EXTRACT.c
  1050. X    $(cc) $(cflags) $(cvars) EXTRACT.c
  1051. X    $(cvtobj) EXTRACT.obj
  1052. X
  1053. XFILE_IO.obj : FILE_IO.c
  1054. X    $(cc) $(cflags) $(cvars) FILE_IO.c
  1055. X    $(cvtobj) FILE_IO.obj
  1056. X
  1057. XINFLATE.obj : INFLATE.c
  1058. X    $(cc) $(cflags) $(cvars) INFLATE.c
  1059. X    $(cvtobj) INFLATE.obj
  1060. X
  1061. XMAPNAME.obj : MAPNAME.c
  1062. X    $(cc) $(cflags) $(cvars) MAPNAME.c
  1063. X    $(cvtobj) MAPNAME.obj
  1064. X
  1065. XMATCH.obj : MATCH.c
  1066. X    $(cc) $(cflags) $(cvars) MATCH.c
  1067. X    $(cvtobj) MATCH.obj
  1068. X
  1069. XMISC.obj : MISC.c
  1070. X    $(cc) $(cflags) $(cvars) MISC.c
  1071. X    $(cvtobj) MISC.obj
  1072. X
  1073. XUNREDUCE.obj : UNREDUCE.c
  1074. X    $(cc) $(cflags) $(cvars) UNREDUCE.c
  1075. X    $(cvtobj) UNREDUCE.obj
  1076. X
  1077. XUNSHRINK.obj : UNSHRINK.c
  1078. X    $(cc) $(cflags) $(cvars) UNSHRINK.c
  1079. X    $(cvtobj) UNSHRINK.obj
  1080. X
  1081. XUNZIP.obj : UNZIP.c
  1082. X    $(cc) $(cflags) $(cvars) UNZIP.c
  1083. X    $(cvtobj) UNZIP.obj
  1084. X
  1085. XUNZIP.exe : $(OBJ)
  1086. X    $(link) $(conflags) -out:$(PROJ).exe $(OBJ) $(conlibs)
  1087. END_OF_FILE
  1088.   if test 1607 -ne `wc -c <'NT/makefile.nt'`; then
  1089.     echo shar: \"'NT/makefile.nt'\" unpacked with wrong size!
  1090.   fi
  1091.   # end of 'NT/makefile.nt'
  1092. fi
  1093. if test -f 'VMS/Contents' -a "${1}" != "-c" ; then 
  1094.   echo shar: Will not clobber existing file \"'VMS/Contents'\"
  1095. else
  1096.   echo shar: Extracting \"'VMS/Contents'\" \(1609 characters\)
  1097.   sed "s/^X//" >'VMS/Contents' <<'END_OF_FILE'
  1098. XContents of the VMS sub-archive for UnZip 5.0 and later:
  1099. X
  1100. X  Contents                   this file
  1101. X  VMS.notes                  general VMS info about installing and using UnZip
  1102. X  unzip.rnh                  UnZip manual page, RUNOFF format
  1103. X  vms.c                      VMS file manipulation code
  1104. X  make_gcc_unzip.com         command file to compile UnZip and ZipInfo w/ GNU C
  1105. X  make_vaxc_unzip.com        command file to compile UnZip and ZipInfo w/ VAX C
  1106. X  makefile                   MAKE/VMS makefile for UnZip and ZipInfo
  1107. X  descrip.mms                MMS makefile for UnZip and ZipInfo
  1108. X  vmsshare.opt               options file used in descrip.mms
  1109. X  bilf/bilf.c                BILF source code
  1110. X  bilf/bilf.exe              BILF executable (binary)
  1111. X  bilf/make_bilf.com         command file to compile BILF with VAX C
  1112. X
  1113. XBILF may be required for older zipfiles or for those created under other
  1114. Xoperating systems.  Instructions for its use are in the source code.
  1115. X
  1116. XThe non-decryption version of UnZip compiles fine with VMS GCC, although
  1117. Xyou may get a lot of warnings (especially for vms.c).  Ignore them; GCC
  1118. Xis hyper-picky.
  1119. X
  1120. XMAKE/VMS v3.4 is Todd Aven's 1989 make utility (Software Sweatshop, NY); his
  1121. Xe-mail address is listed as todd@cincom.umd.edu.  The version used here has two
  1122. Xrevisions by Ned Freed (1989, 1990) and one by Greg Roelofs (1992--options to
  1123. Xuse either creation date or revision date for determining out-of-date-ness).
  1124. XCheck valeria.cs.ucla.edu in /pub/VMS or /infozip for vms_make.zip, or send 
  1125. Xe-mail to zip-bugs@cs.ucla.edu if it's not there.  The original is stored on 
  1126. Xvmsa.oac.uci.edu.
  1127. END_OF_FILE
  1128.   if test 1609 -ne `wc -c <'VMS/Contents'`; then
  1129.     echo shar: \"'VMS/Contents'\" unpacked with wrong size!
  1130.   fi
  1131.   # end of 'VMS/Contents'
  1132. fi
  1133. if test -f 'VMS/bilf/make_bilf.com' -a "${1}" != "-c" ; then 
  1134.   echo shar: Will not clobber existing file \"'VMS/bilf/make_bilf.com'\"
  1135. else
  1136.   echo shar: Extracting \"'VMS/bilf/make_bilf.com'\" \(219 characters\)
  1137.   sed "s/^X//" >'VMS/bilf/make_bilf.com' <<'END_OF_FILE'
  1138. X$ set verify    ! like "echo on", eh?
  1139. X$ cc bilf
  1140. X$ link bilf,sys$input:/opt
  1141. Xsys$share:vaxcrtl.exe/shareable
  1142. X$ ! change the following symbol to "$diskname:[directory]bilf.exe" as approp.
  1143. X$ bilf == "$bilf.exe"
  1144. X$ set noverify
  1145. END_OF_FILE
  1146.   if test 219 -ne `wc -c <'VMS/bilf/make_bilf.com'`; then
  1147.     echo shar: \"'VMS/bilf/make_bilf.com'\" unpacked with wrong size!
  1148.   fi
  1149.   # end of 'VMS/bilf/make_bilf.com'
  1150. fi
  1151. if test -f 'VMS/descrip.mms' -a "${1}" != "-c" ; then 
  1152.   echo shar: Will not clobber existing file \"'VMS/descrip.mms'\"
  1153. else
  1154.   echo shar: Extracting \"'VMS/descrip.mms'\" \(2231 characters\)
  1155.   sed "s/^X//" >'VMS/descrip.mms' <<'END_OF_FILE'
  1156. X!==========================================================================
  1157. X! MMS description file for UnZip 5.0+                          26 June 1992
  1158. X!==========================================================================
  1159. X!
  1160. X!   Original by Antonio Querubin, Jr., <querubin@uhccvx.uhcc.hawaii.edu>
  1161. X!     (23 Dec 90)
  1162. X!   Enhancements by Igor Mandrichenko, <mandrichenko@mx.decnet.ihep.su>
  1163. X!     (9 Feb 92)
  1164. X
  1165. X! To build UnZip that uses shared libraries,
  1166. X!    mms
  1167. X! (One-time users will find it easier to use the MAKE_UNZIP_VAXC.COM command
  1168. X! file, which generates both UnZip and ZipInfo.  Just type "@MAKE_UNZIP_VAXC";
  1169. X! or "@MAKE_UNZIP_GCC" if you have GNU C.)
  1170. X
  1171. X! To build UnZip without shared libraries,
  1172. X!    mms noshare
  1173. X
  1174. X! To delete unnecessary .OBJ files,
  1175. X!    mms clean
  1176. X
  1177. XCRYPTF =
  1178. XCRYPTO =
  1179. X! To build decryption version, uncomment next two lines:
  1180. X!CRYPTF = /def=(CRYPT)
  1181. X!CRYPTO = crypt.obj,
  1182. X
  1183. XCC = cc
  1184. XCFLAGS = $(CRYPTF)
  1185. XLD = link
  1186. XLDFLAGS =
  1187. XEXE =
  1188. XO = .obj;
  1189. XOBJS = unzip$(O), $(CRYPTO) envargs$(O), explode$(O), extract$(O),\
  1190. X       file_io$(O), inflate$(O), mapname$(O), match$(O), misc$(O),\
  1191. X       unreduce$(O), unshrink$(O), vms$(O)
  1192. XOBJI = zipinfo$(O), envargs$(O), match$(O), misc.obj_, vms.obj_
  1193. X
  1194. XLDFLAGS2 =
  1195. X
  1196. Xdefault    :    unzip.exe, zipinfo.exe
  1197. X    @    !    Do nothing.
  1198. X
  1199. Xunzip.exe :    $(OBJS), vmsshare.opt
  1200. X    $(LD) $(LDFLAGS) $(OBJS), \
  1201. X        vmsshare.opt/options
  1202. X
  1203. Xzipinfo.exe :    $(OBJI), vmsshare.opt
  1204. X    $(LD) $(LDFLAGS) $(OBJI), \
  1205. X        vmsshare.opt/options
  1206. X
  1207. X
  1208. Xnoshare :    $(OBJS)
  1209. X    $(LD) $(LDFLAGS) $(OBJS), \
  1210. X        sys$library:vaxcrtl.olb/library $(LDFLAGS2)
  1211. X
  1212. Xclean :
  1213. X    delete $(OBJS)    ! you may want to change this to 'delete *.obj;*'
  1214. X
  1215. Xcrypt$(O) :    crypt.c unzip.h zip.h    ! may or may not be included in distrib
  1216. Xenvargs$(O) :    envargs.c unzip.h
  1217. Xexplode$(O) :    explode.c unzip.h
  1218. Xextract$(O) :    extract.c unzip.h
  1219. Xfile_io$(O) :    file_io.c unzip.h
  1220. Xinflate$(O) :    inflate.c unzip.h
  1221. Xmapname$(O) :    mapname.c unzip.h
  1222. Xmatch$(O) :    match.c unzip.h
  1223. Xmisc$(O) :    misc.c unzip.h
  1224. Xunreduce$(O) :    unreduce.c unzip.h
  1225. Xunshrink$(O) :    unshrink.c unzip.h
  1226. Xunzip$(O) :    unzip.c unzip.h
  1227. Xvms$(O)      :    vms.c unzip.h
  1228. XVMSmunch$(O) :    VMSmunch.c VMSmunch.h
  1229. Xmisc.obj_ :    misc.c unzip.h
  1230. X    $(CC)/object=misc.obj_/define="ZIPINFO" misc.c
  1231. X
  1232. Xvms.obj_ :    vms.c unzip.h
  1233. X    $(CC)/object=vms.obj_/define="ZIPINFO" vms.c
  1234. END_OF_FILE
  1235.   if test 2231 -ne `wc -c <'VMS/descrip.mms'`; then
  1236.     echo shar: \"'VMS/descrip.mms'\" unpacked with wrong size!
  1237.   fi
  1238.   # end of 'VMS/descrip.mms'
  1239. fi
  1240. if test -f 'VMS/make_gcc_unzip.com' -a "${1}" != "-c" ; then 
  1241.   echo shar: Will not clobber existing file \"'VMS/make_gcc_unzip.com'\"
  1242. else
  1243.   echo shar: Extracting \"'VMS/make_gcc_unzip.com'\" \(1347 characters\)
  1244.   sed "s/^X//" >'VMS/make_gcc_unzip.com' <<'END_OF_FILE'
  1245. X$ !
  1246. X$ !        "Makefile" for VMS versions of UnZip and ZipInfo
  1247. X$ !                (version:  GNU C)
  1248. X$ !
  1249. X$ ! Find out current disk and directory
  1250. X$ !
  1251. X$ my_name = f$env("procedure")
  1252. X$ here = f$parse(my_name,,,"device") + f$parse(my_name,,,"directory")
  1253. X$ set verify    ! like "echo on", eh?
  1254. X$ !
  1255. X$ ! Do UnZip:
  1256. X$ !   (for decryption version, add /def=CRYPT to each of following lines,
  1257. X$ !   uncomment crypt compile line, and add crypt to link line)
  1258. X$ !
  1259. X$ gcc unzip
  1260. X$ gcc envargs
  1261. X$ gcc explode
  1262. X$ gcc extract
  1263. X$ gcc file_io
  1264. X$ gcc inflate
  1265. X$ gcc mapname
  1266. X$ gcc match
  1267. X$ gcc misc
  1268. X$ gcc unreduce
  1269. X$ gcc unshrink
  1270. X$ gcc vms
  1271. X$! gcc crypt
  1272. X$ link unzip, envargs, explode, extract, file_io, inflate, mapname,-
  1273. X    match, misc, unreduce, unshrink, vms, gnu_cc:[000000]gcclib.olb/lib,-
  1274. X    sys$input:/opt
  1275. X sys$share:vaxcrtl.exe/shareable
  1276. X$ !
  1277. X$ ! Do ZipInfo:
  1278. X$ !
  1279. X$ gcc zipinfo
  1280. X$ gcc /def=(ZIPINFO) /object=misc_.obj misc
  1281. X$ gcc /def=(ZIPINFO) /object=vms_.obj  vms
  1282. X$ link zipinfo, envargs, match, misc_, vms_, gnu_cc:[000000]gcclib.olb/lib,-
  1283. X    sys$input:/opt
  1284. X sys$share:vaxcrtl.exe/shareable
  1285. X$ !
  1286. X$ ! Next line:  put a similar line (full pathname for unzip.exe and zipinfo.exe)
  1287. X$ ! in login.com.  Remember to include the leading "$" before disk name.
  1288. X$ !
  1289. X$ unzip == "$''here'unzip.exe"        ! set up symbol to use unzip
  1290. X$ zipinfo == "$''here'zipinfo.exe"    ! set up symbol to use zipinfo
  1291. X$ !
  1292. X$ set noverify
  1293. END_OF_FILE
  1294.   if test 1347 -ne `wc -c <'VMS/make_gcc_unzip.com'`; then
  1295.     echo shar: \"'VMS/make_gcc_unzip.com'\" unpacked with wrong size!
  1296.   fi
  1297.   # end of 'VMS/make_gcc_unzip.com'
  1298. fi
  1299. if test -f 'VMS/make_vaxc_unzip.com' -a "${1}" != "-c" ; then 
  1300.   echo shar: Will not clobber existing file \"'VMS/make_vaxc_unzip.com'\"
  1301. else
  1302.   echo shar: Extracting \"'VMS/make_vaxc_unzip.com'\" \(1188 characters\)
  1303.   sed "s/^X//" >'VMS/make_vaxc_unzip.com' <<'END_OF_FILE'
  1304. X$ !
  1305. X$ !        "Makefile" for VMS versions of UnZip and ZipInfo
  1306. X$ !                (version:  VAX C)
  1307. X$ !
  1308. X$ ! Find out current disk and directory
  1309. X$ !
  1310. X$ my_name = f$env("procedure")
  1311. X$ here = f$parse(my_name,,,"device") + f$parse(my_name,,,"directory")
  1312. X$ set verify    ! like "echo on", eh?
  1313. X$ !
  1314. X$ ! Do UnZip:
  1315. X$ !   (for decryption version, add /def=CRYPT to compile line, and add
  1316. X$ !   crypt to both compile and link lines)
  1317. X$ !
  1318. X$ cc unzip, envargs, explode, extract, file_io, inflate, mapname,-
  1319. X    match, misc, unreduce, unshrink, vms
  1320. X$ link unzip, envargs, explode, extract, file_io, inflate, mapname,-
  1321. X    match, misc, unreduce, unshrink, vms, sys$input:/opt
  1322. X sys$share:vaxcrtl.exe/shareable
  1323. X$ !
  1324. X$ ! Do ZipInfo:
  1325. X$ !
  1326. X$ cc zipinfo
  1327. X$ cc /def=(ZIPINFO) /obj=misc_.obj  misc.c
  1328. X$ cc /def=(ZIPINFO) /obj=vms_.obj   vms.c
  1329. X$ link zipinfo, envargs, match, misc_, vms_, sys$input:/opt
  1330. X sys$share:vaxcrtl.exe/shareable
  1331. X$ !
  1332. X$ ! Next line:  put a similar line (full pathname for unzip.exe and zipinfo.exe)
  1333. X$ ! in login.com.  Remember to include the leading "$" before disk name.
  1334. X$ !
  1335. X$ unzip == "$''here'unzip.exe"        ! set up symbol to use unzip
  1336. X$ zipinfo == "$''here'zipinfo.exe"    ! set up symbol to use zipinfo
  1337. X$ !
  1338. X$ set noverify
  1339. END_OF_FILE
  1340.   if test 1188 -ne `wc -c <'VMS/make_vaxc_unzip.com'`; then
  1341.     echo shar: \"'VMS/make_vaxc_unzip.com'\" unpacked with wrong size!
  1342.   fi
  1343.   # end of 'VMS/make_vaxc_unzip.com'
  1344. fi
  1345. if test -f 'VMS/makefile' -a "${1}" != "-c" ; then 
  1346.   echo shar: Will not clobber existing file \"'VMS/makefile'\"
  1347. else
  1348.   echo shar: Extracting \"'VMS/makefile'\" \(2874 characters\)
  1349.   sed "s/^X//" >'VMS/makefile' <<'END_OF_FILE'
  1350. X#============================================================================
  1351. X# Makefile for UnZip & ZipInfo:  VMS                             Greg Roelofs
  1352. X# Version:  5.0 (inflate,explode)                                  7 May 1992
  1353. X#============================================================================
  1354. X
  1355. X# Most recent revisions:  26 June 1992
  1356. X
  1357. X
  1358. X#####################
  1359. X# MACRO DEFINITIONS #
  1360. X#####################
  1361. X
  1362. XCRYPTF =
  1363. XCRYPTO =
  1364. X# Uncomment next two lines for decryption version:
  1365. X#CRYPTF = /def=(CRYPT)
  1366. X#CRYPTO = crypt.obj,
  1367. X
  1368. XCC = cc
  1369. XCFLAGS = $(CRYPTF)            # use "cc $(CFLAGS)" this way
  1370. X# CFLAGS := /def=(FLAG1,FLAG2)        # this also works, if use "cc 'CFLAGS'"
  1371. XZCFLAGS = /def=(ZIPINFO)
  1372. XLD = link
  1373. XLDFLAGS =
  1374. X
  1375. XLN = copy
  1376. XRM = delete
  1377. XE = .exe
  1378. XO = .obj
  1379. X
  1380. XOBJS = unzip$O, $(CRYPTO) envargs$O, explode$O, extract$O, file_io$O,-
  1381. X   inflate$O, mapname$O, match$O, misc$O, unreduce$O, unshrink$O,-
  1382. X   vms$O, sys$input:/opt
  1383. XZI_OBJS = zipinfo$O, envargs$O, match$O, misc$O_, vms$O_, sys$input:/opt
  1384. X
  1385. X
  1386. X###############################################
  1387. X# BASIC COMPILE INSTRUCTIONS AND DEPENDENCIES #
  1388. X###############################################
  1389. X
  1390. Xdefault:    unzip.exe zipinfo.exe
  1391. X
  1392. X*.obj:    *.c                # `*.c' necessary?
  1393. X    $(CC) $(CFLAGS) $<
  1394. X
  1395. X*.obj_:    *.c                # `$*' not legal
  1396. X    $(CC) $(ZCFLAGS) $< /obj=$@
  1397. X
  1398. Xunzip$E:    $(OBJS)
  1399. X    $(LD) $(LDFLAGS) $(OBJS)    # next line is data line
  1400. X    sys$share:vaxcrtl.exe/shareable $
  1401. X
  1402. Xzipinfo$E:    $(ZI_OBJS)
  1403. X    $(LD) $(LDFLAGS) $(ZI_OBJS)    # next line is data line
  1404. X    sys$share:vaxcrtl.exe/shareable $
  1405. X
  1406. Xcrypt$O:        crypt.c unzip.h zip.h    # may or may not be in distribution
  1407. Xenvargs$O:      envargs.c unzip.h
  1408. Xexplode$O:      explode.c unzip.h
  1409. Xextract$O:      extract.c unzip.h
  1410. Xfile_io$O:      file_io.c unzip.h
  1411. Xinflate$O:      inflate.c unzip.h
  1412. Xmapname$O:      mapname.c unzip.h
  1413. Xmatch$O:        match.c unzip.h
  1414. Xmisc$O:         misc.c unzip.h
  1415. Xmisc$O_:    misc.c unzip.h
  1416. Xunreduce$O:     unreduce.c unzip.h
  1417. Xunshrink$O:     unshrink.c unzip.h
  1418. Xunzip$O:        unzip.c unzip.h
  1419. Xvms$O:          vms.c unzip.h
  1420. Xvms$O_:         vms.c unzip.h
  1421. XVMSmunch$O:     VMSmunch.c VMSmunch.h
  1422. Xzipinfo$O:    zipinfo.c unzip.h
  1423. X
  1424. X# system: ${SYSDIR}make.exe ${SYSDIR}make.ini
  1425. X# debug:
  1426. X#     cflags := /debug/noopt
  1427. X#     lflags := /debug
  1428. X# ${DISTDIR}unzip.exe: unzip.exe
  1429. X#    copy unzip.exe ${DISTDIR}/log
  1430. X
  1431. Xclean:
  1432. X    purge/log
  1433. X#    purge/log ${DISTDIR}
  1434. X
  1435. X
  1436. X# the backslash '\' is the continuation character if it occurs as
  1437. X# the last non-white character on the line.
  1438. X# the hyphen '-' is the DCL continuation character, so if it occurs
  1439. X# as the last non-white character on the line, the next line will
  1440. X# not have the dollar sign '$' prepended.
  1441. X
  1442. X
  1443. X################################
  1444. X# INDIVIDUAL MACHINE MAKERULES #
  1445. X################################
  1446. X
  1447. Xgeneric:    default        # first try if unknown
  1448. Xgeneric2:    default        # second try if unknown
  1449. Xvax:        default
  1450. Xvms:        default
  1451. X
  1452. Xboth:        unzip.exe zipinfo.exe
  1453. Xunzip:        unzip.exe
  1454. Xzipinfo:    zipinfo.exe
  1455. END_OF_FILE
  1456.   if test 2874 -ne `wc -c <'VMS/makefile'`; then
  1457.     echo shar: \"'VMS/makefile'\" unpacked with wrong size!
  1458.   fi
  1459.   # end of 'VMS/makefile'
  1460. fi
  1461. if test -f 'funzip.1' -a "${1}" != "-c" ; then 
  1462.   echo shar: Will not clobber existing file \"'funzip.1'\"
  1463. else
  1464.   echo shar: Extracting \"'funzip.1'\" \(1974 characters\)
  1465.   sed "s/^X//" >'funzip.1' <<'END_OF_FILE'
  1466. X.TH FUNZIP 1 "19 Aug 92 (v1.3)"
  1467. X.SH NAME
  1468. Xfunzip \- extract from a ZIP archive file as a filter
  1469. X.SH SYNOPSIS
  1470. X[...]  |  \fBfunzip\fP [ password ]  |  [...]
  1471. X.SH ARGUMENTS
  1472. X.IP [\fIpassword\fP] \w'[\fIpassword\fP]'u+2m
  1473. XOptional password to be used if ZIP archive is encrypted.  Decryption
  1474. Xmay not be supported at some sites.  See DESCRIPTION for more details.
  1475. X.PD
  1476. X.SH DESCRIPTION
  1477. X.I FUnZip
  1478. Xacts as a filter; that is, it assumes that a ZIP archive is being piped into
  1479. Xstandard input, and it extracts the first member from the archive to stdout.
  1480. XGiven the limitation on single-member extraction, \fIFUnZip\fP is most
  1481. Xuseful in conjunction with a secondary archiver program such as tar(1).
  1482. XThe following section includes an example illustrating this usage in the
  1483. Xcase of disk backups to tape.
  1484. X.PD
  1485. X.SH EXAMPLES
  1486. XTo use \fIFUnZip\fP to extract the first member file of the archive test.zip
  1487. Xand to pipe it into more(1):
  1488. X.PP
  1489. X.IP "\t\fIfunzip\fP < test.zip | more"
  1490. X.PP
  1491. XTo use \fIFUnZip\fP to test the first member file of test.zip (any errors
  1492. Xwill be reported on standard error):
  1493. X.PP
  1494. X.IP "\t\fIfunzip\fP < test.zip > /dev/null"
  1495. X.PP
  1496. XTo use \fIZip\fP and \fIFUnZip\fP in place of compress(1) and zcat(1) for
  1497. Xtape backups:
  1498. X.PP
  1499. X.IP "\ttar cf \- . | \fIzip\fP \-7 | dd of=/dev/nrst0 obs=8k"
  1500. X.IP "\tdd if=/dev/nrst0 ibs=8k | \fIfunzip\fP | tar xf \-"
  1501. X.PP
  1502. X(where, for example, nrst0 is a SCSI tape drive).
  1503. X.PD
  1504. X.SH LIMITATIONS
  1505. XThere is presently no way to extract any member but the first from a ZIP
  1506. Xarchive.  This would be useful in the case where a ZIP archive is included
  1507. Xwithin another archive.
  1508. X.PP
  1509. XAn alternate mechanism for passing the password to \fIFUnZip\fP would
  1510. Xbe preferable to putting it on the command line.
  1511. X.PP
  1512. X\fIFUnZip\fP would be useful under OS/2, too.
  1513. X.PP
  1514. XThe functionality of \fIFUnZip\fP should be included in \fIUnZip\fP
  1515. Xdirectly (future release).
  1516. X.PD
  1517. X.SH SEE ALSO
  1518. Xunzip(1), zip(1), zipcloak(1), zipinfo(1), zipnote(1), zipsplit(1)
  1519. X.PD
  1520. X.SH AUTHOR
  1521. XMark Adler (Info-ZIP)
  1522. X.PD
  1523. END_OF_FILE
  1524.   if test 1974 -ne `wc -c <'funzip.1'`; then
  1525.     echo shar: \"'funzip.1'\" unpacked with wrong size!
  1526.   fi
  1527.   # end of 'funzip.1'
  1528. fi
  1529. if test -f 'funzip.doc' -a "${1}" != "-c" ; then 
  1530.   echo shar: Will not clobber existing file \"'funzip.doc'\"
  1531. else
  1532.   echo shar: Extracting \"'funzip.doc'\" \(2249 characters\)
  1533.   sed "s/^X//" >'funzip.doc' <<'END_OF_FILE'
  1534. X
  1535. XFUNZIP(1)                USER COMMANDS                  FUNZIP(1)
  1536. X
  1537. XNAME
  1538. X     funzip - extract from a ZIP archive file as a filter
  1539. X
  1540. XSYNOPSIS
  1541. X     [...]  |  funzip [ password ]  |  [...]
  1542. X
  1543. XARGUMENTS
  1544. X     [password]  Optional password to be used if ZIP  archive  is
  1545. X                 encrypted.   Decryption  may not be supported at
  1546. X                 some sites.  See DESCRIPTION for more details.
  1547. X
  1548. XDESCRIPTION
  1549. X     FUnZip acts as a filter; that is,  it  assumes  that  a  ZIP
  1550. X     archive  is being piped into standard input, and it extracts
  1551. X     the first member from the archive to stdout.  Given the lim-
  1552. X     itation  on  single-member extraction, FUnZip is most useful
  1553. X     in conjunction with a secondary  archiver  program  such  as
  1554. X     tar(1).   The  following  section includes an example illus-
  1555. X     trating this usage in the case of disk backups to tape.
  1556. X
  1557. XEXAMPLES
  1558. X     To use FUnZip to  extract  the  first  member  file  of  the
  1559. X     archive test.zip and to pipe it into more(1):
  1560. X
  1561. X          funzip < test.zip | more
  1562. X
  1563. X     To use FUnZip to test the first member file of test.zip (any
  1564. X     errors will be reported on standard error):
  1565. X
  1566. X          funzip < test.zip > /dev/null
  1567. X
  1568. X     To use Zip and FUnZip in place of  compress(1)  and  zcat(1)
  1569. X     for tape backups:
  1570. X
  1571. X          tar cf - . | zip -7 | dd of=/dev/nrst0 obs=8k
  1572. X
  1573. X          dd if=/dev/nrst0 ibs=8k | funzip | tar xf -
  1574. X
  1575. X     (where, for example, nrst0 is a SCSI tape drive).
  1576. X
  1577. XLIMITATIONS
  1578. X     There is presently no way to  extract  any  member  but  the
  1579. X     first  from a ZIP archive.  This would be useful in the case
  1580. X     where a ZIP archive is included within another archive.
  1581. X
  1582. X     An alternate mechanism for passing the  password  to  FUnZip
  1583. X     would be preferable to putting it on the command line.
  1584. X
  1585. X     FUnZip would be useful under OS/2, too.
  1586. X
  1587. X     The functionality of FUnZip  should  be  included  in  UnZip
  1588. X     directly (future release).
  1589. X
  1590. XInfo-ZIP          Last change: 19 Aug 92 (v1.3)                 1
  1591. X
  1592. XFUNZIP(1)                USER COMMANDS                  FUNZIP(1)
  1593. X
  1594. XSEE ALSO
  1595. X     unzip(1),  zip(1),  zipcloak(1),   zipinfo(1),   zipnote(1),
  1596. X     zipsplit(1)
  1597. X
  1598. XAUTHOR
  1599. X     Mark Adler (Info-ZIP)
  1600. X
  1601. XInfo-ZIP          Last change: 19 Aug 92 (v1.3)                 2
  1602. X
  1603. END_OF_FILE
  1604.   if test 2249 -ne `wc -c <'funzip.doc'`; then
  1605.     echo shar: \"'funzip.doc'\" unpacked with wrong size!
  1606.   fi
  1607.   # end of 'funzip.doc'
  1608. fi
  1609. echo shar: End of archive 13 \(of 14\).
  1610. cp /dev/null ark13isdone
  1611. MISSING=""
  1612. for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ; do
  1613.     if test ! -f ark${I}isdone ; then
  1614.     MISSING="${MISSING} ${I}"
  1615.     fi
  1616. done
  1617. if test "${MISSING}" = "" ; then
  1618.     echo You have unpacked all 14 archives.
  1619.     rm -f ark[1-9]isdone ark[1-9][0-9]isdone
  1620. else
  1621.     echo You still must unpack the following archives:
  1622.     echo "        " ${MISSING}
  1623. fi
  1624. exit 0
  1625. exit 0 # Just in case...
  1626.