]> Pileus Git - ~andy/gtk/blobdiff - gtk/Makefile.am
Use templates for glib-mkenums calls instead of complicated commandlines
[~andy/gtk] / gtk / Makefile.am
index 961c55cfd9e0f5f1b984f8d096ea519fecf4a74f..33b7695bbe1f1b5f1a07cb8bb803ca7e6065b2e9 100644 (file)
@@ -1,12 +1,20 @@
 # Makefile.am for gtk+/gtk
+include $(top_srcdir)/Makefile.decl
 
-SUBDIRS=theme-bits
+SUBDIRS = theme-bits . tests
 
 if OS_UNIX
 SUBDIRS += xdgmime
+GTK_PRINT_PREVIEW_COMMAND="evince --unlink-tempfile --preview --print-settings %s %f"
 endif
 
-DIST_SUBDIRS=stock-icons theme-bits xdgmime
+DIST_SUBDIRS=theme-bits xdgmime
+
+if HAVE_CUPS
+GTK_PRINT_BACKENDS=file,cups
+else
+GTK_PRINT_BACKENDS=file,lpr
+endif
 
 INCLUDES =                                             \
        -DG_LOG_DOMAIN=\"Gtk\"                          \
@@ -18,16 +26,19 @@ INCLUDES =                                          \
        -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\"  \
        -DGTK_HOST=\"$(host)\"                          \
        -DGTK_COMPILATION                               \
+       -DGTK_PRINT_BACKENDS=\"$(GTK_PRINT_BACKENDS)\"  \
+       -DGTK_PRINT_PREVIEW_COMMAND=\"$(GTK_PRINT_PREVIEW_COMMAND)\"    \
        -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_DEP_CFLAGS)                               \
+       $(gtk_clipboard_dnd_c_sources_CFLAGS)
 
 gtarget=$(gdktarget)
 
@@ -37,16 +48,16 @@ endif
 
 if OS_WIN32
 gtk_def = gtk.def
-gtk_win32_symbols = -export-symbols $(gtk_def)
+gtk_win32_symbols = -export-symbols 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) gtk.def $(DESTDIR)$(libdir)/gtk-win32-2.0.def
 uninstall-def-file:
        -rm $(DESTDIR)$(libdir)/gtk-win32-2.0.def
 else
@@ -78,8 +89,15 @@ gtkalias.h: gtk.symbols
 gtkaliasdef.c: gtk.symbols
          $(PERL) $(srcdir)/makegtkalias.pl -def < $(srcdir)/gtk.symbols > gtkaliasdef.c
 
+check-aliases:
+       @$(TESTS_ENVIRONMENT) $(srcdir)/aliasfilescheck.sh
+
+.PHONY: check-aliases
+
+TESTS_ENVIRONMENT = srcdir="$(srcdir)" gtk_all_c_sources="$(gtk_all_c_sources)"
+TESTS = aliasfilescheck.sh
 if OS_LINUX
-TESTS = abicheck.sh
+TESTS += abicheck.sh pltcheck.sh
 endif
 
 # libtool stuff: set version and export symbols for resolving
@@ -126,6 +144,8 @@ gtk_public_h_sources =          \
        gtkbin.h                \
        gtkbindings.h           \
        gtkbox.h                \
+       gtkbuilder.h            \
+       gtkbuildable.h          \
        gtkbutton.h             \
        gtkcalendar.h           \
        gtkcelleditable.h       \
@@ -135,6 +155,7 @@ gtk_public_h_sources =          \
        gtkcellrenderercombo.h  \
        gtkcellrendererpixbuf.h \
        gtkcellrendererprogress.h \
+       gtkcellrendererspin.h   \
        gtkcellrenderertext.h   \
        gtkcellrenderertoggle.h \
        gtkcellview.h           \
@@ -142,7 +163,6 @@ gtk_public_h_sources =          \
        gtkcheckmenuitem.h      \
        gtkclipboard.h          \
        gtkclist.h              \
-       gtkclipboard.h          \
        gtkcolorbutton.h        \
        gtkcolorsel.h           \
        gtkcolorseldialog.h     \
@@ -214,10 +234,16 @@ gtk_public_h_sources =          \
        gtkobject.h             \
        gtkoldeditable.h        \
        gtkoptionmenu.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        \
