OBJS = scanner.cmo parser.cmo interpret.cmo bogus.cmo
#OBJS = scanner.cmo parser.cmo printer.cmo bogus.cmo

OCAMLC = ocamlc 

bogus: $(OBJS)
	$(OCAMLC) -o bogus $(OBJS)

scanner.ml : scanner.mll
	ocamllex scanner.mll

parser.ml parser.mli : parser.mly
	ocamlyacc parser.mly

%.cmo : %.ml
	$(OCAMLC) -c $<

%.cmi : %.mli
	$(OCAMLC) -c $<

.PHONY : clean
clean :
	rm -f bogus parser.ml parser.mli scanner.ml *.cmo *.cmi

# From ocamldep
bogus.cmo: scanner.cmo parser.cmi interpret.cmo 
bogus.cmo: scanner.cmo parser.cmi 
bogus.cmx: scanner.cmx parser.cmx interpret.cmx 
bogus.cmx: scanner.cmx parser.cmx
interpret.cmo: ast.cmi 
interpret.cmx: ast.cmi 
parser.cmo: ast.cmi parser.cmi 
parser.cmx: ast.cmi parser.cmi 
scanner.cmo: parser.cmi 
scanner.cmx: parser.cmx 
parser.cmi: ast.cmi 

