1 # WinBoard makefile using gcc
\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
13 # make compiling less spammy
\r
14 compile = @echo "$1"; $(CC) $(CFLAGS) $1
\r
25 # set this to 1 unless you don't mind linking with cygwin1.dll
\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
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
43 WARN = -Wall -Wno-char-subscripts -Wno-parentheses
\r
45 ifeq ($(USE_DEBUG),0)
\r
47 OPTS = -Os -frename-registers -funit-at-a-time -fstrict-aliasing -fstrength-reduce
\r
49 CFDEBUG = -D_DEBUG -DDEBUG -g
\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
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
64 # Update the help file if necessary
\r
65 $(PROJ).hlp : $(PROJ).rtf
\r
68 @mv $(PROJ).hlp tmp.hlp
\r
69 @mv tmp.hlp $(PROJ).hlp # these moves to get the case right
\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
77 # note: cygwin flex needs m4 package. cygwin-setup forgets this dependency
\r
78 # note2: use mingw flex instead... although I got cygwin's flex working (with m4),
\r
79 # it didn't produce a useable parser.c (1000's of errors)
\r
80 ../parser.c: ../parser.l
\r
81 $(FLEX) -o../parser.c -L ../parser.l
\r
84 $(PROJ).exe: $(OBJS) $(PROJ).hlp
\r
85 $(CC) $(guiflags) $(OBJS) $(LFLAGS) -o $(PROJ).exe
\r
88 winboard.o: winboard.c config.h winboard.h ../common.h ../frontend.h ../backend.h \
\r
89 ../moves.h defaults.h resource.h wclipbrd.h \
\r
90 wsockerr.h woptions.h wsnap.h ../lists.h help.h ../args.h
\r
93 backend.o: ../backend.c config.h ../common.h ../frontend.h ../backend.h \
\r
94 ../parser.h ../moves.h ../zippy.h ../backendz.h ../gettext.h ../lists.h
\r
97 parser.o: ../parser.c config.h ../common.h ../backend.h ../parser.h \
\r
98 ../frontend.h ../moves.h ../lists.h
\r
101 moves.o: ../moves.c config.h ../backend.h ../common.h ../parser.h \
\r
102 ../moves.h ../lists.h
\r
103 $(call compile, $<)
\r
105 lists.o: ../lists.c config.h ../lists.h ../common.h
\r
106 $(call compile, $<)
\r
108 gamelist.o: ../gamelist.c config.h ../lists.h ../common.h ../frontend.h \
\r
109 ../backend.h ../parser.h
\r
110 $(call compile, $<)
\r
112 wclipbrd.o: wclipbrd.c config.h ../common.h ../frontend.h ../backend.h \
\r
113 winboard.h resource.h wclipbrd.h ../lists.h
\r
114 $(call compile, $<)
\r
116 wedittags.o: wedittags.c config.h ../common.h winboard.h resource.h ../frontend.h \
\r
117 ../backend.h ../lists.h
\r
118 $(call compile, $<)
\r
120 wgamelist.o: wgamelist.c config.h ../common.h winboard.h resource.h ../frontend.h \
\r
121 ../backend.h ../lists.h
\r
122 $(call compile, $<)
\r
124 woptions.o: woptions.c config.h ../common.h ../frontend.h ../backend.h ../lists.h \
\r
125 defaults.h winboard.h resource.h
\r
126 $(call compile, $<)
\r
128 wengineoutput.o: wengineoutput.c ../engineoutput.h config.h ../common.h \
\r
129 ../frontend.h ../backend.h ../lists.h winboard.h resource.h wsnap.h
\r
130 $(call compile, $<)
\r
132 engineoutput.o: ../engineoutput.c ../engineoutput.h config.h ../common.h \
\r
133 ../frontend.h ../backend.h ../lists.h
\r
134 $(call compile, $<)
\r
136 whistory.o: whistory.c config.h ../common.h ../frontend.h ../backend.h \
\r
137 ../lists.h winboard.h resource.h wsnap.h
\r
138 $(call compile, $<)
\r
140 history.o: ../history.c config.h ../common.h ../frontend.h ../backend.h \
\r
142 $(call compile, $<)
\r
144 wevalgraph.o: wevalgraph.c ../evalgraph.h config.h ../common.h ../frontend.h \
\r
145 ../backend.h ../lists.h winboard.h resource.h wsnap.h
\r
146 $(call compile, $<)
\r
148 evalgraph.o: ../evalgraph.c ../evalgraph.h config.h ../common.h ../frontend.h \
\r
149 ../backend.h ../lists.h
\r
150 $(call compile, $<)
\r
152 wlayout.o: wlayout.c config.h ../common.h ../frontend.h winboard.h resource.h
\r
153 $(call compile, $<)
\r
155 wsockerr.o: wsockerr.c wsockerr.h
\r
156 $(call compile, $<)
\r
158 help.o: help.c help.h
\r
159 $(call compile, $<)
\r
161 wsnap.o: wsnap.c wsnap.h
\r
162 $(call compile, $<)
\r
164 pgntags.o: ../pgntags.c config.h ../common.h ../frontend.h ../backend.h \
\r
165 ../parser.h ../lists.h
\r
166 $(call compile, $<)
\r
168 zippy.o: ../zippy.c config.h ../common.h ../zippy.h ../frontend.h \
\r
169 ../backend.h ../backendz.h ../lists.h
\r
170 $(call compile, $<)
\r
172 book.o: ../book.c ../common.h ../backend.h ../lists.h
\r
173 $(call compile, $<)
\r
175 uci.o: ../uci.c ../common.h ../backend.h ../frontend.h ../lists.h
\r
176 $(call compile, $<)
\r
178 wsettings.o: wsettings.c ../common.h ../backend.h ../frontend.h ../lists.h
\r
179 $(call compile, $<)
\r
181 wchat.o: wchat.c winboard.h wsnap.h ../common.h ../backend.h ../frontend.h ../lists.h
\r
182 $(call compile, $<)
\r
185 $(call compile, $<)
\r