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