diff -Naurp gdk-pixbuf-0.21.0/configure gdk-pixbuf-0.21.0-cygwin/configure --- gdk-pixbuf-0.21.0/configure 2002-10-17 17:19:54.000000000 +0100 +++ gdk-pixbuf-0.21.0-cygwin/configure 2002-11-20 14:54:46.000000000 +0000 @@ -4112,7 +4112,8 @@ EOF else $CC -o impgen impgen.c ; fi)~ $output_objdir/impgen $dir/$soroot > $output_objdir/$soname-def' - old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +# old_archive_from_expsyms_cmds='$DLLTOOL --as=$AS --dllname $soname --def $output_objdir/$soname-def --output-lib $output_objdir/$newlib' +old_archive_from_expsyms_cmds= # cygwin and mingw dlls have different entry points and sets of symbols # to exclude. @@ -6059,7 +6060,8 @@ old_postuninstall_cmds=$lt_old_postunins old_archive_from_new_cmds=$lt_old_archive_from_new_cmds # Create a temporary old-style archive to link instead of a shared archive. -old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds +#old_archive_from_expsyms_cmds=$lt_old_archive_from_expsyms_cmds +old_archive_from_expsyms_cmds= # Commands used to build and install a shared archive. archive_cmds=$lt_archive_cmds diff -Naurp gdk-pixbuf-0.21.0/gdk-pixbuf/Makefile.in gdk-pixbuf-0.21.0-cygwin/gdk-pixbuf/Makefile.in --- gdk-pixbuf-0.21.0/gdk-pixbuf/Makefile.in 2002-10-17 17:20:28.000000000 +0100 +++ gdk-pixbuf-0.21.0-cygwin/gdk-pixbuf/Makefile.in 2002-11-20 14:54:07.000000000 +0000 @@ -425,7 +425,7 @@ testpixbuf_scale_SOURCES = testpixbuf-sc testpixbuf_scale_OBJECTS = testpixbuf-scale.$(OBJEXT) testpixbuf_scale_DEPENDENCIES = libgdk_pixbuf.la testpixbuf_scale_LDFLAGS = -CFLAGS = @CFLAGS@ +CFLAGS = @CFLAGS@ $(DLL_CFLAGS) COMPILE = $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) LTCOMPILE = $(LIBTOOL) --mode=compile $(CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) CCLD = $(CC) @@ -471,6 +471,9 @@ install-libLTLIBRARIES: $(lib_LTLIBRARIE if test -f $$p; then \ echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p"; \ $(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libdir)/$$p; \ + dll=$$(echo $$p | sed 's,^lib\(.*\).la$$,cyg\1.dll,'); \ + echo "install -D --mode=755 .libs/$$dll $(DESTDIR)$(bindir)/$$dll"; \ + install -D --mode=755 .libs/$$dll $(DESTDIR)$(bindir)/$$dll; \ else :; fi; \ done @@ -478,6 +481,8 @@ uninstall-libLTLIBRARIES: @$(NORMAL_UNINSTALL) list='$(lib_LTLIBRARIES)'; for p in $$list; do \ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libdir)/$$p; \ + dll=$$(echo $$p | sed 's,^lib\(.*\).la$$,cyg\1.dll,'); \ + rm -f $(DESTDIR)$(bindir)/$$dll; \ done mostlyclean-libexecLTLIBRARIES: @@ -496,6 +501,9 @@ install-libexecLTLIBRARIES: $(libexec_LT if test -f $$p; then \ echo "$(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libexecdir)/$$p"; \ $(LIBTOOL) --mode=install $(INSTALL) $$p $(DESTDIR)$(libexecdir)/$$p; \ + dll=$$(echo $$p | sed 's,^lib\(.*\).la$$,cyg\1.dll,'); \ + echo "install -D --mode=755 .libs/$$dll $(DESTDIR)$(libexecdir)/$$dll"; \ + install -D --mode=755 .libs/$$dll $(DESTDIR)$(libexecdir)/$$dll; \ else :; fi; \ done @@ -503,6 +511,8 @@ uninstall-libexecLTLIBRARIES: @$(NORMAL_UNINSTALL) list='$(libexec_LTLIBRARIES)'; for p in $$list; do \ $(LIBTOOL) --mode=uninstall rm -f $(DESTDIR)$(libexecdir)/$$p; \ + dll=$$(echo $$p | sed 's,^lib\(.*\).la$$,cyg\1.dll,'); \ + rm -f $(DESTDIR)$(libexecdir)/$$dll; \ done .c.o: @@ -551,42 +561,55 @@ maintainer-clean-libtool: libgdk_pixbuf.la: $(libgdk_pixbuf_la_OBJECTS) $(libgdk_pixbuf_la_DEPENDENCIES) $(LINK) -rpath $(libdir) $(libgdk_pixbuf_la_LDFLAGS) $(libgdk_pixbuf_la_OBJECTS) $(libgdk_pixbuf_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) libgdk_pixbuf_xlib.la: $(libgdk_pixbuf_xlib_la_OBJECTS) $(libgdk_pixbuf_xlib_la_DEPENDENCIES) $(LINK) -rpath $(libdir) $(libgdk_pixbuf_xlib_la_LDFLAGS) $(libgdk_pixbuf_xlib_la_OBJECTS) $(libgdk_pixbuf_xlib_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libgnomecanvaspixbuf.la: $(libgnomecanvaspixbuf_la_OBJECTS) $(libgnomecanvaspixbuf_la_DEPENDENCIES) $(LINK) -rpath $(libdir) $(libgnomecanvaspixbuf_la_LDFLAGS) $(libgnomecanvaspixbuf_la_OBJECTS) $(libgnomecanvaspixbuf_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gnomeui) ./libgdk_pixbuf.dll.a libpixbufloader-png.la: $(libpixbufloader_png_la_OBJECTS) $(libpixbufloader_png_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_png_la_LDFLAGS) $(libpixbufloader_png_la_OBJECTS) $(libpixbufloader_png_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a -lpng libpixbufloader-jpeg.la: $(libpixbufloader_jpeg_la_OBJECTS) $(libpixbufloader_jpeg_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_jpeg_la_LDFLAGS) $(libpixbufloader_jpeg_la_OBJECTS) $(libpixbufloader_jpeg_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a -ljpeg libpixbufloader-gif.la: $(libpixbufloader_gif_la_OBJECTS) $(libpixbufloader_gif_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_gif_la_LDFLAGS) $(libpixbufloader_gif_la_OBJECTS) $(libpixbufloader_gif_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-ico.la: $(libpixbufloader_ico_la_OBJECTS) $(libpixbufloader_ico_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_ico_la_LDFLAGS) $(libpixbufloader_ico_la_OBJECTS) $(libpixbufloader_ico_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-ras.la: $(libpixbufloader_ras_la_OBJECTS) $(libpixbufloader_ras_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_ras_la_LDFLAGS) $(libpixbufloader_ras_la_OBJECTS) $(libpixbufloader_ras_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-xpm.la: $(libpixbufloader_xpm_la_OBJECTS) $(libpixbufloader_xpm_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_xpm_la_LDFLAGS) $(libpixbufloader_xpm_la_OBJECTS) $(libpixbufloader_xpm_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-tiff.la: $(libpixbufloader_tiff_la_OBJECTS) $(libpixbufloader_tiff_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_tiff_la_LDFLAGS) $(libpixbufloader_tiff_la_OBJECTS) $(libpixbufloader_tiff_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a -ltiff libpixbufloader-pnm.la: $(libpixbufloader_pnm_la_OBJECTS) $(libpixbufloader_pnm_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_pnm_la_LDFLAGS) $(libpixbufloader_pnm_la_OBJECTS) $(libpixbufloader_pnm_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-bmp.la: $(libpixbufloader_bmp_la_OBJECTS) $(libpixbufloader_bmp_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_bmp_la_LDFLAGS) $(libpixbufloader_bmp_la_OBJECTS) $(libpixbufloader_bmp_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a libpixbufloader-xbm.la: $(libpixbufloader_xbm_la_OBJECTS) $(libpixbufloader_xbm_la_DEPENDENCIES) $(LINK) -rpath $(libexecdir) $(libpixbufloader_xbm_la_LDFLAGS) $(libpixbufloader_xbm_la_OBJECTS) $(libpixbufloader_xbm_la_LIBADD) $(LIBS) + cd .libs && PREFIX=$(prefix) sh ../../mkdll.sh $@ $$(gnome-config --libs gtk) ./libgdk_pixbuf.dll.a mostlyclean-noinstPROGRAMS: diff -Naurp gdk-pixbuf-0.21.0/gdk-pixbuf/gdk-pixbuf-io.c gdk-pixbuf-0.21.0-cygwin/gdk-pixbuf/gdk-pixbuf-io.c --- gdk-pixbuf-0.21.0/gdk-pixbuf/gdk-pixbuf-io.c 2002-09-27 23:35:43.000000000 +0100 +++ gdk-pixbuf-0.21.0-cygwin/gdk-pixbuf/gdk-pixbuf-io.c 2002-11-20 14:54:07.000000000 +0000 @@ -236,7 +236,11 @@ gdk_pixbuf_load_module (GdkPixbufModule name = image_module->module_name; +#ifndef __CYGWIN__ module_name = g_strconcat ("pixbufloader-", name, NULL); +#else + module_name = g_strconcat ("cyg", "pixbufloader-", name, ".dll", NULL); +#endif path = g_module_build_path (PIXBUF_LIBDIR, module_name); module = g_module_open (path, G_MODULE_BIND_LAZY); diff -Naurp gdk-pixbuf-0.21.0/mkdll.sh gdk-pixbuf-0.21.0-cygwin/mkdll.sh --- gdk-pixbuf-0.21.0/mkdll.sh 1970-01-01 00:00:00.000000000 +0000 +++ gdk-pixbuf-0.21.0-cygwin/mkdll.sh 2002-11-20 14:54:07.000000000 +0000 @@ -0,0 +1,59 @@ +#!/bin/sh + +# script to generate dll from libtool-generated static archive (.la file) +# invoke in .libs directory with: +# mkdll.sh +# 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 +module=$(echo $(basename $archive) | sed -e 's,^lib\(.*\).la$,\1,') + +shift +dependency_libs="$@" + +test -n "$CC" || CC=gcc +test -n "$PREFIX" || prefix=/usr/local + +# get the static library name +old_lib=$(sed -ne '/^old_library=/ s,^old_library='\''\(.*\)'\''.*$,\1,p' $archive) + +# update the archive with the dll and import lib name. +if sed -e 's,^dlname='\'\'',dlname='\'cyg${module}.dll\'',;s,^library_names='\'\'',library_names='\'lib${module}.dll.a\'',' $archive > ${archive}.tmp +then cat ${archive}.tmp > ${archive} +fi +rm -f ${archive}.tmp + +# update the install archive if it exists +if [ -f ${archive}i ] ; then + if sed -e 's,^dlname='\'\'',dlname='\'../bin/cyg${module}.dll\'',;s,^library_names='\'\'',library_names='\'lib${module}.dll.a\'',' ${archive}i > ${archive}i.tmp + then cat ${archive}i.tmp > ${archive}i + fi + rm -f ${archive}i.tmp +fi + +# update the archive with the install dir if not already set +libdir=${prefix}/lib +if sed -e '/^libdir=/ s,='\'\'',='\'$libdir\'',' $archive > ${archive}.tmp +then cat ${archive}.tmp > $archive +fi +rm -f ${archive}.tmp + + +# report the link command to stdout +eval echo $CC -shared -o cyg${module}.dll -Wl,--out-implib=lib${module}.dll.a \ +-Wl,--export-all-symbols -Wl,--whole-archive $old_lib -Wl,--no-whole-archive ${dependency_libs} + +# do the link command +eval $CC -shared -o cyg${module}.dll -Wl,--out-implib=lib${module}.dll.a -Wl,--export-all-symbols \ +-Wl,--whole-archive $old_lib -Wl,--no-whole-archive ${dependency_libs} +