]> matita.cs.unibo.it Git - helm.git/blob - helm/ocaml/Makefile.common
84a252e940e37c0039b91aa21ef0c92104271770
[helm.git] / helm / ocaml / Makefile.common
1 # This Makefile must be included by another one defining:
2 #  $REQUIRES
3 #  $PREDICATES
4 #  $DEPOBJS
5 #  $OBJECTS
6 #  $PACKAGE
7 # and put in a directory where there is a .depend file.
8
9 BIN_DIR = /usr/local/bin
10 OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)"
11 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
12 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
13 OCAMLDEP = ocamldep
14
15 ARCHIVE = $(PACKAGE).cma
16 ARCHIVE_OPT = $(PACKAGE).cmxa
17
18
19 $(ARCHIVE): $(OBJECTS)
20         $(OCAMLC) -a -o $@ $^
21
22 $(ARCHIVE_OPT): $(OBJECTS:.cmo=.cmx)
23         $(OCAMLOPT) -a -o $@ $^
24
25 all: $(ARCHIVE)
26 opt: $(ARCHIVE_OPT)
27
28 depend:
29         $(OCAMLDEP) $(DEPOBJS) > .depend
30
31 .SUFFIXES: .ml .mli .cmo .cmi .cmx
32 .ml.cmo:
33         $(OCAMLC) -c $<
34 .mli.cmi:
35         $(OCAMLC) -c $<
36 .ml.cmx:
37         $(OCAMLOPT) -c $<
38
39 clean:
40         rm -f *.cm[ioax] *.cmxa *.o
41
42 install:
43         #cp
44
45 uninstall:
46         #rm -f
47
48 .PHONY: all opt depend install uninstall clean
49
50 include .depend