]> Pileus Git - ~andy/gtk/blobdiff - gdk-pixbuf/Makefile.am
[quartz] Delete the typedef of GdkDevicePrivate
[~andy/gtk] / gdk-pixbuf / Makefile.am
index bddb3061a9c7a713826895fae28fe0af771dd7f9..bb0ac92d32d113cb493f7076dd22deaaba2eae12 100644 (file)
@@ -1,3 +1,7 @@
+include $(top_srcdir)/Makefile.decl
+-include $(INTROSPECTION_MAKEFILE)
+
+INTROSPECTION_GIRS =
 
 SUBDIRS = pixops
 
@@ -7,27 +11,30 @@ endif
 
 if OS_WIN32
 gdk_pixbuf_def = gdk_pixbuf.def
-gdk_pixbuf_symbols = -export-symbols $(gdk_pixbuf_def)
+gdk_pixbuf_symbols = -export-symbols $(srcdir)/gdk_pixbuf.def
+
+gdk_pixbuf_win32_res = gdk_pixbuf-win32-res.o
+gdk_pixbuf_win32_res_ldflag = -Wl,gdk_pixbuf-win32-res.o
 
-gdk_pixbuf_win32res_lo = gdk_pixbuf-win32res.lo
+libole32 = -lole32
 
-gdk_pixbuf-win32res.lo : gdk_pixbuf.rc
-       $(top_srcdir)/build/win32/lt-compile-resource gdk_pixbuf.rc gdk_pixbuf-win32res.lo
+gdk_pixbuf-win32-res.o : gdk_pixbuf.rc
+       $(WINDRES) gdk_pixbuf.rc $@
 
-install-libtool-import-lib:
-       $(INSTALL) .libs/libgdk_pixbuf-$(GTK_API_VERSION).dll.a $(DESTDIR)$(libdir)
-uninstall-libtool-import-lib:
-       -rm $(DESTDIR)$(libdir)/libgdk_pixbuf-$(GTK_API_VERSION).dll.a
+install-def-file:
+       $(INSTALL) $(srcdir)/gdk_pixbuf.def $(DESTDIR)$(libdir)/gdk_pixbuf-$(GTK_API_VERSION).def
+uninstall-def-file:
+       -rm $(DESTDIR)$(libdir)/gdk_pixbuf-$(GTK_API_VERSION).def
 else
-install-libtool-import-lib:
-uninstall-libtool-import-lib:
+install-def-file:
+uninstall-def-file:
 endif
 
 if MS_LIB_AVAILABLE
 noinst_DATA = gdk_pixbuf-$(GTK_API_VERSION).lib
 
 gdk_pixbuf-$(GTK_API_VERSION).lib: libgdk_pixbuf-$(GTK_API_VERSION).la gdk_pixbuf.def
-       lib -name:libgdk_pixbuf-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gdk_pixbuf.def -out:$@
+       lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgdk_pixbuf-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gdk_pixbuf.def -out:$@
 
 install-ms-lib:
        $(INSTALL) gdk_pixbuf-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
@@ -39,41 +46,56 @@ install-ms-lib:
 uninstall-ms-lib:
 endif
 