@@ -227,8 +253,16 @@ gtk_public_h_sources =          \
        gtkradiotoolbutton.h    \
        gtkrange.h              \
        gtkrc.h                 \
+       gtkrecentaction.h       \
+       gtkrecentchooser.h      \
+       gtkrecentchooserdialog.h \
+       gtkrecentchoosermenu.h  \
+       gtkrecentchooserwidget.h \
+       gtkrecentfilter.h       \
+       gtkrecentmanager.h      \
        gtkruler.h              \
        gtkscale.h              \
+       gtkscalebutton.h        \
        gtkscrollbar.h          \
        gtkscrolledwindow.h     \
        gtkselection.h          \
@@ -246,8 +280,10 @@ gtk_public_h_sources =          \
        gtkstyle.h              \
        gtktable.h              \
        gtktearoffmenuitem.h    \
+       gtktestutils.h          \
        gtktext.h               \
        gtktextbuffer.h         \
+       gtktextbufferrichtext.h \
        gtktextchild.h          \
        gtktextdisplay.h        \
        gtktextiter.h           \
@@ -262,6 +298,7 @@ gtk_public_h_sources =          \
        gtktoolbar.h            \
        gtktoolbutton.h         \
        gtktoolitem.h           \
+       gtktooltip.h            \
        gtktooltips.h           \
        gtktree.h               \
        gtktreednd.h            \
@@ -279,6 +316,7 @@ gtk_public_h_sources =          \
        gtkvbbox.h              \
        gtkvbox.h               \
        gtkviewport.h           \
+       gtkvolumebutton.h       \
        gtkvpaned.h             \
        gtkvruler.h             \
        gtkvscale.h             \
@@ -287,45 +325,74 @@ 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
+endif
+
 # Installed header files without compatibility guarantees
-# that are not include in gtk/gtk.h
+# that are not included in gtk/gtk.h
 gtk_semi_private_h_sources =    \
        gtktextlayout.h         \
        gtkfilesystem.h
 
 # GTK+ header files that don't get installed
 gtk_private_h_sources =                \
+       gtkquery.h              \
+       gtksearchengine.h       \
+       gtksearchenginebeagle.h \
+       gtksearchenginetracker.h\
+       gtksearchenginesimple.h \
        gtkdndcursors.h         \
        gtkentryprivate.h       \
+       gtkbuilderprivate.h     \
+       gtkfilechooserdefault.h \
        gtkfilechooserembed.h   \
        gtkfilechooserentry.h   \
-       gtkfilechooserdefault.h \
        gtkfilechooserprivate.h \
+       gtkfilechoosersettings.h \
        gtkfilechooserutils.h   \
-       gtkfilesystemunix.h     \
        gtkfilesystemmodel.h    \
+       gtkfilesystemunix.h     \
+       gtkhsv.h                \
        gtkiconcache.h          \
+       gtkintl.h               \
+       gtkkeyhash.h            \
+       gtkmnemonichash.h       \
        gtkpathbar.h            \
        gtkplugprivate.h        \
+       gtkprintoperation-private.h\
+       gtkprintutils.h         \
        gtkrbtree.h             \
-       gtksequence.h           \
+       gtkrecentchooserdefault.h \
+       gtkrecentchooserprivate.h \
+       gtkrecentchooserutils.h \
        gtksocketprivate.h      \
        gtktextbtree.h          \
+       gtktextbufferserialize.h\
        gtktextchildprivate.h   \
-       gtktextsegment.h        \
-       gtktexttypes.h          \
-       gtktextutil.h           \
        gtktextiterprivate.h    \
        gtktextmarkprivate.h    \
+       gtktextsegment.h        \
        gtktexttagprivate.h     \
+       gtktexttypes.h          \
+       gtktextutil.h           \
        gtkthemes.h             \
+       gtktoggleactionprivate.h\
        gtktreedatalist.h       \
        gtktreeprivate.h        \
-       gtkwindow-decorate.h    \
-       gtktoggleactionprivate.h
+       gtkwindow-decorate.h
 
 # GTK+ C sources to build the library from
-gtk_c_sources =                 \
+gtk_base_c_sources =            \
+       gtkquery.c              \
+       gtksearchengine.c       \
+       gtksearchenginebeagle.c \
+       gtksearchenginetracker.c\
+       gtksearchenginesimple.c \
        fnmatch.c               \
        gtkaboutdialog.c        \
        gtkaccelgroup.c         \
