]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Some compile fixes.
[wxWidgets.git] / configure.in
index 92c02b8e2b421467172b7cc80b24904891ea5e63..2ebd58da632fa5085e7bd3ea48ab80ac5dec9af4 100644 (file)
@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-AC_INIT([wxWidgets], [2.7.0], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [2.7.1], [wx-dev@lists.wxwidgets.org])
 
 dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
 AC_CONFIG_SRCDIR([wx-config.in])
@@ -34,7 +34,7 @@ dnl wx_release_number += 1
 
 wx_major_version_number=2
 wx_minor_version_number=7
-wx_release_number=0
+wx_release_number=2
 wx_subrelease_number=0
 
 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
@@ -89,7 +89,7 @@ NEEDS_D_REENTRANT_FOR_R_FUNCS=0
 dnl the list of all available toolkits
 dnl
 dnl update NUM_TOOLKITS calculation below when adding a new toolkit here!
-ALL_TOOLKITS="COCOA GTK MAC MGL MICROWIN MOTIF MSW PM X11"
+ALL_TOOLKITS="COCOA GTK MAC MGL MICROWIN MOTIF MSW PM X11 DFB"
 
 dnl NB: these wxUSE_XXX constants have value of 0 or 1 unlike all the other ones
 dnl     which are either yes or no
@@ -102,6 +102,7 @@ DEFAULT_wxUSE_MOTIF=0
 DEFAULT_wxUSE_MSW=0
 DEFAULT_wxUSE_PM=0
 DEFAULT_wxUSE_X11=0
+DEFAULT_wxUSE_DFB=0
 
 dnl these are the values which are really default for the given platform -
 dnl they're not cached and are only used if no --with-toolkit was given *and*
@@ -115,6 +116,7 @@ DEFAULT_DEFAULT_wxUSE_MOTIF=0
 DEFAULT_DEFAULT_wxUSE_MSW=0
 DEFAULT_DEFAULT_wxUSE_PM=0
 DEFAULT_DEFAULT_wxUSE_X11=0
+DEFAULT_DEFAULT_wxUSE_DFB=0
 
 PROGRAM_EXT=
 SO_SUFFIX=so
@@ -191,7 +193,7 @@ case "${host}" in
     AC_DEFINE(__BSD__)
     DEFAULT_DEFAULT_wxUSE_GTK=1
   ;;
-  *-*-openbsd*)
+  *-*-openbsd*|*-*-mirbsd*)
     USE_BSD=1
     USE_OPENBSD=1
     AC_DEFINE(__OPENBSD__)
@@ -262,7 +264,6 @@ case "${host}" in
     SO_SUFFIX=dll
     PROGRAM_EXT=".exe"
     DEFAULT_DEFAULT_wxUSE_MSW=1
-    DEFAULT_STD_FLAG=no
   ;;
 
   *-pc-msdosdjgpp )
@@ -338,7 +339,11 @@ case "${host}" in
   ;;
 
   *)
-    AC_MSG_ERROR(unknown system type ${host}.)
+    AC_MSG_WARN([*** System type ${host} is unknown, assuming generic Unix and continuing nevertheless.])
+    AC_MSG_WARN([*** Please report the build results to wx-dev@lists.wxwidgets.org.])
+
+    DEFAULT_DEFAULT_wxUSE_X11=1
+    DEFAULT_wxUSE_SHARED=no
 esac
 
 dnl ---------------------------------------------------------------------------
@@ -364,7 +369,7 @@ if test $DEBUG_CONFIGURE = 1; then
 
   DEFAULT_wxUSE_THREADS=yes
 
-  DEFAULT_wxUSE_SHARED=yes
+  DEFAULT_wxUSE_SHARED=${DEFAULT_wxUSE_SHARED:-yes}
   DEFAULT_wxUSE_OPTIMISE=no
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
@@ -424,6 +429,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_SOUND=no
   DEFAULT_wxUSE_MEDIACTRL=no
   DEFAULT_wxUSE_GSTREAMER8=no
+  DEFAULT_wxUSE_PRINTF_POS_PARAMS=no
   DEFAULT_wxUSE_INTL=no
   DEFAULT_wxUSE_CONFIG=no
   DEFAULT_wxUSE_FONTMAP=no
@@ -469,7 +475,9 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_PROTOCOL_FTP=no
   DEFAULT_wxUSE_PROTOCOL_FILE=no
   DEFAULT_wxUSE_URL=no
+  DEFAULT_wxUSE_VARIANT=no
 
+  DEFAULT_wxUSE_ABOUTDLG=no
   DEFAULT_wxUSE_COMMONDLGS=no
   DEFAULT_wxUSE_CHOICEDLG=no
   DEFAULT_wxUSE_COLOURDLG=no
@@ -490,30 +498,43 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_HTML=no
   DEFAULT_wxUSE_RICHTEXT=no
   DEFAULT_wxUSE_XRC=no
+  DEFAULT_wxUSE_AUI=no
   DEFAULT_wxUSE_WEBKIT=no
   DEFAULT_wxUSE_FILESYSTEM=no
   DEFAULT_wxUSE_FS_INET=no
   DEFAULT_wxUSE_FS_ZIP=no
+  DEFAULT_wxUSE_FS_ARCHIVE=no
   DEFAULT_wxUSE_BUSYINFO=no
   DEFAULT_wxUSE_ARCHIVE_STREAMS=no
   DEFAULT_wxUSE_ZIPSTREAM=no
+  DEFAULT_wxUSE_TARSTREAM=no
   DEFAULT_wxUSE_VALIDATORS=no
 
   DEFAULT_wxUSE_ACCEL=no
+  DEFAULT_wxUSE_ANIMATIONCTRL=no
   DEFAULT_wxUSE_BUTTON=no
   DEFAULT_wxUSE_BMPBUTTON=no
+  DEFAULT_wxUSE_BITMAPCOMBOBOX=no
   DEFAULT_wxUSE_CALCTRL=no
   DEFAULT_wxUSE_CARET=no
   DEFAULT_wxUSE_CHECKBOX=no
   DEFAULT_wxUSE_CHECKLST=no
   DEFAULT_wxUSE_CHOICE=no
   DEFAULT_wxUSE_CHOICEBOOK=no
+  DEFAULT_wxUSE_COLLPANE=no
+  DEFAULT_wxUSE_COLOURPICKERCTRL=no
   DEFAULT_wxUSE_COMBOBOX=no
   DEFAULT_wxUSE_COMBOCTRL=no
   DEFAULT_wxUSE_DATEPICKCTRL=no
   DEFAULT_wxUSE_DISPLAY=no
+  DEFAULT_wxUSE_DETECT_SM=no
+  DEFAULT_wxUSE_DIRPICKERCTRL=no
+  DEFAULT_wxUSE_FILEPICKERCTRL=no
+  DEFAULT_wxUSE_FONTPICKERCTRL=no
   DEFAULT_wxUSE_GAUGE=no
+  DEFAULT_wxUSE_GRAPHICS_CONTEXT=no
   DEFAULT_wxUSE_GRID=no
+  DEFAULT_wxUSE_HYPERLINKCTRL=no
   DEFAULT_wxUSE_DATAVIEWCTRL=no
   DEFAULT_wxUSE_IMAGLIST=no
   DEFAULT_wxUSE_LISTBOOK=no
@@ -539,7 +560,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_TOGGLEBTN=no
   DEFAULT_wxUSE_TOOLBAR=no
   DEFAULT_wxUSE_TOOLBAR_NATIVE=no
-  DEFAULT_wxUSE_TOOLBAR_SIMPLE=no
   DEFAULT_wxUSE_TREEBOOK=no
   DEFAULT_wxUSE_TOOLBOOK=no
   DEFAULT_wxUSE_TREECTRL=no
@@ -571,7 +591,7 @@ else
 
   DEFAULT_wxUSE_THREADS=yes
 
-  DEFAULT_wxUSE_SHARED=yes
+  DEFAULT_wxUSE_SHARED=${DEFAULT_wxUSE_SHARED:-yes}
   DEFAULT_wxUSE_OPTIMISE=yes
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
@@ -630,6 +650,7 @@ else
   DEFAULT_wxUSE_SOUND=yes
   DEFAULT_wxUSE_MEDIACTRL=no
   DEFAULT_wxUSE_GSTREAMER8=no
+  DEFAULT_wxUSE_PRINTF_POS_PARAMS=yes
   DEFAULT_wxUSE_INTL=yes
   DEFAULT_wxUSE_CONFIG=yes
   DEFAULT_wxUSE_FONTMAP=yes
@@ -675,7 +696,9 @@ else
   DEFAULT_wxUSE_PROTOCOL_FTP=yes
   DEFAULT_wxUSE_PROTOCOL_FILE=yes
   DEFAULT_wxUSE_URL=yes
+  DEFAULT_wxUSE_VARIANT=yes
 
+  DEFAULT_wxUSE_ABOUTDLG=yes
   DEFAULT_wxUSE_COMMONDLGS=yes
   DEFAULT_wxUSE_CHOICEDLG=yes
   DEFAULT_wxUSE_COLOURDLG=yes
@@ -696,30 +719,43 @@ else
   DEFAULT_wxUSE_HTML=yes
   DEFAULT_wxUSE_RICHTEXT=yes
   DEFAULT_wxUSE_XRC=yes
+  DEFAULT_wxUSE_AUI=yes
   DEFAULT_wxUSE_WEBKIT=yes
   DEFAULT_wxUSE_FILESYSTEM=yes
   DEFAULT_wxUSE_FS_INET=yes
   DEFAULT_wxUSE_FS_ZIP=yes
