]> Pileus Git - ~andy/gtk/blobdiff - gtk/makefile.msc.in
bin: initialize out variables to zero for get_preferred_ functions.
[~andy/gtk] / gtk / makefile.msc.in
index c51fcb4238bb981e15e3b9437d838dbbc2c032e5..619b87de92100c4b6fe959d94a7b30b7c8e09e7c 100644 (file)
@@ -4,18 +4,18 @@
 ## There is no install target, you have to decide where and 
 ## how to install for yourself.
 
-TOP = ../..
-!INCLUDE $(TOP)/build/win32/make.msc
+TOP = ..\..
+!INCLUDE $(TOP)/glib/build/win32/make.msc
 
 ################################################################
 
-# Possibly override versions from build/win32/module.defs
-GTK_VER = @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@
-GDK_PIXBUF_VER = @GDK_PIXBUF_MAJOR@.@GDK_PIXBUF_MINOR@
+# Not the real version but the one used in the DLL names
+GTK_VER = 3.0
+
 
 GDK_LIBS = ../gdk/gdk-win32-$(GTK_VER).lib
 GTK_LIBS = gtk-win32-$(GTK_VER).lib
-GDK_PIXBUF_LIBS = ../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
+GTK_BINARY_VERSION = @GTK_BINARY_VERSION@
 
 # Perl and awk are needed to generate some source files.
 # These generated source files are distribuyted with the Win32 GTk+ source
@@ -23,440 +23,625 @@ GDK_PIXBUF_LIBS = ../gdk-pixbuf/gdk_pixbuf-$(GDK_PIXBUF_VER).lib
 PERL = perl
 AWK = gawk
 
-INCLUDES = -I . -I .. -I ../gdk -I ../gdk-pixbuf
-DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) $(INTL_CFLAGS)
-LDFLAGS = /link /machine:ix86 $(LINKDEBUG)
+INCLUDES = -FImsvc_recommended_pragmas.h -I . -I .. -I ../gdk $(GDK_PIXBUF_CFLAGS)
+DEPCFLAGS = $(PANGO_CFLAGS) $(GLIB_CFLAGS) $(LIBICONV_CFLAGS) \
+               $(INTL_CFLAGS) $(ATK_CFLAGS) $(CAIRO_CFLAGS)
+LDFLAGS = $(ATK_LIBS) /link /machine:ix86 $(LINKDEBUG)
 # Some files use near as an identifier
-DEFINES = -DGTK_DISABLE_COMPAT_H -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" -Dnear=xxnear
+# Don't define GTK_COMPILATION here, because it's for gtk-x.x.dll only
+DEFINES = \
+       -DHAVE_CONFIG_H \
+       $(G_DEBUGGING) -DGTK_DISABLE_COMPAT_H -DG_LOG_DOMAIN=\"Gtk\" -Dnear=xxnear \
+       -DPANGO_ENABLE_BACKEND \
+       -DGTK_VERSION=\"$(GTK_VER)\" -DGTK_BINARY_VERSION=\"$(GTK_BINARY_VERSION)\" \
+       -DGTK_HOST=\"win32\" \
+       -DGTK_FILE_SYSTEM_ENABLE_UNSUPPORTED \
+       -DGTK_PRINT_BACKENDS=\"file,lpr\" \
+       -DGTK_PRINT_BACKEND_ENABLE_UNSUPPORTED \
+       -DGTK_PRINT_PREVIEW_COMMAND="\"evince --unlink-tempfile --preview %f\"" \
+       -DGTK_LIBDIR=\"/magic/path/replaced/at/runtime\"
+
+EXTRALIBS = \
+       $(GDK_LIBS) \
+       $(GDK_PIXBUF_LIBS) \
+       $(PANGO_LIBS) $(INTL_LIBS) \
+       $(GLIB_LIBS) $(GMODULE_LIBS) $(GIO_LIBS) \
+       $(CAIRO_LIBS) $(PANGOCAIRO_LIBS) $(CAIRO_GOBJECT_LIBS) \
 
 TOUCH = copy makefile.msc+nul
 
-GTK_VER=1.3
+gtkbuiltincache.h: gtk-update-icon-cache.exe
+       del gtkicontheme.obj
+       gtk-update-icon-cache --force --ignore-theme-index      \
+          --source builtin_icons stock-icons > gtkbuiltincache.h
+
+GENERATED = \
+       gtktypebuiltins.h gtktypebuiltins.c \
+       gtkmarshalers.h gtkmarshalers.c \
+       gtk.def gtktypefuncs.c
 
 all :                                          \
        ..\config.h                             \
