1 # Interface to Perl from OCaml.
2 # Copyright (C) 2003 Merjis Ltd.
3 # $Id: Makefile,v 1.5 2003-10-12 12:14:06 rich Exp $
5 include Makefile.config
9 OCAMLMKLIB := ocamlmklib
12 OCAMLCFLAGS := -w s -g
16 CFLAGS := -Wall -Wno-unused -I$(PERLINCDIR)
18 all: perl.cma perl.cmxa examples/test
20 perl.cma: perl.cmo perl_c.o
21 $(OCAMLMKLIB) -o perl $^ -lperl
23 perl.cmxa: perl.cmx perl_c.o
24 $(OCAMLMKLIB) -o perl $^ -lperl
26 examples/test: examples/test.ml
27 $(OCAMLC) $(OCAMLCFLAGS) perl.cma $^ -o $@
30 $(OCAMLC) $(OCAMLCFLAGS) -c $<
33 $(OCAMLC) $(OCAMLCFLAGS) -c $<
36 $(OCAMLOPT) $(OCAMLOPTFLAGS) -c $<
38 .SUFFIXES: .mli .ml .cmi .cmo .cmx
42 JUNKFILES = core *~ *.bak *.cmi *.cmo *.cmx *.cma *.cmxa *.o *.a *.so
46 for d in . examples; do (cd $$d; rm -f $(JUNKFILES)); done
50 ifeq ($(wildcard .depend),.depend)
56 .depend: $(wildcard *.ml) $(wildcard *.mli)
57 $(OCAMLDEP) *.mli *.ml examples/*.ml > .depend
62 install -c -m 0755 -d $(OCAMLLIBDIR)
63 install -c -m 0755 -d $(OCAMLLIBDIR)/stublibs
64 install -c -m 0644 perl.cmi perl.mli perl.cma perl.cmxa $(OCAMLLIBDIR)
65 install -c -m 0644 perl.a libperl.a $(OCAMLLIBDIR)
66 install -c -m 0644 dllperl.so $(OCAMLLIBDIR)/stublibs
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`; \
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; \
87 rm -f .orig-manifest .check-manifest
89 .PHONY: depend dist check-manifest