@@ -343,6 +410,9 @@ gtk_c_sources =                 \
        gtkbin.c                \
        gtkbindings.c           \
        gtkbox.c                \
+       gtkbuildable.c          \
+       gtkbuilder.c            \
+       gtkbuilderparser.c      \
        gtkbutton.c             \
        gtkcalendar.c           \
        gtkcelleditable.c       \
@@ -352,12 +422,12 @@ gtk_c_sources =                 \
        gtkcellrenderercombo.c  \
        gtkcellrendererpixbuf.c \
        gtkcellrendererprogress.c \
+       gtkcellrendererspin.c   \
        gtkcellrenderertext.c   \
        gtkcellrenderertoggle.c \
        gtkcellview.c           \
        gtkcheckbutton.c        \
        gtkcheckmenuitem.c      \
-       gtkclipboard.c          \
        gtkclist.c              \
        gtkcolorbutton.c        \
        gtkcolorsel.c           \
@@ -369,7 +439,6 @@ gtk_c_sources =                 \
        gtkctree.c              \
        gtkcurve.c              \
        gtkdialog.c             \
-       gtkdnd.c                \
        gtkdrawingarea.c        \
        gtkeditable.c           \
        gtkentry.c              \
@@ -378,10 +447,11 @@ gtk_c_sources =                 \
        gtkexpander.c           \
        gtkfilechooser.c        \
        gtkfilechooserbutton.c  \
+       gtkfilechooserdefault.c \
        gtkfilechooserdialog.c  \
        gtkfilechooserembed.c   \
        gtkfilechooserentry.c   \
-       gtkfilechooserdefault.c \
+       gtkfilechoosersettings.c \
        gtkfilechooserutils.c   \
        gtkfilechooserwidget.c  \
        gtkfilefilter.c         \
@@ -403,9 +473,9 @@ gtk_c_sources =                 \
        gtkhscrollbar.c         \
        gtkhseparator.c         \
        gtkhsv.c                \
-       gtkhsv.h                \
-       gtkiconfactory.c        \
        gtkiconcache.c          \
+       gtkiconcachevalidator.c \
+       gtkiconfactory.c        \
        gtkicontheme.c          \
        gtkiconview.c           \
        gtkimage.c              \
@@ -415,12 +485,10 @@ gtk_c_sources =                 \
        gtkimmodule.c           \
        gtkimmulticontext.c     \
        gtkinputdialog.c        \
-       gtkintl.h               \
        gtkinvisible.c          \
        gtkitem.c               \
        gtkitemfactory.c        \
        gtkkeyhash.c            \
-       gtkkeyhash.h            \
        gtklabel.c              \
        gtklayout.c             \
        gtklinkbutton.c         \
@@ -438,17 +506,23 @@ gtk_c_sources =                 \
        gtkmessagedialog.c      \
        gtkmisc.c               \
        gtkmnemonichash.c       \
-       gtkmnemonichash.h       \
        gtkmodules.c            \
        gtknotebook.c           \
        gtkobject.c             \
        gtkoldeditable.c        \
        gtkoptionmenu.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        \
@@ -458,11 +532,20 @@ gtk_c_sources =                 \
        gtkrange.c              \
        gtkrbtree.c             \
        gtkrc.c                 \
+       gtkrecentaction.c       \
+       gtkrecentchooserdefault.c \
+       gtkrecentchooserdialog.c \
+       gtkrecentchoosermenu.c  \
+       gtkrecentchooserwidget.c \
+       gtkrecentchooserutils.c \
+       gtkrecentchooser.c      \
+       gtkrecentfilter.c       \
+       gtkrecentmanager.c      \
        gtkruler.c              \
        gtkscale.c              \
+       gtkscalebutton.c        \
        gtkscrollbar.c          \
        gtkscrolledwindow.c     \
-       gtksequence.c           \
        gtkselection.c          \
        gtkseparator.c          \
        gtkseparatormenuitem.c  \
@@ -478,16 +561,17 @@ gtk_c_sources =                 \
        gtkstyle.c              \
        gtktable.c              \
        gtktearoffmenuitem.c    \
+       gtktestutils.c          \
        gtktext.c               \
        gtktextbtree.c          \
        gtktextbuffer.c         \
