]> Pileus Git - ~andy/gtk/blobdiff - gtk/Makefile.am
Fix up linker flags
[~andy/gtk] / gtk / Makefile.am
index 7e5c5c3522458e65ea2349e86246804404a5485a..6d1318de99e3376bd9ab4fffa5a3b177bfcb9b5d 100644 (file)
@@ -1,19 +1,38 @@
 # Makefile.am for gtk+/gtk
+include $(top_srcdir)/Makefile.decl
+include $(INTROSPECTION_MAKEFILE)
+INTROSPECTION_GIRS =
+INTROSPECTION_SCANNER_ARGS = \
+       --add-include-path=../gdk-pixbuf \
+       --add-include-path=../gdk
+INTROSPECTION_COMPILER_ARGS = \
+       --includedir=$(srcdir) \
+    --includedir=. \
+    --includedir=../gdk-pixbuf \
+    --includedir=../gdk
 
-SUBDIRS=theme-bits
-
-if OS_UNIX
-SUBDIRS += xdgmime
-GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview %f"
+if USE_QUARTZ
+GTK_PRINT_PREVIEW_COMMAND="open -a /Applications/Preview.app %f"
+else
+GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
 endif
 
-DIST_SUBDIRS=theme-bits xdgmime
+SUBDIRS = theme-bits . tests
+DIST_SUBDIRS=theme-bits tests
 
+if HAVE_PAPI_CUPS
+GTK_PRINT_BACKENDS=file,papi,cups
+else
 if HAVE_CUPS
 GTK_PRINT_BACKENDS=file,cups
 else
+if HAVE_PAPI
+GTK_PRINT_BACKENDS=file,papi
+else
 GTK_PRINT_BACKENDS=file,lpr
 endif
+endif
+endif
 
 INCLUDES =                                             \
        -DG_LOG_DOMAIN=\"Gtk\"                          \
@@ -27,17 +46,19 @@ INCLUDES =                                          \
        -DGTK_COMPILATION                               \
        -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\"  \
        -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\"    \
+       -I$(top_builddir)                               \
        -I$(top_builddir)/gtk                           \
        -I$(top_srcdir) -I../gdk                        \
        -I$(top_srcdir)/gdk                             \
        -I$(top_srcdir)/gdk-pixbuf -I../gdk-pixbuf      \
-       -DGDK_PIXBUF_DISABLE_DEPRECATED                 \
        -DGDK_DISABLE_DEPRECATED                        \
+       -DGTK_DISABLE_DEPRECATED                        \
        -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED            \
        -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED          \
        $(GTK_DEBUG_FLAGS)                              \
        $(GTK_DEP_CFLAGS)                               \
-       $(gtk_clipboard_dnd_c_sources_CFLAGS)
+       $(gtk_clipboard_dnd_c_sources_CFLAGS)           \
+       $(INCLUDED_IMMODULE_DEFINE)
 
 gtarget=$(gdktarget)
 
@@ -47,16 +68,16 @@ endif
 
 if OS_WIN32
 gtk_def = gtk.def
-gtk_win32_symbols = -export-symbols $(gtk_def)
+gtk_win32_symbols = -export-symbols $(srcdir)/gtk.def
 
 gtk_win32_res = gtk-win32-res.o
-gtk_win32_res_ldflag = -Wl,$(gtk_win32_res)
+gtk_win32_res_ldflag = -Wl,gtk-win32-res.o
 
 gtk-win32-res.o : gtk-win32.rc
        $(WINDRES) gtk-win32.rc $@
 
 install-def-file: gtk.def
-       $(INSTALL) $(gtk_def) $(DESTDIR)$(libdir)/gtk-win32-2.0.def
+       $(INSTALL) $(srcdir)/gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
 uninstall-def-file:
        -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
 else
@@ -68,7 +89,7 @@ if MS_LIB_AVAILABLE
 noinst_DATA = gtk-win32-$(GTK_API_VERSION).lib
 
 gtk-win32-$(GTK_API_VERSION).lib: libgtk-win32-$(GTK_API_VERSION).la gtk.def
-       lib -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
+       lib -machine:@LIB_EXE_MACHINE_FLAG@ -name:libgtk-win32-$(GTK_API_VERSION)-@LT_CURRENT_MINUS_AGE@.dll -def:gtk.def -out:$@
 
 install-ms-lib:
        $(INSTALL) gtk-win32-$(GTK_API_VERSION).lib $(DESTDIR)$(libdir)
@@ -80,8 +101,10 @@ 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)
 gtk.def: gtk.symbols
-       (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gtk.symbols | sed -e '/^$$/d' -e 's/^/    /' -e 's/G_GNUC_[^ ]*//g') > gtk.def
+       (echo -e EXPORTS; $(CPP) -P -DINCLUDE_VARIABLES -DG_OS_WIN32 -DALL_FILES - <$(srcdir)/gtk.symbols | sed -e '/^$$/d' -e 's/^/    /' -e 's/G_GNUC_[^ ]*//g') > $(srcdir)/gtk.def
 
 gtkalias.h: gtk.symbols
          $(PERL) $(srcdir)/makegtkalias.pl < $(srcdir)/gtk.symbols > gtkalias.h
@@ -99,26 +122,35 @@ if OS_LINUX
 TESTS += abicheck.sh pltcheck.sh
 endif
 
-# libtool stuff: set version and export symbols for resolving
-# since automake doesn't support conditionalized libsomething_la_LDFLAGS
-# we use the general approach here
 libgtkincludedir = $(includedir)/gtk-2.0/gtk
 libadd =                                                               \
        $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
        $(top_builddir)/gdk/$(gdktargetlib)                             \
        $(GTK_DEP_LIBS)
+deps =
 
-if OS_UNIX
-libadd += xdgmime/libxdgmime.la
-endif
-
-# common options for the various packages.
+# libtool stuff: set version and export symbols for resolving
+# since automake doesn't support conditionalized libsomething_la_LDFLAGS
+# we use the general approach here
 libtool_opts =                                                 \
   -version-info $(LT_VERSION_INFO)                             \
   -export-dynamic $(no_undefined) $(LIBTOOL_EXPORT_OPTIONS)    \
   -rpath $(libdir) $(libgtk_target_ldflags)
 
 
