1 # Makefile for lablgtk_mathview.
5 MLFLAGS += -I $(LABLGTKDIR) -I $(MINIDOMDIR)
7 TARGETS = ml_gtk_mathview.o lablgtkmathview.cma
9 all: Minidom $(TARGETS)
11 opt: Minidom.opt lablgtkmathviewopt
14 cd $(MINIDOMDIR); make
17 cd $(MINIDOMDIR); make opt
21 @$(MAKE) --no-print-directory -f configure.mk
25 @$(MAKE) --no-print-directory -f configure.mk .depend
28 @$(MAKE) --no-print-directory -f configure.mk
30 COMPILER = $(CAMLC) $(MLFLAGS) -w s -labels -c
31 LINKER = $(CAMLC) $(MLFLAGS)
32 COMPOPT = $(CAMLOPT) $(MLFLAGS) -w s -labels -c
33 LINKOPT = $(CAMLOPT) $(MLFLAGS)
37 INSTALLDIR = $(LIBDIR)/lablgtk/mathview
39 MLLIBS = lablgtkmathview.cma
41 MLLINK = unix.cma str.cma
44 CFLAGS = -g $(GTKCFLAGS)
45 MLLINK += -cclib -lcamlrund
48 CFLAGS = -O -DGTK_NO_CHECK_CASTS -DGTK_DISABLE_COMPAT_H $(GTKCFLAGS)
50 CFLAGS += $(MINIDOMCFLAGS) $(GTKMATHVIEWCFLAGS)
53 THLINK = unix.cma threads.cma
56 CCOMPILER = $(CC) -c -I$(LIBDIR) $(CFLAGS)
58 CCOMPILER = ocamlc -c -ccopt "$(CFLAGS)"
62 .SUFFIXES: .ml .mli .cmo .cmi .cmx .c .o .var .h .opt .def
77 COBJS = ml_gtk_mathview.o
78 MLOBJS = gtk_mathview.cmo gtkMathView.cmo gMathView.cmo
81 lablgtkmathviewopt: $(CLIBS) $(MLLIBS:.cma=.cmxa)
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) \
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)"
100 ml_gtk.o: $(LABLGTKDIR)/gtk_tags.c $(LABLGTKDIR)/gtk_tags.h \
101 $(LABLGTKDIR)/ml_gtk.h $(LABLGTKDIR)/ml_gdk.h $(LABLGTKDIR)/wrappers.h
104 rm -f *.cm* *.o *.a *_tags.[ch] $(TARGETS)
105 cd $(MINIDOMDIR); make clean
106 cd $(TESTDIR); make clean