+       gtktextbufferrichtext.c \
+       gtktextbufferserialize.c\
        gtktextchild.c          \
        gtktextdisplay.c        \
        gtktextiter.c           \
-       gtktextiterprivate.h    \
        gtktextlayout.c         \
        gtktextmark.c           \
-       gtktextmarkprivate.h    \
        gtktextsegment.c        \
        gtktexttag.c            \
        gtktexttagtable.c       \
@@ -502,6 +586,7 @@ gtk_c_sources =                 \
        gtktoolbar.c            \
        gtktoolbutton.c         \
        gtktoolitem.c           \
+       gtktooltip.c            \
        gtktooltips.c           \
        gtktree.c               \
        gtktreedatalist.c       \
@@ -520,6 +605,7 @@ gtk_c_sources =                 \
        gtkuimanager.c          \
        gtkvbbox.c              \
        gtkvbox.c               \
+       gtkvolumebutton.c       \
        gtkviewport.c           \
        gtkvpaned.c             \
        gtkvruler.c             \
@@ -529,32 +615,86 @@ gtk_c_sources =                 \
        gtkwidget.c             \
        gtkwindow-decorate.c    \
        gtkwindow.c             \
-       xembed.h
-
+       $(gtk_clipboard_dnd_c_sources)
+gtk_c_sources = $(gtk_base_c_sources)
+gtk_all_c_sources = $(gtk_base_c_sources)
+
+gtk_os_unix_c_sources = \
+       gtkfilesystemunix.c             \
+       gtkpagesetupunixdialog.c        \
+       gtkprinter.c                    \
+       gtkprinteroption.c              \
+       gtkprinteroptionset.c           \
+       gtkprinteroptionwidget.c        \
+       gtkprintjob.c                   \
+       gtkprintoperation-unix.c        \
+       gtkprintunixdialog.c            \
+        gtkprintbackend.c
+gtk_all_c_sources += $(gtk_os_unix_c_sources)
 if OS_UNIX
-gtk_private_h_sources += gtkfilesystemunix.h
-gtk_c_sources +=         gtkfilesystemunix.c
+gtk_private_h_sources += \
+       gtkfilesystemunix.h             \
+       gtkiconcachevalidator.h         \
+       gtkprintbackend.h               \
+       gtkprinter-private.h            \
+       gtkprinteroption.h              \
+       gtkprinteroptionset.h           \
+       gtkprinteroptionwidget.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
-gtk_c_sources +=         gtkfilesystemwin32.c
+gtk_private_h_sources += gtkfilesystemwin32.h gtkprint-win32.h
+gtk_c_sources += $(gtk_os_win32_c_sources)
 endif
 
-if USE_X11
-gtk_private_h_sources += gtkxembed.h gtktrayicon.h
-gtk_c_sources += \
+gtk_use_x11_c_sources = \
        gtkplug-x11.c   \
        gtksocket-x11.c \
        gtkxembed.c     \
        gtktrayicon-x11.c
+gtk_use_win32_c_sources = \
+       gtkplug-win32.c   \
+       gtksocket-win32.c \
+       gtkwin32embed.c   \
+       gtkwin32embedwidget.c
+gtk_use_quartz_c_sources =     \
+       gtksearchenginequartz.c \
+       gtkplug-stub.c          \
+       gtksocket-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_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)
 else
 if USE_WIN32
-gtk_private_h_sources += gtkwin32embed.h
-gtk_c_sources +=         gtkplug-win32.c gtksocket-win32.c gtkwin32embed.c
+gtk_private_h_sources += gtkwin32embed.h gtkwin32embedwidget.h
+gtk_c_sources += $(gtk_use_win32_c_sources)
 else
-gtk_c_sources +=         gtkplug-stub.c gtksocket-stub.c
+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_CFLAGS = "-xobjective-c"
+else
+gtk_clipboard_dnd_c_sources = gtkclipboard.c gtkdnd.c
+gtk_clipboard_dnd_c_sources_CFLAGS = 
 endif
 
 # we use our own built_sources variable rules to avoid automake's
@@ -568,7 +708,7 @@ gtk_built_public_sources =                  \
        gtkmarshal.h                            \
        gtktypebuiltins.h
 
-# built sources that don't get installed
+# built headers that don't get installed
 gtk_built_private_headers =                    \
        gtkalias.h                              \
        gtkmarshalers.h                         \