-       generated                               \
-       gtk-win32-$(GTK_VER).dll                \
-       testcalendar.exe                        \
-       testdnd.exe                             \
-       testgtk.exe                             \
-       testinput.exe                           \
-       testrgb.exe                             \
-       testselection.exe                       \
-       testtext.exe                            \
-       testtextbuffer.exe                      \
-       simple.exe
-
-gtk_OBJECTS =                                  \
-       fnmatch.obj                             \
-       gdk-pixbuf-loader.obj                   \
-       gtkaccelgroup.obj                       \
-       gtkaccellabel.obj                       \
-       gtkadjustment.obj                       \
-       gtkalignment.obj                        \
-       gtkarg.obj                              \
-       gtkarrow.obj                            \
-       gtkaspectframe.obj                      \
-       gtkbin.obj                              \
-       gtkbindings.obj                         \
-       gtkbbox.obj                             \
-       gtkbox.obj                              \
-       gtkbutton.obj                           \
-       gtkcalendar.obj                         \
-       gtkcheckbutton.obj                      \
-       gtkcheckmenuitem.obj                    \
-       gtkclipboard.obj                        \
-       gtkclist.obj                            \
-       gtkcolorsel.obj                         \
-       gtkcolorseldialog.obj                   \
-       gtkcombo.obj                            \
-       gtkcontainer.obj                        \
-       gtkctree.obj                            \
-       gtkcurve.obj                            \
-       gtkdata.obj                             \
-       gtkdialog.obj                           \
-       gtkdnd.obj                              \
-       gtkdrawingarea.obj                      \
-       gtkeditable.obj                         \
-       gtkentry.obj                            \
-       gtkeventbox.obj                         \
-       gtkfilesel.obj                          \
-       gtkfixed.obj                            \
-       gtkfontsel.obj                          \
-       gtkframe.obj                            \
-       gtkgamma.obj                            \
-       gtkgc.obj                               \
-       gtkhandlebox.obj                        \
-       gtkhbbox.obj                            \
-       gtkhbox.obj                             \
-       gtkhpaned.obj                           \
-       gtkhruler.obj                           \
-       gtkhscale.obj                           \
-       gtkhscrollbar.obj                       \
-       gtkhseparator.obj                       \
-       gtkhsv.obj                              \
-       gtkiconfactory.obj                      \
-       gtkimage.obj                            \
-       gtkimcontext.obj                        \
-       gtkimcontextsimple.obj                  \
-       gtkimmodule.obj                         \
-       gtkimmulticontext.obj                   \
-       gtkinputdialog.obj                      \
-       gtkinvisible.obj                        \
-       gtkitem.obj                             \
-       gtkitemfactory.obj                      \
-       gtklabel.obj                            \
-       gtklayout.obj                           \
-       gtklist.obj                             \
-       gtklistitem.obj                         \
-       gtkmain.obj                             \
-       gtkmenu.obj                             \
-       gtkmenubar.obj                          \
-       gtkmenufactory.obj                      \
-       gtkmenuitem.obj                         \
-       gtkmenushell.obj                        \
-       gtkmessagedialog.obj                    \
-       gtkmisc.obj                             \
-       gtknotebook.obj                         \
-       gtkobject.obj                           \
-       gtkoldeditable.obj                      \
-       gtkoptionmenu.obj                       \
-       gtkpacker.obj                           \
-       gtkpaned.obj                            \
-       gtkpixmap.obj                           \
-       gtkplug.obj                             \
-       gtkpreview.obj                          \
-       gtkprogress.obj                         \
-       gtkprogressbar.obj                      \
-       gtkradiobutton.obj                      \
-       gtkradiomenuitem.obj                    \
-       gtkrange.obj                            \
-       gtkrc.obj                               \
-       gtkruler.obj                            \
-       gtkscale.obj                            \
-       gtkscrollbar.obj                        \
-       gtkscrolledwindow.obj                   \
-       gtkselection.obj                        \
-       gtkseparator.obj                        \
-       gtksignal.obj                           \
-       gtksocket.obj                           \
-       gtkspinbutton.obj                       \
-       gtkstyle.obj                            \
-       gtkstatusbar.obj                        \
-       gtkstock.obj                            \
-       gtktable.obj                            \
-       gtktearoffmenuitem.obj                  \
-       gtktext.obj                             \
-       gtktextbtree.obj                        \
-       gtktextbuffer.obj                       \
-       gtktextchild.obj                        \
-       gtktextdisplay.obj                      \
-       gtktextiter.obj                         \
-       gtktextlayout.obj                       \
-       gtktextmark.obj                         \
-       gtktextsegment.obj                      \
-       gtktexttag.obj                          \
-       gtktexttagtable.obj                     \
-       gtktexttypes.obj                        \
-       gtktextview.obj                         \
-       gtkthemes.obj                           \
-       gtktipsquery.obj                        \
-       gtktogglebutton.obj                     \
-       gtktoolbar.obj                          \
-       gtktooltips.obj                         \
-       gtktree.obj                             \
-       gtktreeitem.obj                         \
-       gtktreemodel.obj                        \
-       gtktypeutils.obj                        \
-       gtkvbbox.obj                            \
-       gtkvbox.obj                             \
-       gtkviewport.obj                         \
-       gtkvpaned.obj                           \
-       gtkvruler.obj                           \
-       gtkvscale.obj                           \
-       gtkvscrollbar.obj                       \
-       gtkvseparator.obj                       \
-       gtkwidget.obj                           \
-       gtkwindow.obj
+       $(GENERATED)                            \
+       gtk-update-icon-cache.exe               \
+       gtkbuiltincache.h                       \
+       libgtk-win32-$(GTK_VER)-0.dll           \
+       gtk-query-immodules-$(GTK_VER).exe \
+#      gtk-win32-$(GTK_VER)s.lib \
+#      gtk-x11-$(GTK_VER).dll
+
+gtk_OBJECTS_cell = \
+       gtkcellarea.obj \
+       gtkcellareabox.obj \
+       gtkcellareaboxcontext.obj \
+       gtkcellareacontext.obj \
+       gtkcelleditable.obj \
+       gtkcelllayout.obj \
+       gtkcellrenderer.obj \
+       gtkcellrendereraccel.obj \
+       gtkcellrenderercombo.obj \
+       gtkcellrendererpixbuf.obj \
+       gtkcellrendererprogress.obj \
+       gtkcellrendererspin.obj \
+       gtkcellrendererspinner.obj \
+       gtkcellrenderertext.obj \
+       gtkcellrenderertoggle.obj \
+       gtkcellview.obj \
+       gtkliststore.obj \
+       gtktreednd.obj \
+       gtktreemenu.obj \
+       gtktreemodel.obj \
+       gtktreemodelfilter.obj \
+       gtktreemodelsort.obj \
+       gtktreeselection.obj \
+       gtktreesortable.obj \
+       gtktreestore.obj \
+       gtktreeview.obj \
+       gtktreeviewcolumn.obj \
+
+gtk_OBJECTS_file = \
+       gtkfilechooser.obj \
+       gtkfilechooserbutton.obj \
+       gtkfilechooserdefault.obj \
+       gtkfilechooserdialog.obj \
+       gtkfilechooserembed.obj \
+       gtkfilechooserentry.obj \
+#      gtkfilechoosersettings.obj \
+       gtkfilechooserutils.obj \
+       gtkfilechooserwidget.obj \
+       gtkfilefilter.obj \
+       gtkfilesystem.obj \
+       gtkfilesystemmodel.obj \
+
+gtk_OBJECTS_print = \
+       gtkprint-win32.obj \
+       gtkprintcontext.obj \
+       gtkprintoperation-win32.obj \
+       gtkprintoperation.obj \
+       gtkprintoperationpreview.obj \
+       gtkprintsettings.obj \
+       gtkprintutils.obj \
+
+gtk_OBJECTS_text = \
+       gtktextattributes.obj \
+       gtktextbtree.obj \
+       gtktextbuffer.obj \
+       gtktextbufferrichtext.obj \
+       gtktextbufferserialize.obj \
+       gtktextchild.obj \
+       gtktextdisplay.obj \
+       gtktextiter.obj \
+       gtktextlayout.obj \
+       gtktextmark.obj \
+       gtktextsegment.obj \
+       gtktexttag.obj \
+       gtktexttagtable.obj \
+       gtktexttypes.obj \
+       gtktextutil.obj \
+       gtktextview.obj \
+
+gtk_OBJECTS_recent = \
+       gtkrecentaction.obj \
+       gtkrecentchooserdefault.obj \
+       gtkrecentchooserdialog.obj \
+       gtkrecentchoosermenu.obj \
+       gtkrecentchooserwidget.obj \
+       gtkrecentchooserutils.obj \
+       gtkrecentchooser.obj \
+       gtkrecentfilter.obj \
+       gtkrecentmanager.obj \
+
+gtk_OBJECTS = \
+       fnmatch.obj \
+       gtk9slice.obj \
+       gtkaboutdialog.obj \
+       gtkaccelgroup.obj \
+       gtkaccellabel.obj \
+       gtkaccelmap.obj \
+       gtkaccessible.obj \
+       gtkaction.obj \
+       gtkactiongroup.obj \
+       gtkactivatable.obj \
+       gtkadjustment.obj \
+       gtkalignment.obj \
+       gtkanimationdescription.obj \
+       gtkappchooser.obj \
+       gtkappchooserbutton.obj \
+       gtkappchooserdialog.obj \
+       gtkappchoosermodule.obj \
+       gtkappchooseronline.obj \
+       gtkappchooseronlinepk.obj \
+       gtkappchooserwidget.obj \
+       gtkapplication.obj \
+       gtkarrow.obj \
+       gtkaspectframe.obj \
+       gtkassistant.obj \
+       gtkbin.obj \
+       gtkbindings.obj \
+       gtkbbox.obj \
+       gtkbox.obj \
+       gtkborder.obj \
+       gtkbuildable.obj \
+       gtkbuilder.obj \
+       gtkbuilderparser.obj \
+       gtkbutton.obj \
+       gtkcalendar.obj \
+       gtkcheckbutton.obj \
+       gtkcheckmenuitem.obj \
+       gtkclipboard.obj \
+       gtkcolorbutton.obj \
+       gtkcolorsel.obj \
+       gtkcolorseldialog.obj \
+       gtkcombobox.obj \
+       gtkcomboboxtext.obj \
+       gtkcontainer.obj \
+       gtkcssprovider.obj \
+       gtkdialog.obj \
+       gtkdnd.obj \
+       gtkdrawingarea.obj \
+       gtkeditable.obj \
+       gtkentry.obj \
+       gtkentrybuffer.obj \
+       gtkentrycompletion.obj \
+       gtkeventbox.obj \
+       gtkexpander.obj \
+       gtkfixed.obj \
+       gtkfontsel.obj \
+       gtkfontbutton.obj \
+       gtkframe.obj \
+       gtkgradient.obj \
+       gtkgrid.obj \
+       gtkhandlebox.obj \
+       gtkhbbox.obj \
+       gtkhbox.obj \
+       gtkhpaned.obj \
+       gtkhscale.obj \
+       gtkhscrollbar.obj \
+       gtkhseparator.obj \
+       gtkhsv.obj \
+       gtkiconcache.obj \
+       gtkiconcachevalidator.obj \
+       gtkiconfactory.obj \
+       gtkicontheme.obj \
+       gtkiconview.obj \
+       gtkimage.obj \
+       gtkimagemenuitem.obj \
+       gtkimcontext.obj \
+       gtkimcontextsimple.obj \
+       gtkimmodule.obj \
+       gtkimmulticontext.obj \
+       gtkinfobar.obj \
+       gtkinvisible.obj \
+       gtkkeyhash.obj  \
+       gtklabel.obj \
+       gtklayout.obj \
+       gtklinkbutton.obj \
+       gtkmain.obj \
+       gtkmarshalers.obj \
+       gtkmenu.obj \
+       gtkmenubar.obj \
+       gtkmenuitem.obj \
+       gtkmenushell.obj \
+       gtkmenutoolbutton.obj \
+       gtkmessagedialog.obj \
+       gtkmisc.obj \
+       gtkmnemonichash.obj \
+       gtkmodifierstyle.obj \
+       gtkmodules.obj \
+       gtkmountoperation.obj \
+       gtkmountoperation-stub.obj \
+       gtknotebook.obj \
+       gtknumerableicon.obj \
+       gtkoffscreenwindow.obj \
+       gtkorientable.obj \
+       gtkpagesetup.obj \
+       gtkpaned.obj \
+       gtkpango.obj \
+       gtkpapersize.obj \
+       gtkpathbar.obj \
+       gtkprogressbar.obj \
+       gtkquery.obj \
+       gtkradioaction.obj \
+       gtkradiobutton.obj \
+       gtkradiotoolbutton.obj \
+       gtkradiomenuitem.obj \
+       gtkrange.obj \
+       gtkrbtree.obj \
+       gtkrc.obj \
+       gtkscale.obj \
+       gtkscalebutton.obj \
+       gtkscrollable.obj \
+       gtkscrollbar.obj \
+       gtkscrolledwindow.obj \
+       gtksearchengine.obj \
+       gtksearchenginebeagle.obj \
+       gtksearchenginesimple.obj \
+       gtksearchenginetracker.obj \
+       gtkselection.obj \
+       gtkseparator.obj \
+       gtkseparatormenuitem.obj \
+       gtkseparatortoolitem.obj \
+       gtksettings.obj \
+       gtkshow.obj \
+       gtksizegroup.obj \
+       gtksizerequest.obj \
+       gtkspinbutton.obj \
+       gtkspinner.obj \
+       gtkstatusicon.obj \
+       gtkstyle.obj \
+       gtkstylecontext.obj \
+       gtkstyleproperties.obj \
+       gtkstyleprovider.obj \
+       gtkstatusbar.obj \
+       gtkstock.obj \
+       gtkswitch.obj \
+       gtksymboliccolor.obj \
+       gtktable.obj \
+       gtktearoffmenuitem.obj \
+       gtktestutils.obj \
+       gtkthemingengine.obj \
+       gtktimeline.obj \
+       gtktoggleaction.obj \
+       gtktogglebutton.obj \
+       gtktoggletoolbutton.obj \
+       gtktoolbar.obj \
+       gtktoolbutton.obj \
+       gtktoolitem.obj \
+       gtktoolitemgroup.obj \
+       gtktoolpalette.obj \
+       gtktoolshell.obj \
+       gtktooltip.obj \
+       gtktreedatalist.obj \
+       gtktypebuiltins.obj \
+       gtkuimanager.obj \
+       gtkvbbox.obj \
+       gtkvbox.obj \
+       gtkviewport.obj \
+       gtkvolumebutton.obj \
+       gtkvpaned.obj \
+       gtkvscale.obj \
+       gtkvscrollbar.obj \
+       gtkvseparator.obj \
+       gtkwidget.obj \
+       gtkwidgetpath.obj \
+       gtkwin32embed.obj \
+       gtkwin32embedwidget.obj \
+       gtkwindow.obj \
+#      gtkwrapbox.obj \
 
 # Source headers which are non-autogenerated headers
