diff options
author | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2010-09-12 00:21:10 +0200 |
---|---|---|
committer | Fridrich Štrba <fridrich.strba@bluewin.ch> | 2010-09-12 00:21:10 +0200 |
commit | 98aee06e52878d291566d799d94039f729e304e6 (patch) | |
tree | 1b2b2933750b486072b2750c3128b6256d785f56 /gdk-pixbuf | |
parent | 747eca53374702f6c5d1bde037cbd0a3d4246d10 (diff) | |
download | gdk-pixbuf-98aee06e52878d291566d799d94039f729e304e6.tar.gz |
Fix linking of static gdi loaders on windows
Ensure that the reference to gdiplus.dll comes after the objects that
link with it. Put -L$(top_builddir)/gdk-pixbuf to gdiplus_ldflag and
-lgdiplus to gdiplus_libadd.
Nevertheless the most clever way to fix this would be to create a fake
libtool library libgdiplus.la like it used to be done here http://git.gnome.org/browse/evolution/tree/win32?h=gnome-2-28 and then link with that libtool libary the way one links with any other libtool library.
Diffstat (limited to 'gdk-pixbuf')
-rw-r--r-- | gdk-pixbuf/Makefile.am | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/gdk-pixbuf/Makefile.am b/gdk-pixbuf/Makefile.am index da7c7dd22..bdb91d7f5 100644 --- a/gdk-pixbuf/Makefile.am +++ b/gdk-pixbuf/Makefile.am @@ -203,7 +203,8 @@ if BUILD_GDIPLUS_LOADERS # create a partial one that's enough for our use. libgdiplus = libgdiplus.dll.a -gdiplus_ldflag = -Wl,$(libgdiplus) +gdiplus_ldflag = -L$(top_builddir)/gdk-pixbuf +gdiplus_libadd = -lgdiplus libgdiplus.dll.a: gdiplus.def $(DLLTOOL) --kill-at --dllname gdiplus.dll --input-def gdiplus.def --output-lib $@ @@ -269,7 +270,7 @@ libpixbufloader_gdip_ico_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-ico.c -libpixbufloader_gdip_ico_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_ico_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_wmf_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_wmf_la_SOURCES = \ @@ -280,7 +281,7 @@ libpixbufloader_gdip_wmf_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-wmf.c -libpixbufloader_gdip_wmf_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_wmf_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_emf_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_emf_la_SOURCES = \ @@ -291,7 +292,7 @@ libpixbufloader_gdip_emf_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-emf.c -libpixbufloader_gdip_emf_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_emf_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_bmp_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_bmp_la_SOURCES = \ @@ -302,7 +303,7 @@ libpixbufloader_gdip_bmp_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-bmp.c -libpixbufloader_gdip_bmp_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_bmp_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_gif_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_gif_la_SOURCES = \ @@ -313,7 +314,7 @@ libpixbufloader_gdip_gif_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-gif.c -libpixbufloader_gdip_gif_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_gif_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_jpeg_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_jpeg_la_SOURCES = \ @@ -324,7 +325,7 @@ libpixbufloader_gdip_jpeg_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-jpeg.c -libpixbufloader_gdip_jpeg_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_jpeg_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) libpixbufloader_gdip_tiff_la_LDFLAGS = -avoid-version -module -no-undefined $(gdiplus_ldflag) libpixbufloader_gdip_tiff_la_SOURCES = \ @@ -335,7 +336,7 @@ libpixbufloader_gdip_tiff_la_SOURCES = \ io-gdip-animation.c \ io-gdip-animation.h \ io-gdip-tiff.c -libpixbufloader_gdip_tiff_la_LIBADD = $(module_libs) $(libole32) +libpixbufloader_gdip_tiff_la_LIBADD = $(module_libs) $(libole32) $(gdiplus_libadd) endif @@ -564,7 +565,7 @@ libgdk_pixbuf_2_0_la_LDFLAGS = \ $(gdiplus_ldflag) -libgdk_pixbuf_2_0_la_LIBADD = pixops/libpixops.la $(builtin_objs) $(GDK_PIXBUF_DEP_LIBS) $(libole32) +libgdk_pixbuf_2_0_la_LIBADD = pixops/libpixops.la $(builtin_objs) $(GDK_PIXBUF_DEP_LIBS) $(libole32) $(gdiplus_libadd) libgdk_pixbuf_2_0_la_DEPENDENCIES = pixops/libpixops.la $(builtin_objs) $(gdk_pixbuf_def) $(gdk_pixbuf_win32_res) $(libgdiplus) gdk_pixbuf_headers = \ |