ugen 	: main.o gen.o lex.yy.o y.tab.o id.o tree.o yyerror.o
	cc main.o gen.o lex.yy.o y.tab.o id.o tree.o yyerror.o -o ugen

main.o 		: main.c tree.h
		cc -c main.c
gen.o		: gen.c tree.h
		cc -c gen.c
lex.yy.c	: lex.l y.tab.h
		lex lex.l
lex.yy.o 	: lex.yy.c y.tab.h
		cc -c lex.yy.c
y.tab.o		: y.tab.c tree.h
		cc -c y.tab.c 
id.o		: id.c id.h
		cc -c id.c
tree.c tree.h	: tree.u
		ugen tree.u
tree.o		: tree.c tree.h id.h
		cc -c tree.c
y.tab.h		: syntax.y
		yacc -d syntax.y
y.tab.c		: syntax.y tree.h
		yacc -d syntax.y
yyerror.o	: yyerror.c
		cc -c yyerror.c

install		:
		cp ugen ..

clean		:
		rm *.o lex.yy.c y.tab.c y.tab.h y.output tree.c tree.h

