undid some previous changes
[xboard.git] / winboard / makefile.ms
1 # Command line: nmake /f makefile.ms\r
2 # Set VCVER=6 for MSVC 4.x through 7.0(aka 2002 aka .NET).\r
3 # For MSVC 8 (aka 2005) set VCVER=8.  Beyond that try 8 first.\r
4 VCVER=6\r
5 \r
6 # If using MSVC 6.0 or earlier, you will need the latest platform SDK supported.\r
7 # Set SDK_INC to the include directory after you install it.\r
8 # See: http://www.microsoft.com/msdownload/platformsdk/sdkupdate/psdk-full.htm\r
9 #SDK_INC="C:\Program Files\Microsoft SDK\include"\r
10 \r
11 \r
12 PROJ = winboard\r
13 \r
14 \r
15 OBJS=backend.obj book.obj gamelist.obj lists.obj moves.obj pgntags.obj uci.obj\\r
16  zippy.obj parser.obj wclipbrd.obj wedittags.obj wengineo.obj wevalgraph.obj\\r
17  wgamelist.obj whistory.obj winboard.obj wlayout.obj woptions.obj wsnap.obj\\r
18  wsockerr.obj help.obj wsettings.obj\r
19 \r
20 \r
21 # Debugging?\r
22 USE_DEBUG=0\r
23 \r
24 \r
25 # JAWS support?\r
26 JAWS=0\r
27 \r
28 \r
29 CC = @cl\r
30 RC = @rc\r
31 LINK = link\r
32 HC="c:\program files\help workshop\hcrtf.exe" -xn\r
33 FLEX = "c:/mingw/mingw32/bin/flex.exe"\r
34 DEFS = -D_WIN32_IE=0x300 -DWIN32 -DWINVER=0x0500 -D_WIN32_WINDOWS=0x500\r
35 !if $(JAWS) == 1\r
36 DEFS = -DJAWS $(DEFS)\r
37 !endif\r
38 #WARN = -W3\r
39 ARCH =\r
40 \r
41 \r
42 !if $(VCVER) >= 8\r
43 CLIB= libcmt\r
44 LIBF= -MT\r
45 DEPRECATE=-D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -D_USE_32BIT_TIME_T\r
46 !else\r
47 VSO = -Gf -Og\r
48 CLIB = msvcrt\r
49 LIBF = -MD\r
50 !endif\r
51 \r
52 \r
53 !if $(USE_DEBUG) == 0\r
54 CFDEBUG = -DNDEBUG\r
55 OPTS = -Os -Oy -Gs -GA -Zl $(VSO) $(LIBF)\r
56 LFDEBUG = $(CLIB).lib\r
57 !else\r
58 CFDEBUG = -D_DEBUG -DDEBUG\r
59 OPTS = -Od -Zi -Fd$(PROJ).pdb $(LIBF)d\r
60 LFDEBUG = -DEBUG -PDB:$(PROJ).pdb -MAP:$(PROJ).map $(CLIB)d.lib\r
61 !endif\r
62 CF = $(CFDEBUG) $(DEFS) $(DEPRECATE) -I. -I..\r
63 !if DEFINED(SDK_INC)\r
64 CF = $(CF) -I$(SDK_INC)\r
65 !endif\r
66 CFLAGS = -c -nologo $(WARN) $(CF) $(ARCH) $(OPTS)\r
67 LFLAGS = -nologo $(LFDEBUG)\r
68 \r
69 \r
70 all: $(PROJ).exe\r
71 \r
72 \r
73 clean:\r
74         -erase *~ $(PROJ).exe $(PROJ).err $(PROJ).rbj $(PROJ).res *.sbr *.bsc\\r
75         *.o *.obj *.plg *.opt *.ncb *.debug *.bak *.gid *.map *.pdb *.ini\r
76 \r
77 \r
78 # Update the help file if necessary\r
79 $(PROJ).hlp : $(PROJ).rtf\r
80         $(HC) $(PROJ).hpj\r
81         -@type $(PROJ).err\r
82         -@rename $(PROJ).hlp $(PROJ).hlp.tmp\r
83         -@rename $(PROJ).hlp.tmp $(PROJ).hlp\r
84 \r
85 \r
86 # Update the resource if necessary\r
87 $(PROJ).res: $(PROJ).rc $(PROJ).h resource.h\r
88     $(RC) $(CF) -r -fo $(PROJ).res $(PROJ).rc\r
89 \r
90 parser.c: ../parser.l\r
91     $(FLEX) -oparser.c -L ../parser.l\r
92 \r
93 winboard.obj: winboard.c config.h winboard.h ../common.h ../frontend.h \\r
94         ../backend.h ../moves.h wgamelist.h defaults.h resource.h wclipbrd.h \\r
95         wedittags.h wsockerr.h woptions.h wsnap.h ../lists.h help.h\r
96         $(CC) $(CFLAGS) winboard.c\r
97 \r
98 backend.obj: ../backend.c config.h ../common.h ../frontend.h ../backend.h \\r
99         ../parser.h ../moves.h ../zippy.h ../backendz.h ../gettext.h ../lists.h\r
100         $(CC) $(CFLAGS) ../backend.c\r
101 \r
102 parser.obj: parser.c config.h ../common.h ../backend.h ../parser.h \\r
103         ../frontend.h ../moves.h ../lists.h\r
104         $(CC) $(CFLAGS) parser.c\r
105 \r
106 book.obj: ../book.c ../common.h ../backend.h ../lists.h\r
107         $(CC) $(CFLAGS) ../book.c\r
108 \r
109 gamelist.obj: ../gamelist.c config.h ../lists.h ../common.h ../frontend.h \\r
110         ../backend.h ../parser.h\r
111         $(CC) $(CFLAGS) ../gamelist.c\r
112 \r
113 lists.obj: ../lists.c config.h ../lists.h ../common.h\r
114         $(CC) $(CFLAGS) ../lists.c\r
115 \r
116 moves.obj: ../moves.c config.h ../backend.h ../common.h ../parser.h \\r
117         ../moves.h ../lists.h\r
118         $(CC) $(CFLAGS) ../moves.c\r
119 \r
120 wclipbrd.obj: wclipbrd.c config.h ../common.h ../frontend.h ../backend.h \\r
121         winboard.h resource.h wclipbrd.h ../lists.h\r
122         $(CC) $(CFLAGS) wclipbrd.c\r
123 \r
124 wedittags.obj: wedittags.c config.h ../common.h winboard.h resource.h ../frontend.h \\r
125         ../backend.h ../lists.h wedittags.h\r
126         $(CC) $(CFLAGS) wedittags.c\r
127 \r
128 wgamelist.obj: wgamelist.c config.h. ../common.h winboard.h resource.h ../frontend.h \\r
129         ../backend.h wgamelist.h ../lists.h\r
130         $(CC) $(CFLAGS) wgamelist.c\r
131 \r
132 woptions.obj: woptions.c config.h ../common.h ../frontend.h ../backend.h \\r
133         ../lists.h defaults.h winboard.h resource.h\r
134         $(CC) $(CFLAGS) woptions.c\r
135 \r
136 wengineo.obj: wengineo.c config.h ../common.h ../frontend.h ../backend.h \\r
137         ../lists.h winboard.h resource.h wsnap.h\r
138         $(CC) $(CFLAGS) wengineo.c\r
139 \r
140 whistory.obj: whistory.c config.h ../common.h ../frontend.h ../backend.h \\r
141         ../lists.h winboard.h resource.h wsnap.h\r
142         $(CC) $(CFLAGS) whistory.c\r
143 \r
144 wevalgraph.obj: wevalgraph.c config.h ../common.h ../frontend.h ../backend.h \\r
145         ../lists.h winboard.h resource.h wsnap.h\r
146         $(CC) $(CFLAGS) wevalgraph.c\r
147 \r
148 wlayout.obj: wlayout.c config.h ../common.h winboard.h resource.h\r
149         $(CC) $(CFLAGS) wlayout.c\r
150 \r
151 wsockerr.obj: wsockerr.c wsockerr.h\r
152         $(CC) $(CFLAGS) wsockerr.c\r
153 \r
154 help.obj: help.c help.h\r
155         $(CC) $(CFLAGS) help.c\r
156 \r
157 wsnap.obj: wsnap.c wsnap.h\r
158         $(CC) $(CFLAGS) wsnap.c\r
159 \r
160 pgntags.obj: ../pgntags.c config.h ../common.h ../frontend.h ../backend.h \\r
161         ../parser.h ../lists.h\r
162         $(CC) $(CFLAGS) ../pgntags.c\r
163 \r
164 zippy.obj: ../zippy.c config.h ../common.h ../zippy.h ../frontend.h \\r
165         ../backend.h ../backendz.h ../lists.h\r
166         $(CC) $(CFLAGS) ../zippy.c\r
167 \r
168 uci.obj: ../uci.c ..//common.h ../backend.h ../frontend.h ../lists.h\r
169         $(CC) $(CFLAGS) ../uci.c\r
170 \r
171 \r
172 wsettings.obj: wsettings.c ..//common.h ../backend.h ../frontend.h ../lists.h\r
173         $(CC) $(CFLAGS) wsettings.c\r
174 \r
175 \r
176 $(PROJ).exe: $(OBJS) $(PROJ).res $(PROJ).hlp\r
177     $(LINK) $(LFLAGS) $(OBJS) wsock32.lib comctl32.lib winmm.lib shell32.lib\\r
178  oldnames.lib kernel32.lib advapi32.lib user32.lib gdi32.lib comdlg32.lib\\r
179  $(PROJ).res -out:$(PROJ).exe\r
180 \r
181 \r
182 .c.obj:\r
183         $(CC) $(CFLAGS) $< \r