Makefile.msc
上传用户:zlt_tm
上传日期:2007-01-06
资源大小:214k
文件大小:3k
源码类别:

压缩解压

开发平台:

WINDOWS

  1. # Makefile for zlib
  2. # Microsoft C 5.1 or later
  3. # To use, do "make makefile.msc"
  4. # To compile in small model, set below: MODEL=S
  5. # If you wish to reduce the memory requirements (default 256K for big
  6. # objects plus a few K), you can add to the LOC macro below:
  7. #   -DMAX_MEM_LEVEL=7 -DMAX_WBITS=14
  8. # See zconf.h for details about the memory requirements.
  9. # ------------- Microsoft C 5.1 and later -------------
  10. #    Optional nonstandard preprocessor flags (e.g. -DMAX_MEM_LEVEL=7)
  11. #    should be added to the environment via "set LOCAL_ZLIB=-DFOO" or added
  12. #    to the declaration of LOC here:
  13. LOC = $(LOCAL_ZLIB)
  14. # Type for CPU required: 0: 8086, 1: 80186, 2: 80286, 3: 80386, etc.
  15. CPU_TYP = 0
  16. # Memory model: one of S, M, C, L (small, medium, compact, large)
  17. MODEL=L
  18. CC=cl
  19. CFLAGS=-nologo -A$(MODEL) -G$(CPU_TYP) -W3 -Oait -Gs $(LOC)
  20. #-Ox generates bad code with MSC 5.1
  21. LIB_CFLAGS=-Zl $(CFLAGS)
  22. LD=link
  23. LDFLAGS=/noi/e/st:0x1500/noe/farcall/packcode
  24. # "/farcall/packcode" are only useful for `large code' memory models
  25. # but should be a "no-op" for small code models.
  26. O=.obj
  27. # variables
  28. OBJ1 = adler32$(O) compress$(O) crc32$(O) gzio$(O) uncompr$(O) deflate$(O) 
  29.   trees$(O)
  30. OBJP1 = adler32$(O)+compress$(O)+crc32$(O)+gzio$(O)+uncompr$(O)+deflate$(O)+
  31.   trees$(O)
  32. OBJ2 = zutil$(O) inflate$(O) infblock$(O) inftrees$(O) infcodes$(O) 
  33.   infutil$(O) inffast$(O)
  34. OBJP2 = zutil$(O)+inflate$(O)+infblock$(O)+inftrees$(O)+infcodes$(O)+
  35.   infutil$(O)+inffast$(O)
  36. ZLIB_H = zlib.h zconf.h
  37. ZUTIL_H = zutil.h $(ZLIB_H)
  38. ZLIB_LIB = zlib_$(MODEL).lib
  39. all:  $(ZLIB_LIB) example.exe minigzip.exe
  40. # individual dependencies and action rules:
  41. adler32.obj: adler32.c $(ZLIB_H)
  42. $(CC) -c $(LIB_CFLAGS) $*.c
  43. compress.obj: compress.c $(ZLIB_H)
  44. $(CC) -c $(LIB_CFLAGS) $*.c
  45. crc32.obj: crc32.c $(ZLIB_H)
  46. $(CC) -c $(LIB_CFLAGS) $*.c
  47. deflate.obj: deflate.c deflate.h $(ZUTIL_H)
  48. $(CC) -c $(LIB_CFLAGS) $*.c
  49. gzio.obj: gzio.c $(ZUTIL_H)
  50. $(CC) -c $(LIB_CFLAGS) $*.c
  51. infblock.obj: infblock.c $(ZUTIL_H) infblock.h inftrees.h infcodes.h infutil.h
  52. $(CC) -c $(LIB_CFLAGS) $*.c
  53. infcodes.obj: infcodes.c $(ZUTIL_H) inftrees.h infutil.h infcodes.h inffast.h
  54. $(CC) -c $(LIB_CFLAGS) $*.c
  55. inflate.obj: inflate.c $(ZUTIL_H) infblock.h
  56. $(CC) -c $(LIB_CFLAGS) $*.c
  57. inftrees.obj: inftrees.c $(ZUTIL_H) inftrees.h
  58. $(CC) -c $(LIB_CFLAGS) $*.c
  59. infutil.obj: infutil.c $(ZUTIL_H) inftrees.h infutil.h
  60. $(CC) -c $(LIB_CFLAGS) $*.c
  61. inffast.obj: inffast.c $(ZUTIL_H) inftrees.h infutil.h inffast.h
  62. $(CC) -c $(LIB_CFLAGS) $*.c
  63. trees.obj: trees.c deflate.h $(ZUTIL_H)
  64. $(CC) -c $(LIB_CFLAGS) $*.c
  65. uncompr.obj: uncompr.c $(ZLIB_H)
  66. $(CC) -c $(LIB_CFLAGS) $*.c
  67. zutil.obj: zutil.c $(ZUTIL_H)
  68. $(CC) -c $(LIB_CFLAGS) $*.c
  69. example.obj: example.c $(ZLIB_H)
  70. $(CC) -c $(CFLAGS) $*.c
  71. minigzip.obj: minigzip.c $(ZLIB_H)
  72. $(CC) -c $(CFLAGS) $*.c
  73. # we must cut the command line to fit in the MS/DOS 128 byte limit:
  74. $(ZLIB_LIB): $(OBJ1) $(OBJ2)
  75. if exist $(ZLIB_LIB) del $(ZLIB_LIB)
  76. lib $(ZLIB_LIB) $(OBJ1);
  77. lib $(ZLIB_LIB) $(OBJ2);
  78. example.exe: example.obj $(ZLIB_LIB)
  79. $(LD) $(LDFLAGS) example.obj,,,$(ZLIB_LIB);
  80. minigzip.exe: minigzip.obj $(ZLIB_LIB)
  81. $(LD) $(LDFLAGS) minigzip.obj,,,$(ZLIB_LIB);
  82. test: example.exe minigzip.exe
  83. example
  84. echo hello world | minigzip | minigzip -d 
  85. #clean:
  86. # del *.obj
  87. # del *.exe