|
|
1.1 ! root 1: #============================================================================== ! 2: # Makefile for UnZip, ZipInfo & FUnZip: Unix, OS/2, MS-DOS ("real" makes only) ! 3: # Version: 5.0 (inflate,explode) 20 August 1992 ! 4: #============================================================================== ! 5: # ! 6: # ! 7: # INSTRUCTIONS (such as they are): ! 8: # ! 9: # "make vax" -- makes UnZip on a VAX 11-780 BSD 4.3 in current directory ! 10: # (or a SysV VAX, or an 8600 running Ultrix, or...) ! 11: # "make" -- uses environment variable SYSTEM to set the type ! 12: # system to compile for. This doesn't work for some ! 13: # particularly brain-damaged versions of make (VAX BSD, ! 14: # Gould, and SCO Unix are in this group). If SYSTEM not ! 15: # set, gives instructions on what to try instead. ! 16: # "make list" -- lists all supported systems (targets), including related ! 17: # utilities' targets ! 18: # "make wombat" -- Chokes and dies if you haven't added the specifics ! 19: # for your Wombat 68000 (or whatever) to the systems list. ! 20: # ! 21: # CF are flags for the C compiler. LF are flags for the loader. LF2 are ! 22: # more flags for the loader, if they need to be at the end of the line ! 23: # instead of at the beginning (for example, some libraries). LOCAL_UNZIP ! 24: # is an environment variable that can be used to add default C flags to ! 25: # your compile without editing the Makefile (e.g., -DDEBUG_STRUC, or -FPi87 ! 26: # on PCs). ! 27: # ! 28: # My host (a VAX 11-780 running BSD 4.3) is hereafter referred to as "my host." ! 29: # ! 30: # My host's /usr/include/sys/param.h defines BSD for me. You may have to add ! 31: # "-DBSD" to the list of CF for your system. ! 32: # ! 33: # Some versions of make do not define the macro "$(MAKE)" (my host did not). ! 34: # The makefile should now handle such systems correctly, more or less; the ! 35: # possible exception to this is if you've used a make command-line option ! 36: # (for example, the one which displays the commands which WOULD be executed, ! 37: # but doesn't actually execute them). It probably needs some more tinkering. ! 38: # If things still don't work, use "make" instead of "$(MAKE)" in your system's ! 39: # makerule. Or try adding the following line to your .login file: ! 40: # setenv MAKE "make" ! 41: # (It didn't help on my host.) ! 42: # ! 43: # Memcpy and memset are provided for those systems that don't have them; ! 44: # they're found in misc.c and will be used if -DZMEM is included in the list ! 45: # of CF. These days *almost* all systems have them (they're mandated by ! 46: # ANSI), but older systems might be lacking. And at least one machine's ! 47: # version results in some serious performance degradation... ! 48: # ! 49: # Be sure to test your nice new UnZip; successful compilation does not always ! 50: # imply a working program. ! 51: ! 52: ! 53: ##################### ! 54: # MACRO DEFINITIONS # ! 55: ##################### ! 56: ! 57: # Defaults most systems use (use LOCAL_UNZIP in environment to add flags, ! 58: # such as -DNOMEMCPY). ! 59: ! 60: CRYPTF = ! 61: CRYPTO = ! 62: # Uncomment next two lines for decryption version: ! 63: CRYPTF = -DCRYPT ! 64: CRYPTO = crypt$O ! 65: ! 66: # UnZip flags ! 67: CC = cc# try using "gcc" target rather than changing this (if you do, ! 68: LD = cc# you MUST change LD, too--else "unresolved symbol: ___main") ! 69: LOC = $(LOCAL_UNZIP) $(CRYPTF) ! 70: CF = -O $(LOC) ! 71: LF = -o unzip ! 72: LF2 = -s ! 73: ! 74: # ZipInfo flags ! 75: ZC = -DZIPINFO ! 76: ZL = -o zipinfo ! 77: ZL2 = -s ! 78: ! 79: # FUnZip flags ! 80: FC = # not used ! 81: FL = -o funzip ! 82: FL2 = -s ! 83: ! 84: # general-purpose stuff ! 85: LN = rm -f misc_.c; ln ! 86: RM = rm -f ! 87: E = ! 88: O = .o ! 89: SHELL = /bin/sh ! 90: INSTALL = cp# probably can change this to 'install' if you have it ! 91: BINDIR = /usr/local/bin# target directory - where to install executables ! 92: ! 93: # object files ! 94: OBJS1 = unzip$O $(CRYPTO) envargs$O explode$O extract$O file_io$O inflate$O ! 95: OBJS2 = mapname$O match$O misc$O unreduce$O unshrink$O ! 96: OBJS = $(OBJS1) $(OBJS2) ! 97: LOBJS = $(OBJS) ! 98: OS2_OBJS = $(OBJS:.o=.obj) os2unzip.obj ! 99: OBJZ = zipinfo$O envargs$O match$O misc_$O ! 100: OS2_OBJZ = $(OBJZ:.o=.obj) os2zinfo.obj ! 101: OBJF = funzip$O $(CRYPTO) inflate$O ! 102: OS2_OBJF = # not yet supported ! 103: UNZIPS = unzip$E # zipinfo$E funzip$E # zipinfo, funzip not fully supported ! 104: # # yet (next release) ! 105: ! 106: # list of supported systems/targets in this version ! 107: SYSTEMS1 = 386i 3Bx 7300 amdahl apollo aviion bsd bull c120 c210 coherent ! 108: SYSTEMS2 = convex cray cray_cc cray_v3 cyber_sgi dec dnix encore eta ! 109: SYSTEMS3 = gcc gcc_dos generic generic2 gould hk68 hp indigo linux ! 110: SYSTEMS4 = minix mips msc_dos next osf1 p_iris pyramid rs6000 rtaix ! 111: SYSTEMS5 = sco sco_dos sco_x286 sequent sgi stellar sun sysv sysv6300 ! 112: SYSTEMS6 = tahoe ultrix vax wombat xos ! 113: ! 114: SYS_UTIL1 = zi_dos zi_gcc zi_indigo zipinfo fu_gcc funzip ! 115: # SYS_UTIL2 = ship ship_dos ship_sysv ! 116: ! 117: ! 118: #################### ! 119: # DEFAULT HANDLING # ! 120: #################### ! 121: ! 122: # The below will try to use your shell variable "SYSTEM" as the type system ! 123: # to use (e.g., if you type "make" with no parameters at the command line). ! 124: # The test for $(MAKE) is necessary for VAX BSD make (and Gould, apparently), ! 125: # as is the "goober" (else stupid makes see an "else ;" statement, which they ! 126: # don't like). "goober" must then be made into a valid target for machines ! 127: # which DO define MAKE properly (and have SYSTEM set). Quel kludge, non? ! 128: # And to top it all off, it appears that the VAX, at least, can't pick SYSTEM ! 129: # out of the environment either (which, I suppose, should not be surprising). ! 130: # [Btw, if the empty "goober" target causes someone else's make to barf, just ! 131: # add an "@echo > /dev/null" command (or whatever). Works OK on the Amdahl ! 132: # and Crays, though.] ! 133: ! 134: default: ! 135: @if test -z "$(MAKE)"; then\ ! 136: if test -z "$(SYSTEM)";\ ! 137: then make help;\ ! 138: else make $(SYSTEM) MAKE="make";\ ! 139: fi;\ ! 140: else\ ! 141: if test -z "$(SYSTEM)";\ ! 142: then $(MAKE) help;\ ! 143: else $(MAKE) $(SYSTEM) goober;\ ! 144: fi;\ ! 145: fi ! 146: ! 147: goober: ! 148: ! 149: help: ! 150: @echo ! 151: @echo\ ! 152: " If you're not sure about the characteristics of your system, try typing" ! 153: @echo\ ! 154: ' "make generic". If the compiler barfs and says something unpleasant about' ! 155: @echo\ ! 156: ' "timezone redefined," try typing "make clean" followed by "make generic2".' ! 157: @echo\ ! 158: ' One of these actions should produce a working copy of unzip on most Unix' ! 159: @echo\ ! 160: ' systems. If you know a bit more about the machine on which you work, you' ! 161: @echo\ ! 162: ' might try "make list" for a list of the specific systems supported herein.' ! 163: @echo\ ! 164: ' And as a last resort, feel free to read the numerous comments within the' ! 165: @echo\ ! 166: ' Makefile itself. Note that to compile the decryption version of UnZip,' ! 167: @echo\ ! 168: ' you must obtain crypt.c separately, in addition to uncommenting two lines' ! 169: @echo\ ! 170: ' in Makefile (see the main Contents file for ftp and mail-server sites).' ! 171: @echo\ ! 172: ' Have an excruciatingly pleasant day.' ! 173: @echo ! 174: ! 175: list: ! 176: @echo ! 177: @echo\ ! 178: 'Type "make <system>", where <system> is one of the following:' ! 179: @echo ! 180: @echo " $(SYSTEMS1)" ! 181: @echo " $(SYSTEMS2)" ! 182: @echo " $(SYSTEMS3)" ! 183: @echo " $(SYSTEMS4)" ! 184: @echo " $(SYSTEMS5)" ! 185: @echo " $(SYSTEMS6)" ! 186: @echo ! 187: @echo\ ! 188: 'Otherwise set the shell variable SYSTEM to one of these and just type "make".' ! 189: @echo\ ! 190: 'Targets for related utilities (ZipInfo) include:' ! 191: @echo ! 192: @echo " $(SYS_UTIL1)" ! 193: # @echo " $(SYS_UTIL2)" ! 194: @echo ! 195: @echo\ ! 196: 'For further (very useful) information, please read the comments in Makefile.' ! 197: @echo ! 198: ! 199: ! 200: ############################################### ! 201: # BASIC COMPILE INSTRUCTIONS AND DEPENDENCIES # ! 202: ############################################### ! 203: ! 204: .c.o: ! 205: $(CC) -c $(CF) $*.c ! 206: ! 207: unzips: $(UNZIPS) ! 208: ! 209: unzip$E: $(OBJS) ! 210: $(LD) $(LF) $(LOBJS) $(LF2) ! 211: ! 212: crypt$O: crypt.c unzip.h zip.h # may or may not be in distribution ! 213: envargs$O: envargs.c unzip.h ! 214: explode$O: explode.c unzip.h ! 215: extract$O: extract.c unzip.h ! 216: file_io$O: file_io.c unzip.h ! 217: funzip$O: funzip.c unzip.h ! 218: inflate$O: inflate.c unzip.h ! 219: mapname$O: mapname.c unzip.h ! 220: match$O: match.c unzip.h ! 221: misc$O: misc.c unzip.h ! 222: os2unzip$O: os2unzip.c unzip.h # for OS/2 only ! 223: os2zinfo$O: os2unzip.c unzip.h # for OS/2 only ! 224: unreduce$O: unreduce.c unzip.h ! 225: unshrink$O: unshrink.c unzip.h ! 226: unzip$O: unzip.c unzip.h ! 227: ! 228: all: generic_msg generic zipinfo ! 229: ! 230: generic_msg: ! 231: @echo ! 232: @echo\ ! 233: ' Attempting "make generic" and "make zipinfo" now. If this fails for some' ! 234: @echo\ ! 235: ' reason, type "make help" and/or "make list" for suggestions.' ! 236: @echo ! 237: ! 238: install: $(UNZIPS) ! 239: $(INSTALL) $(UNZIPS) $(BINDIR) ! 240: ! 241: clean: ! 242: rm -f $(OBJS) unzip$E $(OBJZ) zipinfo$E ! 243: ! 244: ! 245: ################################ ! 246: # INDIVIDUAL MACHINE MAKERULES # ! 247: ################################ ! 248: ! 249: # these are the makerules for various systems ! 250: # TABS ARE REQUIRED FOR MANY VERSIONS OF "MAKE"! ! 251: ! 252: ! 253: # --------------------------------------------------------------------------- ! 254: # Generic targets (can't assume make utility groks "$(MAKE)") ! 255: # --------------------------------------------------------------------------- ! 256: ! 257: generic: unzip # first try if unknown ! 258: ! 259: generic2: # second try if unknown: hope make is called "make"... ! 260: make unzip CF="$(CF) -DBSD" ! 261: ! 262: # --------------------------------------------------------------------------- ! 263: # "Normal" group (both big- and little-endian, structure-padding or not): ! 264: # --------------------------------------------------------------------------- ! 265: ! 266: 386i: unzip # sun386i, SunOS 4.0.2 ! 267: 3Bx: unzip # AT&T 3B2/1000-80; should work on any WE32XXX machine ! 268: 7300: unzip # AT&T 7300 (M68000/SysV) ! 269: apollo: unzip # Apollo Domain/OS machines ! 270: bull: unzip # Bull DPX/2, BOS 2.00.45 (doesn't require -Xk switch) ! 271: coherent: unzip # Coherent 3.10, Mark Williams C ! 272: cray_cc: unzip # Cray-2 and Y-MP, using default (possibly old) compiler ! 273: dec: unzip # DEC 5820 (MIPS RISC), test version of Ultrix v4.0 ! 274: encore: unzip # Multimax ! 275: eta: unzip # ETA-10P*, hybrid SysV with BSD 4.3 enhancements ! 276: gould: unzip # Gould PN9000 running UTX/32 2.1Bu01 ! 277: hp: unzip # HP 9000 series (68020), 4.3BSD or HP-UX A.B3.10 Ver D ! 278: hp_ux: unzip # (to match zip's makefile entry) ! 279: mips: unzip # MIPS M120-5(?), SysV.3 [error in sys/param.h file?] ! 280: pyramid: unzip # Pyramid 90X, prob. all, under >= OSx4.1, BSD universe ! 281: rtaix: unzip # IBM RT 6150 under AIX 2.2.1 ! 282: sco: unzip # Xenix/386 (tested on 2.3.1); SCO Unix 3.2.0. ! 283: stellar: unzip # gs-2000 ! 284: sun: unzip # Sun 3, 4; SunOS 4.x (SOME SYSTEMS ARE SYSTEM V!) ! 285: tahoe: unzip # tahoe (CCI Power6/32), 4.3BSD ! 286: ultrix: unzip # VAXen, DEC 58x0 (MIPS guts), DECstation 2100; v4.x ! 287: vax: unzip # general-purpose VAX target (not counting VMS) ! 288: ! 289: # --------------------------------------------------------------------------- ! 290: # BSD group (for timezone structs [struct timeb]): ! 291: # --------------------------------------------------------------------------- ! 292: ! 293: bsd: _bsd # generic BSD (BSD 4.2 & Ultrix handled in unzip.h) ! 294: ! 295: _bsd: ! 296: $(MAKE) unzip CF="$(CF) -DBSD" ! 297: ! 298: # --------------------------------------------------------------------------- ! 299: # SysV group (for extern long timezone and ioctl.h instead of sgtty.h): ! 300: # --------------------------------------------------------------------------- ! 301: ! 302: amdahl: _sysv # Amdahl (IBM) mainframe, UTS (SysV) 1.2.4 and 2.0.1 ! 303: aviion: _sysv # Data General AViiONs, DG/UX 4.3x ! 304: sgi: _sysv # Silicon Graphics Iris 4D, Irix SysV rel. 3.3.2 ! 305: sysv: _sysv # generic System V Unix ! 306: xos: _sysv # Olivetti LSX-3005..3045, X/OS 2.3 and 2.4 ! 307: ! 308: _sysv: ! 309: $(MAKE) unzip CF="$(CF) -DSYSV -DTERMIO" ! 310: ! 311: # --------------------------------------------------------------------------- ! 312: # "Unique" group (require non-standard options): ! 313: # --------------------------------------------------------------------------- ! 314: ! 315: # Apparently the C-120 has an optimization bug, and possibly another ! 316: # bug in the (SysV?) time routines which adds 11 years to the date. ! 317: # -DCONVEX not needed? [RZM: The remark above the C-120 entry ! 318: # about a bug may not be true. I think it is rather time procedures ! 319: # uncompatibility between unixes.] [GRR: So is -O2 ok for c120?] ! 320: # ! 321: c120: # Convex C-120, OS 9.0, with non-vectorizing cc 4.0 ! 322: $(MAKE) unzip CF="-O1 $(LOC) -Dunix -DBSD" ! 323: ! 324: c210: # Convex C-210, OS 9.0, cc 4.0 ! 325: $(MAKE) unzip CF="-O2 $(LOC) -Dunix -DBSD" ! 326: ! 327: # Enclosed you'll find a context diff for the unzip41 makefile ! 328: # which enhances compilation on a convex. The previous version ! 329: # probably worked great a couple of years ago, and would still do ! 330: # so if one compiles in our "backward compatible" pcc mode. The ! 331: # following allows it to work better in a modern convexian environment. ! 332: # [This target results in the following error on various Convex's, ! 333: # however: "cc: Error on line 79 of file_io.c: 'ioctl' redeclared: ! 334: # incompatible types."] ! 335: # ! 336: convex: # previous target was tested on C200/C400 ! 337: $(MAKE) unzip CF="$(CF) -Dunix -DCONVEX -ext" LF="$(LF) -ext" ! 338: ! 339: # Cray-2 and Y-MP, running Unicos 5.1 to 6.1 (SysV + BSD enhancements) ! 340: # and Standard (ANSI) C compiler 1.5, 2.0 or 3.0. ! 341: cray: ! 342: $(MAKE) unzip CC="scc" LD="scc" ! 343: ! 344: # Ditto, for Cray Standard C 3.0 or later. ! 345: cray_v3: ! 346: $(MAKE) unzip CC="scc" LD="scc" CF="$(CF) -h scalar3 -h vector3" ! 347: ! 348: # The unzip41 build on a Cyber 910/SGI running Irix v3.3.3 was successful ! 349: # with the following change to Makefile: ! 350: cyber_sgi: ! 351: $(MAKE) unzip CF="$(CF) -I/usr/include/bsd"\ ! 352: LF="-lbsd $(LF)" ! 353: ! 354: # The DIAB dnix 5.3 compiler does not define __STDC__ but understands ! 355: # prototypes, void, etc., anyway. It also does not provide any predefined ! 356: # macros to detect this (aside from "unix" and the four file, line, time ! 357: # and date macros). Thus we must define MODERN and PROTO by hand. ! 358: # ! 359: dnix: # 680X0, DIAB dnix 5.2/5.3 (a Swedish System V clone) ! 360: $(MAKE) unzip CF="$(CF) -DPROTO -DMODERN" ! 361: ! 362: # Generic BSDish Unix gcc. ``The -O2 only works with the latest version of ! 363: # gcc; you may have to use -O only for earlier versions. I have no idea why ! 364: # -s causes this bug in gcc.'' [Bug: "nm: unzip: no name list", "collect: ! 365: # /usr/bin/nm returned 1 exit status".] If you don't have strip, don't ! 366: # worry about it (it just makes the executable smaller). ! 367: # ! 368: gcc: ! 369: $(MAKE) unzip CC=gcc LD=gcc CF="-O2 $(LOC)" LF2="" ! 370: strip unzip ! 371: ! 372: # MS-DOS with D.J. Delorie's djgcc 1.06. Note that go32 doesn't support ! 373: # dos function 0x38 (yet); to fix, append to line 400 of exphdlr.c (go32) ! 374: # the following: "case 0x38:". ! 375: # ! 376: gcc_dos: # may need to add -Uunix to CF ! 377: $(MAKE) unzip CC=gcc LD=gcc CF="-O2 -Wall $(LOC)"\ ! 378: LF="-s" LF2="-o unzip" ! 379: aout2exe unzip ! 380: ! 381: # Heurikon HK68 (68010), UniPlus+ System V 5.0, Green Hills C-68000 ! 382: hk68: ! 383: $(MAKE) unzip CC="gcc" LD="gcc" LF="-n $(LF)" \ ! 384: CF="-ga -X138 $(LOC) -Dlocaltime=localti -Dtimezone=timezon" ! 385: ! 386: # Rules needed to build the unzip program for an Iris Indigo running ! 387: # Irix Version 4.0.1 ! 388: indigo: ! 389: $(MAKE) unzip CF="-cckr $(CF) -DTERMIO" ! 390: ! 391: # Linux is almost sysv but not quite ! 392: linux: # Linux pre-0.96 with gcc 2.1 ! 393: $(MAKE) unzip CF="$(CF) -DTERMIO -DLINUX" CC=gcc LD=gcc ! 394: ! 395: # Minix 1.5 PC for the 386 with gcc or bcc ! 396: minix: ! 397: $(MAKE) unzip CC=gcc CF="$(CF) -DMINIX" ! 398: ! 399: # PCs (IBM-type), running MS-DOS, Microsoft C 6.0 and NMAKE. Can't use ! 400: # SYSTEM environment variable: "default" target is > 200 characters. ! 401: # "nmake msc_dos" works fine, aside from (possibly) an irrelevant message ! 402: # about the creation of a temporary file. Environment variable LOCAL_UNZIP ! 403: # should be set via "SET LOCAL_UNZIP=-FPi87" if you use the 80x87 library; ! 404: # also add -G2 or -G3 if using a 286/386/486 system. ! 405: # ! 406: #msc_dos: ! 407: # $(MAKE) unzip.exe\ ! 408: # CF="-Ox $(LOC) -nologo -G2" CC=cl LD=link E=.exe O=.obj\ ! 409: # LF="/noi/nol" LF2=",unzip;" ! 410: ! 411: msc_dos: rsp ! 412: $(MAKE) unzip.exe CF="-Oait -Gs $(LOC) -nologo" CC=cl LD=link E=.exe\ ! 413: O=.obj LOBJS="" LF="@rsp" LF2="" ! 414: del rsp ! 415: ! 416: rsp: ! 417: echo $(OBJS1:.o=.obj)+ > rsp ! 418: echo $(OBJS2:.o=.obj)/noi/e/st:0x1000; >> rsp ! 419: ! 420: # $(LOCAL_UNZIP): math libraries and/or any other personal or debugging ! 421: # definitions: e.g., SET LOCAL_UNZIP=-FPi87 -DDEBUG_STRUC ! 422: # $(NOD): intended to be used as SET NOD=-link /nod:slibcep to allow the ! 423: # use of default library names (slibce.lib) instead of protected-mode ! 424: # names (slibcep.lib), but it fails: MSC adds its own /nod qualifier, ! 425: # and there seems to be no way to override this. Typical... ! 426: # ! 427: msc_os2: # 16-bit OS/2 (1.x) with MSC 6.00 (use makefile.os2) ! 428: $(MAKE) -nologo unzip.exe zipinfo.exe CC=cl LD=cl E=.exe O=.obj\ ! 429: OBJS="$(OS2_OBJS)" OBJZ="$(OS2_OBJZ)"\ ! 430: CF="-nologo -AC -Ocegit -G2s -DOS2 -DMSC $(LOC)"\ ! 431: LF="-nologo -AC $(LOC) -Lp -F 2000"\ ! 432: LF2="unzip.def -o unzip.exe $(NOD)" LN="copy" RM="del"\ ! 433: ZL="-nologo -AC $(LOC) -Lp -Fb" ZL2="zipinfo.def -o zipinfo.exe" ! 434: ! 435: # NeXT 2.x: make the executable smaller. ! 436: next: # 68030 BSD 4.3+Mach ! 437: $(MAKE) unzip LF2="-object -s" ! 438: ! 439: # Rules to build the unzip program on a DecStation running DEC OSF/1 V1.0. ! 440: # This machine hasn't got ftime(3) in the standard C library. ! 441: osf1: ! 442: $(MAKE) unzip LF2="-lbsd" ! 443: ! 444: # I successfully compiled and tested the unzip program (v30) for the ! 445: # Silicon Graphics environment (Personal Iris 4D20/G with IRIX v3.2.2) ! 446: p_iris: ! 447: $(MAKE) unzip CF="$(CF) -I/usr/include/bsd -DBSD"\ ! 448: LF="-lbsd $(LF)" ! 449: ! 450: # I have finished porting unzip 3.0 to the Pyramid 90X under OSX4.1. ! 451: # The biggest problem was the default structure alignment yielding two ! 452: # extra bytes. The compiler has the -q option to pack structures, and ! 453: # this was all that was needed. To avoid needing ZMEMS we could compile ! 454: # in the AT&T universe, but it runs more slowly! ! 455: # ! 456: #UnZip 5.0f: moved to regular targets as test ! 457: #pyramid: # Pyramid 90X, probably all, under >= OSx4.1, BSD universe ! 458: # make unzip CF="$(CF) -q" ! 459: ! 460: # IBM RS/6000 under AIX 3.2 ! 461: rs6000: ! 462: $(MAKE) unzip CF="$(CF) -DBSD -D_BSD -DUNIX" LF="-lbsd $(LF)" ! 463: ! 464: # SCO cross compile from unix to DOS. Tested with Xenix/386 and OpenDeskTop. ! 465: # Should work with xenix/286 as well. (davidsen) Note that you *must* remove ! 466: # the unix objects and executable before doing this! (Piet Plomp: gcc won't ! 467: # recognize the -M0 flag which forces 8086 code.) ! 468: # ! 469: sco_dos: # uncomment zipinfo in UNZIPS if desired ! 470: $(MAKE) unzips CF="-O $(LOC) -DNO_ERRNO -dos -M0" LF="-dos -F 2000"\ ! 471: LF2="-o unzip.exe" ZL="-dos" ZL2="-o zipinfo.exe" ! 472: ! 473: # SCO Xenix/286 2.2.1 ! 474: sco_x286: ! 475: $(MAKE) unzip CF="$(CF) -Ml2" LF="$(LF) -Ml2" ! 476: ! 477: # Sequent Symmetry is a 386 but needs -DZMEM ! 478: # This should also work on Balance but I can't test it just yet. ! 479: sequent: # Sequent w/Dynix ! 480: $(MAKE) unzip CF="$(CF) -DBSD -DZMEM" ! 481: ! 482: # AT&T 6300+, running System V.? Unix: out-of-memory error if don't use -Ml ! 483: sysv6300: ! 484: $(MAKE) unzip CF="$(CF) -Ml -DTERMIO" LF="$(LF) -Ml" ! 485: ! 486: # I didn't do this. I swear. No, really. ! 487: wombat: # Wombat 68000 (or whatever) ! 488: @echo ! 489: @echo ' Ha ha! Just kidding.' ! 490: @echo ! 491: ! 492: ! 493: ##################### ! 494: # ZIPINFO MAKERULES # ! 495: ##################### ! 496: ! 497: # ZipInfo section: less hand-holding here, but it should be pretty ! 498: # straightforward by now. ! 499: ! 500: zipinfo$O: zipinfo.c unzip.h ! 501: $(CC) -c $(CF) zipinfo.c ! 502: ! 503: misc_$O: misc.c unzip.h ! 504: $(LN) misc.c misc_.c ! 505: $(CC) -c $(CF) $(ZC) misc_.c ! 506: $(RM) misc_.c ! 507: ! 508: os2zinfo$O: os2unzip.c unzip.h ! 509: $(LN) os2unzip.c os2zinfo.c ! 510: $(CC) -c $(CF) $(ZC) os2zinfo.c ! 511: $(RM) os2zinfo.c ! 512: ! 513: zipinfo$E: $(OBJZ) ! 514: $(LD) $(ZL) $(OBJZ) $(ZL2) ! 515: ! 516: zi_gcc: # GNU gcc under Unix (if no strip, don't worry) ! 517: $(MAKE) zipinfo CC=gcc LD=gcc ZL2="" ! 518: strip zipinfo ! 519: ! 520: zi_indigo: # SGI Iris Indigo ! 521: $(MAKE) zipinfo CF="-cckr -O -DUNIX $(LOC)" ! 522: ! 523: zi_dos: # MSC 6.0 + nmake, MS-DOS ! 524: $(MAKE) zipinfo.exe CF="-Oait -Gs -nologo $(LOC)" CC=cl\ ! 525: LD=link E=.exe O=.obj ZL="/noi /nol" ZL2=",zipinfo;"\ ! 526: LN="copy" RM="DEL" ! 527: ! 528: ! 529: #################### ! 530: # FUNZIP MAKERULES # ! 531: #################### ! 532: ! 533: # FUnZip section: FUnZip (Filter UnZip) is a last-minute addition to the ! 534: # UnZip suite and is still VERY raw. Its purpose is to take a zipfile from ! 535: # stdin and decompress the first entry to stdout. Only non-encrypted, stored ! 536: # or deflated files are allowed at present. FUnZip may be absorbed into ! 537: # regular UnZip in a subsequent release. This target should work for some ! 538: # Unix systems but is not guaranteed to work for all (or even most). ! 539: ! 540: funzip$E: $(OBJF) ! 541: $(LD) $(FL) $(OBJF) $(FL2) ! 542: ! 543: fu_gcc: # GNU gcc under Unix (if no strip, don't worry) ! 544: $(MAKE) funzip CC=gcc LD=gcc FL2="" ! 545: strip funzip ! 546: ! 547: ! 548: ################ ! 549: # ATTRIBUTIONS # ! 550: ################ ! 551: ! 552: # Thanks to the following people for their help in testing and/or porting ! 553: # to various machines (and thanks to the many others who aren't listed ! 554: # here but should be): ! 555: # ! 556: # (original Unix port: Carl Mascott <[email protected]>) ! 557: # 386i: Richard Stephen <[email protected]> ! 558: # 3Bx: Bob Kemp <[email protected]> ! 559: # 7300: Richard H. Gumpertz <[email protected]> ! 560: # Greg Roelofs <[email protected]> ! 561: # amdahl: Kim DeVaughn <[email protected]>, Greg Roelofs ! 562: # apollo: Tim Geibelhaus ! 563: # aviion: Bruce Kahn <[email protected]> ! 564: # bull: Matt D'Errico <[email protected]> ! 565: # c120: Rafal Maszkowski <sgumk%pltumk11.bitnet> ! 566: # coherent: David Fenyes <[email protected]> ! 567: # convex: Randy Wright <[email protected]> ! 568: # cray: Greg Roelofs, Paul Borman <[email protected]> ! 569: # cray_cc: Greg Roelofs ! 570: # cray_v3: Greg Roelofs ! 571: # cyber_sgi: Clint Pulley <[email protected]> ! 572: # dec: "Moby" Dick O'Connor <[email protected]> ! 573: # dnix: Bo Kullmar <[email protected]> ! 574: # eta: Greg Flint <[email protected]> ! 575: # gcc: Jean-loup Gailly <[email protected]> ! 576: # gcc_dos: Onno van der Linden <[email protected]> ! 577: # gcc_os2: Kai Uwe Rommel <[email protected]> ! 578: # gould: Onno van der Linden ! 579: # hk68: John Limpert <[email protected]> ! 580: # hp: Randy McCaskile <[email protected]> (HP-UX) ! 581: # Gershon Elber <[email protected]> (HP BSD 4.3) ! 582: # icc_os2: Kai Uwe Rommel ! 583: # indigo: Kjetil Wiekhorst J|rgensen <[email protected]> ! 584: # linux: Humberto Ortiz-Zuazaga <[email protected]> ! 585: # minix: Kai Uwe Rommel (Minix 1.5) ! 586: # mips: Peter Jones <[email protected]> ! 587: # msc_dos: Greg Roelofs <[email protected]> ! 588: # Piet W. Plomp <[email protected]> ! 589: # msc_os2: Wim Bonner <[email protected]> ! 590: # Kai Uwe Rommel, Greg Roelofs ! 591: # next: Mark Adler <[email protected]> ! 592: # osf1: Kjetil Wiekhorst J{\o}rgensen ! 593: # p_iris: Valter V. Cavecchia <[email protected]> ! 594: # pyramid: James Dugal <[email protected]> ! 595: # rs6000: Filip Gieszczykiewicz <[email protected]> ! 596: # Trevor Paquette <[email protected]> ! 597: # rtaix: Erik-Jan Vens ! 598: # sco: Onno van der Linden (SCO Unix 3.2.0) ! 599: # Bill Davidsen <[email protected]> (Xenix/386) ! 600: # sco_dos: Bill Davidsen, Piet W. Plomp ! 601: # sco_x286: Ricky Mobley <[email protected]> ! 602: # sequent: Phil Howard <[email protected]> ! 603: # sgi: Greg Roelofs (Iris 4D/380?) ! 604: # sun: Onno van der Linden (Sun 4), Greg Roelofs (Sun 3, 4) ! 605: # sysv: Greg Roelofs ! 606: # sysv6300: Peter Mauzey <[email protected]> ! 607: # tahoe: Mark Edwards <mce%[email protected]> ! 608: # ultrix: Greg Flint (VAX) ! 609: # Michael Graff <[email protected]> (DECstation 2100?) ! 610: # Greg Roelofs (DEC 5810) ! 611: # Alex A Sergejew <[email protected]> ! 612: # vax: Forrest Gehrke <[email protected]> (SysV) ! 613: # David Kirschbaum <[email protected]> (BSD 4.3) ! 614: # Jim Steiner <[email protected]> (8600+Ultrix) ! 615: # wombat: Joe Isuzu <[email protected]> ! 616: # xos: Fulvio Marino <[email protected]> ! 617: # zi_dos: Greg Roelofs ! 618: # zi_icc: Kai Uwe Rommel ! 619: # zi_os2: Greg Roelofs, Kai Uwe Rommel ! 620: # zipinfo: Greg Roelofs
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.