+# This places the generated .def file in srcdir, since it is expected to be there.
+# (The one from a tarball is)
+gdk_pixbuf.def: gdk-pixbuf.symbols
+       (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gdk-pixbuf.symbols | sed -e '/^$$/d' -e 's/^/     /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gdk_pixbuf.def
+
+gdk-pixbuf-alias.h: gdk-pixbuf.symbols
+        $(PERL) $(srcdir)/makegdkpixbufalias.pl < $(srcdir)/gdk-pixbuf.symbols > gdk-pixbuf-alias.h
+
+gdk-pixbuf-aliasdef.c: gdk-pixbuf.symbols
+        $(PERL) $(srcdir)/makegdkpixbufalias.pl -def < $(srcdir)/gdk-pixbuf.symbols > gdk-pixbuf-aliasdef.c
+
+if OS_LINUX
+TESTS = abicheck.sh pltcheck.sh
+endif
+
 lib_LTLIBRARIES =              \
-       libgdk_pixbuf-2.0.la
+       libgdk_pixbuf-3.0.la
 
-loaderdir = $(libdir)/gtk-2.0/$(GTK_BINARY_VERSION)/loaders
+loaderdir = $(libdir)/gtk-3.0/$(GTK_BINARY_VERSION)/loaders
 
 module_libs = libgdk_pixbuf-$(GTK_API_VERSION).la $(GDK_PIXBUF_DEP_LIBS)
 
 #
-# The PNG plugin.
+# The PNG loader
 #
+libstatic_pixbufloader_png_la_SOURCES = io-png.c
 libpixbufloader_png_la_SOURCES = io-png.c
 libpixbufloader_png_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_png_la_LIBADD = $(LIBPNG) $(module_libs)
-libpixbufloader_static_png_la_SOURCES = io-png.c
 
 #
-# The JPEG loader
+# The BMP loader
 #
-libpixbufloader_static_jpeg_la_SOURCES = io-jpeg.c
-libpixbufloader_jpeg_la_SOURCES = io-jpeg.c
-libpixbufloader_jpeg_la_LDFLAGS = -avoid-version -module $(no_undefined)
-libpixbufloader_jpeg_la_LIBADD = $(LIBJPEG) $(module_libs)
+libstatic_pixbufloader_bmp_la_SOURCES = io-bmp.c
+libpixbufloader_bmp_la_SOURCES = io-bmp.c
+libpixbufloader_bmp_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_bmp_la_LIBADD = $(module_libs)
 
 #
-# The XPM loader
+# The WBMP loader
 #
-libpixbufloader_static_xpm_la_SOURCES = io-xpm.c
-libpixbufloader_xpm_la_SOURCES = io-xpm.c
-libpixbufloader_xpm_la_LDFLAGS = -avoid-version -module $(no_undefined)
-libpixbufloader_xpm_la_LIBADD = $(module_libs)
+libstatic_pixbufloader_wbmp_la_SOURCES = io-wbmp.c
+libpixbufloader_wbmp_la_SOURCES = io-wbmp.c
+libpixbufloader_wbmp_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_wbmp_la_LIBADD = $(module_libs)
 
 #
 # The GIF loader
 #
-libpixbufloader_static_gif_la_SOURCES = io-gif.c io-gif-animation.c io-gif-animation.h
+libstatic_pixbufloader_gif_la_SOURCES = io-gif.c io-gif-animation.c io-gif-animation.h
 libpixbufloader_gif_la_SOURCES = io-gif.c io-gif-animation.c io-gif-animation.h
 libpixbufloader_gif_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_gif_la_LIBADD = $(module_libs)
@@ -81,7 +103,7 @@ libpixbufloader_gif_la_LIBADD = $(module_libs)
 #
 # The ICO loader
 #
-libpixbufloader_static_ico_la_SOURCES = io-ico.c
+libstatic_pixbufloader_ico_la_SOURCES = io-ico.c
 libpixbufloader_ico_la_SOURCES = io-ico.c
 libpixbufloader_ico_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_ico_la_LIBADD = $(module_libs)
@@ -89,15 +111,31 @@ libpixbufloader_ico_la_LIBADD = $(module_libs)
 #
 # The ANI loader
 #
-libpixbufloader_static_ani_la_SOURCES = io-ani.c io-ani-animation.c io-ani-animation.h
+libstatic_pixbufloader_ani_la_SOURCES = io-ani.c io-ani-animation.c io-ani-animation.h
 libpixbufloader_ani_la_SOURCES = io-ani.c io-ani-animation.c io-ani-animation.h
 libpixbufloader_ani_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_ani_la_LIBADD = $(module_libs)
 
+#
+# The JPEG loader
+#
+libstatic_pixbufloader_jpeg_la_SOURCES = io-jpeg.c
+libpixbufloader_jpeg_la_SOURCES = io-jpeg.c
+libpixbufloader_jpeg_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_jpeg_la_LIBADD = $(LIBJPEG) $(module_libs)
+
+#
+# The PNM loader
+#
+libstatic_pixbufloader_pnm_la_SOURCES = io-pnm.c
+libpixbufloader_pnm_la_SOURCES = io-pnm.c
+libpixbufloader_pnm_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_pnm_la_LIBADD = $(module_libs)
+
 #
 # The RAS loader
 #
-libpixbufloader_static_ras_la_SOURCES = io-ras.c
+libstatic_pixbufloader_ras_la_SOURCES = io-ras.c
 libpixbufloader_ras_la_SOURCES = io-ras.c
 libpixbufloader_ras_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_ras_la_LIBADD = $(module_libs)
@@ -105,39 +143,23 @@ libpixbufloader_ras_la_LIBADD = $(module_libs)
 #
 # The TIFF loader
 #
-libpixbufloader_static_tiff_la_SOURCES = io-tiff.c
+libstatic_pixbufloader_tiff_la_SOURCES = io-tiff.c
 libpixbufloader_tiff_la_SOURCES = io-tiff.c
 libpixbufloader_tiff_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_tiff_la_LIBADD = $(LIBTIFF) $(module_libs)
 
 #
-# The PNM loader
-#
-libpixbufloader_static_pnm_la_SOURCES = io-pnm.c
-libpixbufloader_pnm_la_SOURCES = io-pnm.c
-libpixbufloader_pnm_la_LDFLAGS = -avoid-version -module $(no_undefined)
-libpixbufloader_pnm_la_LIBADD = $(module_libs)
-
-#
-# The BMP loader
-#
-libpixbufloader_static_bmp_la_SOURCES = io-bmp.c
-libpixbufloader_bmp_la_SOURCES = io-bmp.c
-libpixbufloader_bmp_la_LDFLAGS = -avoid-version -module $(no_undefined)
-libpixbufloader_bmp_la_LIBADD = $(module_libs)
-
-#
-# The WBMP loader
+# The XPM loader
 #
-libpixbufloader_static_wbmp_la_SOURCES = io-wbmp.c
-libpixbufloader_wbmp_la_SOURCES = io-wbmp.c
-libpixbufloader_wbmp_la_LDFLAGS = -avoid-version -module $(no_undefined)
-libpixbufloader_wbmp_la_LIBADD = $(module_libs)
+libstatic_pixbufloader_xpm_la_SOURCES = io-xpm.c
+libpixbufloader_xpm_la_SOURCES = io-xpm.c
+libpixbufloader_xpm_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_xpm_la_LIBADD = $(module_libs)
 
 #
 # The XBM loader
 #
-libpixbufloader_static_xbm_la_SOURCES = io-xbm.c
+libstatic_pixbufloader_xbm_la_SOURCES = io-xbm.c
 libpixbufloader_xbm_la_SOURCES = io-xbm.c
 libpixbufloader_xbm_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_xbm_la_LIBADD = $(module_libs)
@@ -145,122 +167,351 @@ libpixbufloader_xbm_la_LIBADD = $(module_libs)
 #
 # The TGA loader
 #
-libpixbufloader_static_tga_la_SOURCES = io-tga.c
+libstatic_pixbufloader_tga_la_SOURCES = io-tga.c
 libpixbufloader_tga_la_SOURCES = io-tga.c
 libpixbufloader_tga_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_tga_la_LIBADD = $(module_libs)
 
+#
+# The .icns loader
+#
+libstatic_pixbufloader_icns_la_SOURCES = io-icns.c
+libpixbufloader_icns_la_SOURCES = io-icns.c
+libpixbufloader_icns_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_icns_la_LIBADD = $(module_libs)
+
 #
 # The PCX loader
 #
-libpixbufloader_static_pcx_la_SOURCES = io-pcx.c
+libstatic_pixbufloader_pcx_la_SOURCES = io-pcx.c
 libpixbufloader_pcx_la_SOURCES = io-pcx.c
 libpixbufloader_pcx_la_LDFLAGS = -avoid-version -module $(no_undefined)
 libpixbufloader_pcx_la_LIBADD = $(module_libs)
 
-if HAVE_PNG
-PNG_LIB = libpixbufloader-png.la
-STATIC_PNG_LIB = libpixbufloader-static-png.la
+#
+# The JPEG2000 loader
+#
+libstatic_pixbufloader_jasper_la_SOURCES = io-jasper.c
+libpixbufloader_jasper_la_SOURCES = io-jasper.c
+libpixbufloader_jasper_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_jasper_la_LIBADD = $(LIBJASPER) $(module_libs)
+
+#
+# The QTIF loader
+#
+libstatic_pixbufloader_qtif_la_SOURCES = io-qtif.c
+libpixbufloader_qtif_la_SOURCES = io-qtif.c
+libpixbufloader_qtif_la_LDFLAGS = -avoid-version -module $(no_undefined)
+libpixbufloader_qtif_la_LIBADD = $(module_libs)
+
+if BUILD_GDIPLUS_LOADERS
+
+if INCLUDE_GDIPLUS
+
+# When building the GDI+ loader statically, we put the "common" objects
+# only in one of the archives to avoid duplicate definitions
+
+STATIC_GDIPLUS_LIBS = \
+       libstatic-pixbufloader-gdip-ico.la \
+       libstatic-pixbufloader-gdip-wmf.la \
+       libstatic-pixbufloader-gdip-emf.la \
+       libstatic-pixbufloader-gdip-bmp.la \
+       libstatic-pixbufloader-gdip-gif.la \
+       libstatic-pixbufloader-gdip-jpeg.la \
+       libstatic-pixbufloader-gdip-tiff.la
+
+libstatic_pixbufloader_gdip_ico_la_SOURCES =   \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-ico.c
+
+libstatic_pixbufloader_gdip_wmf_la_SOURCES =   \
+       io-gdip-wmf.c
+
+libstatic_pixbufloader_gdip_emf_la_SOURCES =   \
+       io-gdip-emf.c
+
+libstatic_pixbufloader_gdip_bmp_la_SOURCES =   \
+       io-gdip-bmp.c
+
+libstatic_pixbufloader_gdip_gif_la_SOURCES =   \
+       io-gdip-gif.c
+
+libstatic_pixbufloader_gdip_jpeg_la_SOURCES =  \
+       io-gdip-jpeg.c
+
+libstatic_pixbufloader_gdip_tiff_la_SOURCES =  \
+       io-gdip-tiff.c
+
+else
+
+GDIPLUS_LIBS = \
+       libpixbufloader-gdip-ico.la \
+       libpixbufloader-gdip-wmf.la \
+       libpixbufloader-gdip-emf.la \
+       libpixbufloader-gdip-bmp.la \
+       libpixbufloader-gdip-gif.la \
+       libpixbufloader-gdip-jpeg.la \
+       libpixbufloader-gdip-tiff.la
+
+libpixbufloader_gdip_ico_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_ico_la_SOURCES =  \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-ico.c
+libpixbufloader_gdip_ico_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_wmf_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_wmf_la_SOURCES =  \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-wmf.c
+libpixbufloader_gdip_wmf_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_emf_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_emf_la_SOURCES =  \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-emf.c
+libpixbufloader_gdip_emf_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_bmp_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_bmp_la_SOURCES =  \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-bmp.c
+libpixbufloader_gdip_bmp_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_gif_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_gif_la_SOURCES =  \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-gif.c
+libpixbufloader_gdip_gif_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_jpeg_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_jpeg_la_SOURCES =         \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-jpeg.c
+libpixbufloader_gdip_jpeg_la_LIBADD = $(module_libs) $(libole32)
+
+libpixbufloader_gdip_tiff_la_LDFLAGS = -avoid-version -module -no-undefined
+libpixbufloader_gdip_tiff_la_SOURCES =         \
+       io-gdip-native.h                \
+       io-gdip-propertytags.h          \
+       io-gdip-utils.h                 \
+       io-gdip-utils.c                 \
+       io-gdip-animation.c             \
+       io-gdip-animation.h             \
+       io-gdip-tiff.c
+libpixbufloader_gdip_tiff_la_LIBADD = $(module_libs) $(libole32)
+
 endif
 
-if HAVE_JPEG
-JPEG_LIB = libpixbufloader-jpeg.la
-STATIC_JPEG_LIB = libpixbufloader-static-jpeg.la
+else
+
+# Loaders that aren't built if we build the GDI+ loader
+
+if INCLUDE_BMP
+STATIC_BMP_LIB = libstatic-pixbufloader-bmp.la
+else
+BMP_LIB = libpixbufloader-bmp.la
 endif
 
+if INCLUDE_GIF
+STATIC_GIF_LIB = libstatic-pixbufloader-gif.la
+else
 GIF_LIB = libpixbufloader-gif.la
-STATIC_GIF_LIB = libpixbufloader-static-gif.la
+endif
 
+if INCLUDE_ICO
+STATIC_ICO_LIB = libstatic-pixbufloader-ico.la
+else
 ICO_LIB = libpixbufloader-ico.la
-STATIC_ICO_LIB = libpixbufloader-static-ico.la
-
-ANI_LIB = libpixbufloader-ani.la
-STATIC_ANI_LIB = libpixbufloader-static-ani.la
+endif
 
-RAS_LIB = libpixbufloader-ras.la
-STATIC_RAS_LIB = libpixbufloader-static-ras.la
+if HAVE_JPEG
+if INCLUDE_JPEG
+STATIC_JPEG_LIB = libstatic-pixbufloader-jpeg.la
+else
+JPEG_LIB = libpixbufloader-jpeg.la
+endif
+endif
 
 if HAVE_TIFF
+if INCLUDE_TIFF
+STATIC_TIFF_LIB = libstatic-pixbufloader-tiff.la
+else
 TIFF_LIB = libpixbufloader-tiff.la
-STATIC_TIFF_LIB = libpixbufloader-static-tiff.la
+endif
 endif
 
-XPM_LIB = libpixbufloader-xpm.la
-STATIC_XPM_LIB = libpixbufloader-static-xpm.la
+# End of loaders not built if building GDI+ loader
+endif
 
+if HAVE_PNG
+if INCLUDE_PNG
+STATIC_PNG_LIB = libstatic-pixbufloader-png.la
+else
+PNG_LIB = libpixbufloader-png.la
+endif
+endif
+
+if INCLUDE_WBMP
+STATIC_WBMP_LIB = libstatic-pixbufloader-wbmp.la
+else
+WBMP_LIB = libpixbufloader-wbmp.la
+endif
+
+if INCLUDE_ANI
+STATIC_ANI_LIB = libstatic-pixbufloader-ani.la
+else
+ANI_LIB = libpixbufloader-ani.la
+endif
+
+if INCLUDE_PNM
+STATIC_PNM_LIB = libstatic-pixbufloader-pnm.la
+else
 PNM_LIB = libpixbufloader-pnm.la
-STATIC_PNM_LIB = libpixbufloader-static-pnm.la
+endif
 
-BMP_LIB = libpixbufloader-bmp.la
-STATIC_BMP_LIB = libpixbufloader-static-bmp.la
+if INCLUDE_RAS
+STATIC_RAS_LIB = libstatic-pixbufloader-ras.la
+else
+RAS_LIB = libpixbufloader-ras.la
+endif
 
-WBMP_LIB = libpixbufloader-wbmp.la
-STATIC_WBMP_LIB = libpixbufloader-static-wbmp.la
+if INCLUDE_XPM
+STATIC_XPM_LIB = libstatic-pixbufloader-xpm.la
+else
+XPM_LIB = libpixbufloader-xpm.la
+endif
 
+if INCLUDE_XBM
+STATIC_XBM_LIB = libstatic-pixbufloader-xbm.la
+else
 XBM_LIB = libpixbufloader-xbm.la
-STATIC_XBM_LIB = libpixbufloader-static-xbm.la
+endif
 
+if INCLUDE_TGA
+STATIC_TGA_LIB = libstatic-pixbufloader-tga.la
+else
 TGA_LIB = libpixbufloader-tga.la
-STATIC_TGA_LIB = libpixbufloader-static-tga.la
+endif
 
+if INCLUDE_PCX
+STATIC_PCX_LIB = libstatic-pixbufloader-pcx.la
+else
 PCX_LIB = libpixbufloader-pcx.la
-STATIC_PCX_LIB = libpixbufloader-static-pcx.la
+endif
+
+if INCLUDE_ICNS
+STATIC_ICNS_LIB = libstatic-pixbufloader-icns.la
+else
+ICNS_LIB = libpixbufloader-icns.la
+endif
+
+if HAVE_JASPER
+if INCLUDE_JASPER
+STATIC_JASPER_LIB = libstatic-pixbufloader-jasper.la
+else
+JASPER_LIB = libpixbufloader-jasper.la
+endif
+endif
+
+if INCLUDE_QTIF
+STATIC_QTIF_LIB = libstatic-pixbufloader-qtif.la
+else
+QTIF_LIB = libpixbufloader-qtif.la
+endif
 
 if BUILD_DYNAMIC_MODULES
 
 loader_LTLIBRARIES =   \
        $(PNG_LIB)      \
-       $(JPEG_LIB)     \
+       $(BMP_LIB)      \
+       $(WBMP_LIB)     \
        $(GIF_LIB)      \
        $(ICO_LIB)      \
        $(ANI_LIB)      \
+       $(JPEG_LIB)     \
+       $(PNM_LIB)      \
        $(RAS_LIB)      \
-       $(XPM_LIB)      \
        $(TIFF_LIB)     \
-       $(PNM_LIB)      \
-       $(BMP_LIB)      \
-       $(WBMP_LIB)     \
+       $(XPM_LIB)      \
        $(XBM_LIB)      \
        $(TGA_LIB)      \
-       $(PCX_LIB)
+       $(ICNS_LIB)     \
+       $(PCX_LIB)      \
+       $(JASPER_LIB)   \
+       $(QTIF_LIB)     \
+       $(GDIPLUS_LIBS)
 
 
-extra_sources = 
-builtin_objs = 
-else
-loader_LTLIBRARIES = 
+endif
 
 noinst_LTLIBRARIES =           \
        $(STATIC_PNG_LIB)       \
-       $(STATIC_JPEG_LIB)      \
+       $(STATIC_BMP_LIB)       \
+       $(STATIC_WBMP_LIB)      \
        $(STATIC_GIF_LIB)       \
        $(STATIC_ICO_LIB)       \
        $(STATIC_ANI_LIB)       \
+       $(STATIC_JPEG_LIB)      \
+       $(STATIC_PNM_LIB)       \
        $(STATIC_RAS_LIB)       \
-       $(STATIC_XPM_LIB)       \
        $(STATIC_TIFF_LIB)      \
-       $(STATIC_PNM_LIB)       \
-       $(STATIC_BMP_LIB)       \
-       $(STATIC_WBMP_LIB)      \
+       $(STATIC_XPM_LIB)       \
        $(STATIC_XBM_LIB)       \
        $(STATIC_TGA_LIB)       \
-       $(STATIC_PCX_LIB)
+       $(STATIC_ICNS_LIB)      \
+       $(STATIC_PCX_LIB)       \
+       $(STATIC_JASPER_LIB)    \
+       $(STATIC_QTIF_LIB)      \
+       $(STATIC_GDIPLUS_LIBS)
 
 builtin_objs = @INCLUDED_LOADER_OBJ@
 
-endif
 
 DEPS = libgdk_pixbuf-$(GTK_API_VERSION).la
 INCLUDES = \
        -DG_LOG_DOMAIN=\"GdkPixbuf\"            \
+       -DGDK_PIXBUF_COMPILATION                \
        -I$(top_srcdir) -I$(top_builddir)       \
        -I$(top_srcdir)/gdk-pixbuf              \
        -I$(top_builddir)/gdk-pixbuf            \
-       -DGTK_SYSCONFDIR=\"$(sysconfdir)\"      \
+       -DGTK_LIBDIR=\"$(libdir)\"      \
        -DGTK_VERSION=\"$(GTK_VERSION)\"        \
        -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
-       -DG_DISABLE_DEPRECATED                  \
-       -DGDK_PIXBUF_DISABLE_DEPRECATED         \
        -DGTK_PREFIX=\"$(prefix)\"              \
        $(INCLUDED_LOADER_DEFINE)               \
        $(GTK_DEBUG_FLAGS)                      \
@@ -268,46 +519,49 @@ INCLUDES = \
        -DGDK_PIXBUF_ENABLE_BACKEND
 
 AM_CPPFLAGS = "-DPIXBUF_LIBDIR=\"$(loaderdir)\"" "-DBUILT_MODULES_DIR=\"$(srcdir)/.libs\""
-LDADDS = libgdk_pixbuf-$(GTK_API_VERSION).la
+LDADDS = libgdk_pixbuf-$(GTK_API_VERSION).la $(GDK_PIXBUF_DEP_LIBS)
 
 noinst_PROGRAMS = test-gdk-pixbuf
 test_gdk_pixbuf_LDADD = $(LDADDS)
 
-bin_PROGRAMS = gdk-pixbuf-csource gdk-pixbuf-query-loaders
-gdk_pixbuf_csource_SOURCES = gdk-pixbuf-csource.c
-gdk_pixbuf_csource_LDADD = $(LDADDS)
+bin_PROGRAMS = gdk-pixbuf-csource-3.0 gdk-pixbuf-query-loaders-3.0
+gdk_pixbuf_csource_3_0_SOURCES = gdk-pixbuf-csource.c
+gdk_pixbuf_csource_3_0_LDADD = $(LDADDS)
 
-gdk_pixbuf_query_loaders_DEPENDENCIES = $(DEPS)
-gdk_pixbuf_query_loaders_LDADD = $(LDADDS)
+gdk_pixbuf_query_loaders_3_0_DEPENDENCIES = $(DEPS)
+gdk_pixbuf_query_loaders_3_0_LDADD = $(LDADDS)
 
-gdk_pixbuf_query_loaders_SOURCES = queryloaders.c
+gdk_pixbuf_query_loaders_3_0_SOURCES = queryloaders.c
 
 
 #
 # The GdkPixBuf library
 #
-libgdk_pixbufincludedir = $(includedir)/gtk-2.0/gdk-pixbuf
-libgdk_pixbuf_2_0_la_SOURCES =  \
-       gdk-pixbuf-i18n.h       \
-       gdk-pixbuf.c            \
-       gdk-pixbuf-animation.c  \
-       gdk-pixbuf-data.c       \
-       gdk-pixbuf-io.c         \
-       gdk-pixbuf-loader.c     \
-       gdk-pixbuf-scale.c      \
-       gdk-pixbuf-util.c       \
-       gdk-pixdata.c           \
+libgdk_pixbufincludedir = $(includedir)/gtk-3.0/gdk-pixbuf
+libgdk_pixbuf_3_0_la_SOURCES =   \
+       gdk-pixbuf-i18n.h        \
+       gdk-pixbuf.c             \
+       gdk-pixbuf-animation.c   \
+       gdk-pixbuf-data.c        \
+       gdk-pixbuf-io.c          \
+       gdk-pixbuf-loader.c      \
+       gdk-pixbuf-scale.c       \
+       gdk-pixbuf-simple-anim.c \
+       gdk-pixbuf-scaled-anim.c \
+       gdk-pixbuf-util.c        \
+       gdk-pixdata.c            \
        gdk-pixbuf-enum-types.c
 
-libgdk_pixbuf_2_0_la_LDFLAGS = \
+libgdk_pixbuf_3_0_la_LDFLAGS = \
+       $(gdk_pixbuf_win32_res_ldflag)          \
        -version-info $(LT_VERSION_INFO)        \
        $(LIBTOOL_EXPORT_OPTIONS)               \
        $(no_undefined)                         \
        $(gdk_pixbuf_symbols)
 
 
-libgdk_pixbuf_2_0_la_LIBADD = pixops/libpixops.la $(builtin_objs) $(gdk_pixbuf_win32res_lo) $(GDK_PIXBUF_DEP_LIBS)
-libgdk_pixbuf_2_0_la_DEPENDENCIES = pixops/libpixops.la $(builtin_objs) $(gdk_pixbuf_def) $(gdk_pixbuf_win32res_lo)
+libgdk_pixbuf_3_0_la_LIBADD = pixops/libpixops.la $(builtin_objs) $(GDK_PIXBUF_DEP_LIBS) $(libole32)
+libgdk_pixbuf_3_0_la_DEPENDENCIES = pixops/libpixops.la $(builtin_objs) $(gdk_pixbuf_def) $(gdk_pixbuf_win32_res)
 
 gdk_pixbuf_headers =                   \
        gdk-pixbuf.h                    \
@@ -315,6 +569,7 @@ gdk_pixbuf_headers =                        \
        gdk-pixbuf-transform.h          \
        gdk-pixbuf-io.h                 \
        gdk-pixbuf-animation.h          \
+       gdk-pixbuf-simple-anim.h        \
        gdk-pixbuf-loader.h
 
 libgdk_pixbufinclude_HEADERS =         \
@@ -325,16 +580,28 @@ libgdk_pixbufinclude_HEADERS =    \
        gdk-pixdata.h
 
 noinst_HEADERS =               \
-       gdk-pixbuf-private.h
-
-BUILT_SOURCES = gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.c \
-  gdk-pixbuf-marshal.h gdk-pixbuf-marshal.c
+       gdk-pixbuf-alias.h      \
+       gdk-pixbuf-private.h    \
+       gdk-pixbuf-scaled-anim.h \
+       xpm-color-table.h
+
+BUILT_SOURCES =                \
+       gdk-pixbuf-alias.h      \
+       gdk-pixbuf-aliasdef.c   \
+       gdk-pixbuf-enum-types.h \
+       gdk-pixbuf-enum-types.c \
+       gdk-pixbuf-marshal.h    \
+       gdk-pixbuf-marshal.c    \
+       gdk-pixbuf-features.h
 
 CLEANFILES =
-MAINTAINERCLEANFILES = \
-  gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.c \
-  gdk-pixbuf-marshal.h gdk-pixbuf-marshal.c \
-  gdk-pixbuf.loaders
+MAINTAINERCLEANFILES =                 \
+       gdk-pixbuf-aliasdef.c   \
+       gdk-pixbuf-enum-types.h \
+       gdk-pixbuf-enum-types.c \
+       gdk-pixbuf-marshal.h    \
+       gdk-pixbuf-marshal.c    \
+       loaders.cache
 
 #
 # gdk-pixbuf-enum-types.h
@@ -342,12 +609,8 @@ MAINTAINERCLEANFILES = \
 gdk-pixbuf-enum-types.h: s-enum-types-h
        @true
 
-s-enum-types-h: @REBUILD@ $(gdk_pixbuf_headers) Makefile
-       ( cd $(srcdir) && glib-mkenums \
-                       --fhead "#ifndef __GDK_PIXBUF_ENUM_TYPES_H__\n#define __GDK_PIXBUF_ENUM_TYPES_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
-                       --fprod "/* enumerations from \"@filename@\" */\n" \
-                       --vhead "GType @enum_name@_get_type (void);\n#define GDK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n"         \
-                       --ftail "G_END_DECLS\n\n#endif /* __GDK_PIXBUF_ENUM_TYPES_H__ */" \
+s-enum-types-h: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.h.template
+       ( cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.h.template \
                $(gdk_pixbuf_headers) ) > tmp-gdk-pixbuf-enum-types.h \
        && (cmp -s tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h || cp tmp-gdk-pixbuf-enum-types.h gdk-pixbuf-enum-types.h ) \
        && rm -f tmp-gdk-pixbuf-enum-types.h \
@@ -359,13 +622,8 @@ MAINTAINERCLEANFILES += s-enum-types-h
 #
 # gdk-pixbuf-enum-types.c
 #
-gdk-pixbuf-enum-types.c: @REBUILD@ $(gdk_pixbuf_headers) Makefile
-       (cd $(srcdir) && glib-mkenums \
-               --fhead "#include <gdk-pixbuf/gdk-pixbuf.h>" \
-               --fprod "\n/* enumerations from \"@filename@\" */" \
-               --vhead "GType\n@enum_name@_get_type (void)\n{\n  static GType etype = 0;\n  if (etype == 0) {\n    static const G@Type@Value values[] = {"       \
-               --vprod "      { @VALUENAME@, \"@VALUENAME@\", \"@valuenick@\" }," \
-               --vtail "      { 0, NULL, NULL }\n    };\n    etype = g_@type@_register_static (\"@EnumName@\", values);\n  }\n  return etype;\n}\n" \
+gdk-pixbuf-enum-types.c: @REBUILD@ $(gdk_pixbuf_headers) gdk-pixbuf-enum-types.c.template
+       (cd $(srcdir) && $(GLIB_MKENUMS) --template gdk-pixbuf-enum-types.c.template \
                  $(gdk_pixbuf_headers)) > gdk-pixbuf-enum-types.c
 
 #
@@ -375,7 +633,9 @@ gdk-pixbuf-marshal.h: @REBUILD@ stamp-gdk-pixbuf-marshal.h
        @true
 
 stamp-gdk-pixbuf-marshal.h: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
-       $(GLIB_GENMARSHAL) --prefix=gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --header >> xgen-gmh \
+       echo "#if !defined(GDK_PIXBUF_DISABLE_DEPRECATED) || defined(GDK_PIXBUF_COMPILATION)" > xgen-gmh \
+       && $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --header >> xgen-gmh \
+       && echo "#endif /* !GDK_PIXBUF_DISABLE_DEPRECATED || GDK_PIXBUF_COMPILATION */" >> xgen-gmh \
        && (cmp -s xgen-gmh gdk-pixbuf-marshal.h || cp xgen-gmh gdk-pixbuf-marshal.h) \
        && rm -f xgen-gmh xgen-gmh~ \
        && echo timestamp > $(@F)
@@ -387,7 +647,7 @@ MAINTAINERCLEANFILES += stamp-gdk-pixbuf-marshal.h
 # gdk-pixbuf-marshal.c
 #
 $(srcdir)/gdk-pixbuf-marshal.c: @REBUILD@ $(srcdir)/gdk-pixbuf-marshal.list
-       $(GLIB_GENMARSHAL) --prefix=gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --body >> xgen-gmc \
+       (echo -e "#include <gdk-pixbuf/gdk-pixbuf.h>\n#include \"gdk-pixbuf-alias.h\"" | $(GLIB_GENMARSHAL) --prefix=_gdk_pixbuf_marshal $(srcdir)/gdk-pixbuf-marshal.list --body ) >> xgen-gmc \
        && cp xgen-gmc gdk-pixbuf-marshal.c \
        && rm -f xgen-gmc xgen-gmc~
 
@@ -400,26 +660,41 @@ distclean-local:
          rm -f $(MAINTAINERCLEANFILES); \
        fi
 
-EXTRA_DIST                                   \
+EXTRA_DIST +=                                  \
         gdk-pixbuf-csource.1                   \
        makefile.msc                            \
+       gdk-pixbuf.symbols                      \
+       makegdkpixbufalias.pl                   \
+       abicheck.sh                             \
+       pltcheck.sh                             \
        gdk_pixbuf.def                          \
        gdk_pixbuf.rc                           \
        gdk-pixbuf-marshal.c                    \
        gdk-pixbuf-marshal.list                 \
-       pixbufloader_ico.def                    \
-       pixbufloader_ani.def                    \
-       pixbufloader_pnm.def                    \
-       pixbufloader_xpm.def                    \
-       pixbufloader_bmp.def                    \
-       pixbufloader_jpeg.def                   \
-       pixbufloader_ras.def                    \
-       pixbufloader_gif.def                    \
-       pixbufloader_png.def                    \
-       pixbufloader_tiff.def                   \
-       pixbufloader_wbmp.def                   \
-       pixbufloader_xbm.def                    \
-       pixbufloader_tga.def
+       gdk-pixbuf-enum-types.c.template        \
+       gdk-pixbuf-enum-types.h.template        \
+       gen-color-table.pl
+
+if HAVE_INTROSPECTION
+
+GdkPixbuf-3.0.gir: libgdk_pixbuf-3.0.la Makefile
+GdkPixbuf_3_0_gir_SCANNERFLAGS = --strip-prefix=Gdk
+GdkPixbuf_3_0_gir_INCLUDES = GModule-2.0 Gio-2.0
+GdkPixbuf_3_0_gir_LIBS = libgdk_pixbuf-3.0.la
+GdkPixbuf_3_0_gir_CFLAGS = $(INCLUDES)
+GdkPixbuf_3_0_gir_FILES = \
+    $(addprefix $(srcdir)/,$(libgdk_pixbufinclude_HEADERS)) \
+    $(addprefix $(srcdir)/,$(libgdk_pixbuf_3_0_la_SOURCES))
+INTROSPECTION_GIRS += GdkPixbuf-3.0.gir
+
+girdir = $(datadir)/gir-1.0
+gir_DATA = $(INTROSPECTION_GIRS)
+
+typelibsdir = $(libdir)/girepository-1.0
+typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
+
+CLEANFILES += $(gir_DATA) $(typelibs_DATA)
+endif
 
 if CROSS_COMPILING
 RUN_QUERY_LOADER_TEST=false
@@ -433,39 +708,41 @@ endif
 # that makes the install target for the loader libraries a dependency on
 # install-data-am, and not install-exec-am. We need to ensure this gets run
 # after the libraries are installed in their final locations.
-install-data-hook: install-ms-lib install-libtool-import-lib
+install-data-hook: install-ms-lib install-def-file
        @if $(RUN_QUERY_LOADER_TEST) ; then \
-         $(mkinstalldirs) $(DESTDIR)$(sysconfdir)/gtk-2.0 ; \
-         $(top_builddir)/gdk-pixbuf/gdk-pixbuf-query-loaders > $(DESTDIR)$(sysconfdir)/gtk-2.0/gdk-pixbuf.loaders ; \
+         $(mkinstalldirs) $(DESTDIR)$(libdir)/gtk-3.0/3.0.0 ; \
+         $(top_builddir)/gdk-pixbuf/gdk-pixbuf-query-loaders-3.0 > $(DESTDIR)$(libdir)/gtk-3.0/3.0.0/loaders.cache ; \
        else \
          echo "***" ; \
-         echo "*** Warning: gdk-pixbuf.loaders not built" ; \
+         echo "*** Warning: loaders.cache not built" ; \
          echo "***" ; \
          echo "*** Generate this file manually on host" ; \
-         echo "*** system using gdk-pixbuf-query-loaders" ; \
+         echo "*** system using gdk-pixbuf-query-loaders-3.0" ; \
          echo "***" ; \
        fi
 
-uninstall-local: uninstall-ms-lib uninstall-libtool-import-lib
-       rm -f $(DESTDIR)$(sysconfdir)/gtk-2.0/gdk-pixbuf.loaders
+uninstall-local: uninstall-ms-lib uninstall-def-file
+       rm -f $(DESTDIR)$(libdir)/gtk-3.0/3.0.0/loaders.cache
 
 if CROSS_COMPILING
 else
-all-local: gdk-pixbuf.loaders
+all-local: loaders.cache
 endif
 
 if BUILD_DYNAMIC_MODULES
-gdk-pixbuf.loaders: $(loader_LTLIBRARIES) gdk-pixbuf-query-loaders
+loaders.cache: $(loader_LTLIBRARIES) gdk-pixbuf-query-loaders-3.0$(EXEEXT)
        LOADERS=`echo libpixbufloader-*.la` ; \
        if test "x$$LOADERS" != 'xlibpixbufloader-*.la' ; then \
-          echo "Writing a gdk-pixbuf.loader file to use when running examples before installing gdk-pixbuf."; \
-         $(top_builddir)/gdk-pixbuf/gdk-pixbuf-query-loaders $$LOADERS > ./gdk-pixbuf.loaders ;\
+          echo "Writing a loaders.cache file to use when running examples before installing gdk-pixbuf."; \
+         $(top_builddir)/gdk-pixbuf/gdk-pixbuf-query-loaders-3.0 $$LOADERS > ./loaders.cache ;\
        else \
           echo "No dynamic modules found; will use only static modules for uninstalled example programs."; \
-         touch gdk-pixbuf.loaders; \
+         touch loaders.cache; \
        fi
 else
-gdk-pixbuf.loaders: 
+loaders.cache:
        echo "No dynamic modules found; will use only static modules for uninstalled example programs."; \
-       touch gdk-pixbuf.loaders;
+       touch loaders.cache;
 endif
+
+-include $(top_srcdir)/git.mk