worked on premove bug
[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 wchat.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 wchat.obj: wchat.c winboard.h wsnap.h ../common.h ../backend.h ../frontend.h ../lists.h\r
176         $(CC) $(CFLAGS) wchat.c\r
177 \r
178 \r
179 $(PROJ).exe: $(OBJS) $(PROJ).res $(PROJ).hlp\r
180     $(LINK) $(LFLAGS) $(OBJS) wsock32.lib comctl32.lib winmm.lib shell32.lib\\r
181  oldnames.lib kernel32.lib advapi32.lib user32.lib gdi32.lib comdlg32.lib\\r
182  $(PROJ).res -out:$(PROJ).exe\r
183 \r
184 \r
185 .c.obj:\r
186         $(CC) $(CFLAGS) $< \r