CFLAGS = -O2 -g -DYYDEBUG

# lang must go first, as it creates lang.h
O = \
	lang.o\
	main.o\
	scan.o

main : $(O)
	gcc -o hexcalc $(O) -lbison -lm

scan.c : scan.l
	flex -I scan.l
	@mv lexyy.c scan.c

scan.o : scan.c
	gcc $(CFLAGS) -c scan.c

lang.c : lang.y
	bison -v -d -o langtmp.c lang.y
	mv langtmp.c lang.c
	update langtmp.h lang.h
	-del langtmp.h

lang.o : lang.c
	gcc $(CFLAGS) -c lang.c

clean :
	-@rm *.o main lang.c lang.h scan.c

# DEPENDENCIES

main.o : hc.h

scan.o : lang.h hc.h

lang.o : hc.h