-gtk_public_h_sources =         \
+gtk_public_h_sources =                 \
        gtk.h                   \
+       gtkaboutdialog.h        \
        gtkaccelgroup.h         \
        gtkaccellabel.h         \
+       gtkaccelmap.h           \
+       gtkaccessible.h         \
+       gtkaction.h             \
+       gtkactiongroup.h        \
+       gtkactivatable.h        \
        gtkadjustment.h         \
        gtkalignment.h          \
-       gtkarg.h                \
+       gtkappchooser.h         \
+       gtkappchooserbutton.h   \
+       gtkappchooserdialog.h   \
+       gtkappchooserwidget.h   \
+       gtkapplication.h        \
        gtkarrow.h              \
        gtkaspectframe.h        \
+       gtkassistant.h          \
+       gtkbbox.h               \
        gtkbin.h                \
        gtkbindings.h           \
-       gtkbbox.h               \
+       gtkborder.h             \
        gtkbox.h                \
+       gtkbuilder.h            \
+       gtkbuildable.h          \
        gtkbutton.h             \
        gtkcalendar.h           \
+       gtkcellarea.h           \
+       gtkcellareacontext.h    \
+       gtkcellareabox.h        \
+       gtkcelleditable.h       \
+       gtkcelllayout.h         \
+       gtkcellrenderer.h       \
+       gtkcellrendereraccel.h  \
+       gtkcellrenderercombo.h  \
+       gtkcellrendererpixbuf.h \
+       gtkcellrendererprogress.h \
+       gtkcellrendererspin.h   \
+       gtkcellrendererspinner.h\
+       gtkcellrenderertext.h   \
+       gtkcellrenderertoggle.h \
+       gtkcellview.h           \
        gtkcheckbutton.h        \
        gtkcheckmenuitem.h      \
