]> matita.cs.unibo.it Git - helm.git/blob - helm/gTopLevel/Makefile
0b936260ce3ef7a2a3e95c172bead797cc91811a
[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
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 gTopLevel.ml
18
19 TOPLEVELOBJS = xml2Gdome.cmo proofEngineReduction.cmo proofEngine.cmo \
20                cic2Xml.cmo cic2acic.cmo logicalOperations.cmo sequentPp.cmo \
21                gTopLevel.cmo
22
23 depend:
24         $(OCAMLDEP) $(DEPOBJS) > .depend
25
26 gTopLevel: $(TOPLEVELOBJS) $(LIBRARIES)
27         $(OCAMLC) -linkpkg -o gTopLevel $(TOPLEVELOBJS)
28
29 gTopLevel.opt: $(TOPLEVELOBJS:.cmo=.cmx) $(LIBRARIES_OPT)
30         $(OCAMLOPT) -linkpkg -o gTopLevel.opt $(TOPLEVELOBJS:.cmo=.cmx)
31
32 .SUFFIXES: .ml .mli .cmo .cmi .cmx
33 .ml.cmo: $(LIBRARIES)
34         $(OCAMLC) -c $<
35 .mli.cmi: $(LIBRARIES)
36         $(OCAMLC) -c $<
37 .ml.cmx: $(LIBRARIES_OPT)
38         $(OCAMLOPT) -c $<
39
40 clean:
41         rm -f *.cm[iox] *.o gTopLevel gTopLevel.opt
42
43 install:
44         cp gTopLevel gTopLevel.opt $(BIN_DIR)
45
46 uninstall:
47         rm -f $(BIN_DIR)/gTopLevel $(BIN_DIR)/gTopLevel.opt
48
49 .PHONY: install uninstall clean
50
51 include .depend