1 |
1 |
2 CFLAGS=-O2 -Wall |
2 CFLAGS = -O2 |
3 CFLAGS_DEBUG=-Wall -DDEBUG -DPROG='"volta (debugmode)"' |
3 LIBS = -lsqlite3 |
4 LIBS=-lsqlite3 |
4 #OBJS = $(patsubst %.c,%.o,$(wildcard *.c)) parser.o |
|
5 OBJS = volta.o parser.o |
5 |
6 |
6 volta: parser.c volta.c volta.h |
7 ######################################################################## |
7 $(CC) $(CFLAGS) $(LIBS) -o $@ *.c |
8 ### M A I N |
|
9 ######################################################################## |
|
10 |
|
11 volta: $(OBJS) |
|
12 $(CC) $(CFLAGS) $(LIBS) -o $@ $(OBJS) |
8 strip $@ |
13 strip $@ |
|
14 |
|
15 $(OBJS): volta.h |
9 |
16 |
10 parser.c: parser.rl |
17 parser.c: parser.rl |
11 ragel -L -C -e -G2 parser.rl -o $@ |
18 ragel -L -C -e -G2 parser.rl -o $@ |
12 |
19 |
13 debug: volta_debug |
|
14 |
20 |
15 volta_debug: parser_debug.c volta.h |
21 ######################################################################## |
16 $(CC) $(CFLAGS_DEBUG) $(LIBS) -o volta *.c |
22 ### D E B U G |
|
23 ######################################################################## |
17 |
24 |
18 parser_debug.c: parser.c |
25 debug: CFLAGS = -Wall -DDEBUG -DPROG='"volta (debugmode)"' |
19 ragel -V parser.rl > parser_state.dot |
26 debug: volta parser_state.xml parser_state.png parser_state.dot |
20 ragel -C -e -G2 -V -x parser.rl -o parser_state.xml |
27 |
|
28 parser_state.xml parser_state.png parser_state.dot: parser.rl |
|
29 ragel -Vp parser.rl > parser_state.dot |
|
30 ragel -C -e -G2 -x parser.rl -o parser_state.xml |
21 dot -Tpng parser_state.dot > parser_state.png |
31 dot -Tpng parser_state.dot > parser_state.png |
22 |
32 |
|
33 |
|
34 ######################################################################## |
|
35 ### U T I L |
|
36 ######################################################################## |
|
37 |
|
38 .PHONY : clean |
23 clean: |
39 clean: |
24 @rm -rf volta volta_debug* parser.c parser_state.* |
40 -rm -f volta volta_debug* parser.c parser_state.* *.o |
25 |
41 |