1 # $Id: Makefile,v 1.8 2006-06-06 16:01:52 rich Exp $
12 OCAMLOPTINCS := $(OCAMLCINCS)
17 XOBJS := $(OBJS:.cmo=.cmx)
19 OCAMLDOCFLAGS := -html -stars -sort $(OCAMLCINCS)
21 all: csv.cma csv.cmxa example csvtool
24 $(OCAMLC) $(OCAMLCFLAGS) -a -o $@ $^
27 $(OCAMLOPT) $(OCAMLOPTFLAGS) -a -o $@ $^
29 example: csv.cma example.ml
36 csvtool: csv.cmxa csvtool.ml
39 # Common rules for building OCaml objects.
42 $(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
44 $(OCAMLC) $(OCAMLCFLAGS) $(OCAMLCINCS) -c $<
46 $(OCAMLOPT) $(OCAMLOPTFLAGS) $(OCAMLOPTINCS) -c $<
48 .SUFFIXES: .cmo .cmi .cmx .ml .mli
53 rm -f *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *~ core csvtool example
59 .depend: $(wildcard *.mli) $(wildcard *.ml)
63 ifeq ($(wildcard .depend),.depend)
67 # Build a distribution.
70 $(MAKE) check-manifest
71 rm -rf $(PACKAGE)-$(VERSION)
72 mkdir $(PACKAGE)-$(VERSION)
73 tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
74 tar zcf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
75 rm -rf $(PACKAGE)-$(VERSION)
76 ls -l $(PACKAGE)-$(VERSION).tar.gz
79 @for d in `find -type d -name CVS | grep -v '^\./debian/'`; \
82 awk -F/ '$$1 != "D" {print $$2}' $$d/Entries | \
83 sed -e "s|^|$$b|" -e "s|^\./||"; \
84 done | sort > .check-manifest; \
85 sort MANIFEST > .orig-manifest; \
86 diff -u .orig-manifest .check-manifest; rv=$$?; \
87 rm -f .orig-manifest .check-manifest; \
90 # Developer documentation (in html/ subdirectory).
95 -ocamlfind ocamldoc $(OCAMLDOCFLAGS) -d html csv.ml{i,}
97 .PHONY: depend dist check-manifest doc