home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 9 Archive / 09-Archive.zip / unzip540.zip / win32 / Makefile.lcc < prev    next >
Makefile  |  1998-11-24  |  6KB  |  204 lines

  1. # Makefile for UnZip, fUnZip and UnZipSFX using LCC-Win32.
  2. # By E-Yen Tan (3 June 1998).
  3. # Last updated 24 November 1998 (Christian Spieler).
  4. #
  5. # This version includes rules to build the 32-bit windll DLL.
  6.  
  7. CC=lcc
  8. CCFLAGS=-Zp8 -I. -DWIN32 $(AS_FLAGS)
  9. DLLFLAG=
  10. #DLLFLAG=-DWINDLL -DDLL -I./windll
  11. AS=lcc
  12. ASFLAGS=
  13. LD = lcclnk
  14. DLLLDFLAG=
  15. #DLLLDFLAG=-dll -entry DllMain
  16. LDFLAGS=-s -o ./
  17. LDFLAGS2=
  18. OUT=-Fo
  19. OBJ=.obj
  20.  
  21. CP=copy
  22. RM=del
  23.  
  24. # Optional macros should be declared below.
  25. # (LCC's Make is unable to read the LOCAL_UNZIP environment variable.)
  26. LOC = $(ASMFLG)
  27.  
  28. # Options to select optimized assembler code for CRC32 calculation.
  29. #ifdef NOASM
  30. #ASMFLG=
  31. #CRC32=crc32
  32. #CRC32F=crc32f
  33. #CRC32X=crc32_
  34. #else
  35. ASMFLG=-DASM_CRC
  36. CRC32=crc_lcc
  37. CRC32F=crc_lcc
  38. CRC32X=crc_lcc
  39. #endif
  40.  
  41. CFLAGS = $(CCFLAGS) $(LOC)
  42.  
  43. # The system specific files are defined here:
  44. OBJUS=win32$(OBJ) nt$(OBJ)
  45. OBJDS=win32$(OBJ) nt$(OBJ)
  46. OBJXS=win32_$(OBJ) nt_$(OBJ)
  47. OBJFS=win32f$(OBJ)
  48. OSDEP_H=win32/w32cfg.h
  49. WINDLL_H=windll/windll.h windll/structs.h windll/decs.h
  50. DLLDEF=windll\windllgc.def
  51.  
  52.  
  53. OBJU1 = unzip$(OBJ) $(CRC32)$(OBJ) crctab$(OBJ) crypt$(OBJ) envargs$(OBJ)
  54. OBJU2 = explode$(OBJ) extract$(OBJ) fileio$(OBJ) globals$(OBJ)
  55. OBJU3 = inflate$(OBJ) list$(OBJ) match$(OBJ) process$(OBJ) ttyio$(OBJ)
  56. OBJU4 = unreduce$(OBJ) unshrink$(OBJ) zipinfo$(OBJ)
  57. OBJU  = $(OBJU1) $(OBJU2) $(OBJU3) $(OBJU4) $(OBJUS)
  58. OBJDLL = windll$(OBJ) windll32.res api$(OBJ)
  59. OBJD1 = $(CRC32)$(OBJ) crctab$(OBJ) crypt$(OBJ) envargs$(OBJ)
  60. OBJD2 = explode$(OBJ) extract$(OBJ) fileio$(OBJ) globals$(OBJ)
  61. OBJD3 = inflate$(OBJ) list$(OBJ) match$(OBJ) process$(OBJ) ttyio$(OBJ)
  62. OBJD4 = unreduce$(OBJ) unshrink$(OBJ) zipinfo$(OBJ)
  63. OBJD  = $(OBJDLL) $(OBJD1) $(OBJD2) $(OBJD3) $(OBJD4) $(OBJDS)
  64. OBJX1 = unzipsf_$(OBJ) $(CRC32X)$(OBJ) crctab_$(OBJ) crypt_$(OBJ)
  65. OBJX2 = extract_$(OBJ) fileio_$(OBJ) globals_$(OBJ) inflate_$(OBJ)
  66. OBJX3 = match_$(OBJ) process_$(OBJ) ttyio_$(OBJ)
  67. OBJX  = $(OBJX1) $(OBJX2) $(OBJX3) $(OBJXS)
  68. OBJF  = funzip$(OBJ) $(CRC32F)$(OBJ) cryptf$(OBJ) inflatef$(OBJ) \
  69.     globalsf$(OBJ) ttyiof$(OBJ) $(OBJFS)
  70.  
  71. UNZIP_H = unzip.h unzpriv.h globals.h $(OSDEP_H)
  72.  
  73. # rules
  74.  
  75. .SUFFIXES: .c $(OBJ)
  76.  
  77. .c$(OBJ):
  78.     $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ $<
  79.  
  80. .asm.obj:
  81.     $(AS) $(ASFLAGS) $<
  82.  
  83. # targets
  84.  
  85. all:    unzip.exe funzip.exe unzipsfx.exe
  86. dll:    unzip32.dll
  87.  
  88. unzip.exe: $(OBJU)
  89.     $(LD) $(LDFLAGS)$@ $(DEF) $(OBJU) $(LDFLAGS2)
  90.  
  91. funzip.exe: $(OBJF)
  92.     $(LD) $(LDFLAGS)$@ $(DEF) $(OBJF) $(LDFLAGS2)
  93.  
  94. unzipsfx.exe:    $(OBJX)
  95.     $(LD) $(LDFLAGS)$@ $(DEF) $(OBJX) $(LDFLAGS2)
  96.  
  97. unzip32.dll: $(DLLDEF) $(OBJD)
  98.     $(LD) $(DLLLDFLAG) $(LDFLAGS)$@ $(DLLDEF) $(OBJD) $(LDFLAGS2)
  99.  
  100. example.exe: example$(OBJ)
  101.     $(LD) $(LDFLAGS)$@ $(DEF) example$(OBJ) -lversion $(LDFLAGS2)
  102.  
  103. # dependencies
  104.  
  105. api$(OBJ):    api.c $(UNZIP_H) version.h
  106. apihelp$(OBJ):    apihelp.c $(UNZIP_H) version.h
  107. crc32$(OBJ):    crc32.c $(UNZIP_H) zip.h
  108. crctab$(OBJ):    crctab.c $(UNZIP_H) zip.h
  109. envargs$(OBJ):    envargs.c $(UNZIP_H)
  110. explode$(OBJ):    explode.c $(UNZIP_H)
  111. extract$(OBJ):    extract.c $(UNZIP_H) crypt.h
  112. fileio$(OBJ):    fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  113. globals$(OBJ):    globals.c $(UNZIP_H)
  114. inflate$(OBJ):    inflate.c $(UNZIP_H)
  115. list$(OBJ):    list.c $(UNZIP_H)
  116. match$(OBJ):    match.c $(UNZIP_H)
  117. process$(OBJ):    process.c $(UNZIP_H)
  118. ttyio$(OBJ):    ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  119. unreduce$(OBJ):    unreduce.c $(UNZIP_H)
  120. unshrink$(OBJ):    unshrink.c $(UNZIP_H)
  121. unzip$(OBJ):    unzip.c $(UNZIP_H) crypt.h version.h consts.h
  122. zipinfo$(OBJ):    zipinfo.c $(UNZIP_H)
  123.  
  124. funzip$(OBJ):    funzip.c $(UNZIP_H) crypt.h ttyio.h tables.h
  125.     $(CC) -c $(CFLAGS) $(OUT)$@ funzip.c
  126.  
  127. example$(OBJ):    windll/example.c windll/example.h
  128.     $(CC) -c $(CFLAGS) -I./windll $(OUT)$@ windll/example.c
  129.  
  130. windll$(OBJ):    windll/windll.c $(UNZIP_H) $(WINDLL_H)
  131.     $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ windll/windll.c
  132.  
  133. windll32.res:    windll/windll.rc
  134.     - lrc -r $(DLLFLAG) -DWIN32 -o$@ windll/windll.rc
  135.  
  136. win32$(OBJ):    win32/win32.c $(UNZIP_H) win32/nt.h version.h
  137.     $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ win32/win32.c
  138.  
  139. nt$(OBJ):    win32/nt.c $(UNZIP_H) win32/nt.h
  140.     $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ win32/nt.c
  141.  
  142. crc_lcc.obj:    win32/crc_lcc.asm
  143.     $(AS) $(ASFLAGS) -Fo$@ win32/crc_lcc.asm
  144.  
  145. crypt$(OBJ):    crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  146.     $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ crypt.c
  147.  
  148. crc32f$(OBJ):    crc32.c $(UNZIP_H) zip.h
  149.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ crc32.c
  150.  
  151. cryptf$(OBJ):    crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  152.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ crypt.c
  153.  
  154. globalsf$(OBJ):    globals.c $(UNZIP_H)
  155.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ globals.c
  156.  
  157. inflatef$(OBJ):    inflate.c inflate.h $(UNZIP_H) crypt.h
  158.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ inflate.c
  159.  
  160. ttyiof$(OBJ):    ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  161.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ ttyio.c
  162.  
  163. win32f$(OBJ):    win32/win32.c $(UNZIP_H) win32/nt.h
  164.     $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ win32/win32.c
  165.  
  166. crc32_$(OBJ):    crc32.c $(UNZIP_H) zip.h
  167.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crc32.c
  168.  
  169. crctab_$(OBJ):    crctab.c $(UNZIP_H) zip.h
  170.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crctab.c
  171.  
  172. crypt_$(OBJ):    crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  173.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crypt.c
  174.  
  175. extract_$(OBJ):    extract.c $(UNZIP_H) crypt.h
  176.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ extract.c
  177.  
  178. fileio_$(OBJ):    fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  179.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ fileio.c
  180.  
  181. globals_$(OBJ):    globals.c $(UNZIP_H)
  182.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ globals.c
  183.  
  184. inflate_$(OBJ):    inflate.c inflate.h $(UNZIP_H) crypt.h
  185.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ inflate.c
  186.  
  187. match_$(OBJ):    match.c $(UNZIP_H)
  188.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ match.c
  189.  
  190. process_$(OBJ):    process.c $(UNZIP_H)
  191.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ process.c
  192.  
  193. ttyio_$(OBJ):    ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  194.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ ttyio.c
  195.  
  196. unzipsf_$(OBJ):    unzip.c $(UNZIP_H) crypt.h version.h consts.h
  197.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ unzip.c
  198.  
  199. win32_$(OBJ):    win32/win32.c $(UNZIP_H) win32/nt.h
  200.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ win32/win32.c
  201.  
  202. nt_$(OBJ):    win32/nt.c $(UNZIP_H) win32/nt.h
  203.     $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ win32/nt.c
  204.