+included-modules:
+if HAVE_INCLUDED_IMMMODULES
+       @cd $(top_builddir)/modules/input && $(MAKE) $(AM_MAKEFLAGS) included-modules
+
+libadd += $(INCLUDED_IMMODULE_OBJ)
+deps += $(INCLUDED_IMMODULE_OBJ)
+
+$(INCLUDED_IMMODULE_OBJ): included-modules
+       @true
+endif
+
+.PHONY: included-modules
+
 #
 # setup source file variables
 #
@@ -134,6 +166,7 @@ gtk_public_h_sources =          \
        gtkaccessible.h         \
        gtkaction.h             \
        gtkactiongroup.h        \
+       gtkactivatable.h        \
        gtkadjustment.h         \
        gtkalignment.h          \
        gtkarrow.h              \
@@ -143,6 +176,8 @@ gtk_public_h_sources =          \
        gtkbin.h                \
        gtkbindings.h           \
        gtkbox.h                \
+       gtkbuilder.h            \
+       gtkbuildable.h          \
        gtkbutton.h             \
        gtkcalendar.h           \
        gtkcelleditable.h       \
@@ -153,43 +188,40 @@ gtk_public_h_sources =          \
        gtkcellrendererpixbuf.h \
        gtkcellrendererprogress.h \
        gtkcellrendererspin.h   \
+       gtkcellrendererspinner.h\
        gtkcellrenderertext.h   \
        gtkcellrenderertoggle.h \
        gtkcellview.h           \
        gtkcheckbutton.h        \
        gtkcheckmenuitem.h      \
        gtkclipboard.h          \
-       gtkclist.h              \
        gtkcolorbutton.h        \
        gtkcolorsel.h           \
        gtkcolorseldialog.h     \
-       gtkcombo.h              \
        gtkcombobox.h           \
        gtkcomboboxentry.h      \
        gtkcontainer.h          \
-       gtkctree.h              \
-       gtkcurve.h              \
        gtkdebug.h              \
        gtkdialog.h             \
        gtkdnd.h                \
        gtkdrawingarea.h        \
        gtkeditable.h           \
        gtkentry.h              \
+       gtkentrybuffer.h        \
        gtkentrycompletion.h    \
        gtkenums.h              \
        gtkeventbox.h           \
        gtkexpander.h           \
+       gtkextendedlayout.h     \
        gtkfilechooser.h        \
        gtkfilechooserbutton.h  \
        gtkfilechooserdialog.h  \
        gtkfilechooserwidget.h  \
        gtkfilefilter.h         \
-       gtkfilesel.h            \
        gtkfixed.h              \
        gtkfontbutton.h         \
        gtkfontsel.h            \
        gtkframe.h              \
-       gtkgamma.h              \
        gtkgc.h                 \
        gtkhandlebox.h          \
        gtkhbbox.h              \
@@ -199,6 +231,7 @@ gtk_public_h_sources =          \
        gtkhscale.h             \
        gtkhscrollbar.h         \
        gtkhseparator.h         \
+       gtkhsv.h                \
        gtkiconfactory.h        \
        gtkicontheme.h          \
        gtkiconview.h           \
@@ -208,15 +241,12 @@ gtk_public_h_sources =          \
        gtkimcontextsimple.h    \
        gtkimmodule.h           \
        gtkimmulticontext.h     \
-       gtkinputdialog.h        \
+       gtkinfobar.h            \
        gtkinvisible.h          \
        gtkitem.h               \
-       gtkitemfactory.h        \
        gtklabel.h              \
        gtklayout.h             \
        gtklinkbutton.h         \
-       gtklist.h               \
-       gtklistitem.h           \
        gtkliststore.h          \
        gtkmain.h               \
        gtkmenu.h               \
@@ -227,22 +257,19 @@ gtk_public_h_sources =          \
        gtkmessagedialog.h      \
        gtkmisc.h               \
        gtkmodules.h            \
+       gtkmountoperation.h     \
        gtknotebook.h           \
        gtkobject.h             \
-       gtkoldeditable.h        \
-       gtkoptionmenu.h         \
+       gtkorientable.h         \
        gtkpagesetup.h          \
        gtkpaned.h              \
        gtkpapersize.h          \
-       gtkpixmap.h             \
        gtkplug.h               \
-       gtkpreview.h            \
        gtkprintcontext.h       \
        gtkprintoperation.h     \
        gtkprintoperationpreview.h      \
        gtkprintsettings.h      \
        gtkprivate.h            \
-       gtkprogress.h           \
        gtkprogressbar.h        \
        gtkradioaction.h        \
        gtkradiobutton.h        \
@@ -250,6 +277,7 @@ gtk_public_h_sources =          \
        gtkradiotoolbutton.h    \
        gtkrange.h              \
        gtkrc.h                 \
+       gtkrecentaction.h       \
        gtkrecentchooser.h      \
        gtkrecentchooserdialog.h \
        gtkrecentchoosermenu.h  \
@@ -258,24 +286,26 @@ gtk_public_h_sources =          \
        gtkrecentmanager.h      \
        gtkruler.h              \
        gtkscale.h              \
+       gtkscalebutton.h        \
        gtkscrollbar.h          \
        gtkscrolledwindow.h     \
        gtkselection.h          \
        gtkseparator.h          \
        gtkseparatormenuitem.h  \
        gtkseparatortoolitem.h  \
+       gtkshow.h               \
        gtksettings.h           \
-       gtksignal.h             \
        gtksizegroup.h          \
        gtksocket.h             \
        gtkspinbutton.h         \
+       gtkspinner.h            \
        gtkstatusbar.h          \
        gtkstatusicon.h         \
        gtkstock.h              \
        gtkstyle.h              \
        gtktable.h              \
        gtktearoffmenuitem.h    \
-       gtktext.h               \
+       gtktestutils.h          \
        gtktextbuffer.h         \
        gtktextbufferrichtext.h \
        gtktextchild.h          \
@@ -285,17 +315,17 @@ gtk_public_h_sources =          \
        gtktexttag.h            \
        gtktexttagtable.h       \
        gtktextview.h           \
-       gtktipsquery.h          \
        gtktoggleaction.h       \
        gtktogglebutton.h       \
        gtktoggletoolbutton.h   \
        gtktoolbar.h            \
        gtktoolbutton.h         \
        gtktoolitem.h           \
-       gtktooltips.h           \
-       gtktree.h               \
+       gtktoolitemgroup.h      \
+       gtktoolpalette.h        \
+       gtktoolshell.h          \
+       gtktooltip.h            \
        gtktreednd.h            \
-       gtktreeitem.h           \
        gtktreemodel.h          \
        gtktreemodelfilter.h    \
        gtktreemodelsort.h      \
