1 BIN_DIR = /usr/local/bin
2 REQUIRES = helm-cic_proof_checking
4 OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)"
5 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS) -g
6 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
9 LIBRARIES = $(shell ocamlfind query -recursive -predicates "byte $(PREDICATES)" -format "%d/%a" $(REQUIRES))
10 LIBRARIES_OPT = $(shell ocamlfind query -recursive -predicates "native $(PREDICATES)" -format "%d/%a" $(REQUIRES))
12 all: $(PROOFCHECKEROBJS) proofChecker
13 opt: $(PROOFCHECKEROBJS:.cmo=.cmx) proofChecker.opt
15 DEPOBJS = proofChecker.ml
17 PROOFCHECKEROBJS = proofChecker.cmo
20 $(OCAMLDEP) $(DEPOBJS) > .depend
22 proofChecker: $(PROOFCHECKEROBJS) $(LIBRARIES)
23 $(OCAMLC) -linkpkg -o proofChecker $(PROOFCHECKEROBJS)
25 proofChecker.opt: $(PROOFCHECKEROBJS:.cmo=.cmx) $(LIBRARIES_OPT)
26 $(OCAMLOPT) -linkpkg -o proofChecker.opt $(PROOFCHECKEROBJS:.cmo=.cmx)
28 .SUFFIXES: .ml .mli .cmo .cmi .cmx
31 .mli.cmi: $(LIBRARIES)
33 .ml.cmx: $(LIBRARIES_OPT)
37 rm -f *.cm[iox] *.o proofChecker proofChecker.opt
40 cp proofChecker proofChecker.opt $(BIN_DIR)
43 rm -f $(BIN_DIR)/proofChecker $(BIN_DIR)/proofChecker.opt
45 .PHONY: install uninstall clean