-       gtkclist.h              \
        gtkclipboard.h          \
+       gtkcolorbutton.h        \
        gtkcolorsel.h           \
        gtkcolorseldialog.h     \
-       gtkcombo.h              \
-       gtkcompat.h             \
+       gtkcombobox.h           \
+       gtkcomboboxtext.h       \
        gtkcontainer.h          \
-       gtkctree.h              \
-       gtkcurve.h              \
-       gtkcellrenderer.h       \
-       gtkcellrenderertext.h   \
-       gtkcellrenderertextpixbuf.h     \
-       gtkcellrenderertoggle.h \
-       gtkcellrendererpixbuf.h \
-       gtkdata.h               \
+       gtkcssprovider.h        \
        gtkdebug.h              \
        gtkdialog.h             \
        gtkdnd.h                \
        gtkdrawingarea.h        \
        gtkeditable.h           \
        gtkentry.h              \
+       gtkentrybuffer.h        \
+       gtkentrycompletion.h    \
        gtkenums.h              \
        gtkeventbox.h           \
-       gtkfilesel.h            \
+       gtkexpander.h           \
+       gtkfilechooser.h        \
+       gtkfilechooserbutton.h  \
+       gtkfilechooserdialog.h  \
+       gtkfilechooserwidget.h  \
+       gtkfilefilter.h         \
        gtkfixed.h              \
