]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/lablgtk_gtkmathview/lablgtk-20000829_gtkmathview-0.2.0/Makefile
- the mathql interpreter is not helm-dependent any more
[helm.git] / helm / DEVEL / lablgtk_gtkmathview / lablgtk-20000829_gtkmathview-0.2.0 / Makefile
1 # Makefile for lablgtk_mathview.
2
3 LABLGTKDIR = /usr/lib/ocaml/lablgtk
4 MINIDOMDIR = ./minidom
5 MLFLAGS += -I $(LABLGTKDIR) -I $(MINIDOMDIR)
6
7 TARGETS = ml_gtk_mathview.o lablgtkmathview.cma
8
9 all: Minidom $(TARGETS)
10
11 opt: Minidom.opt lablgtkmathviewopt
12
13 Minidom:
14         cd minidom ; make
15
16 Minidom.opt:
17         cd minidom ; make opt
18
19 configure:
20         @rm -f config.make
21         @$(MAKE) --no-print-directory -f configure.mk
22
23 depend:
24         @rm -f .depend
25         @$(MAKE) --no-print-directory -f configure.mk .depend
26
27 .depend config.make:
28         @$(MAKE) --no-print-directory -f configure.mk
29
30 COMPILER = $(CAMLC) $(MLFLAGS) -w s -labels -c
31 LINKER = $(CAMLC) $(MLFLAGS)
32 COMPOPT = $(CAMLOPT) $(MLFLAGS) -w s -labels -c
33 LINKOPT = $(CAMLOPT) $(MLFLAGS)
34
35 include config.make
36
37 INSTALLDIR = $(LIBDIR)/lablgtk/mathview
38
39 MLLIBS = lablgtkmathview.cma
40 CLIBS = 
41 MLLINK = unix.cma str.cma
42
43 ifdef DEBUG
44 CFLAGS = -g $(GTKCFLAGS)
45 MLLINK += -cclib -lcamlrund
46 MLFLAGS += -g
47 else
48 CFLAGS = -O -DGTK_NO_CHECK_CASTS -DGTK_DISABLE_COMPAT_H $(GTKCFLAGS)
49 endif
50
51 THFLAGS = -thread
52 THLINK = unix.cma threads.cma
53
54 ifdef USE_CC
55 CCOMPILER = $(CC) -c -I$(LIBDIR) $(CFLAGS)
56 else
57 CCOMPILER = ocamlc -c -ccopt "$(CFLAGS)"
58 endif
59
60 # Rules
61 .SUFFIXES: .ml .mli .cmo .cmi .cmx .c .o .var .h .opt .def
62 .c.o:
63         $(CCOMPILER) $<
64 .ml.cmo:
65         $(COMPILER) $<
66 .mli.cmi:
67         $(COMPILER) $<
68 .ml.cmx:
69         $(COMPOPT) $<
70 .var.h:
71         ./var2def < $< > $@
72 .var.c:
73         ./var2conv < $< > $@
74
75 # Targets
76 COBJS = ml_gtk_mathview.o
77 MLOBJS = gtk_mathview.cmo gtkMathView.cmo gMathView.cmo
78 ALLOBJS = $(MLOBJS)
79
80 lablgtkmathviewopt: $(CLIBS) $(MLLIBS:.cma=.cmxa)
81
82 install:
83         if test -d $(INSTALLDIR); then : ; else mkdir -p $(INSTALLDIR); fi
84         cp $(ALLOBJS:.cmo=.cmi) $(INSTALLDIR)
85         if test -f *.mli ; then cp *.mli $(INSTALLDIR) ; fi
86         cp $(ALLOBJS:.cmo=.ml) $(INSTALLDIR)
87         cp $(MLLIBS) $(INSTALLDIR)
88         cp $(COBJS) $(INSTALLDIR)
89         if test ! -z "$(CLIBS)" ; then cp $(CLIBS) $(INSTALLDIR) ; fi
90         if test -f lablgtkmathview.cmxa; then \
91            cp $(MLLIBS:.cma=.cmxa) $(MLLIBS:.cma=.a) \
92               $(INSTALLDIR); fi
93         cd minidom ; make install
94
95 lablgtkmathview.cma: $(MLOBJS)
96         $(LINKER) -a -custom -o $@ $(MLOBJS) $(GTKLIBS) $(GTKMATHVIEWLIBS)
97 lablgtkmathview.cmxa: $(MLOBJS:.cmo=.cmx)
98         $(LINKOPT) -a -o $@ $(MLOBJS:.cmo=.cmx) $(GTKLIBS) $(GTKMATHVIEWLIBS)
99
100 ml_gtk.o: $(LABLGTKDIR)/gtk_tags.c $(LABLGTKDIR)/gtk_tags.h \
101           $(LABLGTKDIR)/ml_gtk.h $(LABLGTKDIR)/ml_gdk.h $(LABLGTKDIR)/wrappers.h
102
103 clean:
104         rm -f *.cm* *.o *.a *_tags.[ch] $(TARGETS)
105         cd minidom ; make clean
106
107 include .depend