1 # This Makefile must be included by another one defining:
6 # $IMPLEMENTATION_FILES
7 # $EXTRA_OBJECTS_TO_INSTALL
8 # and put in a directory where there is a .depend file.
10 OCAMLFIND_DEST_DIR = @OCAMLFIND_DEST_DIR@
12 OCAMLOPTIONS = -package "$(REQUIRES)" -predicates "$(PREDICATES)"
13 OCAMLC = ocamlfind ocamlc $(OCAMLOPTIONS)
14 OCAMLOPT = ocamlfind ocamlopt $(OCAMLOPTIONS)
17 ARCHIVE = $(PACKAGE).cma
18 ARCHIVE_OPT = $(PACKAGE).cmxa
19 OBJECTS_TO_INSTALL = $(ARCHIVE) $(ARCHIVE_OPT) $(ARCHIVE_OPT:%.cmxa=%.a) \
20 $(INTERFACE_FILES) $(INTERFACE_FILES:%.mli=%.cmi) \
21 $(EXTRA_OBJECTS_TO_INSTALL)
23 $(ARCHIVE): $(IMPLEMENTATION_FILES:%.ml=%.cmo)
26 $(ARCHIVE_OPT): $(IMPLEMENTATION_FILES:%.ml=%.cmx)
27 $(OCAMLOPT) -a -o $@ $^
33 $(OCAMLDEP) $(INTERFACE_FILES) $(IMPLEMENTATION_FILES) > .depend
35 .SUFFIXES: .ml .mli .cmo .cmi .cmx
44 rm -f *.cm[ioax] *.cmxa *.o *.a
47 mkdir $(OCAMLFIND_DEST_DIR)/$(PACKAGE)
48 cp $(OBJECTS_TO_INSTALL) $(OCAMLFIND_DEST_DIR)/$(PACKAGE)
51 cd $(OCAMLFIND_DEST_DIR)/$(PACKAGE) && rm -f $(OBJECTS_TO_INSTALL)
52 rmdir $(OCAMLFIND_DEST_DIR)/$(PACKAGE)
54 .PHONY: all opt depend install uninstall clean