--- rep-gtk-0.15/Makefile.in	2000-07-23 23:53:55.000000000 +0100
+++ rep-gtk-0.15-cygwin/Makefile.in	2002-06-28 23:08:08.000000000 +0100
@@ -72,30 +72,39 @@ all : build_dirs $(OUT)
 
 gtk/types.la : $(SGTK_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_SGTK_LIBS)
+	cd gtk && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) $(LDFLAGS) $$(rep-config --libs) $(REP_SGTK_LIBS)
 
 gtk/gtk.la : $(OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GTK_LIBS)
+	cd gtk && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) .libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GTK_LIBS)
 
 gtk/libglade.la : $(LIBGLADE_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_LIBGLADE_LIBS)
+	cd gtk && PREFIX=$(prefix) DLDIR=":" DLPREFIX="lib" LIBPREFIX="lib" sh ../mkdll.sh $(notdir $@) .libs/gtk.dll.a .libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_LIBGLADE_LIBS)
 
 gnome/libglade.la : $(GNOME_LIBGLADE_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GNOME_LIBGLADE_LIBS)
+	cd gnome && PREFIX=$(prefix) DLDIR=":" DLPREFIX="lib" LIBPREFIX="lib" sh ../mkdll.sh $(notdir $@) ../gtk/.libs/gtk.dll.a ../gtk/.libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GNOME_LIBGLADE_LIBS)
 
 gnome/lib.la : $(GNOMELIB_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GNOMELIB_LIBS)
+	cd gnome && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) ../gtk/.libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GNOMELIB_LIBS)
 
 gnome/ui.la : $(GNOMEUI_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GNOMEUI_LIBS)
+	cd gnome && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) ../gtk/.libs/gtk.dll.a ../gtk/.libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GNOMEUI_LIBS)
 
 gnome/canvas.la : $(GNOME_CANVAS_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GNOMEUI_LIBS)
+	cd gnome && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) ../gtk/.libs/gtk.dll.a ../gtk/.libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GNOMEUI_LIBS)
 
 gtk/gdk-pixbuf.la : $(GDK_PIXBUF_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GDK_PIXBUF_LIBS)
+	cd gtk && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) .libs/gtk.dll.a .libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GDK_PIXBUF_LIBS)
 
 gnome/canvas-pixbuf.la : $(GNOME_CANVAS_PIXBUF_OBJS)
 	$(rep_DL_LD) $(CPPFLAGS) $(CFLAGS) -o $@ $^ $(LDFLAGS) $(REP_GNOME_CANVAS_PIXBUF_LIBS)
+	cd gnome && PREFIX=$(prefix) DLDIR=":" DLPREFIX=":" LIBPREFIX=":" sh ../mkdll.sh $(notdir $@) ../gtk/.libs/gtk.dll.a ../gtk/.libs/types.dll.a $(LDFLAGS) $$(rep-config --libs) $(REP_GNOME_CANVAS_PIXBUF_LIBS)
 
 %-glue.c : %.defs build-gtk.jlc
 	rep build-gtk.jlc -f build-gtk-batch $< $@
@@ -109,7 +118,10 @@ libglade-gnome-support.lo : libglade-sup
 
 install : all installdirs $(INSTALL_GLUE)
 	set -e; for f in $(OUT); do \
-	  $(rep_DL_INSTALL) $$f $(DESTDIR)$(installdir)/gui/`dirname $$f`; \
+	  here=`pwd`; \
+	  cd `dirname $$f`; \
+	    $(rep_DL_INSTALL) `basename $$f` $(DESTDIR)$(installdir)/gui/`dirname $$f`; \
+	  cd $$here; \
 	done
 	set -e; for f in $(OUT_DESTS); do \
 	  case $$f in \
@@ -131,7 +143,9 @@ installdirs : $(top_srcdir)/mkinstalldir
 	  $(DESTDIR)$(installdir)/gui/gnome
 
 uninstall :
-	$(rep_DL_UNINSTALL) $(DESTDIR)$(installdir)/$(OUT)
+	for f in $(OUT_DESTS); do \
+		$(rep_DL_UNINSTALL) $(DESTDIR)$(installdir)/$$f; \
+	done
 
 clean :
 	rm -f *-glue.c *~ core *.jlc *.o *.lo *.la
