]> matita.cs.unibo.it Git - helm.git/blob - helm/ocaml/paramodulation/Makefile
path indexing integration
[helm.git] / helm / ocaml / paramodulation / Makefile
1 BIN_DIR = /usr/local/bin
2
3 TEST_REQUIRES = \
4         helm-registry \
5         helm-tactics \
6         helm-cic_transformations \
7         helm-cic_textual_parser2 
8
9 REQUIRES = $(TEST_REQUIRES)
10
11 OCAMLOPTIONS = \
12         -package "$(REQUIRES)" -predicates "$(PREDICATES)" #-pp camlp4o -thread
13 OCAMLFIND = ocamlfind
14 OCAMLDEBUGOPTIONS = -g
15 OCAMLC = $(OCAMLFIND) ocamlc $(OCAMLDEBUGOPTIONS) $(OCAMLOPTIONS)
16 OCAMLOPT = $(OCAMLFIND) ocamlopt $(OCAMLOPTIONS)
17 OCAMLDEP = $(OCAMLFIND) ocamldep #-pp camlp4o
18 OCAMLDEBUG = wowcamldebug
19
20 LIBRARIES = $(shell $(OCAMLFIND) query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(REQUIRES))
21 LIBRARIES_OPT = $(shell $(OCAMLFIND) query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(REQUIRES))
22 TEST_LIBRARIES = $(shell $(OCAMLFIND) query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(TEST_REQUIRES))
23 TEST_LIBRARIES_OPT = $(shell $(OCAMLFIND) query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(TEST_REQUIRES))
24
25 all: saturation
26 opt: saturation.opt
27
28 INTERFACE_FILES = \
29         utils.mli \
30         inference.mli
31
32 DEPOBJS = \
33         $(INTERFACE_FILES) $(INTERFACE_FILES:%.mli=%.ml) \
34         path_indexing.ml \
35         indexing.ml \
36         saturation.ml \
37         test_path_indexing.ml
38
39 TOPLEVELOBJS = $(INTERFACE_FILES:%.mli=%.cmo) \
40         path_indexing.cmo \
41         indexing.cmo \
42         saturation.cmo
43 TESTOBJS = $(INTERFACE_FILES:%.mli=%.cmo) \
44         path_indexing.cmo \
45         test_path_indexing.cmo
46 # REGTESTOBJS = $(TESTOBJS) regtest.cmo
47 # TESTLIBOBJS = $(TESTOBJS) testlibrary.cmo
48
49 $(INTERFACE_FILES:%.mli=%.cmo): $(LIBRARIES)
50 $(INTERFACE_FILES:%.mli=%.cmx): $(LIBRARIES_OPT)
51
52 depend:
53         $(OCAMLDEP) $(DEPOBJS) > .depend
54
55 saturation: $(TOPLEVELOBJS) $(LIBRARIES)
56         $(OCAMLC) -thread -linkpkg -o $@ $(TOPLEVELOBJS)
57 saturation.opt: $(TOPLEVELOBJS:.cmo=.cmx) $(LIBRARIES_OPT)
58         $(OCAMLOPT) -thread -linkpkg -o $@ $(TOPLEVELOBJS:.cmo=.cmx)
59
60 test_path_indexing: $(TESTOBJS) $(TEST_LIBRARIES)
61         $(OCAMLC) -linkpkg -o $@ $(TESTOBJS)
62
63 .SUFFIXES: .ml .mli .cmo .cmi .cmx
64 .ml.cmo:
65         $(OCAMLC) -c $<
66 .mli.cmi:
67         $(OCAMLC) -c $<
68 .ml.cmx:
69         $(OCAMLOPT) -c $<
70
71 $(TOPLEVELOBJS): $(LIBRARIES)
72 $(TOPLEVELOBJS:.cmo=.cmx)): $(LIBRARIES_OPT)
73
74 clean:
75         rm -f *.cm[iox] *.o saturation{,.opt} regtest{,.opt} testlibrary{,.opt}
76
77 ifneq ($(MAKECMDGOALS), depend)
78    include .depend   
79 endif
80