@@ -309,6 +339,7 @@ gtk_public_h_sources =          \
        gtkvbbox.h              \
        gtkvbox.h               \
        gtkviewport.h           \
+       gtkvolumebutton.h       \
        gtkvpaned.h             \
        gtkvruler.h             \
        gtkvscale.h             \
@@ -317,36 +348,42 @@ gtk_public_h_sources =          \
        gtkwidget.h             \
        gtkwindow.h
 
+if OS_UNIX
 gtk_unix_print_public_h_sources =    \
        gtkpagesetupunixdialog.h        \
        gtkprintunixdialog.h            \
        gtkprinter.h                    \
-       gtkprintjob.h
-
+       gtkprintjob.h                   \
+       gtkunixprint.h
+endif
 
 # Installed header files without compatibility guarantees
 # that are not included in gtk/gtk.h
 gtk_semi_private_h_sources =    \
-       gtktextlayout.h         \
-       gtkfilesystem.h
+       gtktextlayout.h
 
 # GTK+ header files that don't get installed
 gtk_private_h_sources =                \
+       gtkquery.h              \
+       gtksearchengine.h       \
+       gtksearchenginesimple.h \
        gtkdndcursors.h         \
        gtkentryprivate.h       \
+       gtkbuilderprivate.h     \
+       gtkcustompaperunixdialog.h\
        gtkfilechooserdefault.h \
        gtkfilechooserembed.h   \
        gtkfilechooserentry.h   \
        gtkfilechooserprivate.h \
        gtkfilechoosersettings.h \
        gtkfilechooserutils.h   \
+       gtkfilesystem.h         \
        gtkfilesystemmodel.h    \
-       gtkfilesystemunix.h     \
-       gtkhsv.h                \
        gtkiconcache.h          \
        gtkintl.h               \
        gtkkeyhash.h            \
        gtkmnemonichash.h       \
+       gtkmountoperationprivate.h \
        gtkpathbar.h            \
        gtkplugprivate.h        \
        gtkprintoperation-private.h\
@@ -355,7 +392,6 @@ gtk_private_h_sources =             \
        gtkrecentchooserdefault.h \
        gtkrecentchooserprivate.h \
        gtkrecentchooserutils.h \
-       gtksequence.h           \
        gtksocketprivate.h      \
        gtktextbtree.h          \
        gtktextbufferserialize.h\
@@ -368,12 +404,17 @@ gtk_private_h_sources =           \
        gtktextutil.h           \
        gtkthemes.h             \
        gtktoggleactionprivate.h\
+       gtktoolpaletteprivate.h \
        gtktreedatalist.h       \
        gtktreeprivate.h        \
-       gtkwindow-decorate.h
+       gtkwindow-decorate.h    \
+       $(gtk_clipboard_dnd_h_sources)
 
 # GTK+ C sources to build the library from
 gtk_base_c_sources =            \
+       gtkquery.c              \
+       gtksearchengine.c       \
+       gtksearchenginesimple.c \
        fnmatch.c               \
        gtkaboutdialog.c        \
        gtkaccelgroup.c         \
@@ -382,6 +423,7 @@ gtk_base_c_sources =            \
        gtkaccessible.c         \
        gtkaction.c             \
        gtkactiongroup.c        \
+       gtkactivatable.c        \
        gtkadjustment.c         \
        gtkalignment.c          \
        gtkarrow.c              \
@@ -391,6 +433,9 @@ gtk_base_c_sources =            \
        gtkbin.c                \
        gtkbindings.c           \
        gtkbox.c                \
+       gtkbuildable.c          \
+       gtkbuilder.c            \
+       gtkbuilderparser.c      \
        gtkbutton.c             \
        gtkcalendar.c           \
        gtkcelleditable.c       \
@@ -401,28 +446,27 @@ gtk_base_c_sources =            \
        gtkcellrendererpixbuf.c \
        gtkcellrendererprogress.c \
        gtkcellrendererspin.c   \
+       gtkcellrendererspinner.c\
        gtkcellrenderertext.c   \
        gtkcellrenderertoggle.c \
        gtkcellview.c           \
        gtkcheckbutton.c        \
        gtkcheckmenuitem.c      \
-       gtkclist.c              \
        gtkcolorbutton.c        \
        gtkcolorsel.c           \
        gtkcolorseldialog.c     \
-       gtkcombo.c              \
        gtkcombobox.c           \
        gtkcomboboxentry.c      \
        gtkcontainer.c          \
-       gtkctree.c              \
-       gtkcurve.c              \
        gtkdialog.c             \
        gtkdrawingarea.c        \
        gtkeditable.c           \
        gtkentry.c              \
+       gtkentrybuffer.c        \
        gtkentrycompletion.c    \
        gtkeventbox.c           \
        gtkexpander.c           \
+       gtkextendedlayout.c     \
        gtkfilechooser.c        \
        gtkfilechooserbutton.c  \
        gtkfilechooserdefault.c \
@@ -433,14 +477,12 @@ gtk_base_c_sources =            \
        gtkfilechooserutils.c   \
        gtkfilechooserwidget.c  \
        gtkfilefilter.c         \
-       gtkfilesel.c            \
        gtkfilesystem.c         \
        gtkfilesystemmodel.c    \
        gtkfixed.c              \
        gtkfontbutton.c         \
        gtkfontsel.c            \
        gtkframe.c              \
-       gtkgamma.c              \
        gtkgc.c                 \
        gtkhandlebox.c          \
        gtkhbbox.c              \
@@ -452,6 +494,7 @@ gtk_base_c_sources =            \
        gtkhseparator.c         \
        gtkhsv.c                \
        gtkiconcache.c          \
+       gtkiconcachevalidator.c \
        gtkiconfactory.c        \
        gtkicontheme.c          \
        gtkiconview.c           \
@@ -461,16 +504,14 @@ gtk_base_c_sources =            \
        gtkimcontextsimple.c    \
        gtkimmodule.c           \
        gtkimmulticontext.c     \
+       gtkinfobar.c            \
        gtkinputdialog.c        \
        gtkinvisible.c          \
        gtkitem.c               \
-       gtkitemfactory.c        \
        gtkkeyhash.c            \
        gtklabel.c              \
        gtklayout.c             \
        gtklinkbutton.c         \
-       gtklist.c               \
-       gtklistitem.c           \
        gtkliststore.c          \
        gtkmain.c               \
        gtkmarshal.c            \
