Move database compilation out into its own tool (for now).
[open-adventure.git] / Makefile
1 # Makefile for the open-source release of adventure 2.5
2
3 LIBS=-lrt
4 OBJS=main.o init.o actions1.o actions2.o score.o misc.o database/database.o
5 SOURCES=$(OBJS:.o=.c) COPYING NEWS README TODO advent.text control
6
7 .c.o:
8         gcc -O $(DBX) -c $<
9
10 advent: $(OBJS) database
11         gcc -Wall -std=c99 -O $(DBX) -o advent $(OBJS) $(LIBS)
12
13 main.o:         main.h misc.h funcs.h database/database.h
14
15 init.o:         misc.h main.h share.h funcs.h database/database.h
16
17 actions1.o:     misc.h main.h share.h funcs.h database/database.h
18
19 actions2.o:     misc.h main.h share.h funcs.h
20
21 score.o:        misc.h main.h share.h database/database.h
22
23 misc.o:         misc.h main.h database/database.h
24
25 clean:
26         rm -f *.o advent advent.html advent.6 adventure.data
27         cd tests; $(MAKE) --quiet clean
28         cd database; $(MAKE) clean
29
30 check: advent
31         cd tests; $(MAKE) --quiet
32
33 # Requires asciidoc and xsltproc/docbook stylesheets.
34 .asc.6:
35         a2x --doctype manpage --format manpage $<
36 .asc.html:
37         a2x --doctype manpage --format xhtml -D . $<
38         rm -f docbook-xsl.css
39
40 advent-$(VERS).tar.gz: $(SOURCES) advent.6
41         tar --transform='s:^:advent-$(VERS)/:' --show-transformed-names -cvzf advent-$(VERS).tar.gz $(SOURCES) advent.6
42
43 dist: advent-$(VERS).tar.gz
44
45 release: advent-$(VERS).tar.gz advent.html
46         shipper version=$(VERS) | sh -e -x
47
48 refresh: advent.html
49         shipper -N -w version=$(VERS) | sh -e -x
50
51 database:
52         cd database; $(MAKE)