arm64: codea/abgabe_aa.0
[uebersetzerbau-ss10.git] / gesamt_arm64 / Makefile
1 SHELL := bash
2 CC := gcc
3 NAME := gesamt_arm64
4 CFLAGS := -ansi -pedantic -D_GNU_SOURCE -g
5 OBJS := scanner.o parser.o symtable.o code.o chelper.o tree.o
6
7 all: $(NAME)
8
9 $(NAME): $(OBJS)
10         @echo "  LINK    $@"
11         @$(CC) -o $@ $(OBJS)
12
13 scanner.c: oxout.l
14         @echo "  FLEX    $<"
15         @flex -o$@ $<
16
17 #dirty deps ;)
18 %.o: %.c parser.h symtable.h chelper.h tree.h
19         @echo "  CC      $<"
20         @cp $< tmp.c
21         @$(CC) -c $(CFLAGS) $< #-Wall
22         @rm tmp.c
23
24 parser.c: oxout.y chelper.h tree.h
25         @echo "  YACC    $<"
26         @yacc -t -v -d $< -o $@
27
28 parser.h: parser.c
29
30 oxout.y oxout.l: parser.y scanner.lex
31         @echo "  OX      $^"
32         @ox $^
33
34 %.c: %.bfe chelper.h tree.h
35         @echo "  IBURG   $<"
36         @bfe < $< | iburg > $@
37
38 .PHONY: clean
39 clean:
40         rm -f $(NAME) $(OBJS) scanner.c parser.{h,c,output} oxout.{y,l,h} code.c
41
42 1test:
43         ~/test/scripts/modlvatest_$(NAME).sh 2>&1
44
45 lvatest:
46         /usr/ftp/pub/ublu/test/$(NAME)/test 2>&1
47
48 bench:
49         ~/test/scripts/bench.sh $(NAME)