Commit | Line | Data |
---|---|---|
c801d85f | 1 | # Makefile for zlib |
c801d85f KB |
2 | |
3 | # WARNING: the small model is supported but only for small values of | |
4 | # MAX_WBITS and MAX_MEM_LEVEL. If you wish to reduce the memory | |
5 | # requirements (default 256K for big objects plus a few K), you can add | |
6 | # to CFLAGS below: -DMAX_MEM_LEVEL=7 -DMAX_WBITS=14 | |
7 | # See zconf.h for details about the memory requirements. | |
8 | ||
cd31c795 GT |
9 | !if "$(RM)" == "" |
10 | RM= erase | |
11 | !endif | |
12 | ||
d604ea33 UJ |
13 | !ifndef FINAL |
14 | FINAL=0 | |
15 | !endif | |
16 | ||
17 | !if "$(FINAL)" == "0" | |
cd31c795 | 18 | CFLAGS=/Od $(CRTFLAG) /GX /Fo$@ |
3156ba6e | 19 | _CRTFLAG=/MDd |
f641dada | 20 | !else if "$(FINAL)" == "hybrid" |
cd31c795 | 21 | CFLAGS=/Od $(CRTFLAG) /GX /Fo$@ |
f641dada | 22 | _CRTFLAG=/MD |
d604ea33 | 23 | !else |
cd31c795 | 24 | CFLAGS=-O2 $(CRTFLAG) /GX /Fo$@ |
3156ba6e | 25 | _CRTFLAG=/MD |
d604ea33 UJ |
26 | !endif |
27 | ||
3156ba6e RD |
28 | !if "$(CRTFLAG)" == "" |
29 | CRTFLAG=$(_CRTFLAG) | |
30 | !endif | |
31 | ||
32 | ||
c801d85f KB |
33 | CC=cl |
34 | LD=cl | |
35 | LIB=tlib | |
c801d85f KB |
36 | LDFLAGS=$(MODEL) |
37 | O=.obj | |
38 | ||
5fa399c9 | 39 | !if "$(FINAL)" == "1" |
58c55d1f | 40 | LIBTARGET=..\..\lib\zlib.lib |
cd31c795 | 41 | D=Release |
f641dada RD |
42 | !else if "$(FINAL)" == "hybrid" |
43 | LIBTARGET=..\..\lib\zlibh.lib | |
cd31c795 | 44 | D=Hybrid |
5fa399c9 JS |
45 | !else |
46 | LIBTARGET=..\..\lib\zlibd.lib | |
cd31c795 | 47 | D=Debug |
5fa399c9 | 48 | !endif |
c801d85f KB |
49 | |
50 | # variables | |
cd31c795 GT |
51 | OBJ1 = $D\adler32$(O) $D\compress$(O) $D\crc32$(O) $D\gzio$(O) \ |
52 | $D\uncompr$(O) $D\deflate$(O) $D\trees$(O) | |
53 | OBJ2 = $D\zutil$(O) $D\inflate$(O) $D\infblock$(O) $D\inftrees$(O) \ | |
54 | $D\infcodes$(O) $D\infutil$(O) $D\inffast$(O) | |
55 | ||
56 | all: $D $(LIBTARGET) | |
c801d85f | 57 | |
cd31c795 GT |
58 | $D: |
59 | mkdir .\$D | |
c801d85f | 60 | |
cd31c795 GT |
61 | $D\adler32.obj: adler32.c zutil.h zlib.h zconf.h |
62 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 63 | |
cd31c795 GT |
64 | $D\compress.obj: compress.c zlib.h zconf.h |
65 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 66 | |
cd31c795 GT |
67 | $D\crc32.obj: crc32.c zutil.h zlib.h zconf.h |
68 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 69 | |
cd31c795 GT |
70 | $D\deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h |
71 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 72 | |
cd31c795 GT |
73 | $D\gzio.obj: gzio.c zutil.h zlib.h zconf.h |
74 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 75 | |
cd31c795 | 76 | $D\infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\ |
c801d85f | 77 | infcodes.h infutil.h |
cd31c795 | 78 | $(CC) -c $(CFLAGS) $(*B).c |
c801d85f | 79 | |
cd31c795 | 80 | $D\infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\ |
c801d85f | 81 | infcodes.h inffast.h |
cd31c795 | 82 | $(CC) -c $(CFLAGS) $(*B).c |
c801d85f | 83 | |
cd31c795 GT |
84 | $D\inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h |
85 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 86 | |
cd31c795 GT |
87 | $D\inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h |
88 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 89 | |
cd31c795 GT |
90 | $D\infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h |
91 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 92 | |
cd31c795 GT |
93 | $D\inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h |
94 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 95 | |
cd31c795 GT |
96 | $D\trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h |
97 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 98 | |
cd31c795 GT |
99 | $D\uncompr.obj: uncompr.c zlib.h zconf.h |
100 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f | 101 | |
cd31c795 GT |
102 | $D\zutil.obj: zutil.c zutil.h zlib.h zconf.h |
103 | $(CC) -c $(CFLAGS) $(*B).c | |
c801d85f KB |
104 | |
105 | LIBOBJECTS = $(OBJ1) $(OBJ2) | |
106 | ||
107 | $(LIBTARGET): $(LIBOBJECTS) | |
7fee680b | 108 | -erase $(LIBTARGET) |
c801d85f KB |
109 | lib @<< |
110 | -out:$(LIBTARGET) | |
111 | $(LIBOBJECTS) | |
112 | << | |
113 | ||
114 | clean: | |
cd31c795 GT |
115 | -$(RM) $D\*.obj |
116 | -$(RM) *.exe | |
117 | -$(RM) *.sbr | |
118 | -$(RM) $(LIBTARGET) |