]> matita.cs.unibo.it Git - helm.git/blob - helm/DEVEL/lablgtk_gtkmathview/lablgtk-20001129_gtkmathview-0.2.1/Makefile
- the mathql interpreter is not helm-dependent any more
[helm.git] / helm / DEVEL / lablgtk_gtkmathview / lablgtk-20001129_gtkmathview-0.2.1 / Makefile
1 # Makefile for lablgtk_mathview.
2
3 MINIDOMDIR = ./minidom
4 TESTDIR = ./test
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 $(MINIDOMDIR); make
15
16 Minidom.opt:
17         cd $(MINIDOMDIR); 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 CFLAGS += $(MINIDOMCFLAGS) $(GTKMATHVIEWCFLAGS)
51
52 THFLAGS = -thread
53 THLINK = unix.cma threads.cma
54
55 ifdef USE_CC
56 CCOMPILER = $(CC) -c -I$(LIBDIR) $(CFLAGS)
57 else
58 CCOMPILER = ocamlc -c -ccopt "$(CFLAGS)"
59 endif
60
61 # Rules
62 .SUFFIXES: .ml .mli .cmo .cmi .cmx .c .o .var .h .opt .def
63 .c.o:
64         $(CCOMPILER) $<
65 .ml.cmo:
66         $(COMPILER) $<
67 .mli.cmi:
68         $(COMPILER) $<
69 .ml.cmx:
70         $(COMPOPT) $<
71 .var.h:
72         ./var2def < $< > $@
73 .var.c:
74         ./var2conv < $< > $@
75
76 # Targets
77 COBJS = ml_gtk_mathview.o
78 MLOBJS = gtk_mathview.cmo gtkMathView.cmo gMathView.cmo
79 ALLOBJS = $(MLOBJS)
80
81 lablgtkmathviewopt: $(CLIBS) $(MLLIBS:.cma=.cmxa)
82
83 install:
84         if test -d $(INSTALLDIR); then : ; else mkdir -p $(INSTALLDIR); fi
85         cp $(ALLOBJS:.cmo=.cmi) $(INSTALLDIR)
86         if test -f *.mli ; then cp *.mli $(INSTALLDIR) ; fi
87         cp $(ALLOBJS:.cmo=.ml) $(INSTALLDIR)
88         cp $(MLLIBS) $(INSTALLDIR)
89         cp $(COBJS) $(INSTALLDIR)
90         if test ! -z "$(CLIBS)" ; then cp $(CLIBS) $(INSTALLDIR) ; fi
91         if test -f lablgtkmathview.cmxa; then \
92            cp $(MLLIBS:.cma=.cmxa) $(MLLIBS:.cma=.a) \
93               $(INSTALLDIR); fi
94
95 lablgtkmathview.cma: $(MLOBJS)
96         $(LINKER) -a -custom -o $@ $(MLOBJS) $(GTKLIBS) -cclib "$(GTKMATHVIEWLIBS)" -cclib "$(MINIDOMLIBS)"
97 lablgtkmathview.cmxa: $(MLOBJS:.cmo=.cmx)
98         $(LINKOPT) -a -o $@ $(MLOBJS:.cmo=.cmx) $(GTKLIBS) -cclib "$(GTKMATHVIEWLIBS)" -cclib "$(MINIDOMLIBS)"
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 $(MINIDOMDIR); make clean
106         cd $(TESTDIR); make clean
107
108 include .depend