@@ -577,8 +717,8 @@ gtk_built_private_headers =                 \
 gtk_built_sources =                            \
        gtkaliasdef.c                           \
        gtktypebuiltins.c                       \
+       gtktypefuncs.c                          \
        gtkmarshalers.c                         \
-       gtkmarshalers.h                         \
        gtkmarshal.c                            \
        ${gtk_built_private_headers}            \
        ${gtk_built_public_sources}
@@ -586,12 +726,17 @@ gtk_built_sources =                               \
 stamp_files =                                  \
        stamp-gtkmarshalers.h                   \
        stamp-gtkmarshal.h                      \
-       stamp-gtktypebuiltins.h
+       stamp-gtktypebuiltins.h                 \
+       stamp-icons
 
 # non-header sources (headers should be specified in the above variables)
 # that don't serve as direct make target sources, i.e. they don't have
 # their own .lo rules and don't get publically installed
 gtk_extra_sources =                            \
+       paper_names.c                           \
+       paper_names_offsets.c                   \
+       gen-paper-names.c                       \
+       gtkstatusicon-quartz.c                  \
        gtk.symbols                             \
        gtkversion.h.in                         \
        gtkmarshalers.list                      \
@@ -600,16 +745,17 @@ gtk_extra_sources =                               \
 #
 # setup GTK+ sources and their dependencies
 #
-MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files)
+MAINTAINERCLEANFILES = $(gtk_built_sources) $(stamp_files) $(GENERATED_ICONS)
 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)
 
 #
 # 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)
@@ -627,7 +773,9 @@ stamp-gtkmarshalers.h: @REBUILD@ gtkmarshalers.list
        && rm -f xgen-gmlh \
        && echo timestamp > $(@F)       
 gtkmarshalers.c: @REBUILD@ gtkmarshalers.list