+  DEFAULT_wxUSE_FS_ARCHIVE=yes
   DEFAULT_wxUSE_BUSYINFO=yes
   DEFAULT_wxUSE_ARCHIVE_STREAMS=yes
   DEFAULT_wxUSE_ZIPSTREAM=yes
+  DEFAULT_wxUSE_TARSTREAM=yes
   DEFAULT_wxUSE_VALIDATORS=yes
 
   DEFAULT_wxUSE_ACCEL=yes
+  DEFAULT_wxUSE_ANIMATIONCTRL=yes
   DEFAULT_wxUSE_BUTTON=yes
   DEFAULT_wxUSE_BMPBUTTON=yes
+  DEFAULT_wxUSE_BITMAPCOMBOBOX=yes
   DEFAULT_wxUSE_CALCTRL=yes
   DEFAULT_wxUSE_CARET=yes
   DEFAULT_wxUSE_CHECKBOX=yes
   DEFAULT_wxUSE_CHECKLST=yes
   DEFAULT_wxUSE_CHOICE=yes
   DEFAULT_wxUSE_CHOICEBOOK=yes
+  DEFAULT_wxUSE_COLLPANE=yes
+  DEFAULT_wxUSE_COLOURPICKERCTRL=yes
   DEFAULT_wxUSE_COMBOBOX=yes
   DEFAULT_wxUSE_COMBOCTRL=yes
   DEFAULT_wxUSE_DATEPICKCTRL=yes
   DEFAULT_wxUSE_DISPLAY=yes
+  DEFAULT_wxUSE_DETECT_SM=yes
+  DEFAULT_wxUSE_DIRPICKERCTRL=yes
+  DEFAULT_wxUSE_FILEPICKERCTRL=yes
+  DEFAULT_wxUSE_FONTPICKERCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
+  DEFAULT_wxUSE_GRAPHICS_CONTEXT=no
+  DEFAULT_wxUSE_HYPERLINKCTRL=yes
   DEFAULT_wxUSE_DATAVIEWCTRL=no
   DEFAULT_wxUSE_IMAGLIST=yes
   DEFAULT_wxUSE_LISTBOOK=yes
@@ -745,7 +781,6 @@ else
   DEFAULT_wxUSE_TOGGLEBTN=yes
   DEFAULT_wxUSE_TOOLBAR=yes
   DEFAULT_wxUSE_TOOLBAR_NATIVE=yes
-  DEFAULT_wxUSE_TOOLBAR_SIMPLE=yes
   DEFAULT_wxUSE_TREEBOOK=yes
   DEFAULT_wxUSE_TOOLBOOK=yes
   DEFAULT_wxUSE_TREECTRL=yes
@@ -770,7 +805,7 @@ else
   DEFAULT_wxUSE_PLUGINS=no
   DEFAULT_wxUSE_OFFICIAL_BUILD=no
 
-  dnl Appliable only when --with-gtk was used:
+  dnl Applicable only when --with-gtk was used:
   DEFAULT_wxUSE_GTK2=yes
 fi
 