+       gtkfontbutton.h         \
        gtkfontsel.h            \
        gtkframe.h              \
-       gtkgamma.h              \
-       gtkgc.h                 \
+       gtkgradient.h           \
+       gtkgrid.h               \
        gtkhandlebox.h          \
        gtkhbbox.h              \
        gtkhbox.h               \
        gtkhpaned.h             \
-       gtkhruler.h             \
        gtkhscale.h             \
        gtkhscrollbar.h         \
        gtkhseparator.h         \
        gtkhsv.h                \
        gtkiconfactory.h        \
+       gtkicontheme.h          \
+       gtkiconview.h           \
        gtkimage.h              \
+       gtkimagemenuitem.h      \
        gtkimcontext.h          \
+       gtkimcontextsimple.h    \
+       gtkimmodule.h           \
        gtkimmulticontext.h     \
-       gtkinputdialog.h        \
+       gtkinfobar.h            \
        gtkinvisible.h          \
-       gtkitem.h               \
-       gtkitemfactory.h        \
        gtklabel.h              \
        gtklayout.h             \
-       gtklist.h               \
-       gtklistitem.h           \
+       gtklinkbutton.h         \
        gtkliststore.h          \
        gtkmain.h               \
        gtkmenu.h               \
        gtkmenubar.h            \
-       gtkmenufactory.h        \
        gtkmenuitem.h           \
        gtkmenushell.h          \
+       gtkmenutoolbutton.h     \
        gtkmessagedialog.h      \
        gtkmisc.h               \
-       gtkmodelsimple.h        \
+       gtkmodules.h            \
+       gtkmountoperation.h     \
        gtknotebook.h           \
-       gtkobject.h             \
-       gtkoptionmenu.h         \
-       gtkpacker.h             \
+       gtkoffscreenwindow.h    \
+       gtkorientable.h         \
+       gtkpagesetup.h          \
        gtkpaned.h              \
-       gdk-pixbuf-loader.h     \
-       gtkpixmap.h             \
+       gtkpapersize.h          \
        gtkplug.h               \
-       gtkpreview.h            \
-       gtkprivate.h            \
-       gtkprogress.h           \
+       gtkprintcontext.h       \
+       gtkprintoperation.h     \
+       gtkprintoperationpreview.h \
+       gtkprintsettings.h      \
        gtkprogressbar.h        \
+       gtkradioaction.h        \
        gtkradiobutton.h        \
        gtkradiomenuitem.h      \
+       gtkradiotoolbutton.h    \
        gtkrange.h              \
        gtkrc.h                 \
-       gtkruler.h              \
+       gtkrecentaction.h       \
+       gtkrecentchooser.h      \
+       gtkrecentchooserdialog.h \
+       gtkrecentchoosermenu.h  \
+       gtkrecentchooserwidget.h \
+       gtkrecentfilter.h       \
+       gtkrecentmanager.h      \
        gtkscale.h              \
+       gtkscalebutton.h        \
+       gtkscrollable.h         \
        gtkscrollbar.h          \
        gtkscrolledwindow.h     \
        gtkselection.h          \
        gtkseparator.h          \
