Makefile.bc 16 KB

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