Redo marker dots with cairo
[xboard.git] / winboard / makefile.gcc
1 # WinBoard makefile using gcc\r
2 \r
3 \r
4 PROJ=winboard\r
5 \r
6 \r
7 OBJS=backend.o book.o gamelist.o lists.o moves.o pgntags.o uci.o zippy.o\\r
8  parser.o wbres.o wclipbrd.o wedittags.o wengineoutput.o wevalgraph.o\\r
9  wgamelist.o whistory.o history.o winboard.o wlayout.o woptions.o wsnap.o\\r
10  wsockerr.o help.o wsettings.o wchat.o engineoutput.o evalgraph.o\r
11 \r
12 \r
13 # make compiling less spammy\r
14 compile = @echo "$1"; $(CC) $(CFLAGS) $1\r
15 \r
16 \r
17 # Debugging?\r
18 USE_DEBUG=0\r
19 \r
20 \r
21 # JAWS support?\r
22 JAWS=0\r
23 \r
24 \r
25 # set this to 1 unless you don't mind linking with cygwin1.dll\r
26 USE_MINGW=1\r
27 \r
28 \r
29 # set up for cygwin or not\r
30 ifeq ($(USE_MINGW),1)\r
31 CFCYG = -mno-cygwin -DUSE_I64\r
32 LFCYG = -mno-cygwin -lmsvcrt\r
33 endif\r
34 \r
35 CC = gcc\r
36 FLEX = "flex.exe" # we need version 2.5.4 or later, cygwin's is 2.5.35\r
37 #      "c:/mingw/mingw32/bin/flex.exe"\r
38 HC="C:/Program Files/Help Workshop/hcrtf" -xn\r
39 DEFS = -D_WIN32_IE=0x0300 -DWIN32\r
40 ifeq ($(JAWS),1)\r
41   DEFS += -DJAWS\r
42 endif\r
43 WARN = -Wall -Wno-char-subscripts -Wno-parentheses\r
44 ARCH =\r
45 ifeq ($(USE_DEBUG),0)\r
46   CFDEBUG = -DNDEBUG\r
47   OPTS = -Os -frename-registers -funit-at-a-time -fstrict-aliasing -fstrength-reduce\r
48 else\r
49   CFDEBUG = -D_DEBUG -DDEBUG -g\r
50 endif\r
51 CF = -c $(WARN) -pipe $(CFDEBUG) $(DEFS) -I. -I..\r
52 CFLAGS = $(CF) $(ARCH) $(OPTS) $(CFCYG)\r
53 LFLAGS = $(LFCYG) $(CFDEBUG) -fpic -s -mwindows -lwsock32 -lwinmm -lcomctl32\r
54 \r
55 all: $(PROJ).exe\r
56 \r
57 \r
58 clean:\r
59         rm -f *~ $(PROJ).exe $(PROJ).err $(PROJ).rbj $(PROJ).RES $(PROJ).res\\r
60         *.sbr *.bsc *.o *.obj *.plg *.opt *.ncb *.debug *.bak *.gid *.GID\\r
61         *.map *.pdb *.tmp $(PROJ).ini\r
62 \r
63 \r
64 # Update the help file if necessary\r
65 $(PROJ).hlp : $(PROJ).rtf\r
66         $(HC) $(PROJ).hpj\r
67         @cat $(PROJ).err\r
68         @mv $(PROJ).hlp tmp.hlp\r
69         @mv tmp.hlp $(PROJ).hlp # these moves to get the case right\r
70 \r
71 \r
72 # Update the resource if necessary\r
73 wbres.o: $(PROJ).rc $(PROJ).h resource.h config.h\r
74         windres $(DEFS) --use-temp-file --include-dir .. $< -O coff -o $@\r
75 \r
76 \r
77 $(PROJ).exe: $(OBJS) $(PROJ).hlp\r
78         $(CC) $(guiflags) $(OBJS) $(LFLAGS) -o $(PROJ).exe\r
79 \r
80 \r
81 winboard.o: winboard.c config.h winboard.h ../common.h ../frontend.h ../backend.h \\r
82         ../moves.h defaults.h resource.h wclipbrd.h \\r
83         wsockerr.h woptions.h wsnap.h ../lists.h help.h ../args.h\r
84         $(call compile, $<)\r
85 \r
86 backend.o: ../backend.c config.h ../common.h ../frontend.h ../backend.h \\r
87         ../parser.h ../moves.h ../zippy.h ../backendz.h ../gettext.h ../lists.h\r
88         $(call compile, $<)\r
89 \r
90 parser.o: ../parser.c config.h ../common.h ../backend.h ../parser.h \\r
91         ../frontend.h ../moves.h ../lists.h\r
92         $(call compile, $<)\r
93 \r
94 moves.o: ../moves.c config.h ../backend.h ../common.h ../parser.h \\r
95         ../moves.h ../lists.h\r
96         $(call compile, $<)\r
97 \r
98 lists.o: ../lists.c config.h ../lists.h ../common.h\r
99         $(call compile, $<)\r
100 \r
101 gamelist.o: ../gamelist.c config.h ../lists.h ../common.h ../frontend.h \\r
102         ../backend.h ../parser.h\r
103         $(call compile, $<)\r
104 \r
105 wclipbrd.o: wclipbrd.c config.h ../common.h ../frontend.h ../backend.h \\r
106         winboard.h resource.h wclipbrd.h ../lists.h\r
107         $(call compile, $<)\r
108 \r
109 wedittags.o: wedittags.c config.h ../common.h winboard.h resource.h ../frontend.h \\r
110         ../backend.h ../lists.h\r
111         $(call compile, $<)\r
112 \r
113 wgamelist.o: wgamelist.c config.h ../common.h winboard.h resource.h ../frontend.h \\r
114         ../backend.h ../lists.h\r
115         $(call compile, $<)\r
116 \r
117 woptions.o: woptions.c config.h ../common.h ../frontend.h ../backend.h ../lists.h \\r
118         defaults.h winboard.h resource.h\r
119         $(call compile, $<)\r
120 \r
121 wengineoutput.o: wengineoutput.c ../engineoutput.h config.h ../common.h \\r
122         ../frontend.h ../backend.h ../lists.h winboard.h resource.h wsnap.h\r
123         $(call compile, $<)\r
124 \r
125 engineoutput.o: ../engineoutput.c ../engineoutput.h config.h ../common.h \\r
126         ../frontend.h ../backend.h ../lists.h\r
127         $(call compile, $<)\r
128 \r
129 whistory.o: whistory.c config.h ../common.h ../frontend.h ../backend.h \\r
130         ../lists.h winboard.h resource.h wsnap.h\r
131         $(call compile, $<)\r
132 \r
133 history.o: ../history.c config.h ../common.h ../frontend.h ../backend.h \\r
134         ../lists.h\r
135         $(call compile, $<)\r
136 \r
137 wevalgraph.o: wevalgraph.c ../evalgraph.h config.h ../common.h ../frontend.h \\r
138         ../backend.h ../lists.h winboard.h resource.h wsnap.h\r
139         $(call compile, $<)\r
140 \r
141 evalgraph.o: ../evalgraph.c ../evalgraph.h config.h ../common.h ../frontend.h \\r
142         ../backend.h ../lists.h\r
143         $(call compile, $<)\r
144 \r
145 wlayout.o: wlayout.c config.h ../common.h ../frontend.h winboard.h resource.h\r
146         $(call compile, $<)\r
147 \r
148 wsockerr.o: wsockerr.c wsockerr.h\r
149         $(call compile, $<)\r
150 \r
151 help.o: help.c help.h\r
152         $(call compile, $<)\r
153 \r
154 wsnap.o: wsnap.c wsnap.h\r
155         $(call compile, $<)\r
156 \r
157 pgntags.o: ../pgntags.c config.h ../common.h ../frontend.h ../backend.h \\r
158         ../parser.h ../lists.h\r
159         $(call compile, $<)\r
160 \r
161 zippy.o: ../zippy.c config.h ../common.h ../zippy.h ../frontend.h \\r
162         ../backend.h ../backendz.h ../lists.h\r
163         $(call compile, $<)\r
164 \r
165 book.o: ../book.c ../common.h ../backend.h ../lists.h\r
166         $(call compile, $<)\r
167 \r
168 uci.o: ../uci.c ../common.h ../backend.h ../frontend.h ../lists.h\r
169         $(call compile, $<)\r
170 \r
171 wsettings.o: wsettings.c ../common.h ../backend.h ../frontend.h ../lists.h\r
172         $(call compile, $<)\r
173 \r
174 wchat.o: wchat.c winboard.h wsnap.h ../common.h ../backend.h ../frontend.h ../lists.h\r
175         $(call compile, $<)\r
176 \r
177 %.o: %.c\r
178         $(call compile, $<)\r