-       gtksignal.h             \
+       gtkseparatormenuitem.h  \
+       gtkseparatortoolitem.h  \
+       gtksettings.h           \
+       gtkshow.h               \
+       gtksizegroup.h          \
+       gtksizerequest.h        \
        gtksocket.h             \
        gtkspinbutton.h         \
-       gtkstyle.h              \
+       gtkspinner.h            \
        gtkstatusbar.h          \
+       gtkstatusicon.h         \
        gtkstock.h              \
+       gtkstylecontext.h       \
+       gtkstyleproperties.h    \
+       gtkstyleprovider.h      \
+       gtkstyle.h              \
+       gtkswitch.h             \
+       gtksymboliccolor.h      \
        gtktable.h              \
        gtktearoffmenuitem.h    \
+       gtktestutils.h          \
        gtktextbuffer.h         \
+       gtktextbufferrichtext.h \
        gtktextchild.h          \
        gtktextdisplay.h        \
        gtktextiter.h           \
-       gtktextlayout.h         \
        gtktextmark.h           \
        gtktexttag.h            \
        gtktexttagtable.h       \
        gtktextview.h           \
-       gtktext.h               \
-       gtkthemes.h             \
-       gtktipsquery.h          \
+       gtkthemingengine.h      \
+       gtktoggleaction.h       \
        gtktogglebutton.h       \
+       gtktoggletoolbutton.h   \
        gtktoolbar.h            \
-       gtktooltips.h           \
-       gtktree.h               \
-       gtktreeitem.h           \
+       gtktoolbutton.h         \
+       gtktoolitem.h           \
+       gtktoolitemgroup.h      \
+       gtktoolpalette.h        \
+       gtktoolshell.h          \
+       gtktooltip.h            \
+       gtktreednd.h            \
        gtktreemodel.h          \
+       gtktreemodelfilter.h    \
+       gtktreemodelsort.h      \
        gtktreeselection.h      \
+       gtktreesortable.h       \
        gtktreestore.h          \
        gtktreeview.h           \
        gtktreeviewcolumn.h     \
-       gtktypeutils.h          \
+       gtkuimanager.h          \
        gtkvbbox.h              \
        gtkvbox.h               \
        gtkviewport.h           \
+       gtkvolumebutton.h       \
        gtkvpaned.h             \
-       gtkvruler.h             \
        gtkvscale.h             \
        gtkvscrollbar.h         \
        gtkvseparator.h         \
        gtkwidget.h             \
+       gtkwidgetpath.h         \
        gtkwindow.h
 
-# More headers to use when autogenerating.
-gdk_headers =                  \
-       ..\gdk\gdkcc.h          \
-       ..\gdk\gdkcolor.h       \
-       ..\gdk\gdkcursor.h      \
-       ..\gdk\gdkdnd.h         \
-       ..\gdk\gdkdrawable.h    \
-       ..\gdk\gdkevents.h      \
-       ..\gdk\gdkfont.h        \
-       ..\gdk\gdkgc.h          \
-       ..\gdk\gdkim.h          \
-       ..\gdk\gdkimage.h       \
-       ..\gdk\gdkinput.h       \
-       ..\gdk\gdkpixmap.h      \
-       ..\gdk\gdkproperty.h    \
-       ..\gdk\gdkregion.h      \
-       ..\gdk\gdkrgb.h         \
-       ..\gdk\gdkselection.h   \
-       ..\gdk\gdktypes.h       \
-       ..\gdk\gdkvisual.h      \
-       ..\gdk\gdkwindow.h
+# these aren't use here, but listed for reference
+gtk_extra_sources = \
+       gtkversion.h            \
+       gtk-boxed.defs          \
+       gtkmarshal.list         \
 
 ..\config.h : ..\config.h.win32
        copy ..\config.h.win32 ..\config.h
 
-GENERATED = gtk.defs gtktypebuiltins.h gtktypebuiltins_vars.c gtktypebuiltins_ids.c gtktypebuiltins_evals.c gtkmarshal.h gtkmarshal.c
-
-#
-# Generated source files:
-#
-generated : $(GENERATED)
-       $(TOUCH) generated
-
-gtk.defs : makeenums.pl gtk-boxed.defs $(gtk_public_h_sources) $(gdk_headers)
-       $(PERL) makeenums.pl defs $(gtk_public_h_sources) $(gdk_headers) >gd.tmp
-       copy gd.tmp+gtk-boxed.defs gtk.defs
-       @erase gd.tmp
+gtk.def: gtk.symbols makefile.msc
+       echo EXPORTS > gtk.def
+       cl /EP -DG_OS_WIN32 -DGDK_WINDOWING_WIN32 \
+               -DG_GNUC_MALLOC= -DG_GNUC_CONST= -DG_GNUC_NULL_TERMINATED= -DG_GNUC_NORETURN= \
+               -DG_GNUC_PRINTF=;G_GNUC_PRINTF gtk.symbols >> gtk.def
 
 # generate type identifier header (GTK_TYPE_WIDGET_FLAGS)
