]> matita.cs.unibo.it Git - helm.git/blob - helm/gTopLevel/Makefile
a8f9d6b06709222bac1ebb70eeb97045b5250e65
[helm.git] / helm / gTopLevel / Makefile
1 BIN_DIR = /usr/local/bin
2 REQUIRES = lablgtkmathview helm-cic_textual_parser helm-cic_proof_checking \
3            helm-xml gdome2-xslt helm-cic_unification helm-mathql_interpreter
4 PREDICATES =
5 OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)" -pp camlp4o
6 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
7 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
8 OCAMLDEP = ocamldep -pp camlp4o
9
10 LIBRARIES = $(shell ocamlfind query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(REQUIRES))
11 LIBRARIES_OPT = $(shell ocamlfind query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(REQUIRES))
12
13 all: gTopLevel
14 opt: gTopLevel.opt
15
16 DEPOBJS = xml2Gdome.ml proofEngineReduction.ml proofEngine.ml cic2Xml.ml \
17           cic2acic.ml logicalOperations.ml sequentPp.ml mquery.mli mquery.ml \
18           gTopLevel.ml
19
20 TOPLEVELOBJS = xml2Gdome.cmo proofEngineReduction.cmo proofEngine.cmo \
21                cic2Xml.cmo cic2acic.cmo logicalOperations.cmo sequentPp.cmo \
22                mquery.cmo gTopLevel.cmo
23
24 depend:
25         $(OCAMLDEP) $(DEPOBJS) > .depend
26
27 gTopLevel: $(TOPLEVELOBJS) $(LIBRARIES)
28         $(OCAMLC) -linkpkg -o gTopLevel $(TOPLEVELOBJS)
29
30 gTopLevel.opt: $(TOPLEVELOBJS:.cmo=.cmx) $(LIBRARIES_OPT)
31         $(OCAMLOPT) -linkpkg -o gTopLevel.opt $(TOPLEVELOBJS:.cmo=.cmx)
32
33 .SUFFIXES: .ml .mli .cmo .cmi .cmx
34 .ml.cmo: $(LIBRARIES)
35         $(OCAMLC) -c $<
36 .mli.cmi: $(LIBRARIES)
37         $(OCAMLC) -c $<
38 .ml.cmx: $(LIBRARIES_OPT)
39         $(OCAMLOPT) -c $<
40
41 clean:
42         rm -f *.cm[iox] *.o gTopLevel gTopLevel.opt
43
44 install:
45         cp gTopLevel gTopLevel.opt $(BIN_DIR)
46
47 uninstall:
48         rm -f $(BIN_DIR)/gTopLevel $(BIN_DIR)/gTopLevel.opt
49
50 .PHONY: install uninstall clean
51
52 include .depend