]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/hxp/Makefile
- MySQL mode added to the interpreter
[helm.git] / helm / hxp / Makefile
diff --git a/helm/hxp/Makefile b/helm/hxp/Makefile
new file mode 100644 (file)
index 0000000..4c41e65
--- /dev/null
@@ -0,0 +1,66 @@
+BIN_DIR = /usr/local/bin
+REQUIRES = zip
+# unix helm-cic_textual_parser \
+# helm-mathql helm-mathql_interpreter helm-mathql_generator
+PREDICATES =
+OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)"
+OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
+OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
+OCAMLDEP = ocamldep
+OCAMLYACC = ocamlyacc
+OCAMLLEX = ocamllex
+
+LIBRARIES = $(shell ocamlfind query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(REQUIRES))
+LIBRARIES_OPT = $(shell ocamlfind query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(REQUIRES))
+
+HXPTOP = hxpTop.ml
+
+DEPOBJS = $(HXPTOP)
+AUXOBJS = hxpTypes.ml hxpParser.ml hxpParser.mli hxpLexer.ml hxpXML.ml 
+
+all: hxp
+opt: hxp.opt
+
+depend: $(AUXOBJS)
+       $(OCAMLDEP) $(DEPOBJS) $(AUXOBJS) > .depend
+
+hxp: hxpParser.cmi $(AUXOBJS:.ml=.cmo) $(HXPTOP:.ml=.cmo) $(LIBRARIES)
+       $(OCAMLC) -linkpkg -o hxp $(AUXOBJS:.ml=.cmo) $(HXPTOP:.ml=.cmo)
+
+hxp.opt: $(AUXOBJS:.ml=.cmx) $(HXPTOP:.ml=.cmx) $(LIBRARIES_OPT)
+       $(OCAMLOPT) -linkpkg -o hxp.opt $(AUXOBJS:.ml=.cmx) $(HXPTOP:.ml=.cmx)
+
+.SUFFIXES: .ml .mli .cmo .cmi .cmx .mly .mll
+.ml.cmo: $(LIBRARIES)
+       $(OCAMLC) -c $<
+.mli.cmi: $(LIBRARIES)
+       $(OCAMLC) -c $<
+.ml.cmx: $(LIBRARIES_OPT)
+       $(OCAMLOPT) -c $<
+.mly.ml: 
+       $(OCAMLYACC) $<
+.mly.mli:
+       $(OCAMLYACC) $<
+.mll.ml:
+       $(OCAMLLEX) $<
+
+$(DEPOBJS:%.ml=%.cmo): $(LIBRARIES)
+$(DEPOBJS:%.ml=%.cmx): $(LIBRARIES_OPT)
+
+clean:
+       rm -f *.cm[iox] *.o hxp hxp.opt \
+        hxpParser.ml hxpParser.mli hxpLexer.ml
+
+install:
+       cp hxp hxp.opt $(BIN_DIR)
+
+uninstall:
+       cd $(BIN_DIR)
+       rm -f hxp hxp.opt
+
+.PHONY: install uninstall clean
+
+ifneq ($(MAKECMDGOALS), depend)
+   include .depend   
+endif
+