-gtktypebuiltins.h: gtk.defs maketypes.awk
-       $(AWK) -f maketypes.awk gtk.defs macros >gtktypebuiltins.h
-
-# generate type identifier variables (GTK_TYPE_WIDGET_FLAGS)
-gtktypebuiltins_vars.c: gtk.defs maketypes.awk
-       $(AWK) -f maketypes.awk gtk.defs variables >gtktypebuiltins_vars.c
-
-# generate type entries for type-id registration
-gtktypebuiltins_ids.c: gtk.defs maketypes.awk
-       $(AWK) -f maketypes.awk gtk.defs entries >gtktypebuiltins_ids.c
-
-# generate enum value arrays
-gtktypebuiltins_evals.c: makeenums.pl gtk.defs
-       $(PERL) makeenums.pl arrays $(gtk_public_h_sources) $(gdk_headers) >gtktypebuiltins_evals.c
-
-gtkmarshal.h : gtkmarshal.list
-       glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --header >gtkmarshal.h
-
-gtkmarshal.c : gtkmarshal.list
-       glib-genmarshal --prefix=gtk_marshal gtkmarshal.list --body >gtkmarshal.c
+# use 'echo' to work around 'command line too long'
+gtktypebuiltins.h: $(gtk_public_h_sources) makefile.msc
+       echo #ifndef __GTK_TYPE_BUILTINS_H__ > gtktypebuiltins.h
+       echo #define __GTK_TYPE_BUILTINS_H__ >> gtktypebuiltins.h
+       echo #include "glib-object.h" >> gtktypebuiltins.h
+       echo G_BEGIN_DECLS >> gtktypebuiltins.h
+       $(PERL) $(GLIB)\gobject\glib-mkenums \
+               --fprod "/* enumerations from \"@filename@\" */\n" \
+               --vhead "GType @enum_name@_get_type (void);\n#define GTK_TYPE_@ENUMSHORT@ (@enum_name@_get_type())\n" \
+               --ftail "G_END_DECLS\n\n#endif /* __GTK_TYPE_BUILTINS_H__ */" \
+               $(gtk_public_h_sources) >> gtktypebuiltins.h
+
+gtktypebuiltins.c: $(gtk_public_h_sources) makefile.msc
+       $(PERL) $(GLIB)\gobject\glib-mkenums \
+               --fhead "#define GTK_ENABLE_BROKEN\n#include \"gtk.h\"\n#include \"gtkprivate.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" \
+               $(gtk_public_h_sources) > xgen-gtbc
+       copy xgen-gtbc gtktypebuiltins.c
+
+# private marshalers
+gtkmarshalers.h : gtkmarshalers.list makefile.msc
+       $(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --header >gtkmarshalers.h
+
+gtkmarshalers.c : gtkmarshalers.list makefile.msc
+       $(GLIB)\gobject\glib-genmarshal --prefix=_gtk_marshal gtkmarshalers.list --body >gtkmarshalers.c
+
+gtktypefuncs.c : makefile.msc
+       echo /*none*/ > gtktypefuncs.c
+
+gtk-win32.res : gtk-win32.rc
+       rc -DBUILDNUMBER=0 -r -fo gtk-win32.res gtk-win32.rc
+
+# build some static limits to covercome command line too long
+# may also speed up the build
+
+gtk-cell.lib : $(gtk_OBJECTS_cell)
+       lib /out:gtk-cell.lib $(gtk_OBJECTS_cell)
+
+gtk-file.lib : $(gtk_OBJECTS_file)
+       lib /out:gtk-file.lib $(gtk_OBJECTS_file)
+
+gtk-print.lib : $(gtk_OBJECTS_print)
+       lib /out:gtk-print.lib $(gtk_OBJECTS_print)
+
+gtk-recent.lib : $(gtk_OBJECTS_recent)
+       lib /out:gtk-recent.lib $(gtk_OBJECTS_recent)
+
+gtk-text.lib : $(gtk_OBJECTS_text)
+       lib /out:gtk-text.lib $(gtk_OBJECTS_text)
+
+gtk-core.lib : $(gtk_OBJECTS) 
+       lib /out:gtk-core.lib $(gtk_OBJECTS)
+
+gtk_SUBLIBS = \
+       gtk-cell.lib \
+       gtk-file.lib \
+       gtk-print.lib \
+       gtk-recent.lib \
+       gtk-text.lib \
+       gtk-core.lib
 
 #
 # Linking:
 #
-gtk-win32-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
-       $(CC) $(CFLAGS) -LD -Fegtk-win32-$(GTK_VER).dll $(gtk_OBJECTS) $(GDK_LIBS) $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) gdi32.lib user32.lib advapi32.lib $(LDFLAGS) /def:gtk.def
-
-# General rule for compiling the objects into the DLL
-.c.obj :
-       $(CC) $(CFLAGS) -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" $<
-
-#
-# Test programs:
-#
-testcalendar.exe : gtk-win32-$(GTK_VER).dll testcalendar.obj
-       $(CC) $(CFLAGS) testcalendar.obj $(GTK_LIBS) $(GDK_LIBS) $(PANGO_LIBS) $(GLIB_LIBS) $(LDFLAGS)
-
-# Must have separate rules for these objects that don't go in the DLL
-testcalendar.obj : testcalendar.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testcalendar\" testcalendar.c
-
-testdnd.exe : gtk-win32-$(GTK_VER).dll testdnd.obj
-       $(CC) $(CFLAGS) testdnd.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
-
-testdnd.obj : testdnd.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testdnd\" testdnd.c
-
-testgtk.exe : gtk-win32-$(GTK_VER).dll testgtk.obj
-       $(CC) $(CFLAGS) testgtk.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)
+libgtk-win32-$(GTK_VER)-0.dll : $(gtk_SUBLIBS) gtk.def gtk-win32.res
+       $(CC) $(CFLAGS) -LD -Fm -Fe$@ $(gtk_SUBLIBS) gtk-win32.res $(EXTRALIBS) \
+       gdi32.lib user32.lib advapi32.lib wsock32.lib shell32.lib ole32.lib \
+       comdlg32.lib winspool.lib comctl32.lib \
+       $(LDFLAGS) /implib:gtk-win32-$(GTK_VER).lib /def:gtk.def
 
