3 INCLUDEDIR = @OCAML_INCLUDE_DIR@
4 LIBDIR = @OCAML_LIB_DIR@
6 INSTALLDIR = $(PREFIX)$(LIBDIR)/$(PACKAGE)
7 OBJECTS_C = ml_minidom.o
8 OBJECTS = minidom.cmo ominidom.cmo
9 OBJECTS_OPT = minidom.cmx ominidom.cmx
10 INST = ml_minidom.h minidom.mli minidom.cmi ominidom.mli ominidom.cmi META
11 DIST_FILES = Makefile.in configure.in configure *.ml *.mli test.xml ml_minidom.c ml_minidom.h META.in mlminidom.spec.in .depend
12 DOC_FILES = AUTHORS COPYING ChangeLog NEWS README
15 OCAMLC = ocamlfind ocamlc
16 OCAMLOPT = ocamlfind ocamlopt
19 ARCHIVE = $(PACKAGE).cma
20 ARCHIVE_C = $(PACKAGE).a
21 ARCHIVE_OPT = $(PACKAGE).cmxa
24 TMPPKGDIR = $(TMPDIR)/$(PACKAGE)
26 all: $(OBJECTS_C) $(ARCHIVE) test
28 opt: $(OBJECTS_C) $(ARCHIVE_OPT) test.opt
31 rm -rf $(PACKAGE)-$(VERSION)
32 mkdir $(PACKAGE)-$(VERSION)
33 cp $(DIST_FILES) $(DOC_FILES) $(PACKAGE)-$(VERSION)
34 tar cvfz $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
35 rm -rf $(PACKAGE)-$(VERSION)
37 ml_minidom.o: ml_minidom.c
38 gcc -c -I$(INCLUDEDIR) `glib-config --cflags` `minidom-config --cflags` $<
40 .SUFFIXES: .cmo .cmi .cmx .ml .mli
43 $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
46 $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
49 $(OCAMLOPT) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
53 $(OCAMLDEP) *.ml *.mli >.depend
56 $(ARCHIVE): $(OBJECTS)
57 $(OCAMLC) -a -custom -package "$(REQUIRES)" -linkpkg \
58 -predicates "$(PREDICATES)" -o $@ $< \
59 -cclib "`glib-config --libs` `minidom-config --libs`"
61 $(ARCHIVE_OPT): $(OBJECTS_OPT)
62 $(OCAMLOPT) -a -package "$(REQUIRES)" -linkpkg \
63 -predicates "$(PREDICATES)" -o $@ $< \
64 -cclib "`glib-config --libs` `minidom-config --libs`"
66 test: test.ml $(OBJECTS_C) $(ARCHIVE)
68 cp $(OBJECTS_C) $(ARCHIVE) $(INST) $(TMPPKGDIR)
70 cd $(TMPDIR) ; export OCAMLPATH=. ; \
71 $(OCAMLC) -package "$(PACKAGE)" -linkpkg -predicates "" -o $@ test.ml
75 test.opt: test.ml $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT)
77 cp $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT) $(INST) $(TMPPKGDIR)
79 cd $(TMPDIR) ; export OCAMLPATH=. ; \
80 $(OCAMLOPT) -package "$(PACKAGE)" -linkpkg -predicates "" -o $@ test.ml
85 test ! -f $(ARCHIVE_OPT) || extra="$(ARCHIVE_C) $(ARCHIVE_OPT)" ; \
86 ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(INST) $$extra
89 ocamlfind remove $(PACKAGE)
92 rm -f *.o *.cm? test test.opt mlminidom.cma mlminidom.cmxa mlminidom.a
96 rm -f config.log config.cache config.status Makefile META mlminidom.spec