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 \
4 helm-mathql_interpreter
5 PREDICATES = "gnome,init"
6 OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)" -pp camlp4o
7 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
8 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
9 OCAMLDEP = ocamldep -pp camlp4o
11 LIBRARIES = $(shell ocamlfind query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(REQUIRES))
12 LIBRARIES_OPT = $(shell ocamlfind query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(REQUIRES))
17 DEPOBJS = xml2Gdome.ml xml2Gdome.mli proofEngineTypes.ml proofEngineHelpers.ml \
18 proofEngineReduction.ml proofEngineReduction.mli \
19 proofEngineStructuralRules.ml proofEngineStructuralRules.mli \
20 tacticals.ml tacticals.mli reductionTactics.ml reductionTactics.mli \
21 primitiveTactics.ml primitiveTactics.mli variousTactics.ml \
22 variousTactics.mli introductionTactics.ml introductionTactics.mli \
23 eliminationTactics.ml eliminationTactics.mli negationTactics.ml \
24 negationTactics.mli equalityTactics.ml equalityTactics.mli ring.ml \
25 ring.mli fourier.ml fourierR.ml fourierR.mli proofEngine.ml \
26 proofEngine.mli doubleTypeInference.ml doubleTypeInference.mli \
27 cic2acic.ml cic2acic.mli cic2Xml.ml cic2Xml.mli logicalOperations.ml \
28 logicalOperations.mli sequentPp.ml sequentPp.mli mQueryGenerator.mli \
29 mQueryLevels.ml mQueryLevels2.mli mQueryLevels2.ml mQueryGenerator.ml\
30 disambiguate.ml disambiguate.mli gTopLevel.ml
32 TOPLEVELOBJS = xml2Gdome.cmo proofEngineTypes.cmo proofEngineHelpers.cmo \
33 proofEngineReduction.cmo proofEngineStructuralRules.cmo \
34 tacticals.cmo reductionTactics.cmo primitiveTactics.cmo \
35 variousTactics.cmo introductionTactics.cmo \
36 eliminationTactics.cmo negationTactics.cmo equalityTactics.cmo \
37 ring.cmo fourier.cmo fourierR.cmo proofEngine.cmo \
38 doubleTypeInference.cmo cic2acic.cmo cic2Xml.cmo \
39 logicalOperations.cmo sequentPp.cmo mQueryLevels.cmo \
40 mQueryLevels2.cmo mQueryGenerator.cmo disambiguate.cmo \
44 $(OCAMLDEP) $(DEPOBJS) > .depend
46 gTopLevel: $(TOPLEVELOBJS) $(LIBRARIES)
47 $(OCAMLC) -linkpkg -o gTopLevel $(TOPLEVELOBJS)
49 gTopLevel.opt: $(TOPLEVELOBJS:.cmo=.cmx) $(LIBRARIES_OPT)
50 $(OCAMLOPT) -linkpkg -o gTopLevel.opt $(TOPLEVELOBJS:.cmo=.cmx)
52 .SUFFIXES: .ml .mli .cmo .cmi .cmx
55 .mli.cmi: $(LIBRARIES)
57 .ml.cmx: $(LIBRARIES_OPT)
61 rm -f *.cm[iox] *.o gTopLevel gTopLevel.opt
64 cp gTopLevel gTopLevel.opt $(BIN_DIR)
67 rm -f $(BIN_DIR)/gTopLevel $(BIN_DIR)/gTopLevel.opt
69 .PHONY: install uninstall clean