The @ command (track) in the arpeggiator has been changed to /, as it
[ahxm.git] / makefile.in
blob38658ecfb90b9819a02a910837122f73549de98d
1 # -*- Mode: sh
3 PROJ=ahxm
4 APPNAME=annhell
5 LIB=lib$(PROJ).a
6 DOCS=doc/*.html
7 BIN=annhell midiin
9 OBJS=support.o sha1.o song.o compiler_l.o compiler_y.o \
10 ss_core.o ss_input.o ss_gen.o ss_eff.o ss_ins.o ss_song.o \
11 ss_output.o ss_outdev.o midi_song.o main.o
13 all: $(BIN)
15 ##################################################################
17 version:
18 @echo $(VERSION)
20 ChangeLog:
21 cvs2cl --fsf --stdout > Changelog
23 .c.o:
24 $(CC) $(CFLAGS) `cat config.cflags` -c $<
26 y.tab.h: compiler.y
27 $(YACC) -d compiler.y
29 y.tab.c: compiler.y
30 $(YACC) -d compiler.y
32 lex.yy.c: compiler.l
33 flex compiler.l
35 compiler_l.o: lex.yy.c y.tab.h
36 $(CC) $(CFLAGS) -c lex.yy.c -o compiler_l.o
38 compiler_y.o: y.tab.c
39 $(CC) $(CFLAGS) -c y.tab.c -o compiler_y.o
41 # library
42 $(LIB): $(OBJS)
43 ar rv $(LIB) $(OBJS)
45 # binaries
46 annhell: $(LIB)
47 $(CC) $(LIB) -lm `cat config.ldflags` -o $@
49 wav: wav.c $(LIB)
50 $(CC) $(CFLAGS) wav.c $(LIB) -lm `cat config.ldflags` -o $@
52 midiin: midiin.c $(LIB)
53 $(CC) $(CFLAGS) midiin.c $(LIB) -lm `cat config.ldflags` -o $@
55 clean:
56 rm -f $(BIN) $(LIB) $(OBJS) *.o tags *.tar.gz
58 realclean: clean
59 rm -f y.tab.c y.tab.h lex.yy.c
61 distclean: realclean
62 rm -f config.h config.cflags config.ldflags makefile.opts .config.log Makefile
64 docs:
65 -mp_doccer *.c -o doc/annhell_api -f html1 \
66 -t "Ann Hell Ex Machina API ($(VERSION))" \
67 -a 'Angel Ortega - angel@triptico.com'
68 -grutatxt $(GRUTATXT_ARGS) -i doc/ahs_overview_i.txt -o doc/ahs_overview_i.html
69 -grutatxt $(GRUTATXT_ARGS) -i doc/ahs_overview_ii.txt -o doc/ahs_overview_ii.html
70 -grutatxt $(GRUTATXT_ARGS) -b -i doc/ahs_appendix_1.txt -o doc/ahs_appendix_1.html
71 -grutatxt $(GRUTATXT_ARGS) -i doc/index.txt -o doc/index.html
73 docs4triptico:
74 make docs GRUTATXT_ARGS="--css=http://www.triptico.com/triptico.css"
76 docsclean:
77 rm -f doc/*.html
79 dist: distclean docs ChangeLog y.tab.c y.tab.h lex.yy.c
80 DIR=`pwd` ; cd .. ; ln -s $$DIR $(PROJ)-$(VERSION); \
81 tar czvf $(PROJ)-$(VERSION)/$(PROJ)-$(VERSION).tar.gz --exclude=CVS $(PROJ)-$(VERSION)/* ; \
82 rm $(PROJ)-$(VERSION)
84 dep:
85 gcc -MM *.c > makefile.depend
87 install:
88 install $(APPNAME) $(PREFIX)/bin
89 ./mkinstalldirs $(PREFIX)/share/doc/$(PROJ)
90 install -m 644 $(DOCS) $(PREFIX)/share/doc/$(PROJ)
91 install -m 644 README RELEASE_NOTES TODO Changelog $(PREFIX)/share/doc/$(PROJ)