-testgtk.obj : testgtk.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testgtk\" testgtk.c
+gtk-win32-$(GTK_VER)s.lib : $(gtk_OBJECTS)
+       lib /out:gtk-win32-$(GTK_VER)s.lib $(gtk_OBJECTS)
 
-testinput.exe : gtk-win32-$(GTK_VER).dll testinput.obj
-       $(CC) $(CFLAGS) testinput.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
+gtk-query-immodules-$(GTK_VER).exe : queryimmodules.obj
+       $(CC) $(CFLAGS) -Fe$@ queryimmodules.obj $(GTK_LIBS) $(GLIB_LIBS) $(PANGO_LIBS) $(LDFLAGS)
 
-testinput.obj : testinput.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testinput\" testinput.c
+gtk-update-icon-cache.exe : updateiconcache.obj
+       $(CC) $(CFLAGS) -Fe$@ updateiconcache.obj $(GDK_PIXBUF_LIBS) $(GLIB_LIBS) $(INTL_LIBS) $(PANGO_LIBS) $(LDFLAGS)
 
-testrgb.exe : gtk-win32-$(GTK_VER).dll testrgb.obj
-       $(CC) $(CFLAGS) testrgb.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
+gtk-x11-$(GTK_VER).dll : $(gtk_OBJECTS) gtk.def
+       $(CC) $(CFLAGS) -LD -Fm -Fegtk-x11-$(GTK_VER).dll $(gtk_OBJECTS) ../gdk/gdk-x11-$(GTK_VER).lib $(GDK_PIXBUF_LIBS) $(PANGO_LIBS) $(INTL_LIBS) $(GLIB_LIBS) gdi32.lib user32.lib advapi32.lib $(LDFLAGS) /def:gtk.def
 
-testrgb.obj : testrgb.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testrgb\" testrgb.c
-
-testselection.exe : gtk-win32-$(GTK_VER).dll testselection.obj
-       $(CC) $(CFLAGS) testselection.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
-
-testselection.obj : testselection.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testselection\" testselection.c
-
-testtext.exe : gtk-win32-$(GTK_VER).dll testtext.obj
-       $(CC) $(CFLAGS) testtext.obj $(PANGO_LIBS) $(GDK_PIXBUF_LIBS) $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
-
-testtext.obj : testtext.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testtext\" testtext.c
-
-testtextbuffer.exe : gtk-win32-$(GTK_VER).dll testtextbuffer.obj
-       $(CC) $(CFLAGS) testtextbuffer.obj $(GDK_PIXBUF_LIBS) $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
-
-testtextbuffer.obj : testtextbuffer.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"testtextbuffer\" testtextbuffer.c
-
-testthreads.exe : gtk-win32-$(GTK_VER).dll testthreads.obj
-       $(CC) $(CFLAGS) testthreads.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(PTHREAD_LIBS) $(LDFLAGS)
-
-testthreads.obj : testthreads.c
-       $(CC) $(CFLAGS) $(PTHREAD_CFLAGS) -c -DG_LOG_DOMAIN=\"testthreads\" -DUSE_PTHREADS=1 testthreads.c
+# General rule for compiling the objects into the DLL
+.c.obj :
+       $(CC) $(CFLAGS) -GF -Zm400 -GD -c -DGTK_COMPILATION -DG_LOG_DOMAIN=\"Gtk\" $<
 
-simple.exe : gtk-win32-$(GTK_VER).dll simple.obj
-       $(CC) $(CFLAGS) simple.obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
+$(EXAMPLE).obj : ..\examples\$(EXAMPLE)\$(EXAMPLE).c
+       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"$(EXAMPLE)\" ..\examples\$(EXAMPLE)\$(EXAMPLE).c
 
-simple.obj : simple.c
-       $(CC) $(CFLAGS) -c -DG_LOG_DOMAIN=\"simple\" simple.c
+$(EXAMPLE).exe : $(EXAMPLE).obj
+       $(CC) $(CFLAGS) $(EXAMPLE).obj $(GTK_LIBS) $(GDK_LIBS) $(GLIB_LIBS) $(LDFLAGS)
 
-makefile.msc: makefile.msc.in
-       sed -e s,@GTK[_]MAJOR_VERSION@,@GTK_MAJOR_VERSION@, \
-           -e s,@GTK[_]MINOR_VERSION@,@GTK_MINOR_VERSION@, \
-           -e 's,@GDK_PIXBUF[_]MAJOR@,@GDK_PIXBUF_MAJOR@,' \
-           -e 's,@GDK_PIXBUF[_]MINOR@,@GDK_PIXBUF_MINOR@,'  <makefile.msc.in >$@