arm64: codea/abgabe_aa.0
[uebersetzerbau-ss10.git] / ag / Makefile
1 SHELL := bash
2 NAME := ag
3 CFLAGS := -ansi -pedantic -D_GNU_SOURCE
4 OBJS := scanner.o parser.o symtable.o
5
6 all: $(NAME)
7
8 $(NAME): $(OBJS)
9         @echo "  LINK    $@"
10         @gcc -o $@ $(OBJS) -lfl
11
12 scanner.c: oxout.l
13         @echo "  FLEX    $<"
14         @flex -o$@ $<
15
16 %.o: %.c parser.h symtable.h
17         @echo "  CC      $<"
18         @gcc -c $(CFLAGS) $< #-Wall
19
20 parser.c: oxout.y
21         @echo "  YACC    $<"
22         @yacc -t -v -d $< -o $@
23
24 parser.h: parser.c
25
26 oxout.y oxout.l: parser.y scanner.lex
27         @echo "  OX      $^"
28         @ox $^
29
30 .PHONY: clean
31 clean:
32         rm -f $(NAME) $(OBJS) scanner.c parser.{h,c,output} oxout.{y,l,h} cscope.out tags
33
34 1test: 2test
35
36 2test:
37         /usr/ftp/pub/ublu/test/$(NAME)/test 2>&1