H=@ REQUIRES = unix str helm-grafite_parser MLS = types.ml v8Parser.ml v8Lexer.ml grafite.ml engine.ml top.ml MLIS = v8Parser.mli grafite.mli engine.mli CLEAN = v8Parser.ml v8Parser.mli v8Lexer.ml PACKAGES = CoRN CMOS = $(MLS:%.ml=%.cmo) CMXS = $(MLS:%.ml=%.cmx) CMIS = $(MLIS:%.mli=%.cmi) EXTRAS = OCAMLC = $(OCAMLFIND) ocamlc -thread -package "$(REQUIRES)" -linkpkg OCAMLOPT = $(OCAMLFIND) ocamlopt -thread -package "$(REQUIRES)" -linkpkg OCAMLDEP = $(OCAMLFIND) ocamldep OCAMLYACC = ocamlyacc OCAMLLEX = ocamllex all: transcript .depend @echo -n opt: transcript.opt $(EXTRAS) .depend #echo -n transcript: $(CMIS) $(CMOS) $(EXTRAS) @echo " OCAMLC $(CMOS)" $(H)$(OCAMLC) -o $@ $(CMOS) transcript.opt: $(CMIS) $(CMXS) $(EXTRAS) @echo " OCAMLOPT $(CMXS)" $(H)$(OCAMLOPT) -o $@ $(CMXS) clean: $(H)rm -f *.cm[iox] *.a *.o *.output $(H)rm -f transcript transcript.opt $(CLEAN) .depend: $(MLIS) $(MLS) $(EXTRAS) @echo " OCAMLDEP $(MLIS) $(MLS)" $(H)$(OCAMLDEP) $(MLIS) $(MLS) > .depend test: transcript transcript.conf.xml $(PACKAGES:%=%.conf.xml) @echo " TRANSCRIPT $(PACKAGES)" $(H)$< $(PACKAGES) test.opt: transcript.opt transcript.conf.xml $(PACKAGES:%=%.conf.xml) @echo " TRANSCRIPT.OPT $(PACKAGES)" $(H)$< $(PACKAGES) export: clean $(H)rm -f *~ @echo " TAR transcript" $(H)cd .. && tar --exclude=transcript/.svn -czf transcript.tgz transcript depend: .depend %.cmi: %.mli $(EXTRAS) @echo " OCAMLC $<" $(H)$(OCAMLC) -c $< %.cmo %.cmi: %.ml $(EXTRAS) @echo " OCAMLC $<" $(H)$(OCAMLC) -c $< %.cmx: %.ml $(EXTRAS) @echo " OCAMLOPT $<" $(H)$(OCAMLOPT) -c $< %.ml %.mli: %.mly $(EXTRAS) @echo " OCAMLYACC $<" $(H)$(OCAMLYACC) -v $< %.ml: %.mll $(EXTRAS) @echo " OCAMLLEX $<" $(H)$(OCAMLLEX) $< include ../../../Makefile.defs ifeq ($(MAKECMDGOALS), all) include .depend endif ifeq ($(MAKECMDGOALS),) include .depend endif