TARFILES = Makefile scanner.mll parser.mly ast.mli calc.ml

OBJS = parser.cmo scanner.cmo semt.cmo builtin.cmo codegen.cmo sconv.cmo main.cmo

dampl : $(OBJS)
	ocamlc -o dampl $(OBJS)

scanner.ml : scanner.mll
	ocamllex scanner.mll

parser.ml parser.mli : parser.mly
	ocamlyacc -v parser.mly

%.cmo : %.ml
	ocamlc -c $<

%.cmi : %.mli
	ocamlc -c $<


.PHONY : clean
clean :
	rm -f dampl main tokenizer parser.ml parser.mli scanner.ml *.cmo *.cmi

.PHONY : all
all : clean dampl

# Generated by ocamldep *.ml *.mli
dampl.cmo: scanner.cmo semant.cmo parser.cmi sconv.cmo codegen.cmo ast.cmo semt.cmo
dampl.cmx: scanner.cmx semant.cmx parser.cmx sconv.cmx codegen cmx ast.cmo semt.cmx
codegen.cmo: semt.cmo ast.cmo
codegen.cmx: semt.cmx ast.cmx
builtin.cmo: semt.cmo ast.cmo
builtin.cmx: semt.cmx ast.cmx
sconv.cmo: semt.cmo ast.cmo
sconv.cmx: semt.cmx ast.cmx
parser.cmo: ast.cmo parser.cmi 
parser.cmx: ast.cmo parser.cmi 
scanner.cmo: parser.cmi 
scanner.cmx: parser.cmx 
parser.cmi: ast.cmo 
