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