-# $Id: Makefile.in,v 1.1 2008-04-02 07:20:26 rjones Exp $
-
-PACKAGE = ocaml-bitmatch
-VERSION = 0.1
-
-OCAMLFIND = ocamlfind
-OCAMLMKLIB = ocamlmklib
-
-OCAMLCFLAGS = -g
-OCAMLCPACKAGES =
-OCAMLOPTFLAGS =
+# Bitmatch syntax extension.
+# Copyright (C) 2008 Red Hat Inc., Richard W.M. Jones
+#
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2 of the License, or (at your option) any later version.
+#
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+#
+# $Id: Makefile.in,v 1.4 2008-04-02 13:22:46 rjones Exp $
+
+PACKAGE = @PACKAGE_NAME@
+VERSION = @PACKAGE_VERSION@
+
+OCAMLFIND = @OCAMLFIND@
+OCAMLMKLIB = @OCAMLMKLIB@
+OCAMLDOC = @OCAMLDOC@
+INSTALL = @INSTALL@
+
+OCAMLCFLAGS = -g
+OCAMLCPACKAGES =
+OCAMLOPTFLAGS =
OCAMLOPTPACKAGES =
-EXAMPLES := $(wildcard examples/*.ml)
+OCAMLDOCFLAGS = -html -sort
+
+EXAMPLES = $(wildcard examples/*.ml)
-TESTS := $(patsubst %.ml,%,$(wildcard tests/*.ml))
+TESTS = $(patsubst %.ml,%,$(wildcard tests/*.ml))
all: pa_bitmatch.cmo bitmatch.cma bitmatch.cmxa
pa_bitmatch.cmo: pa_bitmatch.ml
- ocamlfind ocamlc -I +camlp4 camlp4lib.cma -pp camlp4of.opt -c $< -o $@
+ $(OCAMLFIND) ocamlc -I +camlp4 camlp4lib.cma \
+ -pp camlp4of.opt -c $< -o $@
bitmatch.cma: bitmatch.cmo
$(OCAMLFIND) ocamlc -a -o $@ $^
bitmatch.cmxa: bitmatch.cmx
$(OCAMLFIND) ocamlopt -a -o $@ $^
+# Tests and examples.
+
test: pa_bitmatch.cmo bitmatch.cma
@for f in $(TESTS); do \
echo Test: $$f; \
@for f in $(EXAMPLES); do \
echo Example: $$f; \
camlp4o pa_bitmatch.cmo -printer pr_o.cmo $$f; \
+ if [ $$? -ne 0 ]; then exit 1; fi; \
done
+# Clean.
+
+clean:
+ rm -f core *~ *.cmi *.cmo *.cmx *.cma *.cmxa *.a *.o
+ rm -f tests/*~ tests/*.cmi tests/*.cmo $(TESTS)
+ rm -f examples/*~
+
+# Documentation.
+
+ifneq ($(OCAMLDOC),)
+doc:
+ rm -rf html
+ mkdir html
+ $(OCAMLDOC) $(OCAMLDOCFLAGS) -d html bitmatch.mli bitmatch.ml
+endif
+
+# Install.
+
+install:
+ ocamlfind install bitmatch META *.mli *.cmx *.cma *.cmxa *.a \
+ bitmatch.cmi \
+ pa_bitmatch.cmo
+
+# Standard rules.
+
.mli.cmi:
$(OCAMLFIND) ocamlc $(OCAMLCFLAGS) $(OCAMLCPACKAGES) -c $<
.ml.cmo:
mkdir $(PACKAGE)-$(VERSION)
tar -cf - -T MANIFEST | tar -C $(PACKAGE)-$(VERSION) -xf -
$(INSTALL) -m 0755 configure $(PACKAGE)-$(VERSION)/
+ $(INSTALL) -m 0644 config.h.in $(PACKAGE)-$(VERSION)/
tar zcf $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
rm -rf $(PACKAGE)-$(VERSION)
ls -l $(PACKAGE)-$(VERSION).tar.gz