]> matita.cs.unibo.it Git - helm.git/blobdiff - helm/ocaml/paramodulation/Makefile
ocaml 3.09 transition
[helm.git] / helm / ocaml / paramodulation / Makefile
index fba57a59333f63bdb155667706e325f59eaea9b9..7a3dbf626cfd1ba945f8add6e28c1428998653da 100644 (file)
-BIN_DIR = /usr/local/bin
+PACKAGE = paramodulation
 
-TEST_REQUIRES = \
+REQUIRES = \
        helm-registry \
-       helm-tactics \
        helm-cic_transformations \
-       helm-cic_textual_parser2 \
-       helm-mathql_interpreter \
-       helm-mathql_generator \
-       helm-xmldiff 
-#      lablgtk2 \
-#      mathml-editor \
-#      lablgtkmathview \
-#      mysql
-
-REQUIRES = $(TEST_REQUIRES) #gdome2-xslt helm-hbugs lablgtk2.init lablgtk2.glade
-
-OCAMLOPTIONS = \
-       -package "$(REQUIRES)" -predicates "$(PREDICATES)" -pp camlp4o -thread
-OCAMLFIND = ocamlfind
-OCAMLDEBUGOPTIONS = -g
-OCAMLC = $(OCAMLFIND) ocamlc $(OCAMLDEBUGOPTIONS) $(OCAMLOPTIONS)
-OCAMLOPT = $(OCAMLFIND) ocamlopt $(OCAMLOPTIONS)
-OCAMLDEP = $(OCAMLFIND) ocamldep -pp camlp4o
-OCAMLDEBUG = wowcamldebug
-
-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))
-TEST_LIBRARIES = $(shell $(OCAMLFIND) query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(TEST_REQUIRES))
-TEST_LIBRARIES_OPT = $(shell $(OCAMLFIND) query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(TEST_REQUIRES))
-
-all: saturation
-opt: saturation.opt
-
-start:
-       $(MAKE) -C ../hbugs/ start
-stop:
-       $(MAKE) -C ../hbugs/ stop
+       helm-tactics \
+       helm-cic_disambiguation \
+       mysql
 
 INTERFACE_FILES = \
        utils.mli \
-       inference.mli
+       inference.mli 
 
-DEPOBJS = \
-       $(INTERFACE_FILES) $(INTERFACE_FILES:%.mli=%.ml) \
-       saturation.ml
+IMPLEMENTATION_FILES = $(INTERFACE_FILES:%.mli=%.ml) \
+       trie.ml \
+       path_indexing.ml \
+       discrimination_tree.ml \
+       indexing.ml \
+       saturation.ml 
 
-TOPLEVELOBJS = $(INTERFACE_FILES:%.mli=%.cmo) saturation.cmo
-# TESTOBJS = \
-#      disambiguatingParser.cmo \
-#      batchParser.cmo
-# REGTESTOBJS = $(TESTOBJS) regtest.cmo
-# TESTLIBOBJS = $(TESTOBJS) testlibrary.cmo
+#       saturate_main.ml
+#      test_indexing.ml 
 
-$(INTERFACE_FILES:%.mli=%.cmo): $(LIBRARIES)
-$(INTERFACE_FILES:%.mli=%.cmx): $(LIBRARIES_OPT)
 
-depend:
-       $(OCAMLDEP) $(DEPOBJS) > .depend
+include ../Makefile.common
 
-saturation: $(TOPLEVELOBJS) $(LIBRARIES)
-       $(OCAMLC) -thread -linkpkg -o $@ $(TOPLEVELOBJS)
-saturation.opt: $(TOPLEVELOBJS:.cmo=.cmx) $(LIBRARIES_OPT)
-       $(OCAMLOPT) -thread -linkpkg -o $@ $(TOPLEVELOBJS:.cmo=.cmx)
 
-.SUFFIXES: .ml .mli .cmo .cmi .cmx
-.ml.cmo:
-       $(OCAMLC) -c $<
-.mli.cmi:
-       $(OCAMLC) -c $<
-.ml.cmx:
-       $(OCAMLOPT) -c $<
+paramodulation.cmo: $(IMPLEMENTATION_FILES:%.ml=%.cmo)
+       $(OCAMLC) -pack -o $@ $(IMPLEMENTATION_FILES:%.ml=%.cmo)
 