@@ -484,23 +525,20 @@ gtk_base_c_sources =            \
        gtkmisc.c               \
        gtkmnemonichash.c       \
        gtkmodules.c            \
+       gtkmountoperation.c     \
        gtknotebook.c           \
        gtkobject.c             \
-       gtkoldeditable.c        \
-       gtkoptionmenu.c         \
+       gtkorientable.c         \
        gtkpagesetup.c          \
        gtkpaned.c              \
        gtkpapersize.c          \
        gtkpathbar.c            \
-       gtkpixmap.c             \
        gtkplug.c               \
-       gtkpreview.c            \
        gtkprintcontext.c       \
        gtkprintoperation.c     \
        gtkprintoperationpreview.c      \
        gtkprintsettings.c      \
        gtkprintutils.c         \
-       gtkprogress.c           \
        gtkprogressbar.c        \
        gtkradioaction.c        \
        gtkradiobutton.c        \
@@ -509,6 +547,7 @@ gtk_base_c_sources =            \
        gtkrange.c              \
        gtkrbtree.c             \
        gtkrc.c                 \
+       gtkrecentaction.c       \
        gtkrecentchooserdefault.c \
        gtkrecentchooserdialog.c \
        gtkrecentchoosermenu.c  \
@@ -519,25 +558,26 @@ gtk_base_c_sources =            \
        gtkrecentmanager.c      \
        gtkruler.c              \
        gtkscale.c              \
+       gtkscalebutton.c        \
        gtkscrollbar.c          \
        gtkscrolledwindow.c     \
        gtkselection.c          \
        gtkseparator.c          \
        gtkseparatormenuitem.c  \
        gtkseparatortoolitem.c  \
-       gtksequence.c           \
        gtksettings.c           \
-       gtksignal.c             \
        gtksizegroup.c          \
+       gtkshow.c               \
        gtksocket.c             \
        gtkspinbutton.c         \
+       gtkspinner.c            \
        gtkstatusbar.c          \
        gtkstatusicon.c         \
        gtkstock.c              \
        gtkstyle.c              \
        gtktable.c              \
        gtktearoffmenuitem.c    \
-       gtktext.c               \
+       gtktestutils.c          \
        gtktextbtree.c          \
        gtktextbuffer.c         \
        gtktextbufferrichtext.c \
@@ -554,18 +594,18 @@ gtk_base_c_sources =            \
        gtktextutil.c           \
        gtktextview.c           \
        gtkthemes.c             \
-       gtktipsquery.c          \
        gtktoggleaction.c       \
        gtktogglebutton.c       \
        gtktoggletoolbutton.c   \
        gtktoolbar.c            \
        gtktoolbutton.c         \
        gtktoolitem.c           \
-       gtktooltips.c           \
-       gtktree.c               \
+       gtktoolitemgroup.c              \
+       gtktoolpalette.c        \
+       gtktoolshell.c          \
+       gtktooltip.c            \
        gtktreedatalist.c       \
        gtktreednd.c            \
-       gtktreeitem.c           \
        gtktreemodel.c          \
        gtktreemodelfilter.c    \
        gtktreemodelsort.c      \
@@ -579,6 +619,7 @@ gtk_base_c_sources =            \
        gtkuimanager.c          \
        gtkvbbox.c              \
        gtkvbox.c               \
+       gtkvolumebutton.c       \
        gtkviewport.c           \
        gtkvpaned.c             \
        gtkvruler.c             \
@@ -589,11 +630,61 @@ gtk_base_c_sources =            \
        gtkwindow-decorate.c    \
        gtkwindow.c             \
        $(gtk_clipboard_dnd_c_sources)
+
+# Broken
+gtk_public_h_sources += \
+       gtktext.h               \
+       gtktree.h               \
+       gtktreeitem.h
+gtk_base_c_sources += \
+       gtktext.c               \
+       gtktree.c               \
+       gtktreeitem.c
+
+# Deprecated
+gtk_public_h_sources += \
+       gtkclist.h              \
+       gtkcombo.h              \
+       gtkctree.h              \
+       gtkcurve.h              \
+       gtkfilesel.h            \
+       gtkgamma.h              \
+       gtkinputdialog.h        \
+       gtkitemfactory.h        \
+       gtklist.h               \
+       gtklistitem.h           \
+       gtkoldeditable.h        \
+       gtkoptionmenu.h         \
+       gtkpixmap.h             \
+       gtkpreview.h            \
+       gtkprogress.h           \
+       gtksignal.h             \
+       gtktipsquery.h          \
+       gtktooltips.h
+gtk_base_c_sources += \
+       gtkclist.c              \
+       gtkcombo.c              \
+       gtkctree.c              \
+       gtkcurve.c              \
+       gtkfilesel.c            \
+       gtkgamma.c              \
+       gtkitemfactory.c        \
+       gtklist.c               \
+       gtklistitem.c           \
+       gtkoldeditable.c        \
+       gtkoptionmenu.c         \
+       gtkpixmap.c             \
+       gtkpreview.c            \
+       gtkprogress.c           \
+       gtksignal.c             \
+       gtktipsquery.c          \
+       gtktooltips.c
+
 gtk_c_sources = $(gtk_base_c_sources)
 gtk_all_c_sources = $(gtk_base_c_sources)
 
 gtk_os_unix_c_sources = \
-       gtkfilesystemunix.c             \
+       gtkcustompaperunixdialog.c      \
        gtkpagesetupunixdialog.c        \
        gtkprinter.c                    \
        gtkprinteroption.c              \
@@ -602,26 +693,29 @@ gtk_os_unix_c_sources = \
        gtkprintjob.c                   \
        gtkprintoperation-unix.c        \
        gtkprintunixdialog.c            \
-        gtkprintbackend.c
+        gtkprintbackend.c              \
+       gtksearchenginebeagle.c         \
+       gtksearchenginetracker.c
 gtk_all_c_sources += $(gtk_os_unix_c_sources)
 if OS_UNIX
 gtk_private_h_sources += \
-       gtkfilesystemunix.h             \
+       gtkiconcachevalidator.h         \
        gtkprintbackend.h               \
        gtkprinter-private.h            \
        gtkprinteroption.h              \
        gtkprinteroptionset.h           \
-       gtkprinteroptionwidget.h
+       gtkprinteroptionwidget.h        \
+       gtksearchenginebeagle.h         \
+       gtksearchenginetracker.h
 gtk_c_sources += $(gtk_os_unix_c_sources)
 endif
 
 gtk_os_win32_c_sources = \
