#	Makefile for the parsing  module
#	of the synthesis system

CC = gcc
CFLAGS = -g  -Wall
LDFLAGS = -lm -g
OBJECTS = y.tab.o lex.yy.o main.o 

parse: $(OBJECTS) Makefile
	$(CC) $(CFLAGS) $(LDFLAGS) $(OBJECTS) -o parse

$(OBJECTS) : global.h

lex.yy.c:lexer.l y.tab.h
	lex lexer.l

y.tab.o: y.tab.c global.h y.tab.h
	$(CC) -c $(CFLAGS) y.tab.c
	
y.tab.h y.tab.c : parse.y symbol.c 
	yacc -dtv parse.y

clean:
	rm -f *o
	rm -f parse core
	rm -f y.output y.tab.h y.tab.c
	rm -f lex.yy.c
