Makefile.lcc
上传用户:andy_li
上传日期:2007-01-06
资源大小:1019k
文件大小:6k
源码类别:

压缩解压

开发平台:

MultiPlatform

  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. CC=lcc
  7. CCFLAGS=-Zp8 -I. -DWIN32 $(AS_FLAGS)
  8. DLLFLAG=
  9. #DLLFLAG=-DWINDLL -DDLL -I./windll
  10. AS=lcc
  11. ASFLAGS=
  12. LD = lcclnk
  13. DLLLDFLAG=
  14. #DLLLDFLAG=-dll -entry DllMain
  15. LDFLAGS=-s -o ./
  16. LDFLAGS2=
  17. OUT=-Fo
  18. OBJ=.obj
  19. CP=copy
  20. RM=del
  21. # Optional macros should be declared below.
  22. # (LCC's Make is unable to read the LOCAL_UNZIP environment variable.)
  23. LOC = $(ASMFLG)
  24. # Options to select optimized assembler code for CRC32 calculation.
  25. #ifdef NOASM
  26. #ASMFLG=
  27. #CRC32=crc32
  28. #CRC32F=crc32f
  29. #CRC32X=crc32_
  30. #else
  31. ASMFLG=-DASM_CRC
  32. CRC32=crc_lcc
  33. CRC32F=crc_lcc
  34. CRC32X=crc_lcc
  35. #endif
  36. CFLAGS = $(CCFLAGS) $(LOC)
  37. # The system specific files are defined here:
  38. OBJUS=win32$(OBJ) nt$(OBJ)
  39. OBJDS=win32$(OBJ) nt$(OBJ)
  40. OBJXS=win32_$(OBJ) nt_$(OBJ)
  41. OBJFS=win32f$(OBJ)
  42. OSDEP_H=win32/w32cfg.h
  43. WINDLL_H=windll/windll.h windll/structs.h windll/decs.h
  44. DLLDEF=windllwindllgc.def
  45. OBJU1 = unzip$(OBJ) $(CRC32)$(OBJ) crctab$(OBJ) crypt$(OBJ) envargs$(OBJ)
  46. OBJU2 = explode$(OBJ) extract$(OBJ) fileio$(OBJ) globals$(OBJ)
  47. OBJU3 = inflate$(OBJ) list$(OBJ) match$(OBJ) process$(OBJ) ttyio$(OBJ)
  48. OBJU4 = unreduce$(OBJ) unshrink$(OBJ) zipinfo$(OBJ)
  49. OBJU  = $(OBJU1) $(OBJU2) $(OBJU3) $(OBJU4) $(OBJUS)
  50. OBJDLL = windll$(OBJ) windll32.res api$(OBJ)
  51. OBJD1 = $(CRC32)$(OBJ) crctab$(OBJ) crypt$(OBJ) envargs$(OBJ)
  52. OBJD2 = explode$(OBJ) extract$(OBJ) fileio$(OBJ) globals$(OBJ)
  53. OBJD3 = inflate$(OBJ) list$(OBJ) match$(OBJ) process$(OBJ) ttyio$(OBJ)
  54. OBJD4 = unreduce$(OBJ) unshrink$(OBJ) zipinfo$(OBJ)
  55. OBJD  = $(OBJDLL) $(OBJD1) $(OBJD2) $(OBJD3) $(OBJD4) $(OBJDS)
  56. OBJX1 = unzipsf_$(OBJ) $(CRC32X)$(OBJ) crctab_$(OBJ) crypt_$(OBJ)
  57. OBJX2 = extract_$(OBJ) fileio_$(OBJ) globals_$(OBJ) inflate_$(OBJ)
  58. OBJX3 = match_$(OBJ) process_$(OBJ) ttyio_$(OBJ)
  59. OBJX  = $(OBJX1) $(OBJX2) $(OBJX3) $(OBJXS)
  60. OBJF  = funzip$(OBJ) $(CRC32F)$(OBJ) cryptf$(OBJ) inflatef$(OBJ) 
  61. globalsf$(OBJ) ttyiof$(OBJ) $(OBJFS)
  62. UNZIP_H = unzip.h unzpriv.h globals.h $(OSDEP_H)
  63. # rules
  64. .SUFFIXES: .c $(OBJ)
  65. .c$(OBJ):
  66. $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ $<
  67. .asm.obj:
  68. $(AS) $(ASFLAGS) $<
  69. # targets
  70. all: unzip.exe funzip.exe unzipsfx.exe
  71. dll: unzip32.dll
  72. unzip.exe: $(OBJU)
  73. $(LD) $(LDFLAGS)$@ $(DEF) $(OBJU) $(LDFLAGS2)
  74. funzip.exe: $(OBJF)
  75. $(LD) $(LDFLAGS)$@ $(DEF) $(OBJF) $(LDFLAGS2)
  76. unzipsfx.exe: $(OBJX)
  77. $(LD) $(LDFLAGS)$@ $(DEF) $(OBJX) $(LDFLAGS2)
  78. unzip32.dll: $(DLLDEF) $(OBJD)
  79. $(LD) $(DLLLDFLAG) $(LDFLAGS)$@ $(DLLDEF) $(OBJD) $(LDFLAGS2)
  80. example.exe: example$(OBJ)
  81. $(LD) $(LDFLAGS)$@ $(DEF) example$(OBJ) -lversion $(LDFLAGS2)
  82. # dependencies
  83. api$(OBJ): api.c $(UNZIP_H) version.h
  84. apihelp$(OBJ): apihelp.c $(UNZIP_H) version.h
  85. crc32$(OBJ): crc32.c $(UNZIP_H) zip.h
  86. crctab$(OBJ): crctab.c $(UNZIP_H) zip.h
  87. envargs$(OBJ): envargs.c $(UNZIP_H)
  88. explode$(OBJ): explode.c $(UNZIP_H)
  89. extract$(OBJ): extract.c $(UNZIP_H) crypt.h
  90. fileio$(OBJ): fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  91. globals$(OBJ): globals.c $(UNZIP_H)
  92. inflate$(OBJ): inflate.c $(UNZIP_H)
  93. list$(OBJ): list.c $(UNZIP_H)
  94. match$(OBJ): match.c $(UNZIP_H)
  95. process$(OBJ): process.c $(UNZIP_H)
  96. ttyio$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  97. unreduce$(OBJ): unreduce.c $(UNZIP_H)
  98. unshrink$(OBJ): unshrink.c $(UNZIP_H)
  99. unzip$(OBJ): unzip.c $(UNZIP_H) crypt.h version.h consts.h
  100. zipinfo$(OBJ): zipinfo.c $(UNZIP_H)
  101. funzip$(OBJ): funzip.c $(UNZIP_H) crypt.h ttyio.h tables.h
  102. $(CC) -c $(CFLAGS) $(OUT)$@ funzip.c
  103. example$(OBJ): windll/example.c windll/example.h
  104. $(CC) -c $(CFLAGS) -I./windll $(OUT)$@ windll/example.c
  105. windll$(OBJ): windll/windll.c $(UNZIP_H) $(WINDLL_H)
  106. $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ windll/windll.c
  107. windll32.res: windll/windll.rc
  108. - lrc -r $(DLLFLAG) -DWIN32 -o$@ windll/windll.rc
  109. win32$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h version.h
  110. $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ win32/win32.c
  111. nt$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h
  112. $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ win32/nt.c
  113. crc_lcc.obj: win32/crc_lcc.asm
  114. $(AS) $(ASFLAGS) -Fo$@ win32/crc_lcc.asm
  115. crypt$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  116. $(CC) -c $(CFLAGS) $(DLLFLAG) $(OUT)$@ crypt.c
  117. crc32f$(OBJ): crc32.c $(UNZIP_H) zip.h
  118. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ crc32.c
  119. cryptf$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  120. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ crypt.c
  121. globalsf$(OBJ): globals.c $(UNZIP_H)
  122. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ globals.c
  123. inflatef$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h
  124. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ inflate.c
  125. ttyiof$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  126. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ ttyio.c
  127. win32f$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h
  128. $(CC) -c $(CFLAGS) -DFUNZIP $(OUT)$@ win32/win32.c
  129. crc32_$(OBJ): crc32.c $(UNZIP_H) zip.h
  130. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crc32.c
  131. crctab_$(OBJ): crctab.c $(UNZIP_H) zip.h
  132. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crctab.c
  133. crypt_$(OBJ): crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  134. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ crypt.c
  135. extract_$(OBJ): extract.c $(UNZIP_H) crypt.h
  136. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ extract.c
  137. fileio_$(OBJ): fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  138. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ fileio.c
  139. globals_$(OBJ): globals.c $(UNZIP_H)
  140. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ globals.c
  141. inflate_$(OBJ): inflate.c inflate.h $(UNZIP_H) crypt.h
  142. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ inflate.c
  143. match_$(OBJ): match.c $(UNZIP_H)
  144. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ match.c
  145. process_$(OBJ): process.c $(UNZIP_H)
  146. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ process.c
  147. ttyio_$(OBJ): ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  148. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ ttyio.c
  149. unzipsf_$(OBJ): unzip.c $(UNZIP_H) crypt.h version.h consts.h
  150. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ unzip.c
  151. win32_$(OBJ): win32/win32.c $(UNZIP_H) win32/nt.h
  152. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ win32/win32.c
  153. nt_$(OBJ): win32/nt.c $(UNZIP_H) win32/nt.h
  154. $(CC) -c $(CFLAGS) -DSFX $(OUT)$@ win32/nt.c