diff -Naurp rep-gtk-0.15/examples/test-libglade rep-gtk-0.15-cygwin/examples/test-libglade
--- rep-gtk-0.15/examples/test-libglade	2000-04-16 14:48:28.000000000 +0100
+++ rep-gtk-0.15-cygwin/examples/test-libglade	2002-06-22 21:46:20.000000000 +0100
@@ -8,7 +8,7 @@ exec rep "$0" "$@"
       (require 'gnomeui)
       (gnome-init "test-libglade" "0.0"))
   (require 'libglade))
-
+(require 'gtk)
 (let
     ((xml (or (glade-xml-new (car command-line-args))
 	      (error "something bad happened while creating the interface"))))
diff -Naurp rep-gtk-0.15/mkdll.sh rep-gtk-0.15-cygwin/mkdll.sh
--- rep-gtk-0.15/mkdll.sh	1970-01-01 00:00:00.000000000 +0000
+++ rep-gtk-0.15-cygwin/mkdll.sh	2002-06-21 17:34:51.000000000 +0100
@@ -0,0 +1,98 @@
+#!/bin/sh
+
+# script to generate dll from libtool-generated static archive (.la file)
+# invoke with:
+# mkdll.sh <archive.la> <dependency libs>
+# eg:
+# mkdll.sh libtest.la -L/usr/local/lib -llocal
+
+# defaults to using gcc for libraries written in C.
+# set the CC env var to use a different compiler driver: eg
+# export CC=g++ 
+# for C++ libraries
+
+# defaults to using /usr/local as the installation PREFIX
+# override this by setting the PREFIX env var: eg
+# export PREFIX=/opt/gnome
+
+archive=$1
+test -f $archive || { echo $(basename $0): $archive not found; exit 1; }
+
+module=$(echo $(basename $archive) | sed -e 's,^lib,,' -e 's,.la$,,')
+
+shift
+dependency_libs="$@"
+
+test -n "$CC" || CC=gcc
+prefix=${PREFIX:=/usr/local}
+case "$DLDIR" in
+   :) dldir=
+      ;;
+   "") dldir=../bin/
+      ;;
+   *) dldir=$DLDIR/
+      ;;
+esac
+case "$DLPREFIX" in
+   :) dlprefix=
+      ;;
+   "") dlprefix=cyg
+      ;;
+   *) dlprefix=$DLPREFIX
+      ;;
+esac
+case "$LIBPREFIX" in
+   :) libprefix=
+      ;;
+   "") libprefix=lib
+      ;;
+   *) libprefix=$LIBPREFIX
+      ;;
+esac
+
+# get the static library name
+# first look in the .la archive
+old_lib=$(sed -ne '/^old_library=/ s,^old_library='\''\(.*\)'\''.*$,\1,p' .libs/$archive)
+# if not there, use default name
+test -n "$old_lib" || old_lib=${libprefix}${module}.a
+
+
+
+# update the archive with the dll and import lib name; fix install dir; remove relink command
+# (${prefix}/lib is hard-coded here - edit it if necessary)
+libdir=${prefix}/lib
+if sed -e 's,^dlname='\'\'',dlname='\'${dlprefix}${module}.dll\'',' \
+       -e 's,^library_names='\'\'',library_names='\'${libprefix}${module}.dll.a\'',' \
+       -e 's,^libdir='\'\'',libdir='\'$libdir\'',' \
+       -e 's,^relink_command=.*$,,' \
+       .libs/$archive > .libs/${archive}.tmp
+then cat .libs/${archive}.tmp > .libs/${archive}
+fi
+rm -f .libs/${archive}.tmp
+
+# update the install archive if it exists
+if [ -f .libs/${archive}i ] ; then
+	if sed -e 's,^dlname='\'\'',dlname='\'${dldir}${dlprefix}${module}.dll\'',' \
+	       -e 's,^library_names='\'\'',library_names='\'${libprefix}${module}.dll.a\'',' \
+          -e 's,^relink_command=.*$,,' \
+	       .libs/${archive}i > .libs/${archive}i.tmp
+	then cat .libs/${archive}i.tmp > .libs/${archive}i
+	fi
+	rm -f .libs/${archive}i.tmp
+fi
+
+
+# report the link command to stdout
+eval echo $CC -shared -o .libs/${dlprefix}${module}.dll -Wl,--out-implib=.libs/${libprefix}${module}.dll.a \
+-Wl,--export-all-symbols -Wl,--whole-archive .libs/$old_lib -Wl,--no-whole-archive ${dependency_libs}
+
+# do the link command - if it fails, remove archive so make knows to re-build it
+eval $CC -shared -o .libs/${dlprefix}${module}.dll -Wl,--out-implib=.libs/${libprefix}${module}.dll.a -Wl,--export-all-symbols \
+-Wl,--whole-archive .libs/$old_lib -Wl,--no-whole-archive ${dependency_libs} || { rm -f $archive; false; }
+ret=$?
+
+# copy the .dll.a file to .dll.aT to keep libtool happy
+rm -f .libs/${libprefix}${module}.dll.aT
+ln .libs/${libprefix}${module}.dll.a .libs/${libprefix}${module}.dll.aT
+
+exit $ret