-$(TOPLEVELOBJS): $(LIBRARIES)
-$(TOPLEVELOBJS:.cmo=.cmx)): $(LIBRARIES_OPT)
+paramodulation.cmx: $(IMPLEMENTATION_FILES:%.ml=%.cmx)
+       $(OCAMLOPT) -pack -o $@ $(IMPLEMENTATION_FILES:%.ml=%.cmx)
 
-clean:
-       rm -f *.cm[iox] *.o gTopLevel{,.opt} regtest{,.opt} testlibrary{,.opt}
-install:
-       cp gTopLevel gTopLevel.opt $(BIN_DIR)
-uninstall:
-       rm -f $(BIN_DIR)/gTopLevel $(BIN_DIR)/gTopLevel.opt
 
-.PHONY: install uninstall clean test
+$(ARCHIVE): paramodulation.cmo $(LIBRARIES)
+       $(OCAMLC) $(OCAMLARCHIVEOPTIONS) -a -o $@ \
+               paramodulation.cmo
 
-INTESTS := $(wildcard tests/*.cic)
-OUTTESTS := $(patsubst %, %.test, $(INTESTS))
-gentest: $(OUTTESTS)
-cleantest:
-       rm -f $(OUTTESTS)
-tests/%.cic.test: tests/%.cic regtest
-       time ./regtest -gen $<
-test: regtest
-       ./regtest $(INTESTS) 2> /dev/null
-test.opt: regtest.opt
-       ./regtest.opt $(INTESTS) 2> /dev/null
-envtest: regtest
-       ./regtest -dump $(INTESTS) 2> /dev/null
-envtest.opt: regtest.opt
-       ./regtest.opt -dump $(INTESTS) 2> /dev/null
-librarytest: testlibrary
-       ./testlibrary -vars -varsprefix cic:/Coq index.txt 2>/dev/null >LOG
-librarytest.opt: testlibrary.opt
-       ./testlibrary.opt -vars -varsprefix cic:/Coq index.txt 2>/dev/null >LOG
-typecheck_uri: typecheck_uri.ml
-       $(OCAMLFIND) ocamlc -thread -package helm-cic_proof_checking -linkpkg -o $@ $<
-typecheck_uri.opt: typecheck_uri.ml
-       $(OCAMLFIND) opt -thread -package helm-cic_proof_checking -linkpkg -o $@ $<
+$(ARCHIVE_OPT): paramodulation.cmx $(LIBRARIES_OPT)
+       $(OCAMLOPT) $(OCAMLARCHIVEOPTIONS) -a -o $@ \
+               paramodulation.cmx
 
-MAIN = ./gTopLevel
-ARGS =
-debug:
-       echo "load_printer \"threads.cma\"" > .debug_script
-       $(OCAMLFIND) query -recursive -predicates "mt,byte" -a-format \
-               helm-cic_unification | \
-               sed 's/\(.*\)/load_printer "\1"/' \
-               >> .debug_script
-       echo "install_printer CicMetaSubst.fppsubst" >> .debug_script
-       echo "install_printer CicMetaSubst.fppterm" >> .debug_script
-       echo "install_printer CicMetaSubst.fppmetasenv" >> .debug_script
-       ledit $(OCAMLDEBUG) \
-               -source .debug_script \
-    -I +threads \
-               $(shell $(OCAMLFIND) query -recursive -i-format $(REQUIRES)) \
-               $(MAIN) $(ARGS)
+PARAMOD_OBJS = $(IMPLEMENTATION_FILES:%.ml=%.cmo) \
+       saturate_main.cmo
+PARAMOD_OBJS_OPT = $(IMPLEMENTATION_FILES:%.ml=%.cmx) \
+       saturate_main.cmx
 
-ifneq ($(MAKECMDGOALS), depend)
-   include .depend   
-endif
+saturate: $(PARAMOD_OBJS) $(LIBRARIES)
+       $(OCAMLC) -thread -linkpkg -o $@ $(PARAMOD_OBJS)
 
+saturate.opt: $(PARAMOD_OBJS_OPT) $(LIBRARIES)
+       $(OCAMLOPT) -thread -linkpkg -o $@ $(PARAMOD_OBJS_OPT)