]> matita.cs.unibo.it Git - helm.git/blob - Makefile
b0836f5b06a147f98e2d70a91f0f681d6f026323
[helm.git] / Makefile
1 REQUIRES = http dbi.mysql helm-cic_textual_parser2 helm-logger helm-tactics
2 OCAMLOPTIONS = -thread -package "$(REQUIRES)" -pp camlp4o
3 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
4 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
5 OCAMLDEP = ocamlfind ocamldep -package "$(REQUIRES)" -pp camlp4o
6
7 MODULES = mooglePp
8 SRCS = $(patsubst %,%.ml,$(MODULES)) $(patsubst %,%.mli,$(MODULES)) \
9        searchEngine.ml
10 CMOS = $(patsubst %,%.cmo,$(MODULES))
11 CMXS = $(patsubst %,%.cmx,$(MODULES))
12
13 all: byte
14 world: byte opt
15 byte: searchEngine
16 opt: searchEngine.opt
17
18 %.cmi: %.mli
19         $(OCAMLC) -c $<
20 %.cmo %.cmi: %.ml
21         $(OCAMLC) -c $<
22 %.cmx: %.ml
23         $(OCAMLOPT) -c $<
24
25 searchEngine: $(CMOS) searchEngine.ml
26         $(OCAMLC) -linkpkg -o $@ $^
27 searchEngine.opt: $(CMXS) searchEngine.ml
28         $(OCAMLOPT) -linkpkg -o $@ $^
29
30 clean:
31         rm -f *.cm[aiox] *.o searchEngine{,.opt}
32
33 .PHONY: depend
34 depend:
35         $(OCAMLDEP) $(SRCS) > .depend
36
37 .PHONY: all opt clean
38
39 include .depend
40