-       (echo "#include \"gtkalias.h\""; $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
+       (echo "#include \"gtkmarshalers.h\""; \
+        echo "#include \"gtkalias.h\""; \
+        $(GLIB_GENMARSHAL) --prefix=_gtk_marshal $(srcdir)/gtkmarshalers.list --body) >> xgen-gmlc \
        && cp xgen-gmlc gtkmarshalers.c \
        && rm -f xgen-gmlc
 
@@ -641,60 +789,68 @@ stamp-gtkmarshal.h: @REBUILD@ gtkmarshal.list
        && rm -f xgen-gmh \
        && echo timestamp > $(@F)
 gtkmarshal.c: @REBUILD@ gtkmarshal.list
-       (echo "#include \"gtkalias.h\""; $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body) >> xgen-gmc \
+       (echo "#include \"gtkmarshal.h\""; \
+        echo "#include \"gtkalias.h\""; \
+        $(GLIB_GENMARSHAL) --prefix=gtk_marshal $(srcdir)/gtkmarshal.list --body; \
+        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 | \
+         egrep -o '\<g[td]k_[a-zA-Z0-9_]+_get_type\>' | sort | uniq | \
+         sed '{ s/^/vgt=/; s/$$/();/; }' > xgen-gtf \
+       && cp xgen-gtf $@ && rm -f xgen-gtf
+gtktestutils.c: gtktypefuncs.c
+
 # target platform:
 lib_LTLIBRARIES = $(gtktargetlib)
 
 gtkincludedir = $(includedir)/gtk-2.0/gtk
 gtkinclude_HEADERS = $(gtk_public_h_sources) $(gtk_semi_private_h_sources) $(gtk_built_public_sources) gtkversion.h
 
+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
+libgtk_win32_2_0_la_LIBADD = $(libadd) -lole32 -lgdi32 -lcomdlg32 -lwinspool -lcomctl32
 libgtk_win32_2_0_la_DEPENDENCIES = $(gtk_def) $(gtk_win32_res)
 libgtk_quartz_2_0_la_LIBADD = $(libadd)
+libgtk_directfb_2_0_la_LIBADD = $(libadd)
 
 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
+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
 
 install-exec-hook: 
 if DISABLE_EXPLICIT_DEPS
@@ -734,7 +890,10 @@ LDADDS =                                                           \
 #
 # 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
 
 gtk_query_immodules_2_0_DEPENDENCIES = $(DEPS)
 gtk_query_immodules_2_0_LDADD = $(LDADDS)
@@ -743,7 +902,8 @@ 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_SOURCES = updateiconcache.c
+gtk_update_icon_cache_SOURCES = \
+       updateiconcache.c 
 
 .PHONY: files test test-debug
 
@@ -753,9 +913,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                     \
@@ -819,6 +981,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          \
@@ -845,6 +1008,7 @@ STOCK_ICONS = \
        stock-icons/20/gtk-no.png                       \
        stock-icons/20/gtk-ok.png                       \
        stock-icons/20/gtk-yes.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                     \
@@ -900,6 +1064,10 @@ STOCK_ICONS = \
        stock-icons/24/gtk-network.png                  \
        stock-icons/24/gtk-new.png                      \
        stock-icons/24/gtk-open.png                     \
+       stock-icons/24/gtk-orientation-reverse-landscape.png \
+       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-paste.png                    \
        stock-icons/24/gtk-preferences.png              \
        stock-icons/24/gtk-print.png                    \
@@ -963,35 +1131,54 @@ GENERATED_ICONS = \
        stock-icons/24/gtk-media-rewind-rtl.png         \
        stock-icons/24/gtk-save.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)
-       for i in 16 24; do                                                      \
-          (cd $(srcdir)/stock-icons/$$i                                        \
-          && rm -f gtk-go-back-rtl.png                                         \
-          && $(LN_S) gtk-go-forward-ltr.png gtk-go-back-rtl.png                \
-          && rm -f gtk-go-forward-rtl.png                                      \
-          && $(LN_S) gtk-go-back-ltr.png gtk-go-forward-rtl.png                \
-          && rm -f gtk-goto-first-rtl.png                                      \
-          && $(LN_S) gtk-goto-last-ltr.png gtk-goto-first-rtl.png              \
-          && rm -f gtk-goto-last-rtl.png                                       \
-          && $(LN_S) gtk-goto-first-ltr.png gtk-goto-last-rtl.png              \
-          && rm -f gtk-media-forward-rtl.png                                   \
-          && $(LN_S) gtk-media-rewind-ltr.png gtk-media-forward-rtl.png        \
-          && rm -f gtk-media-next-rtl.png                                      \
-          && $(LN_S) gtk-media-previous-ltr.png gtk-media-next-rtl.png         \
-          && rm -f gtk-media-previous-rtl.png                                  \
-          && $(LN_S) gtk-media-next-ltr.png gtk-media-previous-rtl.png         \
-          && rm -f gtk-media-rewind-rtl.png                                    \
-          && $(LN_S) gtk-media-forward-ltr.png gtk-media-rewind-rtl.png        \
-          && rm -f 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)                      \
+       done                                                            \
        && touch stamp-icons
 
-gtkbuiltincache.h: @REBUILD@ gtk-update-icon-cache$(EXEEXT) stamp-icons
-       ./gtk-update-icon-cache --force --ignore-theme-index    \
-          --source builtin_icons stock-icons > gtkbuiltincache.h
+if CROSS_COMPILING
+gtk_update_icon_cache_program = $(GTK_UPDATE_ICON_CACHE)
+else
+gtk_update_icon_cache_program =                                                        \
+       GDK_PIXBUF_MODULE_FILE=$(top_builddir)/gdk-pixbuf/gdk-pixbuf.loaders    \
+          ./gtk-update-icon-cache
+endif
 
-MAINTAINERCLEANFILES += stamp-icons
+gtkbuiltincache.h: @REBUILD@ stamp-icons
+       $(MAKE) $(AM_MAKEFLAGS) gtk-update-icon-cache$(EXEEXT)
+       $(gtk_update_icon_cache_program) --force --ignore-theme-index           \
+          --source builtin_icons stock-icons > gtkbuiltincache.h.tmp &&        \
+       mv gtkbuiltincache.h.tmp gtkbuiltincache.h
 
 EXTRA_DIST +=                   \
        $(STOCK_ICONS)          \
@@ -1003,17 +1190,28 @@ 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         \
        makefile.msc            \
        makefile.msc.in         \
        makegtkalias.pl         \
-       abicheck.sh
+       aliasfilescheck.sh      \
+       abicheck.sh             \
+       pltcheck.sh             \
+       gtktypebuiltins.c.template      \
+       gtktypebuiltins.h.template
+
 
 install-data-local: