Initial revision
[wxWidgets.git] / src / zlib / makefile.vc
1 # Makefile for zlib
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
9 !if "$(RM)" == ""
10 RM= erase
11 !endif
12
13 !ifndef FINAL
14 FINAL=0
15 !endif
16
17 !if "$(FINAL)" == "0"
18 CFLAGS=/nologo /Od $(CRTFLAG) /GX /Fo$@
19 _CRTFLAG=/MDd
20 !else if "$(FINAL)" == "hybrid"
21 CFLAGS=/nologo /Ox $(CRTFLAG) /GX /Fo$@
22 _CRTFLAG=/MD
23 !else
24 CFLAGS=/nologo -O2 $(CRTFLAG) /GX /Fo$@
25 _CRTFLAG=/MD
26 !endif
27
28 !if "$(CRTFLAG)" == ""
29 CRTFLAG=$(_CRTFLAG)
30 !endif
31
32
33 CC=cl
34 LD=cl
35 LIB=tlib
36 LDFLAGS=$(MODEL)
37 O=.obj
38
39 !if "$(FINAL)" == "1"
40 LIBTARGET=..\..\lib\zlib.lib
41 D=Release
42 !else if "$(FINAL)" == "hybrid"
43 LIBTARGET=..\..\lib\zlibh.lib
44 D=Hybrid
45 !else
46 LIBTARGET=..\..\lib\zlibd.lib
47 D=Debug
48 !endif
49
50 # variables
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)
57
58 $D:
59     mkdir .\$D
60
61 $D\adler32.obj: adler32.c zutil.h zlib.h zconf.h
62         $(CC) -c $(CFLAGS) $(*B).c
63
64 $D\compress.obj: compress.c zlib.h zconf.h
65         $(CC) -c $(CFLAGS) $(*B).c
66
67 $D\crc32.obj: crc32.c zutil.h zlib.h zconf.h
68         $(CC) -c $(CFLAGS) $(*B).c
69
70 $D\deflate.obj: deflate.c deflate.h zutil.h zlib.h zconf.h
71         $(CC) -c $(CFLAGS) $(*B).c
72
73 $D\gzio.obj: gzio.c zutil.h zlib.h zconf.h
74         $(CC) -c $(CFLAGS) $(*B).c
75
76 $D\infblock.obj: infblock.c zutil.h zlib.h zconf.h infblock.h inftrees.h\
77    infcodes.h infutil.h
78         $(CC) -c $(CFLAGS) $(*B).c
79
80 $D\infcodes.obj: infcodes.c zutil.h zlib.h zconf.h inftrees.h infutil.h\
81    infcodes.h inffast.h
82         $(CC) -c $(CFLAGS) $(*B).c
83
84 $D\inflate.obj: inflate.c zutil.h zlib.h zconf.h infblock.h
85         $(CC) -c $(CFLAGS) $(*B).c
86
87 $D\inftrees.obj: inftrees.c zutil.h zlib.h zconf.h inftrees.h
88         $(CC) -c $(CFLAGS) $(*B).c
89
90 $D\infutil.obj: infutil.c zutil.h zlib.h zconf.h inftrees.h infutil.h
91         $(CC) -c $(CFLAGS) $(*B).c
92
93 $D\inffast.obj: inffast.c zutil.h zlib.h zconf.h inftrees.h infutil.h inffast.h
94         $(CC) -c $(CFLAGS) $(*B).c
95
96 $D\trees.obj: trees.c deflate.h zutil.h zlib.h zconf.h
97         $(CC) -c $(CFLAGS) $(*B).c
98
99 $D\uncompr.obj: uncompr.c zlib.h zconf.h
100         $(CC) -c $(CFLAGS) $(*B).c
101
102 $D\zutil.obj: zutil.c zutil.h zlib.h zconf.h
103         $(CC) -c $(CFLAGS) $(*B).c
104
105 LIBOBJECTS = $(OBJ1) $(OBJ2)
106
107 $(LIBTARGET): $(LIBOBJECTS)
108         -erase $(LIBTARGET)
109         lib @<<
110 -out:$(LIBTARGET)
111 $(LIBOBJECTS)
112 <<
113
114 clean:
115     -$(RM) $D\*.obj
116     -$(RM) *.exe
117     -$(RM) *.sbr
118     -$(RM) $(LIBTARGET)