@@ -823,6 +858,7 @@ AC_ARG_WITH(wine,          [  --with-wine             use Wine], [wxUSE_WINE="$w
 AC_ARG_WITH(msw,           [  --with-msw              use MS-Windows], [wxUSE_MSW="$withval" CACHE_MSW=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(pm,            [  --with-pm               use OS/2 Presentation Manager], [wxUSE_PM="$withval" CACHE_PM=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(mgl,           [  --with-mgl              use SciTech MGL], [wxUSE_MGL="$withval" wxUSE_UNIVERSAL="yes" CACHE_MGL=1 TOOLKIT_GIVEN=1])
+AC_ARG_WITH(directfb,      [  --with-directfb         use DirectFB], [wxUSE_DFB="$withval" wxUSE_UNIVERSAL="yes" CACHE_DFB=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(microwin,      [  --with-microwin         use MicroWindows], [wxUSE_MICROWIN="$withval" CACHE_MICROWIN=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(x11,           [  --with-x11              use X11], [wxUSE_X11="$withval" wxUSE_UNIVERSAL="yes" CACHE_X11=1 TOOLKIT_GIVEN=1])
 WX_ARG_ENABLE(nanox,       [  --enable-nanox          use NanoX], wxUSE_NANOX)
@@ -841,6 +877,10 @@ WX_ARG_WITH(gnomevfs,      [  --with-gnomevfs         use GNOME VFS for associat
 WX_ARG_WITH(hildon,        [  --with-hildon           use Hildon framework for Nokia 770], wxUSE_LIBHILDON)
 WX_ARG_WITH(opengl,        [  --with-opengl           use OpenGL (or Mesa)], wxUSE_OPENGL)
 
+if test "$wxUSE_UNIVERSAL" = "yes"; then
+    AC_ARG_WITH(themes,        [  --with-themes=all|list  use only the specified comma-separated list of wxUniversal themes], [wxUNIV_THEMES="$withval"])
+fi
+
 fi
 dnl for GUI only
 
@@ -883,7 +923,7 @@ WX_ARG_ENABLE(no_rtti,       [  --enable-no_rtti        create code without RTTI
 WX_ARG_ENABLE(no_exceptions, [  --enable-no_exceptions  create code without C++ exceptions handling], wxUSE_NO_EXCEPTIONS)
 WX_ARG_ENABLE(permissive,    [  --enable-permissive     compile code disregarding strict ANSI], wxUSE_PERMISSIVE)
 WX_ARG_ENABLE(no_deps,       [  --enable-no_deps        create code without dependency information], wxUSE_NO_DEPS)
-WX_ARG_ENABLE(universal_binary, [  --enable-universal_binary create Mac PowerPC and Intel Universal binary (not yet working)], wxUSE_UNIVERSAL_BINARY)
+WX_ARG_ENABLE_PARAM(universal_binary, [[  --enable-universal_binary[=SDK] create Mac PowerPC and Intel Universal binary (not yet working)]], wxUSE_UNIVERSAL_BINARY)
 
 WX_ARG_ENABLE(compat24,      [  --enable-compat24       enable wxWidgets 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, enable)
 WX_ARG_ENABLE(compat26,      [  --disable-compat26      disable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6, disable)
@@ -924,8 +964,9 @@ WX_ARG_ENABLE(ffile,         [  --enable-ffile          use wxFFile class], wxUS
 WX_ARG_ENABLE(file,          [  --enable-file           use wxFile class], wxUSE_FILE)
 WX_ARG_ENABLE(filesystem,    [  --enable-filesystem     use virtual file systems classes], wxUSE_FILESYSTEM)
 WX_ARG_ENABLE(fontmap,       [  --enable-fontmap        use font encodings conversion classes], wxUSE_FONTMAP)
+WX_ARG_ENABLE(fs_archive,    [  --enable-fs_archive     use virtual archive filesystems], wxUSE_FS_ARCHIVE)
 WX_ARG_ENABLE(fs_inet,       [  --enable-fs_inet        use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
-WX_ARG_ENABLE(fs_zip,        [  --enable-fs_zip         use virtual ZIP filesystems], wxUSE_FS_ZIP)
+WX_ARG_ENABLE(fs_zip,        [  --enable-fs_zip         now replaced by fs_archive], wxUSE_FS_ZIP)
 WX_ARG_ENABLE(geometry,      [  --enable-geometry       use geometry class], wxUSE_GEOMETRY)
 WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxUSE_LOG)
 WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
@@ -938,17 +979,19 @@ WX_ARG_ENABLE(stdpaths,      [  --enable-stdpaths       use wxStandardPaths clas
 WX_ARG_ENABLE(stopwatch,     [  --enable-stopwatch      use wxStopWatch class], wxUSE_STOPWATCH)
 WX_ARG_ENABLE(streams,       [  --enable-streams        use wxStream etc classes], wxUSE_STREAMS)
 WX_ARG_ENABLE(system_options,[  --enable-sysoptions     use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
+WX_ARG_ENABLE(tarstream,     [  --enable-tarstream      use wxTar streams], wxUSE_TARSTREAM)
 WX_ARG_ENABLE(textbuf,       [  --enable-textbuf        use wxTextBuffer class], wxUSE_TEXTBUFFER)
 WX_ARG_ENABLE(textfile,      [  --enable-textfile       use wxTextFile class], wxUSE_TEXTFILE)
 WX_ARG_ENABLE(timer,         [  --enable-timer          use wxTimer class], wxUSE_TIMER)
 WX_ARG_ENABLE(unicode,       [  --enable-unicode        compile wxString with Unicode support], wxUSE_UNICODE)
 WX_ARG_ENABLE(sound,         [  --enable-sound          use wxSound class], wxUSE_SOUND)
 WX_ARG_ENABLE(mediactrl,     [  --enable-mediactrl      use wxMediaCtrl class], wxUSE_MEDIACTRL)
-WX_ARG_ENABLE(gstreamer8,     [  --enable-gstreamer8      force GStreamer 0.8 instead of 0.10 with the wxMediaCtrl class on unix], wxUSE_GSTREAMER8)
-WX_ARG_ENABLE(wxprintfv,     [  --enable-wxprintfv      use wxWidgets implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
+WX_ARG_ENABLE(gstreamer8,    [  --enable-gstreamer8     force GStreamer 0.8 instead of 0.10 with the wxMediaCtrl class on unix], wxUSE_GSTREAMER8)
+WX_ARG_ENABLE(printfposparam,[  --enable-printfposparam use wxVsnprintf() which supports positional parameters], wxUSE_PRINTF_POS_PARAMS)
 WX_ARG_ENABLE(zipstream,     [  --enable-zipstream      use wxZip streams], wxUSE_ZIPSTREAM)
 
 WX_ARG_ENABLE(url,           [  --enable-url            use wxURL class], wxUSE_URL)
+WX_ARG_ENABLE(variant,       [  --enable-variant        use wxVariant class], wxUSE_VARIANT)
 WX_ARG_ENABLE(protocol,      [  --enable-protocol       use wxProtocol class], wxUSE_PROTOCOL)
 WX_ARG_ENABLE(protocol_http, [  --enable-protocol-http  HTTP support in wxProtocol], wxUSE_PROTOCOL_HTTP)
 WX_ARG_ENABLE(protocol_ftp,  [  --enable-protocol-ftp   FTP support in wxProtocol], wxUSE_PROTOCOL_FTP)
@@ -973,6 +1016,7 @@ WX_ARG_ENABLE(mshtmlhelp,  [  --enable-mshtmlhelp     use MS HTML Help (win32)],
 WX_ARG_ENABLE(html,        [  --enable-html           use wxHTML sub-library], wxUSE_HTML)
 WX_ARG_ENABLE(htmlhelp,    [  --enable-htmlhelp       use wxHTML-based help], wxUSE_WXHTML_HELP)
 WX_ARG_ENABLE(xrc,         [  --enable-xrc            use XRC resources sub-library], wxUSE_XRC)
+WX_ARG_ENABLE(aui,         [  --enable-aui            use AUI docking library], wxUSE_AUI)
 WX_ARG_ENABLE(constraints, [  --enable-constraints    use layout-constraints system], wxUSE_CONSTRAINTS)
 WX_ARG_ENABLE(printarch,   [  --enable-printarch      use printing architecture], wxUSE_PRINTING_ARCHITECTURE)
 WX_ARG_ENABLE(mdi,         [  --enable-mdi            use multiple document interface architecture], wxUSE_MDI)
@@ -982,6 +1026,7 @@ WX_ARG_ENABLE(logwin,      [  --enable-logwin         use wxLogWindow], wxUSE_LO
 WX_ARG_ENABLE(logdialog,   [  --enable-logdialog      use wxLogDialog], wxUSE_LOGDIALOG)
 WX_ARG_ENABLE(webkit,      [  --enable-webkit         use wxWebKitCtrl (Mac)], wxUSE_WEBKIT)
 WX_ARG_ENABLE(html,        [  --enable-richtext       use wxRichTextCtrl], wxUSE_RICHTEXT)
+WX_ARG_ENABLE(graphics_ctx, [  --enable-graphics_ctx   use graphics context 2D drawing API], wxUSE_GRAPHICS_CONTEXT)
 
 dnl ---------------------------------------------------------------------------
 dnl PostScript options
@@ -1020,6 +1065,7 @@ dnl --disable-<control> later on the command line - but by default all will be
 dnl used (and vice versa)
 if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_ACCEL=yes
+  DEFAULT_wxUSE_ANIMATIONCTRL=yes
   DEFAULT_wxUSE_BMPBUTTON=yes
   DEFAULT_wxUSE_BUTTON=yes
   DEFAULT_wxUSE_CALCTRL=yes
@@ -1029,9 +1075,18 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_CHECKLISTBOX=yes
   DEFAULT_wxUSE_CHOICE=yes
   DEFAULT_wxUSE_CHOICEBOOK=yes
+  DEFAULT_wxUSE_COLLPANE=yes
+  DEFAULT_wxUSE_COLOURPICKERCTRL=yes
+  DEFAULT_wxUSE_COMBOBOX=yes
   DEFAULT_wxUSE_DATEPICKCTRL=yes
+  DEFAULT_wxUSE_DISPLAY=yes
+  DEFAULT_wxUSE_DETECT_SM=yes
+  DEFAULT_wxUSE_DIRPICKERCTRL=yes
+  DEFAULT_wxUSE_FILEPICKERCTRL=yes
+  DEFAULT_wxUSE_FONTPICKERCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
+  DEFAULT_wxUSE_HYPERLINKCTRL=yes
   DEFAULT_wxUSE_DATAVIEWCTRL=no
   DEFAULT_wxUSE_IMAGLIST=yes
   DEFAULT_wxUSE_LISTBOOK=yes
@@ -1054,7 +1109,6 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_TOGGLEBTN=yes
   DEFAULT_wxUSE_TOOLBAR=yes
   DEFAULT_wxUSE_TOOLBAR_NATIVE=yes
-  DEFAULT_wxUSE_TOOLBAR_SIMPLE=yes
   DEFAULT_wxUSE_TOOLTIPS=yes
   DEFAULT_wxUSE_TREEBOOK=yes
   DEFAULT_wxUSE_TOOLBOOK=yes
@@ -1063,18 +1117,28 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_TIPWINDOW=yes
 elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_ACCEL=no
+  DEFAULT_wxUSE_ANIMATIONCTRL=no
   DEFAULT_wxUSE_BMPBUTTON=no
   DEFAULT_wxUSE_BUTTON=no
   DEFAULT_wxUSE_CALCTRL=no
   DEFAULT_wxUSE_CARET=no
+  DEFAULT_wxUSE_COLLPANE=no
   DEFAULT_wxUSE_COMBOBOX=no
   DEFAULT_wxUSE_CHECKBOX=no
   DEFAULT_wxUSE_CHECKLISTBOX=no
   DEFAULT_wxUSE_CHOICE=no
   DEFAULT_wxUSE_CHOICEBOOK=no
+  DEFAULT_wxUSE_COLOURPICKERCTRL=no
+  DEFAULT_wxUSE_COMBOBOX=no
   DEFAULT_wxUSE_DATEPICKCTRL=no
+  DEFAULT_wxUSE_DISPLAY=no
+  DEFAULT_wxUSE_DETECT_SM=no
+  DEFAULT_wxUSE_DIRPICKERCTRL=no
+  DEFAULT_wxUSE_FILEPICKERCTRL=no
+  DEFAULT_wxUSE_FONTPICKERCTRL=no
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_GRID=no
+  DEFAULT_wxUSE_HYPERLINKCTRL=no
   DEFAULT_wxUSE_DATAVIEWCTRL=no
   DEFAULT_wxUSE_IMAGLIST=no
   DEFAULT_wxUSE_LISTBOOK=no
@@ -1097,7 +1161,6 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_TOGGLEBTN=no
   DEFAULT_wxUSE_TOOLBAR=no
   DEFAULT_wxUSE_TOOLBAR_NATIVE=no
-  DEFAULT_wxUSE_TOOLBAR_SIMPLE=no
   DEFAULT_wxUSE_TOOLTIPS=no
   DEFAULT_wxUSE_TREEBOOK=no
   DEFAULT_wxUSE_TOOLBOOK=no
@@ -1107,21 +1170,30 @@ elif test "$wxUSE_CONTROLS" = "no"; then
 fi
 
 WX_ARG_ENABLE(accel,       [  --enable-accel          use accelerators], wxUSE_ACCEL)
+WX_ARG_ENABLE(animatectrl, [  --enable-animatectrl    use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL)
 WX_ARG_ENABLE(button,      [  --enable-button         use wxButton class], wxUSE_BUTTON)
 WX_ARG_ENABLE(bmpbutton,   [  --enable-bmpbutton      use wxBitmapButton class], wxUSE_BMPBUTTON)
+WX_ARG_ENABLE(bmpcombobox, [  --enable-bmpcombobox    use wxBitmapComboBox class], wxUSE_BITMAPCOMBOBOX)
 WX_ARG_ENABLE(calendar,    [  --enable-calendar       use wxCalendarCtrl class], wxUSE_CALCTRL)
 WX_ARG_ENABLE(caret,       [  --enable-caret          use wxCaret class], wxUSE_CARET)
 WX_ARG_ENABLE(checkbox,    [  --enable-checkbox       use wxCheckBox class], wxUSE_CHECKBOX)
 WX_ARG_ENABLE(checklst,    [  --enable-checklst       use wxCheckListBox (listbox with checkboxes) class], wxUSE_CHECKLST)
 WX_ARG_ENABLE(choice,      [  --enable-choice         use wxChoice class], wxUSE_CHOICE)
 WX_ARG_ENABLE(choicebook,  [  --enable-choicebook     use wxChoicebook class], wxUSE_CHOICEBOOK)
+WX_ARG_ENABLE(collpane,    [  --enable-collpane       use wxCollapsiblePane class], wxUSE_COLLPANE)
+WX_ARG_ENABLE(colourpicker,[  --enable-colourpicker   use wxColourPickerCtrl class], wxUSE_COLOURPICKERCTRL)
 WX_ARG_ENABLE(combobox,    [  --enable-combobox       use wxComboBox class], wxUSE_COMBOBOX)
 WX_ARG_ENABLE(comboctrl,   [  --enable-comboctrl      use wxComboCtrl class], wxUSE_COMBOCTRL)
 WX_ARG_ENABLE(datepick,    [  --enable-datepick       use wxDatePickerCtrl class], wxUSE_DATEPICKCTRL)
+WX_ARG_ENABLE(dirpicker,   [  --enable-dirpicker      use wxDirPickerCtrl class], wxUSE_DIRPICKERCTRL)
 WX_ARG_ENABLE(display,     [  --enable-display        use wxDisplay class], wxUSE_DISPLAY)
+WX_ARG_ENABLE(detect_sm,   [  --enable-detect_sm      use code to detect X11 session manager], wxUSE_DETECT_SM)
+WX_ARG_ENABLE(filepicker,  [  --enable-filepicker     use wxFilePickerCtrl class], wxUSE_FILEPICKERCTRL)
+WX_ARG_ENABLE(fontpicker,  [  --enable-fontpicker     use wxFontPickerCtrl class], wxUSE_FONTPICKERCTRL)
 WX_ARG_ENABLE(gauge,       [  --enable-gauge          use wxGauge class], wxUSE_GAUGE)
 WX_ARG_ENABLE(grid,        [  --enable-grid           use wxGrid class], wxUSE_GRID)
 WX_ARG_ENABLE(dataviewctrl,[  --enable-dataviewctrl,  use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL)
+WX_ARG_ENABLE(hyperlink,   [  --enable-hyperlink      use wxHyperlinkCtrl class], wxUSE_HYPERLINKCTRL)
 WX_ARG_ENABLE(imaglist,    [  --enable-imaglist       use wxImageList class], wxUSE_IMAGLIST)
 WX_ARG_ENABLE(listbook,    [  --enable-listbook       use wxListbook class], wxUSE_LISTBOOK)
 WX_ARG_ENABLE(listbox,     [  --enable-listbox        use wxListBox class], wxUSE_LISTBOX)
@@ -1146,7 +1218,6 @@ WX_ARG_ENABLE(textctrl,    [  --enable-textctrl       use wxTextCtrl class], wxU
 WX_ARG_ENABLE(togglebtn,   [  --enable-togglebtn      use wxToggleButton class], wxUSE_TOGGLEBTN)
 WX_ARG_ENABLE(toolbar,     [  --enable-toolbar        use wxToolBar class], wxUSE_TOOLBAR)
 WX_ARG_ENABLE(tbarnative,  [  --enable-tbarnative     use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
-WX_ARG_ENABLE(tbarsmpl,    [  --enable-tbarsmpl       use wxToolBarSimple class], wxUSE_TOOLBAR_SIMPLE)
 WX_ARG_ENABLE(treebook,    [  --enable-treebook       use wxTreebook class], wxUSE_TREEBOOK)
 WX_ARG_ENABLE(toolbook,    [  --enable-toolbook       use wxToolbook class], wxUSE_TOOLBOOK)
 WX_ARG_ENABLE(treectrl,    [  --enable-treectrl       use wxTreeCtrl class], wxUSE_TREECTRL)
@@ -1158,6 +1229,7 @@ dnl common dialogs
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_ENABLE(commondlg,   [  --enable-commondlg      use all common dialogs], wxUSE_COMMONDLGS)
+WX_ARG_ENABLE(aboutdlg,    [  --enable-aboutdlg       use wxAboutBox], wxUSE_ABOUTDLG)
 WX_ARG_ENABLE(choicedlg,   [  --enable-choicedlg      use wxChoiceDialog], wxUSE_CHOICEDLG)
 WX_ARG_ENABLE(coldlg,      [  --enable-coldlg         use wxColourDialog], wxUSE_COLOURDLG)
 WX_ARG_ENABLE(filedlg,     [  --enable-filedlg        use wxFileDialog], wxUSE_FILEDLG)
@@ -1287,7 +1359,7 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl we suppose that expr is available (maybe there is a better way to do
     dnl this? what about using ALL_TOOLKITS? TODO)
     NUM_TOOLKITS=`expr ${wxUSE_COCOA:-0} + ${wxUSE_GTK:-0} + ${wxUSE_MAC:-0} \
-                  + ${wxUSE_MGL:-0} + ${wxUSE_MICROWIN:-0} \
+                  + ${wxUSE_MGL:-0} + ${wxUSE_DFB:-0} + ${wxUSE_MICROWIN:-0} \
                   + ${wxUSE_MOTIF:-0} + ${wxUSE_MSW:-0} + ${wxUSE_X11:-0}`
 
     dnl Allow wxUSE_PM only for OS/2 with EMX.
@@ -1653,11 +1725,11 @@ case "${host}" in
                   #else
                               "Innotek6"
                   #endif
-                     );
+                      );
                       exit(0);
                   }
               ],
-             wx_cv_gccversion=`cat conftestval`,
+              wx_cv_gccversion=`cat conftestval`,
               wx_cv_gccversion="EMX2",
               dnl Compilation error: Assuming standard EMX environment
               wx_cv_gccversion="EMX2"
@@ -1678,7 +1750,7 @@ case "${host}" in
       if test "$wxUSE_SHARED" = "yes" -a "$wxUSE_OMF" = "no"; then
         AC_MSG_WARN([Building DLLs requires OMF mode, enabled])
         wxUSE_OMF=yes
-       enable_omf=yes
+        enable_omf=yes
       fi
       dnl (end of OS/2-only piece)
   ;;
@@ -1766,6 +1838,11 @@ case "${host}" in
   ;;
 esac
 
+dnl POSIX needs this for select(), but old systems don't have it
+if test "$USE_UNIX" = 1 ; then
+    AC_CHECK_HEADERS([sys/select.h])
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl Checks for compiler characteristics
 dnl ---------------------------------------------------------------------------
@@ -1890,6 +1967,31 @@ else
     fi
 fi
 
+dnl Check if variadic macros (C99 feature) are supported:
+AC_CACHE_CHECK(
+    [whether the compiler supports variadic macros],
+    [wx_cv_have_variadic_macros],
+    [
+        AC_COMPILE_IFELSE(
+            AC_LANG_PROGRAM(
+                [
+                    #include <stdio.h>
+                    #define test(fmt, ...) printf(fmt, __VA_ARGS__)
+                ],
+                [
+                    test("%s %d %p", "test", 1, 0);
+                ]
+            ),
+            [wx_cv_have_variadic_macros=yes],
+            [wx_cv_have_variadic_macros=no]
+            )
+    ]
+)
+
+if test $wx_cv_have_variadic_macros = "yes"; then
+    AC_DEFINE(HAVE_VARIADIC_MACROS)
+fi
+
 dnl check for large file support
 AC_SYS_LARGEFILE
 
@@ -2366,6 +2468,14 @@ else
     fi
 fi
 
+dnl check for C99 string to long long conversion functions, assume that if we
+dnl have the unsigned variants, then we have the signed ones as well
+if test "wxUSE_UNICODE" = "yes"; then
+    AC_CHECK_FUNCS(wcstoull)
+else
+    AC_CHECK_FUNCS(strtoull)
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries
 dnl
@@ -2789,6 +2899,15 @@ if test "$USE_WIN32" = 1 ; then
 
     dnl install Win32-specific files in "make install"
     WIN32INSTALL=win32install
+
+    dnl the jpeg header jmorecfg.h delcares the type boolean, which conflicts
+    dnl on systems which declare it in the system headers. If HAVE_BOOLEAN is
+    dnl defined then jmorecfg.h doesn't declare it, so checking for it here
+    dnl solves the problem.
+    AC_CHECK_TYPES(boolean, [], [], [#include <windows.h>])
+
+    dnl pbt.h is missing on Wine at least
+    AC_CHECK_HEADERS(pbt.h, [], [AC_DEFINE(NEED_PBT_H)])
 fi
 
 if test "$wxUSE_GUI" = "yes"; then
@@ -2928,30 +3047,41 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
         esac
 
         if test "$WXGTK20" = 1; then
-            save_CXXFLAGS="$CXXFLAGS"
+            save_CFLAGS="$CFLAGS"
             save_LIBS="$LIBS"
-            CXXFLAGS="$wx_cv_cflags_gtk $CXXFLAGS"
+            CFLAGS="$wx_cv_cflags_gtk $CFLAGS"
             LIBS="$LIBS $wx_cv_libs_gtk"
 
             dnl gtk_icon_size_lookup is not available in the GTK+ headers
             dnl that have shipped with some versions of Sun's JDS. Not using
             dnl AC_CHECK_FUNCS here since it only checks the function exists
             dnl in the lib (not the header).
-            AC_MSG_CHECKING([if gtk_icon_size_lookup is missing])
+            AC_CHECK_DECLS([gtk_icon_size_lookup], [],
+                           [AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)],
+                           [#include <gtk/gtk.h>])
+
+            dnl test if we have at least GTK+ 2.6:
+            AC_MSG_CHECKING([if GTK+ is version >= 2.6])
             AC_TRY_COMPILE([
                             #include <gtk/gtk.h>
                            ],
                            [
-                            void *f = gtk_icon_size_lookup;
+                            #if !GTK_CHECK_VERSION(2,6,0)
+                            Not GTK+ 2.6
+                            #endif
                            ],
                            [
-                            AC_MSG_RESULT([no])
+                            AC_DEFINE(__WXGTK26__)
+                            AC_DEFINE(__WXGTK24__)
+                            AC_MSG_RESULT([yes])
+                            ac_wxgtk26=1
                            ],
                            [
-                            AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)
-                            AC_MSG_RESULT([yes])
+                            AC_MSG_RESULT([no])
+                            ac_wxgtk26=0
                            ])
 
+            if test "$ac_wxgtk26" = 0; then
             dnl test if we have at least GTK+ 2.4:
             AC_MSG_CHECKING([if GTK+ is version >= 2.4])
             AC_TRY_COMPILE([
@@ -2969,14 +3099,18 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
                            [
                             AC_MSG_RESULT([no])
                            ])
+            fi
 
-            CXXFLAGS="$save_CXXFLAGS"
+            CFLAGS="$save_CFLAGS"
             LIBS="$save_LIBS"
         else
             if test "$wxUSE_UNICODE" = "yes"; then
                 AC_MSG_WARN([Unicode configuration not supported with GTK+ 1.x])
                 wxUSE_UNICODE=no
             fi
+
+            dnl test for XIM support in libgdk
+            AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
         fi
 
         AC_LANG_POP
@@ -2994,10 +3128,6 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
         TOOLKIT=GTK
         GUIDIST=GTK_DIST
 
-        dnl test for XIM support in libgdk
-        AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
-
-
         dnl test for external libxpm if we're configured to use it
         if test "$wxUSE_GPE" = "yes"; then
             AC_MSG_CHECKING(for gpewidget library)
@@ -3093,6 +3223,24 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
         GUIDIST=MGL_DIST
     fi
 
+    if test "$wxUSE_DFB" = 1; then
+       PKG_PROG_PKG_CONFIG()
+
+       PKG_CHECK_MODULES(DIRECTFB,
+                         [directfb >= 0.9.22],
+                         [
+                           wxUSE_UNIVERSAL="yes"
+                           TOOLKIT_INCLUDE="$DIRECTFB_CFLAGS"
+                           GUI_TK_LIBRARY="$DIRECTFB_LIBS"
+                           TOOLKIT=DFB
+                           GUIDIST=DFB_DIST
+                         ],
+                         [
+                           AC_MSG_ERROR([DirectFB not found.])
+                         ]
+                         )
+    fi
+
     if test "$wxUSE_MICROWIN" = 1; then
         AC_MSG_CHECKING(for MicroWindows)
         if test "x$MICROWINDOWS" = x ; then
@@ -3154,42 +3302,44 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
         fi
 
         if test "$wxUSE_UNICODE" = "yes"; then
-                PKG_CHECK_MODULES(PANGOX, pangox,
-                    [
-                        CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
-                        GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS"
-                    ],
-                    [
-                        AC_MSG_ERROR([pangox library not found, library cannot be compiled in Unicode mode])
-                    ]
-                )
-                PKG_CHECK_MODULES(PANGOFT2, pangoft2,
-                    [
-                        CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS"
-                        GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS"
-                    ],
-                    [
-                        AC_MSG_WARN([pangoft2 library not found, library will be compiled without printing support])
-                        wxUSE_PRINTING_ARCHITECTURE="no"
-                    ]
-                )
-                PKG_CHECK_MODULES(PANGOXFT, pangoxft,
-                    [
-                        AC_DEFINE(HAVE_PANGO_XFT)
-                        CXXFLAGS="$PANGOXFT_CFLAGS $CXXFLAGS"
-                        GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOXFT_LIBS"
-                    ],
-                    [
-                        AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support])
-                    ]
-                )
-                save_CXXFLAGS="$CXXFLAGS"
-                save_LIBS="$LIBS"
-                CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
-                LIBS="$LIBS $PANGOX_LIBS"
-                AC_CHECK_FUNCS([pango_font_family_is_monospace])
-                CXXFLAGS="$save_CXXFLAGS"
-                LIBS="$save_LIBS"
+            PKG_PROG_PKG_CONFIG()
+
+            PKG_CHECK_MODULES(PANGOX, pangox,
+                [
+                    CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
+                    GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS"
+                ],
+                [
+                    AC_MSG_ERROR([pangox library not found, library cannot be compiled in Unicode mode])
+                ]
+            )
+            PKG_CHECK_MODULES(PANGOFT2, pangoft2,
+                [
+                    CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS"
+                    GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS"
+                ],
+                [
+                    AC_MSG_WARN([pangoft2 library not found, library will be compiled without printing support])
+                    wxUSE_PRINTING_ARCHITECTURE="no"
+                ]
+            )
+            PKG_CHECK_MODULES(PANGOXFT, pangoxft,
+                [
+                    AC_DEFINE(HAVE_PANGO_XFT)
+                    CXXFLAGS="$PANGOXFT_CFLAGS $CXXFLAGS"
+                    GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOXFT_LIBS"
+                ],
+                [
+                    AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support])
+                ]
+            )
+            save_CXXFLAGS="$CXXFLAGS"
+            save_LIBS="$LIBS"
+            CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS"
+            LIBS="$LIBS $PANGOX_LIBS"
+            AC_CHECK_FUNCS([pango_font_family_is_monospace])
+            CXXFLAGS="$save_CXXFLAGS"
+            LIBS="$save_LIBS"
         fi
 
         wxUSE_UNIVERSAL="yes"
@@ -3665,6 +3815,31 @@ dnl ---------------------------------------------------------------------------
     fi
 fi
 
+dnl ---------------------------------------------------------------------------
+dnl X11 session management
+dnl ---------------------------------------------------------------------------
+if test "$wxUSE_DETECT_SM" = "yes"; then
+    if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_MAC" != 1 -a "$wxUSE_COCOA" != 1; then
+        AC_MSG_CHECKING([for -lSM - X11 session management])
+        WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],SM)
+        if test "$ac_find_libraries" != "" ; then
+            WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
+            if test "$ac_path_to_link" != " -L/usr/lib" ; then
+                LDFLAGS="$LDFLAGS $ac_path_to_link"
+            fi
+            GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lSM"
+            AC_MSG_RESULT([yes])
+        else
+            AC_MSG_RESULT([no])
+            AC_MSG_WARN([libSM not found; disabling session management detection])
+            wxUSE_DETECT_SM="no"
+        fi
+    else
+        wxUSE_DETECT_SM="no"
+    fi
+fi
+
+
 dnl ---------------------------------------------------------------------------
 dnl OpenGL libraries
 dnl ---------------------------------------------------------------------------
@@ -4265,9 +4440,80 @@ if test "$ac_cv_func_snprintf" = "yes"; then
             AC_DEFINE(HAVE_BROKEN_SNPRINTF_DECL)
         fi
     fi
+
+    if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
+
+        dnl check if snprintf() has support for positional arguments
+        dnl NB: if snprintf() has positional support we can safely suppose that also
+        dnl     other *printf() functions support them as they all belong to the same
+        dnl     family and they all fallback to the same implementation
+        AC_CACHE_CHECK([if snprintf supports positional arguments], wx_cv_func_snprintf_pos_params,
+            [
+                AC_TRY_RUN(
+                    [
+                        #include <stdio.h>
+
+                        int main (void)
+                        {
+                            char buffer[128];
+                            snprintf (buffer, 128, "%2\$d %3\$d %1\$d", 1, 2, 3);
+                            if (strcmp ("2 3 1", buffer) == 0)
+                                exit (0);
+                            exit (1);
+                        }
+                    ],
+                    wx_cv_func_snprintf_pos_params=no,
+                    wx_cv_func_snprintf_pos_params=yes,
+                    dnl be pessimistic when cross-compiling
+                    [
+                        AC_MSG_WARN([Assuming Unix98 printf() is not available,
+define HAVE_UNIX98_PRINTF as 1 in setup.h if it is available.])
+                        wx_cv_func_snprintf_pos_params=no
+                    ]
+                )
+            ]
+        )
+
+        if test "$wx_cv_func_snprintf_pos_params" = "yes"; then
+            AC_DEFINE(HAVE_UNIX98_PRINTF)
+        fi
+    fi
 fi
 
 if test "$wxUSE_UNICODE" = yes; then
+
+    dnl our wxVsnprintf() implementation needs to use the system swprintf() in Unicode
+    dnl builds so let's check if swprintf() is declared as C99 imposes:
+    dnl     int swprintf(wchar_t *s, size_t n, const wchar_t *format, ...);
+    dnl or rather as:
+    dnl     int swprintf(wchar_t *s, const wchar_t *format, ...);
+    AC_CHECK_FUNCS(swprintf)
+
+    if test "$ac_cv_func_swprintf" = "yes"; then
+        AC_CACHE_CHECK([if swprintf declaration is broken], wx_cv_func_broken_swprintf_decl,
+            [
+                AC_TRY_COMPILE(
+                    [
+                        #include <stdio.h>
+                        #include <stdarg.h>
+                        #include <wchar.h>
+                    ],
+                    [
+                        wchar_t *buf;
+                        const wchar_t *fmt = L"test";
+                        swprintf(buf, 10u, fmt);
+                    ],
+                    wx_cv_func_broken_swprintf_decl=no,
+                    wx_cv_func_broken_swprintf_decl=yes
+                )
+            ]
+        )
+
+        if test "$wx_cv_func_broken_swprintf_decl" = "yes"; then
+            AC_DEFINE(HAVE_BROKEN_SWPRINTF_DECL)
+        fi
+    fi
+
     dnl also look if we have wide char IO functions
     AC_CHECK_FUNCS(wputc wputchar putws fputws wprintf vswprintf)
 
@@ -4290,6 +4536,11 @@ if test "$wxUSE_FILE" = "yes"; then
     AC_CHECK_FUNCS(fsync)
 fi
 
+AC_CHECK_FUNCS(round)
+if test "$ac_cv_func_round" = yes; then
+    AC_CHECK_DECLS(round,,,[#include <math.h>])
+fi
+
 
 dnl the following tests are for Unix(like) systems only
 if test "$TOOLKIT" != "MSW"; then
@@ -4560,7 +4811,7 @@ fi
 dnl check for uname (POSIX) and gethostname (BSD)
 AC_CHECK_FUNCS(uname gethostname, break)
 
-AC_CHECK_FUNCS(strtok_r)
+WX_CHECK_FUNCS(strtok_r, [], [], [#define _REENTRANT])
 
 dnl check for inet_addr and inet_aton (these may live either in libc, or in
 dnl libnsl or libresolv or libsocket)
@@ -4596,7 +4847,10 @@ if test "x$INET_LINK" != "x"; then
     INET_LINK=" -l$INET_LINK"
 fi
 
+WX_CHECK_FUNCS(fdopen)
+
 fi
+
 dnl if !MSW
 
 
@@ -5006,7 +5260,7 @@ dnl AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO), [
     dnl sigh -- gethostbyname_r is a mess; it can have 3, 5 or 6 arguments
       AX_FUNC_WHICH_GETHOSTBYNAME_R
       if test "x$ac_cv_func_which_gethostbyname_r" = "xno" -o \
-             "x$ac_cv_func_which_gethostbyname_r" = "xunknown" ; then
+              "x$ac_cv_func_which_gethostbyname_r" = "xunknown" ; then
           AC_CHECK_FUNC(gethostbyname, [ AC_DEFINE(HAVE_GETHOSTBYNAME) ])
       fi
       dnl A similar test for getservbyname_r
@@ -5015,7 +5269,7 @@ dnl AC_CHECK_FUNC(getaddrinfo, AC_DEFINE(HAVE_GETADDRINFO), [
       dnl doing the test already exists, so using it is easy enough.     - SN
       AC_raf_FUNC_WHICH_GETSERVBYNAME_R
       if test "x$ac_cv_func_which_getservbyname_r" = "xno" -o \
-             "x$ac_cv_func_which_getservbyname_r" = "xunknown" ; then
+              "x$ac_cv_func_which_getservbyname_r" = "xunknown" ; then
           AC_CHECK_FUNCS(getservbyname,[ AC_DEFINE(HAVE_GETSERVBYNAME) ])
       fi
       dnl For gethostbyaddr_r, we currently do no separate test, instead, we
@@ -5035,7 +5289,7 @@ if test "$wxUSE_THREADS" = "yes"; then
 else
   dnl on some systems, _REENTRANT should be defined if we want to use any _r()
   dnl functions - add tests for other functions here as well
-  if test "$ac_cv_func_strtok_r" = "yes"; then
+  if test "$wx_cv_func_strtok_r" = "yes"; then
     AC_MSG_CHECKING(if -D_REENTRANT is needed)
     if test "$NEEDS_D_REENTRANT_FOR_R_FUNCS" = 1; then
         WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS -D_REENTRANT"
@@ -5332,22 +5586,24 @@ if test "$USE_UNIX" = "1" ; then
     dnl it's not enough to check for just the header because OSS under NetBSD
     dnl redefines ioctl as oss_ioctrl inside it and so we also need to test
     dnl whether we need -lossaudio at link-time
-    AC_CACHE_CHECK([for ioctl() in sys/soundcard.h], ac_cv_header_sys_soundcard, [
+    AC_CACHE_CHECK([for SNDCTL_DSP_SPEED in sys/soundcard.h], ac_cv_header_sys_soundcard, [
         AC_TRY_LINK([
+                #include <sys/ioctl.h>
                 #include <sys/soundcard.h>
             ],
             [
-                ioctl(0, SNDCTL_DSP_SYNC, 0);
+                ioctl(0, SNDCTL_DSP_SPEED, 0);
             ],
             ac_cv_header_sys_soundcard=yes,
             [
                 saveLibs="$LIBS"
                 LIBS="$saveLibs -lossaudio"
                 AC_TRY_LINK([
+                        #include <sys/ioctl.h>
                         #include <sys/soundcard.h>
                     ],
                     [
-                        ioctl(0, SNDCTL_DSP_SYNC, 0);
+                        ioctl(0, SNDCTL_DSP_SPEED, 0);
                     ],
                     ac_cv_header_sys_soundcard=yes,
                     [
@@ -5428,7 +5684,7 @@ fi
 
 if test "$WXGTK20" = 1; then
     if test "$wxUSE_LIBHILDON" = "yes" ; then
-        PKG_CHECK_MODULES(HILDON, 
+        PKG_CHECK_MODULES(HILDON,
                           [hildon-lgpl >= 0.9],
             [
                 EXTRALIBS_HILDON="$HILDON_LIBS"
@@ -5463,16 +5719,13 @@ if test "$wxUSE_FFILE" = "yes"; then
   AC_DEFINE(wxUSE_FFILE)
 fi
 
-if test "$wxUSE_FILESYSTEM" = "yes"; then
-  AC_DEFINE(wxUSE_FILESYSTEM)
-fi
-
-if test "$wxUSE_FS_ZIP" = "yes"; then
-  AC_DEFINE(wxUSE_FS_ZIP)
-fi
-
 if test "$wxUSE_ARCHIVE_STREAMS" = "yes"; then
-  AC_DEFINE(wxUSE_ARCHIVE_STREAMS)
+  if test "$wxUSE_STREAMS" != yes; then
+    AC_MSG_WARN(wxArchive requires wxStreams... disabled)
+    wxUSE_ARCHIVE_STREAMS=no
+  else
+    AC_DEFINE(wxUSE_ARCHIVE_STREAMS)
+  fi
 fi
 
 if test "$wxUSE_ZIPSTREAM" = "yes"; then
@@ -5485,6 +5738,39 @@ if test "$wxUSE_ZIPSTREAM" = "yes"; then
   fi
 fi
 
+if test "$wxUSE_TARSTREAM" = "yes"; then
+  if test "$wxUSE_ARCHIVE_STREAMS" != "yes"; then
+    AC_MSG_WARN(wxTar requires wxArchive... disabled)
+  else
+    AC_DEFINE(wxUSE_TARSTREAM)
+  fi
+fi
+
+if test "$wxUSE_FILESYSTEM" = "yes"; then
+  if test "$wxUSE_STREAMS" != yes -o \( "$wxUSE_FILE" != yes -a "$wxUSE_FFILE" != yes \); then
+    AC_MSG_WARN(wxFileSystem requires wxStreams and wxFile or wxFFile... disabled)
+    wxUSE_FILESYSTEM=no
+  else
+    AC_DEFINE(wxUSE_FILESYSTEM)
+  fi
+fi
+
+if test "$wxUSE_FS_ARCHIVE" = "yes"; then
+  if test "$wxUSE_FILESYSTEM" != yes -o "$wxUSE_ARCHIVE_STREAMS" != yes; then
+    AC_MSG_WARN(wxArchiveFSHandler requires wxArchive and wxFileSystem... disabled)
+  else
+    AC_DEFINE(wxUSE_FS_ARCHIVE)
+  fi
+fi
+
+if test "$wxUSE_FS_ZIP" = "yes"; then
+  if test "$wxUSE_FS_ARCHIVE" != yes; then
+    AC_MSG_WARN(wxZipFSHandler requires wxArchiveFSHandler... disabled)
+  else
+    AC_DEFINE(wxUSE_FS_ZIP)
+  fi
+fi
+
 if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
   if test "$USE_UNIX" != 1; then
     AC_MSG_WARN([Catching fatal exceptions not currently supported on this system, wxApp::OnFatalException will not be called])
@@ -5593,6 +5879,11 @@ if test "$wxUSE_STREAMS" = "yes" ; then
   AC_DEFINE(wxUSE_STREAMS)
 fi
 
+if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
+  AC_DEFINE(wxUSE_PRINTF_POS_PARAMS)
+fi
+
+
 dnl ---------------------------------------------------------------------------
 dnl time/date functions
 dnl ---------------------------------------------------------------------------
@@ -5957,6 +6248,10 @@ if test "$wxUSE_URL" = "yes"; then
     fi
 fi
 
+if test "$wxUSE_VARIANT" = "yes"; then
+    AC_DEFINE(wxUSE_VARIANT)
+fi
+
 if test "$wxUSE_FS_INET" = "yes"; then
   AC_DEFINE(wxUSE_FS_INET)
 fi
@@ -6138,6 +6433,8 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
             LIBS=" -lrpcrt4 -loleaut32 -lole32 -luuid$LIBS"
             if test "$wxUSE_OLE" = "yes" ; then
                 AC_DEFINE(wxUSE_OLE)
+                AC_DEFINE(wxUSE_OLE_AUTOMATION)
+                AC_DEFINE(wxUSE_OLE_ACTIVEX)
                 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
             fi
         fi
@@ -6254,6 +6551,12 @@ if test "$wxUSE_ACCEL" = "yes"; then
   USES_CONTROLS=1
 fi
 
+if test "$wxUSE_ANIMATIONCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_ANIMATIONCTRL)
+  USES_CONTROLS=1
+  SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS animate"
+fi
+
 if test "$wxUSE_BUTTON" = "yes"; then
   AC_DEFINE(wxUSE_BUTTON)
   USES_CONTROLS=1
@@ -6276,6 +6579,12 @@ if test "$wxUSE_CARET" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS caret"
 fi
 
+if test "$wxUSE_COLLPANE" = "yes"; then
+    AC_DEFINE(wxUSE_COLLPANE)
+    USES_CONTROLS=1
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS collpane"
+fi
+
 if test "$wxUSE_COMBOBOX" = "yes"; then
   AC_DEFINE(wxUSE_COMBOBOX)
   USES_CONTROLS=1
@@ -6307,16 +6616,40 @@ if test "$wxUSE_CHECKLST" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS checklst"
 fi
 
+if test "$wxUSE_COLOURPICKERCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_COLOURPICKERCTRL)
+  USES_CONTROLS=1
+fi
+
 if test "$wxUSE_DATEPICKCTRL" = "yes"; then
   AC_DEFINE(wxUSE_DATEPICKCTRL)
   USES_CONTROLS=1
 fi
 
+if test "$wxUSE_DIRPICKERCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_DIRPICKERCTRL)
+  USES_CONTROLS=1
+fi
+
+if test "$wxUSE_FILEPICKERCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_FILEPICKERCTRL)
+  USES_CONTROLS=1
+fi
+
+if test "$wxUSE_FONTPICKERCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_FONTPICKERCTRL)
+  USES_CONTROLS=1
+fi
+
 if test "$wxUSE_DISPLAY" = "yes"; then
     AC_DEFINE(wxUSE_DISPLAY)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display multimon"
 fi
 
+if test "$wxUSE_DETECT_SM" = "yes"; then
+    AC_DEFINE(wxUSE_DETECT_SM)
+fi
+
 if test "$wxUSE_GAUGE" = "yes"; then
   AC_DEFINE(wxUSE_GAUGE)
   USES_CONTROLS=1
@@ -6328,6 +6661,16 @@ if test "$wxUSE_GRID" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS grid"
 fi
 
+if test "$wxUSE_HYPERLINKCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_HYPERLINKCTRL)
+  USES_CONTROLS=1
+fi
+
+if test "$wxUSE_BITMAPCOMBOBOX" = "yes"; then
+  AC_DEFINE(wxUSE_BITMAPCOMBOBOX)
+  USES_CONTROLS=1
+fi
+
 if test "$wxUSE_DATAVIEWCTRL" = "yes"; then
   AC_DEFINE(wxUSE_DATAVIEWCTRL)
   USES_CONTROLS=1
@@ -6469,24 +6812,15 @@ if test "$wxUSE_TOGGLEBTN" = "yes"; then
     fi
 fi
 
-if test "$wxUSE_TOOLBAR_SIMPLE" = "yes"; then
-    AC_DEFINE(wxUSE_TOOLBAR_SIMPLE)
-    wxUSE_TOOLBAR="yes"
-    USES_CONTROLS=1
-fi
-
 if test "$wxUSE_TOOLBAR" = "yes"; then
     AC_DEFINE(wxUSE_TOOLBAR)
     USES_CONTROLS=1
 
-    dnl if wxUSE_TOOLBAR and !wxUSE_TOOLBAR_SIMPLE => wxUSE_TOOLBAR_NATIVE
-    if test "$wxUSE_TOOLBAR_SIMPLE" != "yes"; then
+    if test "$wxUSE_UNIVERSAL" = "yes"; then
+        wxUSE_TOOLBAR_NATIVE="no"
+    else
         wxUSE_TOOLBAR_NATIVE="yes"
-    fi
-
-    if test "$wxUSE_TOOLBAR_NATIVE" = "yes"; then
         AC_DEFINE(wxUSE_TOOLBAR_NATIVE)
-        USES_CONTROLS=1
     fi
 
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS toolbar"
@@ -6631,6 +6965,13 @@ if test "$wxUSE_XRC" = "yes"; then
     fi
 fi
 
+USE_AUI=0
+if test "$wxUSE_AUI" = "yes"; then
+   AC_DEFINE(wxUSE_AUI)
+   USE_AUI=1
+   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui"
+fi
+
 if test "$wxUSE_MENUS" = "yes"; then
     AC_DEFINE(wxUSE_MENUS)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
@@ -6715,6 +7056,10 @@ dnl ---------------------------------------------------------------------------
 dnl common dialogs
 dnl ---------------------------------------------------------------------------
 
+if test "$wxUSE_ABOUTDLG" = "yes"; then
+    AC_DEFINE(wxUSE_ABOUTDLG)
+fi
+
 if test "$wxUSE_CHOICEDLG" = "yes"; then
     AC_DEFINE(wxUSE_CHOICEDLG)
 fi
@@ -6781,6 +7126,25 @@ if test "$wxUSE_WIZARDDLG" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wizard"
 fi
 
+dnl ---------------------------------------------------------------------------
+dnl wxGraphicsContext
+dnl ---------------------------------------------------------------------------
+
+if test "$wxUSE_GRAPHICS_CONTEXT" = "yes"; then
+   if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = "1"; then
+      AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)
+   elif test "$wxUSE_GTK" != 1; then
+      dnl for other builds we'll just wing it for now...
+      AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)
+   else
+      dnl ...but let's check for cairo availability for wxGTK builds
+      PKG_CHECK_MODULES(CAIRO, cairo,
+          [AC_DEFINE(wxUSE_GRAPHICS_CONTEXT)],
+          [AC_MSG_WARN([Cairo library not found, unable to set wxUSE_GRAPHICS_CONTEXT])]
+      )
+   fi
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl wxMediaCtrl
 dnl ---------------------------------------------------------------------------
@@ -6788,11 +7152,13 @@ dnl ---------------------------------------------------------------------------
 USE_MEDIA=0
 
 if test "$wxUSE_MEDIACTRL" = "yes"; then
+    USE_MEDIA=1
+
     dnl -----------------------------------------------------------------------
     dnl GStreamer
     dnl -----------------------------------------------------------------------
     if test "$wxUSE_GTK" = 1; then
-        wxUSE_GSTREAMER="yes"
+        wxUSE_GSTREAMER="no"
 
         dnl -------------------------------------------------------------------
         dnl Test for at least 0.8 gstreamer module from pkg-config
@@ -6803,51 +7169,60 @@ if test "$wxUSE_MEDIACTRL" = "yes"; then
         dnl -------------------------------------------------------------------
         GST_VERSION_MAJOR=0
         GST_VERSION_MINOR=10
-        GST_VERSION_RELEASE=0
-        GSTREAMER_REQ=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_RELEASE
-        GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
+        GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
 
         if test "$wxUSE_GSTREAMER8" = "no"; then
-            PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR
-                               gstreamer-plugins-base-$GST_MAJORMINOR
-                               gconf-2.0,
-        [
-                    CPPFLAGS="$GST_CFLAGS $CPPFLAGS"
-                    LIBS="$LIBS $GST_LIBS -lgstinterfaces-$GST_MAJORMINOR"
-        ],
-        [
+            PKG_CHECK_MODULES(GST,
+                [gstreamer-$GST_VERSION gstreamer-plugins-base-$GST_VERSION gconf-2.0],
+                [
+                    wxUSE_GSTREAMER="yes"
+                    GST_LIBS="$GST_LIBS -lgstinterfaces-$GST_VERSION"
+                ],
+                [
+                    AC_MSG_WARN([GStreamer 0.10 not available, falling back to 0.8])
                     GST_VERSION_MINOR=8
-        ])
-            else
+                ]
+            )
+        else
+            dnl check only for 0.8
             GST_VERSION_MINOR=8
         fi
 
-        GSTREAMER_REQ=$GST_VERSION_MAJOR.$GST_VERSION_MINOR.$GST_VERSION_RELEASE
-        GST_MAJORMINOR=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
-
-        if test x$GST_VERSION_MINOR = x8; then
-            PKG_CHECK_MODULES(GST, gstreamer-$GST_MAJORMINOR
-                gstreamer-interfaces-$GST_MAJORMINOR
-                gstreamer-gconf-$GST_MAJORMINOR,
-                        [
-                    CPPFLAGS="$GST_CFLAGS $CPPFLAGS"
-                    LIBS="$LIBS $GST_LIBS"
-                        ],
+        if test $GST_VERSION_MINOR = "8"; then
+            GST_VERSION=$GST_VERSION_MAJOR.$GST_VERSION_MINOR
+            PKG_CHECK_MODULES(GST,
+                [gstreamer-$GST_VERSION gstreamer-interfaces-$GST_VERSION gstreamer-gconf-$GST_VERSION],
+                wxUSE_GSTREAMER="yes",
                 [
-                    AC_MSG_WARN([Proper GStreamer .8/.10 installation not found])
-            wxUSE_GSTREAMER="no"
+                    AC_MSG_WARN([GStreamer 0.8/0.10 not available.])
                 ])
         fi
 
 
         if test "$wxUSE_GSTREAMER" = "yes"; then
+            dnl system gstreamer package is compiled with Sun CC and outputs
+            dnl CC-specific "-mt" in its flags, remove it for gcc compilation
+            case "${host}" in
+                *-*-solaris2* )
+                    if "$GCC" = yes; then
+                        GST_CFLAGS=`echo $GST_CFLAGS | sed 's/-mt//'`
+                        GST_LIBS=`echo $GST_LIBS | sed 's/-mt//'`
+                    fi
+            esac
+
+            CPPFLAGS="$GST_CFLAGS $CPPFLAGS"
+            LIBS="$GST_LIBS $LIBS"
+
             AC_DEFINE(wxUSE_GSTREAMER)
-            AC_MSG_RESULT([GStreamer detection successful])
+        else
+            USE_MEDIA=0
         fi
     fi
-    USE_MEDIA=1
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
-    AC_DEFINE(wxUSE_MEDIACTRL)
+
+    if test $USE_MEDIA = 1; then
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
+        AC_DEFINE(wxUSE_MEDIACTRL)
+    fi
 fi
 
 dnl ---------------------------------------------------------------------------
@@ -6901,6 +7276,9 @@ fi
 if test "$wxUSE_XRC" = "yes" ; then
     CORE_GUI_LIBS="xrc $CORE_GUI_LIBS"
 fi
+if test "$wxUSE_AUI" = "yes" ; then
+    CORE_GUI_LIBS="aui $CORE_GUI_LIBS"
+fi
 
 if test "$wxUSE_GUI" != "yes"; then
     CORE_GUI_LIBS=""
@@ -7099,6 +7477,17 @@ done
 
 if test "x$wxUSE_UNIVERSAL" = "xyes" ; then
     WXUNIV=1
+
+    case "$wxUNIV_THEMES" in
+        ''|all)
+            AC_DEFINE(wxUSE_ALL_THEMES)
+            ;;
+
+        *)
+            for t in `echo $wxUNIV_THEMES | tr , ' ' | tr a-z A-Z`; do
+                AC_DEFINE_UNQUOTED(wxUSE_THEME_$t)
+            done
+    esac
 else
     WXUNIV=0
 fi
@@ -7176,14 +7565,31 @@ AC_SUBST(CPPUNIT_LIBS)
 
 case "$TOOLKIT" in
     GTK)
-        TOOLKIT_USER="GTK+"
+        TOOLKIT_DESC="GTK+"
         if test "$WXGTK20" = 1; then
-            TOOLKIT_USER="$TOOLKIT_USER 2"
+            TOOLKIT_DESC="$TOOLKIT_DESC 2"
+            if test "$wxUSE_LIBGNOMEPRINT" = "yes" ; then
+                TOOLKIT_EXTRA="$TOOLKIT_EXTRA gnomeprint";
+            fi
+            if test "$wxUSE_LIBGNOMEVFS" = "yes" ; then
+                TOOLKIT_EXTRA="$TOOLKIT_EXTRA gnomevfs"
+            fi
+            if test "$wxUSE_LIBHILDON" = "yes"; then
+                TOOLKIT_EXTRA="$TOOLKIT_EXTRA hildon"
+            fi
+
+            if test "$TOOLKIT_EXTRA" != ""; then
+                TOOLKIT_DESC="$TOOLKIT_DESC with support for `echo $TOOLKIT_EXTRA | tr -s ' '`"
+            fi
         fi
         ;;
 
+    ?*)
+        TOOLKIT_DESC=$TOOLKIT_LOWERCASE
+        ;;
+
     *)
-        TOOLKIT_USER=$TOOLKIT_LOWERCASE
+        TOOLKIT_DESC="base only"
         ;;
 esac
 
@@ -7192,32 +7598,102 @@ if test "$wxUSE_WINE" = "yes"; then
 fi
 
 dnl ---------------------------------------------------------------------------
-dnl Add Universal binary support 
+dnl Add Universal binary support
 dnl Note we don't do this earlier because adding these cpp/ld flags could
 dnl cause configure tests to fail.
 dnl ---------------------------------------------------------------------------
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
-        CXXFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CXXFLAGS"
-        CFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $CFLAGS"
-        LDFLAGS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch ppc -arch i386 $LDFLAGS"
+    if test "x$wxUSE_UNIVERSAL_BINARY" != xno ; then
+        dnl --enable-universal_binary uses a default SDK (currently 10.4u)
+        dnl --enable-universal_binary=SDK names a path to an SDK
+        if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
+            OSX_UNIV_OPTS="-isysroot /Developer/SDKs/MacOSX10.4u.sdk"
+        else
+            dnl '' would mean universal with no SDK, which may be the case if
+            dnl the compiler uses a sysroot by default
+            OSX_UNIV_OPTS=${wxUSE_UNIVERSAL_BINARY:+"-isysroot '$wxUSE_UNIVERSAL_BINARY'"}
+        fi
+        OSX_UNIV_OPTS="$OSX_UNIV_OPTS -arch ppc -arch i386"
+        CXXFLAGS="$OSX_UNIV_OPTS $CXXFLAGS"
+        CFLAGS="$OSX_UNIV_OPTS $CFLAGS"
+        LDFLAGS="$OSX_UNIV_OPTS $LDFLAGS"
         bk_use_pch=no
     fi
     # TODO: where do we add "-syslibroot,/Developer/SDKs/MacOSX10.4u.sdk" for libtool (static builds only)?
     #       The makefile currently uses AR and RANLIB, which libtool apparently supercedes.
-    # TODO: how can we avoid a hardwired reference to the SDK, above? (Someone used -lSystemStubs to avoid it)
+fi
+
+dnl gcc 3.4 has a pch bug which truncates wide character constants in headers.
+dnl Hopefully for a non-unicode build there aren't any wide constants in
+dnl headers, but for a unicode build it's best to disable pch.
+if test "$wxUSE_UNICODE" = yes -a "$GCC" = yes -a "$bk_use_pch" != no
+then
+    AC_CACHE_CHECK(
+        [for gcc precompiled header bug],
+        [wx_cv_gcc_pch_bug],
+        [[
+            echo '#include <stdio.h>
+                  const wchar_t test_var[] = L"awidetest";' > conftest.h
+
+            echo '#include "conftest.h"
+                  int main()
+                  {
+                     printf("%ls", test_var);
+                     return 0;
+                  }' > conftest.cpp
+
+            wx_cv_gcc_pch_bug="pch not supported"
+
+            if $CXX conftest.h >/dev/null 2>&1
+            then
+                wx_cv_gcc_pch_bug=
+
+                if $CXX -o conftest$PROGRAM_EXT conftest.cpp >/dev/null 2>&1
+                then
+                    if tr -dc '[a-z]' < conftest$PROGRAM_EXT |
+                        grep awidetest >/dev/null
+                    then
+                        wx_cv_gcc_pch_bug=no
+                    else
+                        wx_cv_gcc_pch_bug=yes
+                    fi
+                fi
+            fi
+
+            rm -f conftest.h conftest.gch conftest.cpp conftest$PROGRAM_EXT
+        ]])
+
+    if test "$wx_cv_gcc_pch_bug" = yes; then
+        dnl make the default for pch 'no'
+        dnl further below check whether the user overrode and warn them
+        bk_use_pch=no
+    fi
 fi
 
 AC_BAKEFILE([m4_include(autoconf_inc.m4)])
 
-dnl HACK ALERT!! 
+dnl find out if the compiler supports PCH
+dnl
+dnl TODO: this should be in bakefile
+if test $GCC_PCH = 1
+then
+    if test "$wx_cv_gcc_pch_bug" = yes; then
+        AC_MSG_WARN([*** Precompiled header support is broken on this compiler])
+        AC_MSG_WARN([*** --enable-precomp-headers is not recommended])
+        AC_MSG_WARN([*** see http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13361])
+    fi
+
+    CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
+fi
+
+dnl HACK ALERT!!
 dnl For now, we need to alter bk-deps not to generate deps
 dnl when we've configured a Universal binary build.
 dnl The next version of Bakefile will have the correct fix for this
 dnl at which time, this hack can be removed.
 
 if test "$wxUSE_MAC" = 1 ; then
-    if test "$wxUSE_UNIVERSAL_BINARY" = "yes" ; then
+    if test "x$wxUSE_UNIVERSAL_BINARY" != "xno" ; then
         sed "s/DEPSMODE=gcc/DEPSMODE=none/" < bk-deps > temp
         mv temp bk-deps
         chmod +x bk-deps
@@ -7242,8 +7718,8 @@ if test "$wxUSE_SHARED" = "yes"; then
       *-pc-os2_emx | *-pc-os2-emx )
         SHARED_LD_CC="`pwd`/dllar.sh -name-mangler-script ./dllnames.sh -libf INITINSTANCE -libf TERMINSTANCE -o"
         SHARED_LD_CXX="`pwd`/dllar.sh -name-mangler-script ./dllnames.sh -libf INITINSTANCE -libf TERMINSTANCE -o"
-       cp -p ${srcdir}/src/os2/dllnames.sh .
-       cp -p ${srcdir}/src/os2/dllar.sh .
+        cp -p ${srcdir}/src/os2/dllnames.sh .
+        cp -p ${srcdir}/src/os2/dllar.sh .
       ;;
     esac
 else
@@ -7262,13 +7738,6 @@ if test "$wxUSE_OMF" = "yes"; then
     esac
 fi
 
-dnl find out if the compiler supports PCH
-dnl
-dnl TODO: this should be in bakefile
-if test $GCC_PCH = 1 ; then
-    CPPFLAGS="-DWX_PRECOMP $CPPFLAGS"
-fi
-
 dnl TOOLCHAIN_DEFS should be used for both wx and client code
 WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS $TOOLCHAIN_DEFS"
 
@@ -7480,7 +7949,7 @@ dnl report how we have been configured
 echo
 echo "Configured wxWidgets ${WX_VERSION} for \`${host}'"
 echo ""
-echo "  Which GUI toolkit should wxWidgets use?                 ${TOOLKIT_USER:-base only}"
+echo "  Which GUI toolkit should wxWidgets use?                 ${TOOLKIT_DESC}"
 echo "  Should wxWidgets be compiled into single library?       ${wxUSE_MONOLITHIC:-yes}"
 
 echo "  Should wxWidgets be compiled in debug mode?             ${wxUSE_DEBUG:-no}"
@@ -7504,9 +7973,6 @@ echo "                                       odbc               ${wxUSE_ODBC}"
 echo "                                       expat              ${wxUSE_EXPAT}"
 echo "                                       libmspack          ${wxUSE_LIBMSPACK}"
 echo "                                       sdl                ${wxUSE_LIBSDL}"
-echo "                                       gnomeprint         ${wxUSE_LIBGNOMEPRINT-none}"
-echo "                                       gnomevfs           ${wxUSE_LIBGNOMEVFS-none}"
-echo "                                       hildon             ${wxUSE_LIBHILDON-none}"
 
 echo ""