--- /dev/null
+# $Id$
+# Makefile for lablgtk.
+
+TARGETS = var2conv var2def lablgtktop lablgtktop_t lablgtkrun lablgtk
+
+all: $(TARGETS)
+
+opt: lablgtkopt
+
+configure:
+ @rm -f config.make
+ @$(MAKE) --no-print-directory -f configure.mk
+
+depend:
+ @rm -f .depend
+ @$(MAKE) --no-print-directory -f configure.mk .depend
+
+.depend config.make:
+ @$(MAKE) --no-print-directory -f configure.mk
+
+COMPILER = $(CAMLC) $(MLFLAGS) -w s -labels -c
+LINKER = $(CAMLC) $(MLFLAGS)
+COMPOPT = $(CAMLOPT) $(MLFLAGS) -w s -labels -c
+LINKOPT = $(CAMLOPT) $(MLFLAGS)
+TOPLEVEL = ocamlmktop $(MLFLAGS)
+
+include config.make
+
+INSTALLDIR = $(LIBDIR)/lablgtk
+LABLGLDIR = $(LIBDIR)/lablGL
+
+MLLIBS = lablgtk.cma
+CLIBS = liblablgtk.a
+MLLINK = unix.cma str.cma
+
+ifdef DEBUG
+CFLAGS = -g $(GTKCFLAGS)
+MLLINK += -cclib -lcamlrund
+MLFLAGS = -g
+else
+CFLAGS = -O -DGTK_NO_CHECK_CASTS -DGTK_DISABLE_COMPAT_H $(GTKCFLAGS)
+endif
+
+THFLAGS = -thread
+THLINK = unix.cma threads.cma
+
+ifdef USE_CC
+CCOMPILER = $(CC) -c -I$(LIBDIR) $(CFLAGS)
+else
+CCOMPILER = ocamlc -c -ccopt "$(CFLAGS)"
+endif
+
+ifdef USE_GL
+MLFLAGS += -I $(LABLGLDIR)
+MLLINK += lablgl.cma
+MLLIBS += lablgtkgl.cma
+CLIBS += liblablgtkgl.a
+GLLINK = -cclib -llablgtkgl -cclib -lgtkgl
+GLMLOBJS = glGtk.cmo
+GLCOBJS = ml_gtkgl.o
+
+endif
+
+ifdef USE_GNOME
+MLLIBS += lablgnome.cma
+CLIBS += liblablgnome.a
+GNOMEMLOBJS = gtkXmHTML.cmo gHtml.cmo
+GNOMECOBJS = ml_gtkxmhtml.o
+endif
+
+# Rules
+.SUFFIXES: .ml .mli .cmo .cmi .cmx .c .o .var .h .opt .def
+.c.o:
+ $(CCOMPILER) $<
+.ml.cmo:
+ $(COMPILER) $<
+.mli.cmi:
+ $(COMPILER) $<
+.ml.cmx:
+ $(COMPOPT) $<
+.var.h:
+ ./var2def < $< > $@
+.var.c:
+ ./var2conv < $< > $@
+
+# Targets
+COBJS = ml_gtk.o ml_gdk.o ml_glib.o wrappers.o
+MLOBJS = gaux.cmo gpointer.cmo glib.cmo gdk.cmo gdkEvent.cmo gdkKeysyms.cmo \
+ gtk.cmo gtkArgv.cmo gtkSignal.cmo \
+ gtkData.cmo gtkBase.cmo gtkPack.cmo gtkButton.cmo \
+ gtkMenu.cmo gtkMisc.cmo gtkWindow.cmo gtkTree.cmo gtkList.cmo \
+ gtkBin.cmo gtkEdit.cmo gtkRange.cmo gtkMain.cmo gtkNew.cmo \
+ gDraw.cmo \
+ gObj.cmo gMain.cmo gData.cmo gContainer.cmo gPack.cmo gButton.cmo \
+ gMenu.cmo gMisc.cmo gWindow.cmo gTree.cmo gList.cmo gBin.cmo \
+ gEdit.cmo gRange.cmo gUtil.cmo
+THOBJS = gtkThread.cmo
+INITOBJS = gtkInit.cmo
+THINITOBJS = gtkThInit.cmo
+ALLOBJS = $(MLOBJS) $(GLMLOBJS) $(GNOMEMLOBJS) $(THOBJS) \
+ $(INITOBJS) $(THINITOBJS)
+
+lablgtktop: $(CLIBS) $(MLLIBS) $(INITOBJS)
+ $(TOPLEVEL) -o $@ $(MLLINK) -ccopt -L. $(MLLIBS) $(INITOBJS)
+
+lablgtktop_t: $(CLIBS) $(MLLIBS) $(THOBJS) $(INITOBJS) $(THINITOBJS)
+ $(TOPLEVEL) $(THFLAGS) -o $@ $(THLINK) $(MLLINK) \
+ -ccopt -L. $(MLLIBS) $(THOBJS) $(INITOBJS) $(THINITOBJS)
+
+lablgtk: Makefile config.make lablgtk.in
+ sed -e "s|@INSTALLDIR@|$(INSTALLDIR)|g" \
+ -e "s|@LABLGLDIR@|$(LABLGLDIR)|g" \
+ -e "s|@LIBDIR@|$(LIBDIR)|g" \
+ < lablgtk.in > $@
+ chmod 755 $@
+
+lablgtkrun: $(CLIBS) $(MLLIBS)
+ $(LINKER) -o $@ -make-runtime $(MLLINK) -ccopt -L. $(MLLIBS)
+
+lablgtkopt: $(CLIBS) $(MLLIBS:.cma=.cmxa) $(INITOBJS:.cmo=.cmx) \
+ $(THOBJS:.cmo=.cmx)
+
+install:
+ if test -d $(INSTALLDIR); then : ; else mkdir -p $(INSTALLDIR); fi
+ cp $(ALLOBJS:.cmo=.cmi) $(INSTALLDIR)
+ cp *.mli $(INSTALLDIR)
+ cp *.h $(INSTALLDIR)
+ cp $(ALLOBJS:.cmo=.ml) $(INSTALLDIR)
+ cp $(MLLIBS) $(THOBJS) $(INITOBJS) $(THINITOBJS) $(INSTALLDIR)
+ cp $(CLIBS) $(INSTALLDIR)
+ cp lablgtktop lablgtktop_t $(INSTALLDIR)
+ cp lablgtk lablgtkrun $(BINDIR)
+ if test -f lablgtk.cmxa; then \
+ cp $(MLLIBS:.cma=.cmxa) $(MLLIBS:.cma=.a) \
+ $(INITOBJS:.cmo=.cmx) $(INITOBJS:.cmo=.o) $(INSTALLDIR); fi
+ if test -f gtkThread.cmx; then \
+ cp $(THOBJS:.cmo=.cmx) $(THOBJS:.cmo=.o) $(INSTALLDIR); fi
+
+liblablgtk.a: $(COBJS)
+ ar rc $@ $(COBJS)
+ $(RANLIB) $@
+lablgtk.cma: $(MLOBJS)
+ $(LINKER) -a -custom -o $@ $(MLOBJS) \
+ -cclib -llablgtk $(GTKLIBS)
+lablgtk.cmxa: $(MLOBJS:.cmo=.cmx)
+ $(LINKOPT) -a -o $@ $(MLOBJS:.cmo=.cmx) \
+ -cclib -llablgtk $(GTKLIBS)
+
+liblablgtkgl.a: $(GLCOBJS)
+ ar rc $@ $(GLCOBJS)
+ $(RANLIB) $@
+lablgtkgl.cma: $(GLMLOBJS)
+ $(LINKER) -a -custom -o $@ $(GLLINK) $(GLMLOBJS)
+lablgtkgl.cmxa: $(GLMLOBJS:.cmo=.cmx)
+ $(LINKOPT) -a -o $@ $(GLLINK) $(GLMLOBJS:.cmo=.cmx)
+
+liblablgnome.a: $(GNOMECOBJS)
+ ar rc $@ $(GNOMECOBJS)
+ $(RANLIB) $@
+lablgnome.cma: $(GNOMEMLOBJS)
+ $(LINKER) -a -custom -o $@ $(GNOMEMLOBJS) \
+ -cclib -llablgnome $(GNOMELIBS)
+lablgnome.cmxa: $(GNOMEMLOBJS:.cmo=.cmx)
+ $(LINKOPT) -a -o $@ $(GNOMEMLOBJS:.cmo=.cmx) \
+ -cclib -llablgnome $(GNOMELIBS)
+
+gtkThread.cmo: gtkThread.ml
+ $(COMPILER) $(THFLAGS) gtkThread.ml
+
+gtkThread.cmx: gtkThread.ml
+ if test -f $(LIBDIR)/libthreadsnat.a; then \
+ $(COMPOPT) $(THFLAGS) gtkThread.ml; fi
+
+var2conv: var2conv.cmo
+ $(LINKER) -o $@ var2conv.cmo
+ rm -f *_tags.c
+
+var2def: var2def.cmo
+ $(LINKER) -o $@ var2def.cmo
+ rm -f *_tags.h
+
+clean:
+ rm -f *.cm* *.o *.a *_tags.[ch] $(TARGETS)
+
+ml_gtk.o: gtk_tags.c gtk_tags.h ml_gtk.h ml_gdk.h wrappers.h
+ml_gdk.o: gdk_tags.c gdk_tags.h ml_gdk.h wrappers.h
+ml_gtkgl.o: gtkgl_tags.c gtkgl_tags.h ml_gtk.h ml_gdk.h wrappers.h
+ml_gtkxmhtml.o: gtkxmhtml_tags.c gtkxmhtml_tags.h ml_gtk.h ml_gdk.h wrappers.h
+
+include .depend