c83f0a7d14c8945fc189dc83db315cb87d45f1b5
[xboard.git] / winboard / cygwin.mak
1 #
2 # Makefile for WinBoard, using the GNU Cygwin toolset
3 #
4
5 # Uncomment both lines to turn on debugging symbols #######
6 cdebug= -g
7 linkdebug= -g
8 #######################################################
9
10 proj=winboard
11 allobj=  winboard.o backend.o parser.o moves.o lists.o \
12          gamelist.o pgntags.o wedittags.o wgamelist.o zippy.o \
13          wsockerr.o wbres.o wclipbrd.o woptions.o
14
15 dotc=   winboard.c backend.c parser.c moves.c lists.c \
16          gamelist.c pgntags.c wedittags.c wgamelist.c zippy.c \
17          wsockerr.c winboard.rc wclipbrd.c woptions.c
18
19 # Currently WinBoard will build either with or without -mno-cygwin
20 # however, a Cygwin bug in forming the command line to WinMain() is
21 # exposed if -mno-cygwin is not used.
22 cygwin= -mno-cygwin
23
24 VPATH= .:..
25 CFLAGS= $(cdebug)
26 INCLUDES= -I. -I..
27 CVARS= $(INCLUDES) $(cygwin)
28 CC = gcc $(CVARS)
29 WCC = $(CC) -mwindows $(linkdebug)
30 HC="/c/program files/help workshop/hcrtf.exe" -xn
31
32 all: $(proj).exe
33
34 depend: $(dotc)
35         makedepend -Y -f cygwin.mak $(INCLUDES) $^
36
37 clean:
38         rm -f *.obj *~ $(proj).exe $(proj).err $(proj).rbj \
39                 $(proj).RES $(proj).res $(proj).ini *.sbr *.bsc *.o \
40                 *.plg *.opt *.ncb *.debug *.bak *.gid *.GID
41
42 maintainer-clean: clean
43         rm -f parser.c *.hlp *.HLP
44
45 # Update the help file if necessary
46 $(proj).hlp : $(proj).rtf
47         $(HC) $(proj).hpj
48         cat $(proj).err
49
50 # Update the resource if necessary
51 wbres.o: $(proj).rc $(proj).h resource.h
52         windres --use-temp-file --include-dir .. $< -O coff -o $@
53
54 # Update the object files if necessary
55
56 parser.c: parser.l
57         flex -oparser.c -L $<
58
59 $(proj).exe: $(allobj) $(proj).hlp $(proj).rc
60         $(WCC) $(guiflags) $(allobj) \
61         -lwsock32 -lwinmm \
62         -o $(proj).exe
63
64 # DO NOT DELETE
65
66 winboard.o: config.h ../common.h winboard.h resource.h ../frontend.h
67 winboard.o: ../backend.h ../lists.h ../moves.h wclipbrd.h wgamelist.h
68 winboard.o: wedittags.h woptions.h wsockerr.h defaults.h
69 backend.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
70 backend.o: ../parser.h ../moves.h ../zippy.h ../backendz.h
71 parser.o: config.h ../common.h ../backend.h ../lists.h ../frontend.h
72 parser.o: ../parser.h ../moves.h
73 moves.o: config.h ../common.h ../backend.h ../lists.h ../frontend.h
74 moves.o: ../moves.h ../parser.h
75 lists.o: config.h ../common.h ../lists.h
76 gamelist.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
77 gamelist.o: ../parser.h
78 pgntags.o: config.h ../common.h ../frontend.h ../backend.h ../lists.h
79 pgntags.o: ../parser.h
80 wedittags.o: config.h ../common.h winboard.h resource.h ../frontend.h
81 wedittags.o: ../backend.h ../lists.h
82 wgamelist.o: config.h ../common.h winboard.h resource.h ../frontend.h
83 wgamelist.o: ../backend.h ../lists.h
84 zippy.o: config.h ../common.h ../zippy.h ../frontend.h ../backend.h
85 zippy.o: ../lists.h ../backendz.h
86 wsockerr.o: wsockerr.h
87 winboard.o: resource.h
88 wclipbrd.o: config.h ../common.h winboard.h resource.h ../frontend.h
89 wclipbrd.o: ../backend.h ../lists.h wclipbrd.h
90 woptions.o: config.h ../common.h winboard.h resource.h ../backend.h
91 woptions.o: ../lists.h ../frontend.h woptions.h defaults.h wedittags.h