]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/mlminidom/Makefile.in
...
[helm.git] / helm / DEVEL / mlminidom / Makefile.in
1 PACKAGE = @PACKAGE@
2 VERSION = @VERSION@
3 INCLUDEDIR = @OCAML_INCLUDE_DIR@
4 PREFIX = 
5 OBJECTS_C = ml_minidom.o
6 OBJECTS = minidom.cmo ominidom.cmo
7 OBJECTS_OPT = minidom.cmx ominidom.cmx
8 INST = ml_minidom.h minidom.mli minidom.cmi ominidom.mli ominidom.cmi META
9 DIST_FILES = Makefile.in configure.in configure *.ml *.mli test.xml ml_minidom.c ml_minidom.h META.in mlminidom.spec.in .depend
10 DOC_FILES = AUTHORS COPYING ChangeLog NEWS README
11 REQUIRES =
12 PREDICATES =
13 OCAMLC = ocamlfind ocamlc
14 OCAMLOPT = ocamlfind ocamlopt
15 OCAMLDEP = ocamldep
16
17 ARCHIVE = $(PACKAGE).cma
18 ARCHIVE_C = $(PACKAGE).a
19 ARCHIVE_OPT = $(PACKAGE).cmxa
20
21 TMPDIR = .test
22 TMPPKGDIR = $(TMPDIR)/$(PACKAGE)
23
24 all: $(OBJECTS_C) $(ARCHIVE) test
25
26 opt: $(OBJECTS_C) $(ARCHIVE_OPT) test.opt
27
28 dist:
29         rm -rf $(PACKAGE)-$(VERSION)
30         mkdir $(PACKAGE)-$(VERSION)
31         cp $(DIST_FILES) $(DOC_FILES) $(PACKAGE)-$(VERSION)
32         tar cvfz $(PACKAGE)-$(VERSION).tar.gz $(PACKAGE)-$(VERSION)
33         rm -rf $(PACKAGE)-$(VERSION)
34         
35 ml_minidom.o: ml_minidom.c
36         gcc -c -I$(INCLUDEDIR) `glib-config --cflags` `minidom-config --cflags` $<
37
38 .SUFFIXES: .cmo .cmi .cmx .ml .mli
39
40 .ml.cmo:
41         $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
42                   -c $<
43 .mli.cmi:
44         $(OCAMLC) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
45                   -c $<
46 .ml.cmx:
47         $(OCAMLOPT) -package "$(REQUIRES)" -predicates "$(PREDICATES)" \
48                   -c $<
49
50 depend: *.ml *.mli
51         $(OCAMLDEP) *.ml *.mli >.depend
52 include .depend
53
54 $(ARCHIVE): $(OBJECTS)
55         $(OCAMLC) -a -custom -package "$(REQUIRES)" \
56         -predicates "$(PREDICATES)" -o $@ $^ \
57         -cclib "`glib-config --libs` `minidom-config --libs`"
58
59 $(ARCHIVE_OPT): $(OBJECTS_OPT)
60         $(OCAMLOPT) -a -package "$(REQUIRES)" \
61         -predicates "$(PREDICATES)" -o $@ $^ \
62         -cclib "`glib-config --libs` `minidom-config --libs`"
63
64 test: test.ml $(OBJECTS_C) $(ARCHIVE)
65         mkdir -p $(TMPPKGDIR)
66         cp $(OBJECTS_C) $(ARCHIVE) $(INST) $(TMPPKGDIR)
67         cp test.ml $(TMPDIR)
68         cd $(TMPDIR) ; export OCAMLPATH=.:$$OCAMLPATH ; \
69         $(OCAMLC) -package "$(PACKAGE)" -linkpkg -predicates "" -o $@ test.ml
70         mv $(TMPDIR)/$@ .
71         rm -r $(TMPDIR)
72
73 test.opt: test.ml $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT)
74         mkdir -p $(TMPPKGDIR)
75         cp $(OBJECTS_C) $(ARCHIVE_C) $(ARCHIVE_OPT) $(INST) $(TMPPKGDIR)
76         cp test.ml $(TMPDIR)
77         cd $(TMPDIR) ; export OCAMLPATH=.:$$OCAMLPATH ; \
78         $(OCAMLOPT) -package "$(PACKAGE)" -linkpkg -predicates "" -o $@ test.ml
79         mv $(TMPDIR)/$@ .
80         rm -r $(TMPDIR)
81
82 install:
83         test ! -f $(ARCHIVE_OPT) || extra="$(ARCHIVE_C) $(ARCHIVE_OPT)" ; \
84         ocamlfind install $(PACKAGE) $(OBJECTS_C) $(ARCHIVE) $(INST) $$extra
85
86 uninstall:
87         ocamlfind remove $(PACKAGE)
88
89 clean:
90         rm -f *.o *.cm? test test.opt $(ARCHIVE) $(ARCHIVE_C) $(ARCHIVE_OPT)
91         rm -rf $(TMPDIR)
92
93 distclean: clean
94         rm -f config.log config.cache config.status Makefile META mlminidom.spec
95