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

压缩解压

开发平台:

MultiPlatform

  1. # Makefile for UnZip(SFX) and fUnZip for Borland C++ for Windows 95/NT
  2. # Version: 5.4 and later        Alvin Koh, Jim Knoble, Christian Spieler, etc.
  3. # Adapted from the MS-DOS makefile by E-Yen Tan
  4. #
  5. # Last revised:  24 Nov 98
  6. #
  7. #
  8. #    Optional nonstandard preprocessor flags (as -DCHECK_EOF or -DDOS_WILD)
  9. #    should be added to the environment via "set LOCAL_UNZIP=-DFOO" or added
  10. #    to the declaration of LOC here:
  11. LOC = $(LOCAL_UNZIP)
  12. # Type for CPU required: 0: 8086, 1: 80186, 2: 80286, 3: 80386, etc.
  13. CPU_TYP = 4
  14. # (De)Select inclusion of optimized assembler CRC32 routine:
  15. USE_ASMCRC = 0
  16. # If you have bcc32i, you should define:
  17. # CC = bcc32i
  18. # This compiler generates a faster code.
  19. CC = bcc32
  20. AS = tasm32
  21. !if $(USE_ASMCRC)
  22. ASMFLG = -DASM_CRC
  23. ASMOBJS = crc_i386.obj
  24. !else
  25. ASMFLG =
  26. ASMOBJS =
  27. !endif
  28. !if $(UNCLEAN)
  29. DIRT = -DUSE_SMITH_CODE -DUSE_UNSHRINK
  30. !else
  31. DIRT =
  32. !endif
  33. # compiler flags
  34. ASCPUFLAG = __$(CPU_TYP)86
  35. !if $(CPU_TYP) != 0
  36. CC_CPUFLG = -$(CPU_TYP)
  37. !endif
  38. ASFLAGS = -ml -m2 -w0 -D$(ASCPUFLAG) $(LOC)
  39. CFLAGS = -O2 -w- $(CC_CPUFLG) -ff- -k- -P-.C -I. $(ASMFLG) $(LOC) $(DIRT)
  40. LDFLAGS = -lxncd -l-P # for bcc
  41. UNFLAGS = $(CFLAGS)
  42. FUFLAGS = $(CFLAGS) -K -d
  43. SXFLAGS = $(CFLAGS)
  44. # implicit rules
  45. .asm.obj:
  46. $(AS) $(ASFLAGS) $<
  47. .c.obj:
  48. $(CC) -c $(UNFLAGS) {$< }
  49. # list macros
  50. OBJU1 = unzip.obj crc32.obj crctab.obj crypt.obj envargs.obj explode.obj
  51. OBJU2 = extract.obj fileio.obj globals.obj inflate.obj list.obj match.obj
  52. OBJU3 = process.obj ttyio.obj unreduce.obj unshrink.obj zipinfo.obj
  53. OBJUS = win32.obj nt.obj $(ASMOBJS)
  54. OBJU  = $(OBJU1) $(OBJU2) $(OBJU3) $(OBJUS)
  55. OBJF  = funzip.obj crc32.obj cryptf.obj globalsf.obj inflatef.obj 
  56. ttyiof.obj win32f.obj $(ASMOBJS)
  57. OBJX1 = unzipsfx.obj crc32.obj crctab.obj crypt.obj extractx.obj fileio.obj
  58. OBJX2 = globals.obj inflate.obj match.obj processx.obj ttyio.obj
  59. OBJXS = win32x.obj ntx.obj $(ASMOBJS)
  60. OBJX  = $(OBJX1) $(OBJX2) $(OBJXS)
  61. UNZIP_H = unzip.h unzpriv.h globals.h win32/w32cfg.h
  62. # explicit rules
  63. all:    unzip.exe funzip.exe unzipsfx.exe
  64. unzip.exe:      $(OBJU)
  65. $(CC) $(LDFLAGS) -eunzip.exe @&&|
  66. $(OBJU)
  67. |
  68. funzip.exe:     $(OBJF)
  69. $(CC) $(LDFLAGS) -efunzip.exe @&&|
  70. $(OBJF)
  71. |
  72. unzipsfx.exe:   $(OBJX)
  73. $(CC) $(LDFLAGS) -eunzipsfx.exe @&&|
  74. $(OBJX)
  75. |
  76. clean:
  77. rem Ignore any errors in the following...
  78. -del *.obj
  79. -del unzip.exe
  80. -del funzip.exe
  81. -del unzipsfx.exe
  82. # individual file dependencies
  83. crc32.obj:      crc32.c $(UNZIP_H) zip.h
  84. crctab.obj:     crctab.c $(UNZIP_H) zip.h
  85. crypt.obj:      crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  86. envargs.obj:    envargs.c $(UNZIP_H)
  87. explode.obj:    explode.c $(UNZIP_H)
  88. extract.obj:    extract.c $(UNZIP_H) crypt.h
  89. fileio.obj:     fileio.c $(UNZIP_H) crypt.h ttyio.h ebcdic.h
  90. globals.obj:    globals.c $(UNZIP_H)
  91. inflate.obj:    inflate.c inflate.h $(UNZIP_H)
  92. list.obj:       list.c $(UNZIP_H)
  93. match.obj:      match.c $(UNZIP_H)
  94. process.obj:    process.c $(UNZIP_H)
  95. ttyio.obj:      ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  96. unreduce.obj:   unreduce.c $(UNZIP_H)
  97. unshrink.obj:   unshrink.c $(UNZIP_H)
  98. unzip.obj:      unzip.c $(UNZIP_H) crypt.h version.h consts.h
  99. zipinfo.obj:    zipinfo.c $(UNZIP_H)
  100. crc_i386.obj:   win32/crc_i386.asm
  101. $(AS) $(ASFLAGS) win32crc_i386.asm, $*.obj ;
  102. win32.obj:      win32/win32.c $(UNZIP_H)
  103. $(CC) -c $(UNFLAGS) win32/win32.c
  104. nt.obj:         win32/nt.c $(UNZIP_H)
  105. $(CC) -c $(UNFLAGS) win32/nt.c
  106. funzip.obj:     funzip.c $(UNZIP_H) crypt.h ttyio.h tables.h
  107. $(CC) -c $(FUFLAGS) funzip.c
  108. cryptf.obj:     crypt.c $(UNZIP_H) zip.h crypt.h ttyio.h
  109. $(CC) -c $(FUFLAGS) -DFUNZIP -ocryptf.obj crypt.c
  110. globalsf.obj:   globals.c $(UNZIP_H)
  111. $(CC) -c $(FUFLAGS) -DFUNZIP -oglobalsf.obj globals.c
  112. inflatef.obj:   inflate.c inflate.h $(UNZIP_H) crypt.h
  113. $(CC) -c $(FUFLAGS) -DFUNZIP -oinflatef.obj inflate.c
  114. ttyiof.obj:     ttyio.c $(UNZIP_H) zip.h crypt.h ttyio.h
  115. $(CC) -c $(FUFLAGS) -DFUNZIP -ottyiof.obj ttyio.c
  116. win32f.obj:     win32/win32.c $(UNZIP_H)
  117. $(CC) -c $(FUFLAGS) -DFUNZIP -owin32f.obj win32/win32.c
  118. unzipsfx.obj:   unzip.c $(UNZIP_H) crypt.h version.h consts.h
  119. $(CC) -c $(SXFLAGS) -DSFX -ounzipsfx.obj unzip.c
  120. extractx.obj:   extract.c $(UNZIP_H) crypt.h
  121. $(CC) -c $(SXFLAGS) -DSFX -oextractx.obj extract.c
  122. processx.obj:   process.c $(UNZIP_H)
  123. $(CC) -c $(SXFLAGS) -DSFX -oprocessx.obj process.c
  124. win32x.obj:     win32/win32.c $(UNZIP_H)
  125. $(CC) -c $(SXFLAGS) -DSFX -owin32x.obj win32/win32.c
  126. ntx.obj:        win32/nt.c $(UNZIP_H)
  127. $(CC) -c $(SXFLAGS) -DSFX -ontx.obj win32/nt.c