1# Makefile for UnZip(SFX) and fUnZip for Borland C++ for Windows 9x/NT 2# Version: 6.0 and later 3# Alvin Koh, Jim Knoble, Christian Spieler, E-Yen Tan, Cosmin Truta, etc. 4# 5# Tested with Borland C++ 5.5 (may work with older C++Builder 3.0, too) 6# 7# Last revised: 07 Sep 2008 (Christian Spieler) 8# 9# 10 11# Optional nonstandard preprocessor flags (as -DCHECK_EOF or -DDOS_WILD) 12# should be added to the environment via "set LOCAL_UNZIP=-DFOO" or added 13# to the declaration of LOC here: 14LOC = $(LOCAL_UNZIP) 15 16# Type for CPU required: 3: 80386, 4: 80486, 5: Pentium, 17# 6: Pentium Pro, Pentium II, etc. 18!ifndef CPU_TYP 19CPU_TYP = 6 20!endif 21 22# (De)Select inclusion of optimized assembler CRC32 routine: 23!ifdef NOASM 24USE_ASMCRC=0 25!else 26!ifdef USEASM 27USE_ASMCRC=1 28!endif 29!endif 30 31# Specify USEMASM=1 or USETASM=1 in case you have one of these x86 assemblers 32# to use the assembler instead of the inline ASM C code. 33#USEMASM=1 34#USETASM=1 35# For the Turbo Assembler, you may choose between the (old) 16-bit version 36# and the 32-bit program which is faster provides more resources. 37#USETASM16=1 38 39!ifndef USE_ASMCRC 40# default to ASM CRC C code for now (BCC needs TASM32 to support inline asm)... 41USE_ASMCRC = 0 42!endif 43 44!ifndef USE_IZTIMEZONE 45#default: do not use the IZ timezone replacement 46USE_IZTIMEZONE=0 47!endif 48 49!if $(USE_IZTIMEZONE) != 0 50LOC = -DW32_USE_IZ_TIMEZONE $(LOC) 51!endif 52 53# If you have bcc32i, you should define: 54# CC = bcc32i 55# This compiler generates a faster code. 56CC = bcc32 57!ifdef USETASM16 58AS = tasm 59!else 60AS = tasm32 61!endif 62AR = tlib 63LD = ilink32 64 65!if $(USE_ASMCRC) != 0 66ASMFLG = -DASM_CRC 67CRC32 = crc_i386 68CRC32X = $(CRC32) 69CRC32F = $(CRC32) 70CRC32L = $(CRC32) 71CRC32G = $(CRC32) 72CRC32B = $(CRC32) 73!else 74ASMFLG = 75CRC32 = crc32 76CRC32X = crc32x 77CRC32F = crc32f 78CRC32L = crc32l 79CRC32G = crc32g 80CRC32B = $(OB)crc32b 81!endif 82 83!if $(USE_IZTIMEZONE) != 0 84TIMEZONE_OBJU = timezone.obj 85TIMEZONE_OBJX = timezonx.obj 86TIMEZONE_OBJD = timezonl.obj 87TIMEZONE_OBLX = timezolx.obj 88TIMEZONE_OBJB = $(OB)timezonb.obj 89!else 90TIMEZONE_OBJU = 91TIMEZONE_OBJX = 92TIMEZONE_OBJD = 93TIMEZONE_OBLX = 94TIMEZONE_OBJB = 95!endif 96 97!if $(UNCLEAN) 98DIRT = -DUSE_SMITH_CODE -DUSE_UNSHRINK 99!else 100DIRT = 101!endif 102 103!if $(DEBUG) 104CC_SIZE_OPT = -Od 105CC_SPEED_OPT = -Od 106!else 107# Smallest code 108CC_SIZE_OPT = -O1 -OS 109# Fastest code 110CC_SPEED_OPT = -O2 -OS -Oc 111!endif 112!if $(WARNINGS) 113CC_WARN = -w -w-aus -w-par -w-sig -w-use 114!else 115CC_WARN = -w- 116!endif 117 118# compiler flags 119 120ASCPUFLAG = __$(CPU_TYP)86 121!if $(CPU_TYP) != 0 122CC_CPUFLG = -$(CPU_TYP) 123!endif 124ASFLAGS = -ml -m2 -w0 -D$(ASCPUFLAG) $(LOC) 125CFLAGS = $(CC_WARN) $(CC_CPUFLG) -d -ff- -k- -P-.C -I. $(ASMFLG) $(LOC) $(DIRT) 126LDFLAGS = # -lxncd -l-P # for bcc 127LDFLAGS_DLL = $(LDFLAGS) -tWD 128LDFLAGS_GUI = $(LDFLAGS) -tW 129UNFLAGS = $(CFLAGS) $(CC_SPEED_OPT) 130FUFLAGS = $(CFLAGS) $(CC_SPEED_OPT) -K -DFUNZIP 131SXFLAGS = $(CFLAGS) $(CC_SIZE_OPT) -DSFX 132DLFLAGS = $(CFLAGS) $(CC_SPEED_OPT) -tWD -DWINDLL -DDLL 133SLFLAGS = $(CFLAGS) $(CC_SIZE_OPT) -DWINDLL -DDLL -DUNZIPLIB -DSFX 134GXFLAGS = $(CFLAGS) $(CC_SIZE_OPT) -tW -DSFX 135LBFLAGS = $(CFLAGS) $(CC_SPEED_OPT) -DWINDLL -DDLL -DUNZIPLIB 136 137# list macros 138 139# special subdirectory for the static library binaries, to separate them 140# from other binaries (including dll import library file) 141OBDIR = ow32lib 142OB = $(OBDIR)/ 143 144# object files 145OBJU1 = unzip.obj $(CRC32).obj crypt.obj envargs.obj explode.obj 146OBJU2 = extract.obj fileio.obj globals.obj inflate.obj list.obj match.obj 147OBJU3 = process.obj ttyio.obj ubz2err.obj unreduce.obj unshrink.obj zipinfo.obj 148OBJUS = win32.obj win32i64.obj nt.obj $(TIMEZONE_OBJU) 149OBJU = $(OBJU1) $(OBJU2) $(OBJU3) $(OBJUS) 150OBJF = funzip.obj $(CRC32F).obj cryptf.obj globalsf.obj inflatef.obj \ 151 ttyiof.obj win32f.obj win32i64f.obj 152OBJX1 = unzipsfx.obj $(CRC32X).obj cryptx.obj 153OBJX2 = extractx.obj fileiox.obj globalsx.obj inflatex.obj matchx.obj 154OBJX3 = processx.obj ttyiox.obj ubz2errx.obj 155OBJXS = win32x.obj win32i64x.obj ntx.obj $(TIMEZONE_OBJX) 156OBJX = $(OBJX1) $(OBJX2) $(OBJX3) $(OBJXS) 157OBJD1 = api.obj $(CRC32L).obj cryptl.obj explodel.obj 158OBJD2 = extractl.obj fileiol.obj globalsl.obj inflatel.obj listl.obj matchl.obj 159OBJD3 = processl.obj ubz2errl.obj unreducl.obj unshrnkl.obj zipinfol.obj 160OBJDS = win32l.obj win32i64l.obj ntl.obj windll.obj $(ASMOBJS) $(TIMEZONE_OBJD) 161OBJD = $(OBJD1) $(OBJD2) $(OBJD3) $(OBJDS) 162OBLX1 = apig.obj $(CRC32G).obj cryptg.obj 163OBLX2 = extractg.obj fileiog.obj globalsg.obj inflateg.obj 164OBLX3 = matchg.obj processg.obj ubz2errg.obj 165OBLXS = win32g.obj win32i64g.obj ntg.obj windllg.obj $(TIMEZONE_OBLX) 166OBLX = $(OBLX1) $(OBLX2) $(OBLX3) $(OBLXS) 167OBGX = sfxwiz.obj 168OBJLIB = $(OB)windllb.obj $(OB)apib.obj 169OBJB1 = $(CRC32B).obj $(OB)cryptb.obj 170OBJB2 = $(OB)explodeb.obj $(OB)extractb.obj $(OB)fileiob.obj $(OB)globalsb.obj 171OBJB3 = $(OB)inflateb.obj $(OB)listb.obj $(OB)matchb.obj $(OB)processb.obj 172OBJB4 = $(OB)ubz2errb.obj $(OB)unreducb.obj $(OB)unshrnkb.obj $(OB)zipinfob.obj 173OBJBS = $(OB)win32b.obj $(OB)win32i64b.obj $(OB)ntb.obj $(TIMEZONE_OBJB) 174OBJB = $(OBJLIB) $(OBJB1) $(OBJB2) $(OBJB3) $(OBJB4) $(OBJBS) 175 176UNZIP_H = unzip.h unzpriv.h globals.h win32/w32cfg.h 177WINDLL_H = windll/windll.h windll/structs.h windll/decs.h 178WINDLL_DEF = windll/windll32.def 179WINDLL_IMP_H = windll/decs.h windll/structs.h 180 181# implicit rules 182 183.asm.obj: 184 $(AS) $(ASFLAGS) $< 185 186.c.obj: 187 $(CC) -c $(UNFLAGS) {$< } 188 189# explicit rules 190 191# Default target is all the command line executables 192unzips: unzip.exe funzip.exe unzipsfx.exe 193dll: unzip32.dll 194dllsample: uzexampl.exe 195guisfx: SFXWiz32.exe 196lib: $(OBDIR) $(OB)unzip32.lib 197all: unzips dll dllsample guisfx lib 198 199unzip.exe: $(OBJU) winapp.res 200 $(CC) $(LDFLAGS) -e$@ @&&| 201$(OBJU) 202| 203 204funzip.exe: $(OBJF) 205 $(CC) $(LDFLAGS) -e$@ @&&| 206$(OBJF) 207| 208 209unzipsfx.exe: $(OBJX) 210 $(CC) $(LDFLAGS) -e$@ @&&| 211$(OBJX) 212| 213 214unzip32.dll: $(OBJD) windll.res $(WINDLL_DEF) 215 $(LD) -Gn -x -c -aa -Tpd @&&| 216c0d32.obj $(OBJD),$@,,import32.lib cw32.lib,$(WINDLL_DEF:/=\),windll.res 217| 218# $(CC) $(LDFLAGS_DLL) -e$@ @&&| 219#$(OBJD) 220##, windll.res 221#| 222# brc32 windll.res $@ 223 224unzsfx32.lib: $(OBLX) 225 $(AR) /C $(@:/=\) @&&| 226/u $(OBLX:/=\) 227| 228 229SFXWiz32.exe: $(OBGX) sfxwiz.res unzsfx32.lib 230 $(LD) -Gn -x -c -aa -Tpe @&&| 231c0w32.obj $(OBGX),$@,,unzsfx32.lib import32.lib cw32.lib,,sfxwiz.res 232| 233# $(CC) $(LDFLAGS_GUI) -e$@ $(OBGX) unzsfx32.lib $(LDLIBS) 234# brc32 sfxwiz.res $@ 235 236uzexampl.exe: uzexampl.obj 237 $(CC) $(LDFLAGS) -e$@ uzexampl.obj #version.lib 238 239$(OB)unzip32.lib: $(OBJB) 240 $(AR) /C $(@:/=\) @&&| 241/u $(OBJB:/=\) 242| 243 244clean: 245 rem Ignore any errors in the following... 246 -del *.obj 247 -del winapp.res 248 -del unzip.exe 249 -del funzip.exe 250 -del unzipsfx.exe 251 -del windll.res 252 -del unzip32.dll 253 -del uzexampl.exe 254 -del sfxwiz.res 255 -del unzsfx32.lib 256 -del SFXWiz32.exe 257 -del $(OB:/=\)*.obj 258 -del $(OB:/=\)unzip32.lib 259 -del *.tds 260 -del $(OB:/=\)*.tds 261 262# individual file dependencies 263 264crc32.obj: crc32.c $(UNZIP_H) zip.h crc32.h 265crypt.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 266envargs.obj: envargs.c $(UNZIP_H) 267explode.obj: explode.c $(UNZIP_H) 268extract.obj: extract.c $(UNZIP_H) crc32.h crypt.h 269fileio.obj: fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h 270globals.obj: globals.c $(UNZIP_H) 271inflate.obj: inflate.c inflate.h $(UNZIP_H) 272list.obj: list.c $(UNZIP_H) 273match.obj: match.c $(UNZIP_H) 274process.obj: process.c $(UNZIP_H) crc32.h 275timezone.obj: timezone.c $(UNZIP_H) zip.h timezone.h 276ttyio.obj: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h 277ubz2err.obj: ubz2err.c $(UNZIP_H) 278unreduce.obj: unreduce.c $(UNZIP_H) 279unshrink.obj: unshrink.c $(UNZIP_H) 280unzip.obj: unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h 281zipinfo.obj: zipinfo.c $(UNZIP_H) 282 283!ifdef USEMASM 284crc_i386.obj: win32/crc_i386.asm 285 masm -ml win32/crc_i386.asm,$@; 286!else 287!ifdef USETASM 288crc_i386.obj: win32/crc_i386.asm 289 $(AS) $(ASFLAGS) win32\crc_i386.asm, $@ ; 290!else 291crc_i386.obj: win32/crc_i386.c 292 $(CC) -c $(UNFLAGS) -o$@ win32/crc_i386.c 293!endif 294!endif 295 296win32.obj: win32/win32.c $(UNZIP_H) win32/nt.h 297 $(CC) -c $(UNFLAGS) win32/win32.c 298 299win32i64.obj: win32/win32i64.c $(UNZIP_H) 300 $(CC) -c $(UNFLAGS) win32/win32i64.c 301 302nt.obj: win32/nt.c $(UNZIP_H) win32/nt.h 303 $(CC) -c $(UNFLAGS) win32/nt.c 304 305funzip.obj: funzip.c $(UNZIP_H) crc32.h crypt.h ttyio.h 306 $(CC) -c $(FUFLAGS) -o$@ funzip.c 307 308crc32f.obj: crc32.c $(UNZIP_H) zip.h crc32.h 309 $(CC) -c $(FUFLAGS) -o$@ crc32.c 310 311cryptf.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 312 $(CC) -c $(FUFLAGS) -o$@ crypt.c 313 314globalsf.obj: globals.c $(UNZIP_H) 315 $(CC) -c $(FUFLAGS) -o$@ globals.c 316 317inflatef.obj: inflate.c inflate.h $(UNZIP_H) crypt.h 318 $(CC) -c $(FUFLAGS) -o$@ inflate.c 319 320ttyiof.obj: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h 321 $(CC) -c $(FUFLAGS) -o$@ ttyio.c 322 323win32f.obj: win32/win32.c $(UNZIP_H) win32/nt.h 324 $(CC) -c $(FUFLAGS) -o$@ win32/win32.c 325 326win32i64f.obj: win32/win32i64.c $(UNZIP_H) 327 $(CC) -c $(FUFLAGS) -o$@ win32/win32i64.c 328 329unzipsfx.obj: unzip.c $(UNZIP_H) crypt.h unzvers.h consts.h 330 $(CC) -c $(SXFLAGS) -o$@ unzip.c 331 332crc32x.obj: crc32.c $(UNZIP_H) zip.h crc32.h 333 $(CC) -c $(SXFLAGS) -o$@ crc32.c 334 335cryptx.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 336 $(CC) -c $(SXFLAGS) -o$@ crypt.c 337 338extractx.obj: extract.c $(UNZIP_H) crc32.h crypt.h 339 $(CC) -c $(SXFLAGS) -o$@ extract.c 340 341fileiox.obj: fileio.c $(UNZIP_H) crc32.h crypt.h ttyio.h ebcdic.h 342 $(CC) -c $(SXFLAGS) -o$@ fileio.c 343 344globalsx.obj: globals.c $(UNZIP_H) 345 $(CC) -c $(SXFLAGS) -o$@ globals.c 346 347inflatex.obj: inflate.c inflate.h $(UNZIP_H) 348 $(CC) -c $(SXFLAGS) -o$@ inflate.c 349 350matchx.obj: match.c $(UNZIP_H) 351 $(CC) -c $(SXFLAGS) -o$@ match.c 352 353processx.obj: process.c $(UNZIP_H) crc32.h 354 $(CC) -c $(SXFLAGS) -o$@ process.c 355 356timezonx.obj: timezone.c $(UNZIP_H) zip.h timezone.h 357 $(CC) -c $(SXFLAGS) -o$@ timezone.c 358 359ttyiox.obj: ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h 360 $(CC) -c $(SXFLAGS) -o$@ ttyio.c 361 362ubz2errx.obj: ubz2err.c $(UNZIP_H) 363 $(CC) -c $(SXFLAGS) -o$@ ubz2err.c 364 365win32x.obj: win32/win32.c $(UNZIP_H) win32/nt.h 366 $(CC) -c $(SXFLAGS) -o$@ win32/win32.c 367 368win32i64x.obj: win32/win32i64.c $(UNZIP_H) 369 $(CC) -c $(SXFLAGS) -o$@ win32/win32i64.c 370 371ntx.obj: win32/nt.c $(UNZIP_H) win32/nt.h 372 $(CC) -c $(SXFLAGS) -o$@ win32/nt.c 373 374uzexampl.obj: windll/uzexampl.c windll/uzexampl.h 375 $(CC) -c $(UNFLAGS) -I./windll -o$@ windll/uzexampl.c 376 377winapp.res: win32/winapp.rc unzvers.h 378 $(RC) /l 0x409 /fo$@ /i win32 /d WIN32 win32/winapp.rc 379 380# DLL compilation section 381api.obj: api.c $(UNZIP_H) $(WINDLL_H) unzvers.h 382 $(CC) -c $(DLFLAGS) -o$@ api.c 383 384crc32l.obj: crc32.c $(UNZIP_H) zip.h crc32.h 385 $(CC) -c $(DLFLAGS) -o$@ crc32.c 386 387cryptl.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 388 $(CC) -c $(DLFLAGS) -o$@ crypt.c 389 390explodel.obj: explode.c $(UNZIP_H) 391 $(CC) -c $(DLFLAGS) -o$@ explode.c 392 393extractl.obj: extract.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h 394 $(CC) -c $(DLFLAGS) -o$@ extract.c 395 396fileiol.obj: fileio.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h ttyio.h ebcdic.h 397 $(CC) -c $(DLFLAGS) -o$@ fileio.c 398 399globalsl.obj: globals.c $(UNZIP_H) 400 $(CC) -c $(DLFLAGS) -o$@ globals.c 401 402inflatel.obj: inflate.c inflate.h $(UNZIP_H) crypt.h 403 $(CC) -c $(DLFLAGS) -o$@ inflate.c 404 405listl.obj: list.c $(UNZIP_H) $(WINDLL_H) 406 $(CC) -c $(DLFLAGS) -o$@ list.c 407 408matchl.obj: match.c $(UNZIP_H) 409 $(CC) -c $(DLFLAGS) -o$@ match.c 410 411processl.obj: process.c $(UNZIP_H) $(WINDLL_H) crc32.h 412 $(CC) -c $(DLFLAGS) -o$@ process.c 413 414timezonl.obj: timezone.c $(UNZIP_H) zip.h timezone.h 415 $(CC) -c $(DLFLAGS) -o$@ timezone.c 416 417ubz2errl.obj: ubz2err.c $(UNZIP_H) 418 $(CC) -c $(DLFLAGS) -o$@ ubz2err.c 419 420unreducl.obj: unreduce.c $(UNZIP_H) 421 $(CC) -c $(DLFLAGS) -o$@ unreduce.c 422 423unshrnkl.obj: unshrink.c $(UNZIP_H) 424 $(CC) -c $(DLFLAGS) -o$@ unshrink.c 425 426zipinfol.obj: zipinfo.c $(UNZIP_H) 427 $(CC) -c $(DLFLAGS) -o$@ zipinfo.c 428 429win32l.obj: win32/win32.c $(UNZIP_H) win32/nt.h 430 $(CC) -c $(DLFLAGS) -o$@ win32/win32.c 431 432win32i64l.obj: win32/win32i64.c $(UNZIP_H) 433 $(CC) -c $(DLFLAGS) -o$@ win32/win32i64.c 434 435ntl.obj: win32/nt.c $(UNZIP_H) win32/nt.h 436 $(CC) -c $(DLFLAGS) -o$@ win32/nt.c 437 438windll.obj: windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h 439 $(CC) -c $(DLFLAGS) -o$@ windll/windll.c 440 441windll.res: windll/windll.rc unzvers.h 442 $(RC) /l 0x409 /fo$@ /i windll /d WIN32 windll/windll.rc 443 444# SFX Lib compilation section 445apig.obj: api.c $(UNZIP_H) $(WINDLL_H) unzvers.h 446 $(CC) -c $(SLFLAGS) -o$@ api.c 447 448crc32g.obj: crc32.c $(UNZIP_H) zip.h crc32.h 449 $(CC) -c $(SLFLAGS) -o$@ crc32.c 450 451cryptg.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 452 $(CC) -c $(SLFLAGS) -o$@ crypt.c 453 454explodeg.obj: explode.c $(UNZIP_H) 455 $(CC) -c $(SLFLAGS) -o$@ explode.c 456 457extractg.obj: extract.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h 458 $(CC) -c $(SLFLAGS) -o$@ extract.c 459 460fileiog.obj: fileio.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h ttyio.h ebcdic.h 461 $(CC) -c $(SLFLAGS) -o$@ fileio.c 462 463globalsg.obj: globals.c $(UNZIP_H) 464 $(CC) -c $(SLFLAGS) -o$@ globals.c 465 466inflateg.obj: inflate.c inflate.h $(UNZIP_H) crypt.h 467 $(CC) -c $(SLFLAGS) -o$@ inflate.c 468 469matchg.obj: match.c $(UNZIP_H) 470 $(CC) -c $(SLFLAGS) -o$@ match.c 471 472processg.obj: process.c $(UNZIP_H) $(WINDLL_H) crc32.h 473 $(CC) -c $(SLFLAGS) -o$@ process.c 474 475timezong.obj: timezone.c $(UNZIP_H) zip.h timezone.h 476 $(CC) -c $(SLFLAGS) -o$@ timezone.c 477 478ubz2errg.obj: ubz2err.c $(UNZIP_H) 479 $(CC) -c $(SLFLAGS) -o$@ ubz2err.c 480 481win32g.obj: win32/win32.c $(UNZIP_H) win32/nt.h 482 $(CC) -c $(SLFLAGS) -o$@ win32/win32.c 483 484win32i64g.obj: win32/win32i64.c $(UNZIP_H) 485 $(CC) -c $(SLFLAGS) -o$@ win32/win32i64.c 486 487ntg.obj: win32/nt.c $(UNZIP_H) win32/nt.h 488 $(CC) -c $(SLFLAGS) -o$@ win32/nt.c 489 490windllg.obj: windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h 491 $(CC) -c $(SLFLAGS) -o$@ windll/windll.c 492 493sfxwiz.obj: windll/guisfx/sfxwiz.c windll/guisfx/dialog.h $(WINDLL_IMP_H) 494 $(CC) -c $(GXFLAGS) -o$@ windll/guisfx/sfxwiz.c 495 496sfxwiz.res: windll/guisfx/sfxwiz.rc 497 $(RC) /l 0x409 /fo$@ /i windll/guisfx /d WIN32 windll/guisfx/sfxwiz.rc 498 499# Static LIB compilation section 500$(OB)apib.obj: api.c $(UNZIP_H) $(WINDLL_H) unzvers.h 501 $(CC) -c $(LBFLAGS) -o$@ api.c 502 503$(OB)crc32b.obj: crc32.c $(UNZIP_H) zip.h crc32.h 504 $(CC) -c $(LBFLAGS) -o$@ crc32.c 505 506$(OB)cryptb.obj: crypt.c $(UNZIP_H) zip.h crypt.h crc32.h ttyio.h 507 $(CC) -c $(LBFLAGS) -o$@ crypt.c 508 509$(OB)explodeb.obj: explode.c $(UNZIP_H) 510 $(CC) -c $(LBFLAGS) -o$@ explode.c 511 512$(OB)extractb.obj: extract.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h 513 $(CC) -c $(LBFLAGS) -o$@ extract.c 514 515$(OB)fileiob.obj: fileio.c $(UNZIP_H) $(WINDLL_H) crc32.h crypt.h ttyio.h ebcdic.h 516 $(CC) -c $(LBFLAGS) -o$@ fileio.c 517 518$(OB)globalsb.obj: globals.c $(UNZIP_H) 519 $(CC) -c $(LBFLAGS) -o$@ globals.c 520 521$(OB)inflateb.obj: inflate.c inflate.h $(UNZIP_H) crypt.h 522 $(CC) -c $(LBFLAGS) -o$@ inflate.c 523 524$(OB)listb.obj: list.c $(UNZIP_H) $(WINDLL_H) 525 $(CC) -c $(LBFLAGS) -o$@ list.c 526 527$(OB)matchb.obj: match.c $(UNZIP_H) 528 $(CC) -c $(LBFLAGS) -o$@ match.c 529 530$(OB)processb.obj: process.c $(UNZIP_H) $(WINDLL_H) crc32.h 531 $(CC) -c $(LBFLAGS) -o$@ process.c 532 533$(OB)timezonb.obj: timezone.c $(UNZIP_H) zip.h timezone.h 534 $(CC) -c $(LBFLAGS) -o$@ timezone.c 535 536$(OB)ubz2errb.obj: ubz2err.c $(UNZIP_H) 537 $(CC) -c $(LBFLAGS) -o$@ ubz2err.c 538 539$(OB)unreducb.obj: unreduce.c $(UNZIP_H) 540 $(CC) -c $(LBFLAGS) -o$@ unreduce.c 541 542$(OB)unshrnkb.obj: unshrink.c $(UNZIP_H) 543 $(CC) -c $(LBFLAGS) -o$@ unshrink.c 544 545$(OB)zipinfob.obj: zipinfo.c $(UNZIP_H) 546 $(CC) -c $(LBFLAGS) -o$@ zipinfo.c 547 548$(OB)win32b.obj: win32/win32.c $(UNZIP_H) win32/nt.h 549 $(CC) -c $(LBFLAGS) -o$@ win32/win32.c 550 551$(OB)win32i64b.obj: win32/win32i64.c $(UNZIP_H) 552 $(CC) -c $(LBFLAGS) -o$@ win32/win32i64.c 553 554$(OB)ntb.obj: win32/nt.c $(UNZIP_H) win32/nt.h 555 $(CC) -c $(LBFLAGS) -o$@ win32/nt.c 556 557$(OB)windllb.obj: windll/windll.c $(UNZIP_H) $(WINDLL_H) crypt.h unzvers.h consts.h 558 $(CC) -c $(LBFLAGS) -o$@ windll/windll.c 559 560$(OBDIR): 561 -mkdir $@ 562