5 |
NAME = spasm |
NAME = spasm |
6 |
|
|
7 |
CC = gcc |
CC = gcc |
8 |
CFLAGS = -g -Wall -c |
CFLAGS = -Wall -DSPASMDEBUG |
9 |
LFLAGS = -g |
LFLAGS = |
10 |
|
|
11 |
.PHONY: all clean |
.PHONY: all clean |
12 |
|
|
|
SRC = $(wildcard *.c) |
|
|
OBJS = $(SRC:.c=.o) |
|
|
|
|
13 |
FLEX = flex |
FLEX = flex |
14 |
BISON = bison |
BISON = bison |
15 |
|
|
16 |
BISONFLAGS = -v -d |
BISONFLAGS = -d |
17 |
FLEXFLAGS = -d |
FLEXFLAGS = |
18 |
|
|
19 |
FLEX_IN = spasm.lex |
FLEX_IN = spasm.lex |
20 |
FLEX_OUT = $(FLEX_IN).c |
FLEX_OUT = $(FLEX_IN).c |
22 |
BISON_PRE = spasm.tab |
BISON_PRE = spasm.tab |
23 |
BISON_OUT = $(BISON_PRE).c |
BISON_OUT = $(BISON_PRE).c |
24 |
|
|
25 |
|
SRC = $(wildcard *.c) |
26 |
|
OBJS = $(SRC:.c=.o) $(BISON_PRE).o $(FLEX_IN).o |
27 |
|
|
28 |
|
|
29 |
all: bislex $(NAME) |
all: bislex $(NAME) |
30 |
|
|
31 |
bislex: |
bislex: |
|
+$(FLEX) $(FLEXFLAGS) -o$(FLEX_OUT) $(FLEX_IN) |
|
32 |
+$(BISON) $(BISONFLAGS) $(BISON_IN) |
+$(BISON) $(BISONFLAGS) $(BISON_IN) |
33 |
|
+$(FLEX) $(FLEXFLAGS) -o$(FLEX_OUT) $(FLEX_IN) |
34 |
|
|
35 |
$(NAME): $(OBJS) |
$(NAME): $(OBJS) |
36 |
$(CC) $(LFLAGS) -o $@ $^ |
$(CC) $(LFLAGS) -o $@ $^ |
37 |
|
|
38 |
# |
# |
39 |
clean: |
clean: |
40 |
rm -f *.o $(NAME) |
rm -f *.o $(NAME) $(FLEX_OUT) $(BISON_PRE)* |