-       gtkfilesystemwin32.c            \
        gtkprint-win32.c                \
        gtkprintoperation-win32.c
 gtk_all_c_sources += $(gtk_os_win32_c_sources)
 if OS_WIN32
-gtk_private_h_sources += gtkfilesystemwin32.h gtkprint-win32.h
+gtk_private_h_sources += gtkprint-win32.h
 gtk_c_sources += $(gtk_os_win32_c_sources)
 endif
 
@@ -629,16 +723,24 @@ gtk_use_x11_c_sources = \
        gtkplug-x11.c   \
        gtksocket-x11.c \
        gtkxembed.c     \
-       gtktrayicon-x11.c
+       gtktrayicon-x11.c \
+       gtkmountoperation-x11.c
 gtk_use_win32_c_sources = \
        gtkplug-win32.c   \
        gtksocket-win32.c \
        gtkwin32embed.c   \
-       gtkwin32embedwidget.c
+       gtkwin32embedwidget.c \
+       gtkmountoperation-stub.c
+gtk_use_quartz_c_sources =     \
+       gtksearchenginequartz.c \
+       gtkplug-stub.c          \
+       gtksocket-stub.c        \
+       gtkmountoperation-stub.c
 gtk_use_stub_c_sources = \
        gtkplug-stub.c   \
-       gtksocket-stub.c
-gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_stub_c_sources)
+       gtksocket-stub.c \
+       gtkmountoperation-stub.c
+gtk_all_c_sources += $(gtk_use_x11_c_sources) $(gtk_use_win32_c_sources) $(gtk_use_quartz_c_sources) $(gtk_use_stub_c_sources)
 if USE_X11
 gtk_private_h_sources += gtkxembed.h gtktrayicon.h xembed.h
 gtk_c_sources += $(gtk_use_x11_c_sources)
@@ -647,17 +749,25 @@ if USE_WIN32
 gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
 gtk_c_sources += $(gtk_use_win32_c_sources)
 else
+if USE_QUARTZ
+gtk_private_h_sources += gtksearchenginequartz.h
+gtk_c_sources += $(gtk_use_quartz_c_sources)
+gtk_use_quartz_c_sources_CFLAGS = "-xobjective-c"
+else
 gtk_c_sources += $(gtk_use_stub_c_sources)
 endif
 endif
+endif
 
 if USE_QUARTZ
-gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c gtkquartz.h
+gtk_clipboard_dnd_c_sources = gtkclipboard-quartz.c gtkdnd-quartz.c gtkquartz.c
+gtk_clipboard_dnd_h_sources = gtkquartz.h
 gtk_clipboard_dnd_c_sources_CFLAGS = "-xobjective-c"
 else
 gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
-gtk_clipboard_dnd_c_sources_CFLAGS = 
+gtk_clipboard_dnd_c_sources_CFLAGS =
 endif
+EXTRA_DIST += gtkquartz.h
 
 # we use our own built_sources variable rules to avoid automake's
 # BUILT_SOURCES oddities
@@ -674,11 +784,13 @@ gtk_built_public_sources =                        \
 gtk_built_private_headers =                    \
        gtkalias.h                              \
        gtkmarshalers.h                         \
-       gtkbuiltincache.h
+       gtkbuiltincache.h                       \
+       gtkimcontextsimpleseqs.h
 
 gtk_built_sources =                            \
        gtkaliasdef.c                           \
        gtktypebuiltins.c                       \
+       gtktypefuncs.c                          \
        gtkmarshalers.c                         \
        gtkmarshal.c                            \
        ${gtk_built_private_headers}            \
@@ -706,9 +818,9 @@ gtk_extra_sources =                         \
 #
 # setup GTK+ sources and their dependencies
 #
-MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files)
+MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files) $(GENERATED_ICONS) stock-icons/icon-theme.cache
 EXTRA_HEADERS =
-EXTRA_DIST = $(gtk_private_h_sources) $(gtk_extra_sources)
+EXTRA_DIST += $(gtk_private_h_sources) $(gtk_extra_sources)
 EXTRA_DIST += $(gtk_built_sources)
 EXTRA_DIST += $(STOCK_ICONS)
 
@@ -716,7 +828,7 @@ EXTRA_DIST += $(STOCK_ICONS)
 # rules to generate built sources
 #
 # setup autogeneration dependencies
-gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc
+gen_sources = xgen-gdef xgen-gtbh xgen-gtic xgen-gmh xgen-gmc xgen-gmlh xgen-gmlc xgen-gtfsrc.c xgen-gtf
 CLEANFILES = $(gen_sources)
 
 BUILT_SOURCES = $(gtk_built_sources)
@@ -756,32 +868,31 @@ gtkmarshal.c: @REBUILD@ gtkmarshal.list
         echo "#define __gtk_marshal_MARSHAL_C__"; \
         echo "#include \"gtkaliasdef.c\"") >> xgen-gmc \
        && cp xgen-gmc gtkmarshal.c \
-       && rm -f xgen-gmc 
+       && rm -f xgen-gmc
 
 gtktypebuiltins.h: stamp-gtktypebuiltins.h
        @true
-stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) Makefile
-       ( cd $(srcdir) && $(GLIB_MKENUMS) \
-                       --fhead "#ifndef __GTK_TYPE_BUILTINS_H__\n#define __GTK_TYPE_BUILTINS_H__\n\n#include <glib-object.h>\n\nG_BEGIN_DECLS\n" \
-                       --fprod "/* enumerations from \"@filename@\" */\n" \
-                       --vhead "GType @enum_name@_get_type (void) G_GNUC_CONST;\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
-                       --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
+stamp-gtktypebuiltins.h: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.h.template
+       ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.h.template \
                $(gtk_public_h_sources) ) >> xgen-gtbh \
        && (cmp -s xgen-gtbh gtktypebuiltins.h || cp xgen-gtbh gtktypebuiltins.h ) \
        && rm -f xgen-gtbh \
        && echo timestamp > $(@F)
-gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) Makefile
-       ( cd $(srcdir) && $(GLIB_MKENUMS) \
-                       --fhead "#undef GTK_DISABLE_DEPRECATED\n#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.h\"\n#include \"gtkalias.h\"\n" \
-                       --ftail "#define __GTK_TYPE_BUILTINS_C__\n#include \"gtkaliasdef.c\"\n" \
-                       --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 (g_intern_static_string (\"@EnumName@\"), values);\n  }\n  return etype;\n}\n" \
+gtktypebuiltins.c: @REBUILD@ $(gtk_public_h_sources) gtktypebuiltins.c.template
+       ( cd $(srcdir) && $(GLIB_MKENUMS) --template gtktypebuiltins.c.template \
                $(gtk_public_h_sources) ) > xgen-gtbc \
        && cp xgen-gtbc gtktypebuiltins.c  \
        && rm -f xgen-gtbc
 
+gtktypefuncs.c: @REBUILD@ $(top_srcdir)/gtk/*.h $(top_srcdir)/gdk/*.h Makefile
+       echo '#include <gtk/gtk.h>' > xgen-gtfsrc.c && \
+         ${CPP} $(DEFS) $(INCLUDES) -DGTK_ENABLE_BROKEN $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) xgen-gtfsrc.c | \
+         grep -o '\bg[td]k_[a-zA-Z0-9_]*_get_type\b' | \
+         sort | uniq | \
+         sed '{ s/^/*tp++ = /; s/$$/();/; }' > xgen-gtf \
+       && cp xgen-gtf $@ && rm -f xgen-gtf
+gtktestutils.c: gtktypefuncs.c
+
 # target platform:
 lib_LTLIBRARIES = $(gtktargetlib)
 
@@ -792,36 +903,48 @@ gtkunixprintincludedir = $(includedir)/gtk-unix-print-2.0/gtk
 gtkunixprintinclude_HEADERS = $(gtk_unix_print_public_h_sources)
 
 libgtk_x11_2_0_la_SOURCES = $(gtk_c_sources)
-libgtk_linux_fb_2_0_la_SOURCES = $(gtk_c_sources)
 libgtk_win32_2_0_la_SOURCES = $(gtk_c_sources)
 libgtk_quartz_2_0_la_SOURCES = $(gtk_c_sources)
 libgtk_directfb_2_0_la_SOURCES = $(gtk_c_sources)
 
 libgtk_x11_2_0_la_LDFLAGS = $(libtool_opts)
-libgtk_linux_fb_2_0_la_LDFLAGS = $(libtool_opts)
-libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts)
+libgtk_win32_2_0_la_LDFLAGS = $(libtool_opts) -Wl,-luuid
 libgtk_quartz_2_0_la_LDFLAGS = $(libtool_opts)
 libgtk_directfb_2_0_la_LDFLAGS = $(libtool_opts)
 
 libgtk_x11_2_0_la_LIBADD = $(libadd)
-libgtk_linux_fb_2_0_la_LIBADD = $(libadd)
-libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32 -luuid
-libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res)
+libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
 libgtk_quartz_2_0_la_LIBADD = $(libadd)
 libgtk_directfb_2_0_la_LIBADD = $(libadd)
 
+libgtk_x11_2_0_la_DEPENDENCIES = $(deps)
+libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res) $(deps)
+libgtk_quartz_2_0_la_DEPENDENCIES = $(deps)
+libgtk_directfb_2_0_la_DEPENDENCIES = $(deps)
+
 if USE_WIN32
 libgtk_target_ldflags = $(gtk_win32_res_ldflag) $(gtk_win32_symbols)
 endif
-EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-linux-fb-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la
+EXTRA_LTLIBRARIES = libgtk-x11-2.0.la libgtk-win32-2.0.la libgtk-quartz-2.0.la libgtk-directfb-2.0.la
 
 install-exec-hook: 
 if DISABLE_EXPLICIT_DEPS
        $(SHELL) $(top_srcdir)/sanitize-la.sh $(DESTDIR)$(libdir)/$(gtktargetlib)
 endif
 
+if USE_QUARTZ
+install-mac-key-theme:
+       $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key
+       $(INSTALL_DATA) $(srcdir)/gtkrc.key.mac $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
+uninstall-mac-key-theme:
+       rm -f $(DESTDIR)$(datadir)/themes/Mac/gtk-2.0-key/gtkrc
+else
+install-mac-key-theme:
+uninstall-mac-key-theme:
+endif
+
 # Install a RC file for the default GTK+ theme, and key themes
-install-data-local: install-ms-lib install-def-file
+install-data-local: install-ms-lib install-def-file install-mac-key-theme
        $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0
        $(INSTALL_DATA) $(srcdir)/gtkrc.default $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
        $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key
@@ -829,7 +952,7 @@ install-data-local: install-ms-lib install-def-file
        $(mkinstalldirs) $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key
        $(INSTALL_DATA) $(srcdir)/gtkrc.key.emacs $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
 
-uninstall-local: uninstall-ms-lib uninstall-def-file
+uninstall-local: uninstall-ms-lib uninstall-def-file uninstall-mac-key-theme
        rm -f $(DESTDIR)$(datadir)/themes/Raleigh/gtk-2.0/gtkrc
        rm -f $(DESTDIR)$(datadir)/themes/Default/gtk-2.0-key/gtkrc
        rm -f $(DESTDIR)$(datadir)/themes/Emacs/gtk-2.0-key/gtkrc
@@ -848,21 +971,88 @@ TEST_DEPS = $(DEPS) gtk.immodules
 LDADDS =                                                               \
        $(gtktargetlib)                                                 \
        $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la  \
-       $(top_builddir)/gdk/$(gdktargetlib)
+       $(top_builddir)/gdk/$(gdktargetlib)                             \
+       $(GTK_DEP_LIBS)
+
+if HAVE_INTROSPECTION
+introspection_files = \
+    $(gtkinclude_HEADERS) \
+    $(gtk_all_c_sources) \
+    gtktypebuiltins.h \
+    gtktypebuiltins.c
+
+Gtk-2.0.gir: $(INTROSPECTION_SCANNER) $(gtktargetlib) Makefile
+Gtk_2_0_gir_SCANNERFLAGS = --strip-prefix=Gtk
+Gtk_2_0_gir_INCLUDES = Atk-1.0 Gdk-2.0
+Gtk_2_0_gir_CFLAGS = \
+               $(INCLUDES) \
+               -UGDK_DISABLE_DEPRECATED \
+               -UGTK_DISABLE_DEPRECATED \
+               -DGTK_TEXT_USE_INTERNAL_UNSUPPORTED_API
+Gtk_2_0_gir_LIBS = $(gtktargetlib)
+Gtk_2_0_gir_FILES = $(addprefix $(srcdir)/, $(introspection_files))
+INTROSPECTION_GIRS += Gtk-2.0.gir
+
+girdir = $(INTROSPECTION_GIRDIR)
+dist_gir_DATA = $(INTROSPECTION_GIRS)
+
+typelibsdir = $(INTROSPECTION_TYPELIBDIR)
+typelibs_DATA = $(INTROSPECTION_GIRS:.gir=.typelib)
+
+CLEANFILES += $(dist_gir_DATA) $(typelibs_DATA)
+endif
 
 #
 # Installed tools
 #
-bin_PROGRAMS = gtk-query-immodules-2.0 gtk-update-icon-cache
+bin_PROGRAMS = \
+       gtk-query-immodules-2.0 \
+       gtk-update-icon-cache
+
+bin_SCRIPTS = gtk-builder-convert
+
+if OS_WIN32
+
+# Workaround for UAC silliness: programs with "update" in their name
+# are believed to be installers and require elevated privileges to be
+# used... Use a manifest file to tell Windows that
+# gtk-update-icon-cache.exe doesn't require any special privileges.
+
+GTK_UPDATE_ICON_CACHE_MANIFEST = gtk-update-icon-cache.exe.manifest
+
+bin_SCRIPTS += \
+       $(GTK_UPDATE_ICON_CACHE_MANIFEST)
+
+gtk-update-icon-cache.exe.manifest:
+       (echo '<?xml version="1.0" encoding="UTF-8" standalone="yes"?>' ; \
+        echo '<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">' ; \
+        echo '  <assemblyIdentity version="1.0.0.0"' ; \
+        echo '     processorArchitecture="'$(LIB_EXE_MACHINE_FLAG)'"' ; \
+        echo '     name="gtk-update-icon-cache.exe"' ; \
+        echo '     type="win32"/>' ; \
+        echo '  <!-- Identify the application security requirements. -->' ; \
+        echo '  <trustInfo xmlns="urn:schemas-microsoft-com:asm.v3">' ; \
+        echo '    <security>' ; \
+        echo '      <requestedPrivileges>' ; \
+        echo '        <requestedExecutionLevel' ; \
+        echo '          level="asInvoker"' ; \
+        echo '          uiAccess="false"/>' ; \
+        echo '        </requestedPrivileges>' ; \
+        echo '       </security>' ; \
+        echo '  </trustInfo>' ; \
+        echo '</assembly>' ) >$@
+
+endif
 
 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
 gtk_query_immodules_2_0_LDADD = $(LDADDS)
 
 gtk_query_immodules_2_0_SOURCES = queryimmodules.c
 
-gtk_update_icon_cache_LDADD = $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la
+gtk_update_icon_cache_LDADD = $(top_builddir)/gdk-pixbuf/libgdk_pixbuf-$(GTK_API_VERSION).la $(LDADDS)
 
-gtk_update_icon_cache_SOURCES = updateiconcache.c
+gtk_update_icon_cache_SOURCES = \
+       updateiconcache.c 
 
 .PHONY: files test test-debug
 
@@ -872,9 +1062,11 @@ files:
        done
 
 STOCK_ICONS = \
+       stock-icons/16/document-open-recent.png         \
        stock-icons/16/gtk-about.png                    \
        stock-icons/16/gtk-add.png                      \
        stock-icons/16/gtk-cdrom.png                    \
+       stock-icons/16/gtk-close.png                    \
        stock-icons/16/gtk-connect.png                  \
        stock-icons/16/gtk-convert.png                  \
        stock-icons/16/gtk-copy.png                     \
@@ -924,10 +1116,15 @@ STOCK_ICONS = \
        stock-icons/16/gtk-network.png                  \
        stock-icons/16/gtk-new.png                      \
        stock-icons/16/gtk-open.png                     \
+       stock-icons/16/gtk-page-setup.png               \
        stock-icons/16/gtk-paste.png                    \
        stock-icons/16/gtk-preferences.png              \
        stock-icons/16/gtk-print.png                    \
+       stock-icons/16/gtk-print-error.png              \
+       stock-icons/16/gtk-print-paused.png             \
        stock-icons/16/gtk-print-preview.png            \
+       stock-icons/16/gtk-print-report.png             \
+       stock-icons/16/gtk-print-warning.png            \
        stock-icons/16/gtk-properties.png               \
        stock-icons/16/gtk-quit.png                     \
        stock-icons/16/gtk-redo-ltr.png                 \
@@ -938,6 +1135,7 @@ STOCK_ICONS = \
        stock-icons/16/gtk-revert-to-saved-rtl.png      \
        stock-icons/16/gtk-save-as.png                  \
        stock-icons/16/gtk-select-all.png               \
+       stock-icons/16/gtk-select-color.png             \
        stock-icons/16/gtk-select-font.png              \
        stock-icons/16/gtk-sort-ascending.png           \
        stock-icons/16/gtk-sort-descending.png          \
@@ -964,6 +1162,11 @@ STOCK_ICONS = \
        stock-icons/20/gtk-no.png                       \
        stock-icons/20/gtk-ok.png                       \
        stock-icons/20/gtk-yes.png                      \
+       stock-icons/24/audio-volume-high.png            \
+       stock-icons/24/audio-volume-low.png             \
+       stock-icons/24/audio-volume-medium.png          \
+       stock-icons/24/audio-volume-muted.png           \
+       stock-icons/24/document-open-recent.png         \
        stock-icons/24/gtk-about.png                    \
        stock-icons/24/gtk-add.png                      \
        stock-icons/24/gtk-bold.png                     \
@@ -1023,10 +1226,15 @@ STOCK_ICONS = \
        stock-icons/24/gtk-orientation-landscape.png    \
        stock-icons/24/gtk-orientation-reverse-portrait.png     \
        stock-icons/24/gtk-orientation-portrait.png     \
+       stock-icons/24/gtk-page-setup.png               \
        stock-icons/24/gtk-paste.png                    \
        stock-icons/24/gtk-preferences.png              \
        stock-icons/24/gtk-print.png                    \
+       stock-icons/24/gtk-print-error.png              \
+       stock-icons/24/gtk-print-paused.png             \
        stock-icons/24/gtk-print-preview.png            \
+       stock-icons/24/gtk-print-report.png             \
+       stock-icons/24/gtk-print-warning.png            \
        stock-icons/24/gtk-properties.png               \
        stock-icons/24/gtk-quit.png                     \
        stock-icons/24/gtk-redo-ltr.png                 \
@@ -1076,6 +1284,12 @@ GENERATED_ICONS = \
        stock-icons/16/gtk-media-previous-rtl.png       \
        stock-icons/16/gtk-media-rewind-rtl.png         \
        stock-icons/16/gtk-save.png                     \
+       stock-icons/16/drive-harddisk.png               \
+       stock-icons/16/folder.png                       \
+       stock-icons/16/folder-remote.png                \
+       stock-icons/16/user-home.png                    \
+       stock-icons/16/user-desktop.png                 \
+       stock-icons/16/text-x-generic.png               \
        stock-icons/24/gtk-go-back-rtl.png              \
        stock-icons/24/gtk-go-forward-rtl.png           \
        stock-icons/24/gtk-goto-first-rtl.png           \
@@ -1084,36 +1298,59 @@ GENERATED_ICONS = \
        stock-icons/24/gtk-media-next-rtl.png           \
        stock-icons/24/gtk-media-previous-rtl.png       \
        stock-icons/24/gtk-media-rewind-rtl.png         \
-       stock-icons/24/gtk-save.png
+       stock-icons/24/gtk-save.png                     \
+       stock-icons/24/drive-harddisk.png               \
+       stock-icons/24/folder.png                       \
+       stock-icons/24/folder-remote.png                \
+       stock-icons/24/user-home.png                    \
+       stock-icons/24/user-desktop.png                 \
+       stock-icons/24/text-x-generic.png
 
 # need to copy the icons so that we can replace the generated ones with
 # symlinks, even in the readonly srcdir case
 stamp-icons: $(STOCK_ICONS)
-       if [ ! -d stock-icons ]; then                                           \
-          cp -R $(srcdir)/stock-icons .;                                       \
-         chmod -R u+w stock-icons;                                             \
-        fi &&                                                                  \
-       for i in 16 24; do                                                      \
-          (cd stock-icons/$$i                                                  \
-          && $(RM) gtk-go-back-rtl.png                                         \
-          && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png                \
-          && $(RM) gtk-go-forward-rtl.png                                      \
-          && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png                \
-          && $(RM) gtk-goto-first-rtl.png                                      \
-          && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png              \
-          && $(RM) gtk-goto-last-rtl.png                                       \
-          && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png              \
-          && $(RM) gtk-media-forward-rtl.png                                   \
-          && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png        \
-          && $(RM) gtk-media-next-rtl.png                                      \
-          && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png         \
-          && $(RM) gtk-media-previous-rtl.png                                  \
-          && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png         \
-          && $(RM) gtk-media-rewind-rtl.png                                    \
-          && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png        \
-          && $(RM) gtk-save.png                                                \
-          && $(LN_S) gtk-floppy.png gtk-save.png)                              \
-       done                                                                    \
+       if [ ! -d stock-icons ]; then                                   \
+         for d in 16 20 24 32 48; do                                   \
+           mkdir -p stock-icons/$$d;                                   \
+         done;                                                         \
+         for f in $(STOCK_ICONS); do                                   \
+           cp $(srcdir)/$$f $$(dirname $$f);                           \
+         done;                                                         \
+         chmod -R u+w stock-icons;                                     \
+        fi &&                                                          \
+       for i in 16 24; do                                              \
+          (cd stock-icons/$$i                                          \
+          && $(RM) gtk-go-back-rtl.png                                 \
+          && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png        \
+          && $(RM) gtk-go-forward-rtl.png                              \
+          && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png        \
+          && $(RM) gtk-goto-first-rtl.png                              \
+          && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png      \
+          && $(RM) gtk-goto-last-rtl.png                               \
+          && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png      \
+          && $(RM) gtk-media-forward-rtl.png                           \
+          && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png\
+          && $(RM) gtk-media-next-rtl.png                              \
+          && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png \
+          && $(RM) gtk-media-previous-rtl.png                          \
+          && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png \
+          && $(RM) gtk-media-rewind-rtl.png                            \
+          && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png\
+          && $(RM) gtk-save.png                                        \
+          && $(LN_S) gtk-floppy.png gtk-save.png                       \
+          && $(RM) drive-harddisk.png                                  \
+          && $(LN_S) gtk-harddisk.png drive-harddisk.png               \
+          && $(RM) folder.png                                          \
+          && $(LN_S) gtk-directory.png folder.png                      \
+          && $(RM) folder-remote.png                                   \
+          && $(LN_S) gtk-directory.png folder-remote.png               \
+          && $(RM) user-home.png                                       \
+          && $(LN_S) gtk-directory.png user-home.png                   \
+          && $(RM) user-desktop.png                                    \
+          && $(LN_S) gtk-directory.png user-desktop.png                \
+          && $(RM) text-x-generic.png                                  \
+          && $(LN_S) gtk-file.png text-x-generic.png                   \
+       ) done                                                          \
        && touch stamp-icons
 
 if CROSS_COMPILING
@@ -1125,7 +1362,7 @@ gtk_update_icon_cache_program =                                                   \
 endif
 
 gtkbuiltincache.h: @REBUILD@ stamp-icons
-       $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT)
+       $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT) $(GTK_UPDATE_ICON_CACHE_MANIFEST)
        $(gtk_update_icon_cache_program) --force --ignore-theme-index           \
           --source builtin_icons stock-icons > gtkbuiltincache.h.tmp &&        \
        mv gtkbuiltincache.h.tmp gtkbuiltincache.h
@@ -1140,22 +1377,29 @@ EXTRA_DIST +=                   \
        tree_minus.xpm          \
        tree_plus.xpm           \
        gtk.def                 \
+       gtk-builder-convert     \
        gtk-win32.rc            \
        gtk-win32.rc.in         \
        gtkwin32embed.h         \
        gtkwin32embedwidget.h   \
        gtkwin32embedwidget.c   \
-       gtkfilesystemwin32.h    \
-       gtkfilesystemwin32.c    \
        gtkprint-win32.h        \
        gtkprint-win32.c        \
+       gtksearchenginequartz.h \
        gtkrc.default           \
        gtkrc.key.default       \
        gtkrc.key.emacs         \
+       gtkrc.key.mac           \
        makefile.msc            \
        makefile.msc.in         \
        makegtkalias.pl         \
+       aliasfilescheck.sh      \
        abicheck.sh             \
-       pltcheck.sh
+       pltcheck.sh             \
+       gtktypebuiltins.c.template      \
+       gtktypebuiltins.h.template
+
 
 install-data-local:
+
+-include $(top_srcdir)/git.mk