]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
move to svn
[wxWidgets.git] / configure.in
index c77622c3e710c9e290cf0e9767744343c3bfefb0..8f44affcb83dbecd8393f11f04562d454da74234 100644 (file)
@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-AC_INIT([wxWidgets], [2.8.0], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [2.9.0], [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])
 
 dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
 AC_CONFIG_SRCDIR([wx-config.in])
@@ -33,7 +33,7 @@ dnl
 dnl wx_release_number += 1
 
 wx_major_version_number=2
 dnl wx_release_number += 1
 
 wx_major_version_number=2
-wx_minor_version_number=8
+wx_minor_version_number=9
 wx_release_number=0
 wx_subrelease_number=0
 
 wx_release_number=0
 wx_subrelease_number=0
 
@@ -369,6 +369,7 @@ DEBUG_CONFIGURE=0
 if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
 if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
+  DEFAULT_wxUSE_EXTENDED_RTTI=no
 
   DEFAULT_wxUSE_NANOX=no
 
 
   DEFAULT_wxUSE_NANOX=no
 
@@ -378,6 +379,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_OPTIMISE=no
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
   DEFAULT_wxUSE_OPTIMISE=no
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
+  DEFAULT_wxUSE_VARARG_MACROS=no
   DEFAULT_wxUSE_NO_RTTI=no
   DEFAULT_wxUSE_NO_EXCEPTIONS=no
   DEFAULT_wxUSE_UNIVERSAL_BINARY=no
   DEFAULT_wxUSE_NO_RTTI=no
   DEFAULT_wxUSE_NO_EXCEPTIONS=no
   DEFAULT_wxUSE_UNIVERSAL_BINARY=no
@@ -465,7 +467,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
 
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
 
-  DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=no
   DEFAULT_wxUSE_IPC=no
   DEFAULT_wxUSE_HELP=no
   DEFAULT_wxUSE_CONSTRAINTS=no
   DEFAULT_wxUSE_IPC=no
   DEFAULT_wxUSE_HELP=no
@@ -504,6 +505,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_RICHTEXT=no
   DEFAULT_wxUSE_XRC=no
   DEFAULT_wxUSE_AUI=no
   DEFAULT_wxUSE_RICHTEXT=no
   DEFAULT_wxUSE_XRC=no
   DEFAULT_wxUSE_AUI=no
+  DEFAULT_wxUSE_STC=no
   DEFAULT_wxUSE_WEBKIT=no
   DEFAULT_wxUSE_FILESYSTEM=no
   DEFAULT_wxUSE_FS_INET=no
   DEFAULT_wxUSE_WEBKIT=no
   DEFAULT_wxUSE_FILESYSTEM=no
   DEFAULT_wxUSE_FS_INET=no
@@ -534,6 +536,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_DISPLAY=no
   DEFAULT_wxUSE_DETECT_SM=no
   DEFAULT_wxUSE_DIRPICKERCTRL=no
   DEFAULT_wxUSE_DISPLAY=no
   DEFAULT_wxUSE_DETECT_SM=no
   DEFAULT_wxUSE_DIRPICKERCTRL=no
+  DEFAULT_wxUSE_EDITABLELISTBOX=no
   DEFAULT_wxUSE_FILEPICKERCTRL=no
   DEFAULT_wxUSE_FONTPICKERCTRL=no
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_FILEPICKERCTRL=no
   DEFAULT_wxUSE_FONTPICKERCTRL=no
   DEFAULT_wxUSE_GAUGE=no
@@ -551,6 +554,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
   DEFAULT_wxUSE_SCROLLBAR=no
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
   DEFAULT_wxUSE_SCROLLBAR=no
+  DEFAULT_wxUSE_SEARCHCTRL=no
   DEFAULT_wxUSE_SLIDER=no
   DEFAULT_wxUSE_SPINBTN=no
   DEFAULT_wxUSE_SPINCTRL=no
   DEFAULT_wxUSE_SLIDER=no
   DEFAULT_wxUSE_SPINBTN=no
   DEFAULT_wxUSE_SPINCTRL=no
@@ -571,8 +575,10 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_POPUPWIN=no
   DEFAULT_wxUSE_TIPWINDOW=no
 
   DEFAULT_wxUSE_POPUPWIN=no
   DEFAULT_wxUSE_TIPWINDOW=no
 
-  DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE=yes
   DEFAULT_wxUSE_UNICODE_MSLU=no
   DEFAULT_wxUSE_UNICODE_MSLU=no
+  DEFAULT_wxUSE_UNICODE_UTF8=auto
+  DEFAULT_wxUSE_UNICODE_UTF8_LOCALE=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=no
@@ -592,6 +598,7 @@ if test $DEBUG_CONFIGURE = 1; then
 else
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
 else
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
+  DEFAULT_wxUSE_EXTENDED_RTTI=no
 
   DEFAULT_wxUSE_NANOX=no
 
 
   DEFAULT_wxUSE_NANOX=no
 
@@ -601,6 +608,7 @@ else
   DEFAULT_wxUSE_OPTIMISE=yes
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
   DEFAULT_wxUSE_OPTIMISE=yes
   DEFAULT_wxUSE_PROFILE=no
   DEFAULT_wxUSE_NO_DEPS=no
+  DEFAULT_wxUSE_VARARG_MACROS=yes
   DEFAULT_wxUSE_NO_RTTI=no
   DEFAULT_wxUSE_NO_EXCEPTIONS=no
   DEFAULT_wxUSE_UNIVERSAL_BINARY=no
   DEFAULT_wxUSE_NO_RTTI=no
   DEFAULT_wxUSE_NO_EXCEPTIONS=no
   DEFAULT_wxUSE_UNIVERSAL_BINARY=no
@@ -632,7 +640,7 @@ else
   DEFAULT_wxUSE_LIBXPM=yes
   DEFAULT_wxUSE_LIBMSPACK=yes
   DEFAULT_wxUSE_LIBSDL=no
   DEFAULT_wxUSE_LIBXPM=yes
   DEFAULT_wxUSE_LIBMSPACK=yes
   DEFAULT_wxUSE_LIBSDL=no
-  DEFAULT_wxUSE_LIBGNOMEPRINT=no
+  DEFAULT_wxUSE_LIBGNOMEPRINT=yes
   DEFAULT_wxUSE_LIBGNOMEVFS=no
   DEFAULT_wxUSE_LIBHILDON=no
   DEFAULT_wxUSE_ODBC=no
   DEFAULT_wxUSE_LIBGNOMEVFS=no
   DEFAULT_wxUSE_LIBHILDON=no
   DEFAULT_wxUSE_ODBC=no
@@ -687,7 +695,6 @@ else
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
 
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
 
-  DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=yes
   DEFAULT_wxUSE_IPC=yes
   DEFAULT_wxUSE_HELP=yes
   DEFAULT_wxUSE_CONSTRAINTS=yes
   DEFAULT_wxUSE_IPC=yes
   DEFAULT_wxUSE_HELP=yes
@@ -726,6 +733,7 @@ else
   DEFAULT_wxUSE_RICHTEXT=yes
   DEFAULT_wxUSE_XRC=yes
   DEFAULT_wxUSE_AUI=yes
   DEFAULT_wxUSE_RICHTEXT=yes
   DEFAULT_wxUSE_XRC=yes
   DEFAULT_wxUSE_AUI=yes
+  DEFAULT_wxUSE_STC=yes
   DEFAULT_wxUSE_WEBKIT=yes
   DEFAULT_wxUSE_FILESYSTEM=yes
   DEFAULT_wxUSE_FS_INET=yes
   DEFAULT_wxUSE_WEBKIT=yes
   DEFAULT_wxUSE_FILESYSTEM=yes
   DEFAULT_wxUSE_FS_INET=yes
@@ -756,6 +764,7 @@ else
   DEFAULT_wxUSE_DISPLAY=yes
   DEFAULT_wxUSE_DETECT_SM=yes
   DEFAULT_wxUSE_DIRPICKERCTRL=yes
   DEFAULT_wxUSE_DISPLAY=yes
   DEFAULT_wxUSE_DETECT_SM=yes
   DEFAULT_wxUSE_DIRPICKERCTRL=yes
+  DEFAULT_wxUSE_EDITABLELISTBOX=yes
   DEFAULT_wxUSE_FILEPICKERCTRL=yes
   DEFAULT_wxUSE_FONTPICKERCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_FILEPICKERCTRL=yes
   DEFAULT_wxUSE_FONTPICKERCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
@@ -773,6 +782,7 @@ else
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
   DEFAULT_wxUSE_SCROLLBAR=yes
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
   DEFAULT_wxUSE_SCROLLBAR=yes
+  DEFAULT_wxUSE_SEARCHCTRL=yes
   DEFAULT_wxUSE_SLIDER=yes
   DEFAULT_wxUSE_SPINBTN=yes
   DEFAULT_wxUSE_SPINCTRL=yes
   DEFAULT_wxUSE_SLIDER=yes
   DEFAULT_wxUSE_SPINBTN=yes
   DEFAULT_wxUSE_SPINCTRL=yes
@@ -793,8 +803,10 @@ else
   DEFAULT_wxUSE_POPUPWIN=yes
   DEFAULT_wxUSE_TIPWINDOW=yes
 
   DEFAULT_wxUSE_POPUPWIN=yes
   DEFAULT_wxUSE_TIPWINDOW=yes
 
-  DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE=yes
   DEFAULT_wxUSE_UNICODE_MSLU=yes
   DEFAULT_wxUSE_UNICODE_MSLU=yes
+  DEFAULT_wxUSE_UNICODE_UTF8=auto
+  DEFAULT_wxUSE_UNICODE_UTF8_LOCALE=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=yes
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=yes
@@ -816,6 +828,9 @@ else
   DEFAULT_wxUSE_GTK2=yes
 fi
 
   DEFAULT_wxUSE_GTK2=yes
 fi
 
+dnl Always default to no. Only special cases require this.
+DEFAULT_wxUSE_OBJC_UNIQUIFYING=no
+
 
 dnl WX_ARG_WITH should be used to select whether an external package will be
 dnl used or not, to configure compile-time features of this package itself,
 
 dnl WX_ARG_WITH should be used to select whether an external package will be
 dnl used or not, to configure compile-time features of this package itself,
@@ -905,6 +920,7 @@ WX_ARG_ENABLE(shared,      [  --enable-shared         create shared library code
 WX_ARG_ENABLE(optimise,    [  --enable-optimise       create optimised code], wxUSE_OPTIMISE)
 WX_ARG_ENABLE(debug,       [  --enable-debug          same as debug_flag and debug_info], wxUSE_DEBUG)
 WX_ARG_ENABLE(stl,         [  --enable-stl            use STL for containers], wxUSE_STL)
 WX_ARG_ENABLE(optimise,    [  --enable-optimise       create optimised code], wxUSE_OPTIMISE)
 WX_ARG_ENABLE(debug,       [  --enable-debug          same as debug_flag and debug_info], wxUSE_DEBUG)
 WX_ARG_ENABLE(stl,         [  --enable-stl            use STL for containers], wxUSE_STL)
+WX_ARG_ENABLE(extended_rtti, [  --enable-extended_rtti  use extended RTTI (XTI)], wxUSE_EXTENDED_RTTI)
 if test "$USE_OS2" = "1"; then
     DEFAULT_wxUSE_OMF=no
     WX_ARG_ENABLE(omf,     [  --enable-omf            use OMF object format], wxUSE_OMF)
 if test "$USE_OS2" = "1"; then
     DEFAULT_wxUSE_OMF=no
     WX_ARG_ENABLE(omf,     [  --enable-omf            use OMF object format], wxUSE_OMF)
@@ -930,13 +946,15 @@ 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(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(vararg_macros, [  --disable-vararg_macros don't use vararg macros, even if they are supported], wxUSE_VARARG_MACROS)
 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_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)
+WX_ARG_ENABLE(compat26,      [  --enable-compat26       enable wxWidgets 2.6 compatibility], WXWIN_COMPATIBILITY_2_6, enable)
+WX_ARG_ENABLE(compat28,      [  --disable-compat28      disable wxWidgets 2.8 compatibility], WXWIN_COMPATIBILITY_2_8, disable)
 
 WX_ARG_ENABLE(rpath,         [  --disable-rpath         disable use of rpath for uninstalled builds], wxUSE_RPATH)
 
 
 WX_ARG_ENABLE(rpath,         [  --disable-rpath         disable use of rpath for uninstalled builds], wxUSE_RPATH)
 
+WX_ARG_ENABLE(objc_uniquifying,[  --enable-objc_uniquifying enable Objective-C class name uniquifying], wxUSE_OBJC_UNIQUIFYING)
 
 dnl ---------------------------------------------------------------------------
 dnl (small) optional non GUI classes
 
 dnl ---------------------------------------------------------------------------
 dnl (small) optional non GUI classes
@@ -979,6 +997,8 @@ WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxU
 WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
 WX_ARG_ENABLE(mimetype,      [  --enable-mimetype       use wxMimeTypesManager], wxUSE_MIMETYPE)
 WX_ARG_ENABLE(mslu,          [  --enable-mslu           use MS Layer for Unicode on Windows 9x (Win32 only)], wxUSE_UNICODE_MSLU)
 WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
 WX_ARG_ENABLE(mimetype,      [  --enable-mimetype       use wxMimeTypesManager], wxUSE_MIMETYPE)
 WX_ARG_ENABLE(mslu,          [  --enable-mslu           use MS Layer for Unicode on Windows 9x (Win32 only)], wxUSE_UNICODE_MSLU)
+WX_ARG_ENABLE_PARAM(utf8,          [  --enable-utf8           use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
+WX_ARG_ENABLE(utf8only,      [  --enable-utf8only      only support UTF-8 locales in UTF-8 build (Unix only)], wxUSE_UNICODE_UTF8_LOCALE)
 WX_ARG_ENABLE(snglinst,      [  --enable-snglinst       use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
 WX_ARG_ENABLE(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
 WX_ARG_ENABLE(std_string,    [  --enable-std_string     use standard C++ string classes], wxUSE_STD_STRING)
 WX_ARG_ENABLE(snglinst,      [  --enable-snglinst       use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
 WX_ARG_ENABLE(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
 WX_ARG_ENABLE(std_string,    [  --enable-std_string     use standard C++ string classes], wxUSE_STD_STRING)
@@ -990,7 +1010,7 @@ WX_ARG_ENABLE(tarstream,     [  --enable-tarstream      use wxTar streams], wxUS
 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(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(unicode,       [  --enable-unicode       compile without 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(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)
@@ -1024,6 +1044,7 @@ WX_ARG_ENABLE(html,        [  --enable-html           use wxHTML sub-library], w
 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(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(stc,         [  --enable-stc            use wxStyledTextCtrl library], wxUSE_STC)
 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)
 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)
@@ -1044,13 +1065,6 @@ dnl VZ: these options seem to be always on, if someone wants to change it please
 dnl WX_ARG_ENABLE(PS-normalized,    [  --enable-PS-normalized  use normalized PS fonts], dnl             wxUSE_NORMALIZED_PS_FONTS)
 dnl WX_ARG_ENABLE(afmfonts,        [  --enable-afmfonts       use Adobe Font Metric Font table], dnl             wxUSE_AFM_FOR_POSTSCRIPT)
 
 dnl WX_ARG_ENABLE(PS-normalized,    [  --enable-PS-normalized  use normalized PS fonts], dnl             wxUSE_NORMALIZED_PS_FONTS)
 dnl WX_ARG_ENABLE(afmfonts,        [  --enable-afmfonts       use Adobe Font Metric Font table], dnl             wxUSE_AFM_FOR_POSTSCRIPT)
 
-dnl ---------------------------------------------------------------------------
-dnl resources
-dnl ---------------------------------------------------------------------------
-
-WX_ARG_ENABLE(prologio,    [  --enable-prologio       not available; see contrib], wxUSE_PROLOGIO)
-WX_ARG_ENABLE(resources,   [  --enable-resources      not available; see contrib], wxUSE_RESOURCES)
-
 dnl ---------------------------------------------------------------------------
 dnl IPC &c
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl IPC &c
 dnl ---------------------------------------------------------------------------
@@ -1104,6 +1118,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
   DEFAULT_wxUSE_SCROLLBAR=yes
   DEFAULT_wxUSE_RADIOBTN=yes
   DEFAULT_wxUSE_SASH=yes
   DEFAULT_wxUSE_SCROLLBAR=yes
+  DEFAULT_wxUSE_SEARCHCTRL=yes
   DEFAULT_wxUSE_SLIDER=yes
   DEFAULT_wxUSE_SPINBTN=yes
   DEFAULT_wxUSE_SPINCTRL=yes
   DEFAULT_wxUSE_SLIDER=yes
   DEFAULT_wxUSE_SPINBTN=yes
   DEFAULT_wxUSE_SPINCTRL=yes
@@ -1156,6 +1171,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
   DEFAULT_wxUSE_SCROLLBAR=no
   DEFAULT_wxUSE_RADIOBTN=no
   DEFAULT_wxUSE_SASH=no
   DEFAULT_wxUSE_SCROLLBAR=no
+  DEFAULT_wxUSE_SEARCHCTRL=no
   DEFAULT_wxUSE_SLIDER=no
   DEFAULT_wxUSE_SPINBTN=no
   DEFAULT_wxUSE_SPINCTRL=no
   DEFAULT_wxUSE_SLIDER=no
   DEFAULT_wxUSE_SPINBTN=no
   DEFAULT_wxUSE_SPINCTRL=no
@@ -1195,11 +1211,12 @@ WX_ARG_ENABLE(datepick,    [  --enable-datepick       use wxDatePickerCtrl class
 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(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(editablebox, [  --enable-editablebox    use wxEditableListBox class], wxUSE_EDITABLELISTBOX)
 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(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(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(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)
@@ -1211,6 +1228,7 @@ WX_ARG_ENABLE(radiobox,    [  --enable-radiobox       use wxRadioBox class], wxU
 WX_ARG_ENABLE(radiobtn,    [  --enable-radiobtn       use wxRadioButton class], wxUSE_RADIOBTN)
 WX_ARG_ENABLE(sash,        [  --enable-sash           use wxSashWindow class], wxUSE_SASH)
 WX_ARG_ENABLE(scrollbar,   [  --enable-scrollbar      use wxScrollBar class and scrollable windows], wxUSE_SCROLLBAR)
 WX_ARG_ENABLE(radiobtn,    [  --enable-radiobtn       use wxRadioButton class], wxUSE_RADIOBTN)
 WX_ARG_ENABLE(sash,        [  --enable-sash           use wxSashWindow class], wxUSE_SASH)
 WX_ARG_ENABLE(scrollbar,   [  --enable-scrollbar      use wxScrollBar class and scrollable windows], wxUSE_SCROLLBAR)
+WX_ARG_ENABLE(searchctrl,  [  --enable-searchctrl     use wxSearchCtrl class], wxUSE_SEARCHCTRL)
 WX_ARG_ENABLE(slider,      [  --enable-slider         use wxSlider class], wxUSE_SLIDER)
 WX_ARG_ENABLE(spinbtn,     [  --enable-spinbtn        use wxSpinButton class], wxUSE_SPINBTN)
 WX_ARG_ENABLE(spinctrl,    [  --enable-spinctrl       use wxSpinCtrl class], wxUSE_SPINCTRL)
 WX_ARG_ENABLE(slider,      [  --enable-slider         use wxSlider class], wxUSE_SLIDER)
 WX_ARG_ENABLE(spinbtn,     [  --enable-spinbtn        use wxSpinButton class], wxUSE_SPINBTN)
 WX_ARG_ENABLE(spinctrl,    [  --enable-spinctrl       use wxSpinCtrl class], wxUSE_SPINCTRL)
@@ -1323,6 +1341,8 @@ if test "$wxUSE_WINE" = "yes"; then
     DEFAULT_DEFAULT_wxUSE_MOTIF=0
     DEFAULT_DEFAULT_wxUSE_MSW=1
     wxUSE_SHARED=no
     DEFAULT_DEFAULT_wxUSE_MOTIF=0
     DEFAULT_DEFAULT_wxUSE_MSW=1
     wxUSE_SHARED=no
+    CC=${CC:-winegcc}
+    CXX=${CXX:-wineg++}
 fi
 
 
 fi
 
 
@@ -1454,15 +1474,26 @@ dnl see CFLAGS line above
 CXXFLAGS=${CXXFLAGS:=}
 AC_BAKEFILE_PROG_CXX
 
 CXXFLAGS=${CXXFLAGS:=}
 AC_BAKEFILE_PROG_CXX
 
+dnl configure always sets CXX to something as it falls back to g++ even if no
+dnl C++ compiler was found, but we prefer to abort now with a clear error
+dnl message rather than give errors about all tests failures below
+if test "$CXX" = "g++" -a "$GXX" != "yes"; then
+    AC_MSG_ERROR([C++ compiler is needed to build wxWidgets])
+fi
+
 dnl ranlib command
 dnl   defines RANLIB with the appropriate command
 AC_PROG_RANLIB
 
 dnl ar command
 dnl   defines AR with the appropriate command
 dnl ranlib command
 dnl   defines RANLIB with the appropriate command
 AC_PROG_RANLIB
 
 dnl ar command
 dnl   defines AR with the appropriate command
-AC_CHECK_TOOL(AR, ar)
-if test "x$AR" = "x" ; then
-    AC_MSG_ERROR([ar is needed to build wxWidgets])
+dnl 
+dnl For Sun CC AC_BAKEFILE below sets AR to the compiler itself.
+if test "x$SUNCXX" != xyes; then
+    AC_CHECK_TOOL(AR, ar)
+    if test "x$AR" = "x" ; then
+        AC_MSG_ERROR([ar is needed to build wxWidgets])
+    fi
 fi
 
 dnl install checks
 fi
 
 dnl install checks
@@ -1519,7 +1550,7 @@ dnl does make support "-include" (only GNU make does AFAIK)?
 AC_CACHE_CHECK([if make is GNU make], wx_cv_prog_makeisgnu,
 [
     if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null |
 AC_CACHE_CHECK([if make is GNU make], wx_cv_prog_makeisgnu,
 [
     if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null |
-            egrep -s GNU > /dev/null); then
+            $EGREP -s GNU > /dev/null); then
         wx_cv_prog_makeisgnu="yes"
     else
         wx_cv_prog_makeisgnu="no"
         wx_cv_prog_makeisgnu="yes"
     else
         wx_cv_prog_makeisgnu="no"
@@ -1670,9 +1701,6 @@ esac
 
 if test "$wxUSE_WINE" = "yes"; then
     wants_win32=1
 
 if test "$wxUSE_WINE" = "yes"; then
     wants_win32=1
-    dnl FIXME: we should do a better job of testing for these
-    CC=winegcc
-    CXX=wineg++
     LDFLAGS_GUI="-mwindows"
 fi
 
     LDFLAGS_GUI="-mwindows"
 fi
 
@@ -1820,11 +1848,13 @@ dnl ------------------------------------------------------------------------
 dnl Check for headers
 dnl ------------------------------------------------------------------------
 
 dnl Check for headers
 dnl ------------------------------------------------------------------------
 
-AC_CHECK_HEADERS(stdlib.h fnmatch.h langinfo.h malloc.h unistd.h wchar.h)
+dnl Note: non-empty last parameter makes check compile-only,
+dnl   skipping worthless preprocessing check
+AC_CHECK_HEADERS(stdlib.h fnmatch.h langinfo.h malloc.h unistd.h wchar.h,,, [AC_INCLUDES_DEFAULT()])
 
 dnl maybe wchar_t is in wcstr.h if we don't have wchar.h?
 if test "$ac_cv_header_wchar_h" != "yes"; then
 
 dnl maybe wchar_t is in wcstr.h if we don't have wchar.h?
 if test "$ac_cv_header_wchar_h" != "yes"; then
-    AC_CHECK_HEADERS(wcstr.h)
+    AC_CHECK_HEADER(wcstr.h,,, [AC_INCLUDES_DEFAULT()])
 fi
 
 case "${host}" in
 fi
 
 case "${host}" in
@@ -1842,9 +1872,12 @@ esac
 
 dnl POSIX needs this for select(), but old systems don't have it
 if test "$USE_UNIX" = 1 ; then
 
 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])
+    AC_CHECK_HEADER([sys/select.h],,, [AC_INCLUDES_DEFAULT()])
 fi
 
 fi
 
+dnl defines HAVE_SYS_EPOLL_H - for epoll mainloop implementation in wxbase
+AC_CHECK_HEADERS(sys/epoll.h)
+
 dnl ---------------------------------------------------------------------------
 dnl Checks for compiler characteristics
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl Checks for compiler characteristics
 dnl ---------------------------------------------------------------------------
@@ -1857,7 +1890,6 @@ AC_C_INLINE
 dnl check the sizes of integral types (give some reasonable default values for
 dnl cross-compiling)
 dnl   defines the size of certain types of variables in SIZEOF_<TYPE>
 dnl check the sizes of integral types (give some reasonable default values for
 dnl cross-compiling)
 dnl   defines the size of certain types of variables in SIZEOF_<TYPE>
-AC_CHECK_SIZEOF(char, 1)
 AC_CHECK_SIZEOF(short, 2)
 AC_CHECK_SIZEOF(void *, 4)
 AC_CHECK_SIZEOF(int, 4)
 AC_CHECK_SIZEOF(short, 2)
 AC_CHECK_SIZEOF(void *, 4)
 AC_CHECK_SIZEOF(int, 4)
@@ -1909,6 +1941,7 @@ dnl checks needed to define wxVaCopy
 AC_CACHE_CHECK([for va_copy],
     wx_cv_func_va_copy,
     [
 AC_CACHE_CHECK([for va_copy],
     wx_cv_func_va_copy,
     [
+        AC_LANG_PUSH(C++)
         AC_LINK_IFELSE([
             #include <stdarg.h>
             void foo(char *f, ...)
         AC_LINK_IFELSE([
             #include <stdarg.h>
             void foo(char *f, ...)
@@ -1927,6 +1960,7 @@ AC_CACHE_CHECK([for va_copy],
             wx_cv_func_va_copy=yes,
             wx_cv_func_va_copy=no
         )
             wx_cv_func_va_copy=yes,
             wx_cv_func_va_copy=no
         )
+        AC_LANG_POP()
     ]
 )
 
     ]
 )
 
@@ -1969,6 +2003,11 @@ else
     fi
 fi
 
     fi
 fi
 
+dnl don't check for vararg macros if they're explicitly disabled: this is
+dnl useful if the user code using the library wants to limit itself to standard
+dnl C++ only (e.g. is compiled with g++ -std=c++98)
+if test "$wxUSE_VARARG_MACROS" = "yes"; then
+
 dnl Check if variadic macros (C99 feature) are supported:
 AC_CACHE_CHECK(
     [whether the compiler supports variadic macros],
 dnl Check if variadic macros (C99 feature) are supported:
 AC_CACHE_CHECK(
     [whether the compiler supports variadic macros],
@@ -1998,6 +2037,8 @@ if test $wx_cv_have_variadic_macros = "yes"; then
     AC_DEFINE(HAVE_VARIADIC_MACROS)
 fi
 
     AC_DEFINE(HAVE_VARIADIC_MACROS)
 fi
 
+fi dnl wxUSE_VARARG_MACROS == yes
+
 dnl check for large file support
 AC_SYS_LARGEFILE
 
 dnl check for large file support
 AC_SYS_LARGEFILE
 
@@ -2260,7 +2301,9 @@ if test "$wxUSE_STL" = "yes"; then
                 wx_cv_class_stdhashmapset=yes,
                 wx_cv_class_stdhashmapset=no)
             ]
                 wx_cv_class_stdhashmapset=yes,
                 wx_cv_class_stdhashmapset=no)
             ]
-        )]
+        )],
+        [],
+        [ ]
     )
 
     if test "$wx_cv_class_stdhashmapset" = yes; then
     )
 
     if test "$wx_cv_class_stdhashmapset" = yes; then
@@ -2278,7 +2321,9 @@ if test "$wxUSE_STL" = "yes"; then
                 wx_cv_class_gnuhashmapset=yes,
                 wx_cv_class_gnuhashmapset=no)
             ]
                 wx_cv_class_gnuhashmapset=yes,
                 wx_cv_class_gnuhashmapset=no)
             ]
-        )]
+        )],
+        [],
+        [ ]
     )
 
     if test "$wx_cv_class_gnuhashmapset" = yes; then
     )
 
     if test "$wx_cv_class_gnuhashmapset" = yes; then
@@ -2527,11 +2572,16 @@ 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
 
 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
+dnl
+dnl at least under SGI these functions are only available in C99 code and not
+dnl in C++ so do these tests using C++ compiler
+AC_LANG_PUSH(C++)
 if test "wxUSE_UNICODE" = "yes"; then
     WX_CHECK_FUNCS(wcstoull)
 else
     WX_CHECK_FUNCS(strtoull)
 fi
 if test "wxUSE_UNICODE" = "yes"; then
     WX_CHECK_FUNCS(wcstoull)
 else
     WX_CHECK_FUNCS(strtoull)
 fi
+AC_LANG_POP()
 
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries
 
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries
@@ -2568,7 +2618,7 @@ if test "$wxUSE_REGEX" != "no"; then
     if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then
         dnl according to Unix 98 specs, regcomp() is in libc but I believe that
         dnl on some old systems it may be in libregex - check for it too?
     if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then
         dnl according to Unix 98 specs, regcomp() is in libc but I believe that
         dnl on some old systems it may be in libregex - check for it too?
-        AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp re_search)])
+        AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp re_search)],, [ ])
 
         if test "x$ac_cv_func_regcomp" != "xyes"; then
             if test "$wxUSE_REGEX" = "sys" ; then
 
         if test "x$ac_cv_func_regcomp" != "xyes"; then
             if test "$wxUSE_REGEX" = "sys" ; then
@@ -2636,7 +2686,7 @@ if test "$wxUSE_ZLIB" != "no" ; then
             )
             dnl If the test above did not come up with a value (e.g. cross
             dnl compiling) then this should give a definitive answer
             )
             dnl If the test above did not come up with a value (e.g. cross
             dnl compiling) then this should give a definitive answer
-            AC_CHECK_HEADER(zlib.h)
+            AC_CHECK_HEADER(zlib.h,,, [ ])
 
             system_zlib_h_ok=$ac_cv_header_zlib_h
         fi
 
             system_zlib_h_ok=$ac_cv_header_zlib_h
         fi
@@ -2707,7 +2757,7 @@ if test "$wxUSE_LIBPNG" != "no" ; then
                     unset ac_cv_header_png_h
                 )]
             )
                     unset ac_cv_header_png_h
                 )]
             )
-            AC_CHECK_HEADER(png.h)
+            AC_CHECK_HEADER(png.h,,, [ ])
 
             if test "$ac_cv_header_png_h" = "yes"; then
                 AC_CHECK_LIB(png, png_check_sig, PNG_LINK=" -lpng -lz", , [-lz -lm])
 
             if test "$ac_cv_header_png_h" = "yes"; then
                 AC_CHECK_LIB(png, png_check_sig, PNG_LINK=" -lpng -lz", , [-lz -lm])
@@ -2779,6 +2829,30 @@ if test "$wxUSE_LIBJPEG" != "no" ; then
             else
                 dnl we are using the system library
                 wxUSE_LIBJPEG=sys
             else
                 dnl we are using the system library
                 wxUSE_LIBJPEG=sys
+
+                if test "$wxUSE_MSW" = 1; then
+                    dnl boolean is defined by the jpeg headers and also by the
+                    dnl Windows headers of some compilers. This type has been
+                    dnl renamed in the builtin, so it is only an issue when
+                    dnl using an external jpeg lib on Windows.
+                    AC_CHECK_TYPES(
+                        [boolean],
+                        [
+                            AC_CHECK_SIZEOF(
+                                [boolean],
+                                [],
+                                [
+                                    #undef HAVE_BOOLEAN
+                                    #include <stdio.h>
+                                    #include <jpeglib.h>
+                                ])
+                            AC_DEFINE_UNQUOTED(
+                                [wxHACK_BOOLEAN],
+                                [wxInt`expr 8 \* $ac_cv_sizeof_boolean`])
+                        ],
+                        [],
+                        [#include <windows.h>])
+                fi
             fi
         fi
     fi
             fi
         fi
     fi
@@ -2808,7 +2882,9 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
                                          TIFF_LINK=" -ltiff",
                                          ,
                                          $TIFF_PREREQ_LINKS)
                                          TIFF_LINK=" -ltiff",
                                          ,
                                          $TIFF_PREREQ_LINKS)
-                        ]
+                        ],
+                        [],
+                        [ ]
                        )
 
         if test "x$TIFF_LINK" = "x" ; then
                        )
 
         if test "x$TIFF_LINK" = "x" ; then
@@ -2846,7 +2922,7 @@ if test "$wxUSE_EXPAT" != "no"; then
     AC_DEFINE(wxUSE_XML)
 
     if test "$wxUSE_EXPAT" = "sys" -o "$wxUSE_EXPAT" = "yes" ; then
     AC_DEFINE(wxUSE_XML)
 
     if test "$wxUSE_EXPAT" = "sys" -o "$wxUSE_EXPAT" = "yes" ; then
-        AC_CHECK_HEADER([expat.h], [found_expat_h=1])
+        AC_CHECK_HEADER([expat.h], [found_expat_h=1],, [ ])
         if test "x$found_expat_h" = "x1"; then
             dnl Expat 1.95.6 comes with broken expat.h:
             AC_CACHE_CHECK([if expat.h is valid C++ header],
         if test "x$found_expat_h" = "x1"; then
             dnl Expat 1.95.6 comes with broken expat.h:
             AC_CACHE_CHECK([if expat.h is valid C++ header],
@@ -2888,7 +2964,7 @@ dnl Check for libmspack
 dnl ------------------------------------------------------------------------
 
 if test "$wxUSE_LIBMSPACK" != "no"; then
 dnl ------------------------------------------------------------------------
 
 if test "$wxUSE_LIBMSPACK" != "no"; then
-    AC_CHECK_HEADER([mspack.h], [found_mspack_h=1])
+    AC_CHECK_HEADER([mspack.h], [found_mspack_h=1],, [ ])
     if test "x$found_mspack_h" = "x1"; then
         AC_CHECK_LIB(mspack, mspack_create_chm_decompressor,
                      MSPACK_LINK=" -lmspack")
     if test "x$found_mspack_h" = "x1"; then
         AC_CHECK_LIB(mspack, mspack_create_chm_decompressor,
                      MSPACK_LINK=" -lmspack")
@@ -2917,11 +2993,12 @@ WIDGET_SET=
 dnl are we building for a win32 target environment?
 dnl If so, setup common stuff needed for both GUI and Base libs.
 if test "$USE_WIN32" = 1 ; then
 dnl are we building for a win32 target environment?
 dnl If so, setup common stuff needed for both GUI and Base libs.
 if test "$USE_WIN32" = 1 ; then
-    AC_CHECK_HEADERS(w32api.h)
-    AC_CHECK_HEADER(windows.h, [],
+    AC_CHECK_HEADER(w32api.h,,, [ ])
+    AC_CHECK_HEADER(windows.h,,
     [
         AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
     [
         AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
-    ])
+    ],
+    [ ])
 
     dnl --- FIXME: This is still a somewhat random list of libs,
     dnl ---        some of them should probably be included conditionally.
 
     dnl --- FIXME: This is still a somewhat random list of libs,
     dnl ---        some of them should probably be included conditionally.
@@ -2959,14 +3036,8 @@ if test "$USE_WIN32" = 1 ; then
     dnl install Win32-specific files in "make install"
     WIN32INSTALL=win32install
 
     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
     dnl pbt.h is missing on Wine at least
-    AC_CHECK_HEADERS(pbt.h, [], [AC_DEFINE(NEED_PBT_H)])
+    AC_CHECK_HEADER(pbt.h,, [AC_DEFINE(NEED_PBT_H)], [ ])
 fi
 
 if test "$wxUSE_GUI" = "yes"; then
 fi
 
 if test "$wxUSE_GUI" = "yes"; then
@@ -2989,7 +3060,7 @@ if test "$wxUSE_GUI" = "yes"; then
             wxUSE_DRAG_AND_DROP=no
         fi
         if test "$wxUSE_DRAGIMAGE" = "yes"; then
             wxUSE_DRAG_AND_DROP=no
         fi
         if test "$wxUSE_DRAGIMAGE" = "yes"; then
-            AC_MSG_WARN([Drag Image and DandD not supported under wxCocoa yet, disabled])
+            AC_MSG_WARN([wxDragImage not supported under wxCocoa yet, disabled])
             wxUSE_DRAGIMAGE=no
         fi
     fi
             wxUSE_DRAGIMAGE=no
         fi
     fi
@@ -3028,26 +3099,21 @@ if test "$wxUSE_GUI" = "yes"; then
                 wx_cv_lib_gtk=
                 if test "x$wxGTK_VERSION" != "x1"
                 then
                 wx_cv_lib_gtk=
                 if test "x$wxGTK_VERSION" != "x1"
                 then
-                    dnl The gthread.pc that ships with solaris returns '-mt',
+                    dnl The gthread.pc that ships with Solaris returns '-mt',
                     dnl it's correct for Sun CC, but gcc requires '-pthreads'.
                     dnl So disable the compile check and remove the -mt below.
                     case "${host}" in
                         *-*-solaris2* )
                             if test "$wxUSE_THREADS" = "yes" -a "$GCC" = yes; then
                     dnl it's correct for Sun CC, but gcc requires '-pthreads'.
                     dnl So disable the compile check and remove the -mt below.
                     case "${host}" in
                         *-*-solaris2* )
                             if test "$wxUSE_THREADS" = "yes" -a "$GCC" = yes; then
-                            enable_gtktest=no
+                                enable_gtktest=no
                             fi
                     esac
 
                     AM_PATH_GTK_2_0(2.0.0, wx_cv_lib_gtk=2.0, , $GTK_MODULES)
 
                             fi
                     esac
 
                     AM_PATH_GTK_2_0(2.0.0, wx_cv_lib_gtk=2.0, , $GTK_MODULES)
 
-                    dnl Remove the '-mt' for gcc on solaris
+                    dnl Solaris also requires -lX11 for static lib
                     case "${host}" in
                         *-*-solaris2* )
                     case "${host}" in
                         *-*-solaris2* )
-                            if test "$wxUSE_THREADS" = "yes" -a "$GCC" = yes; then
-                                GTK_CFLAGS=`echo $GTK_CFLAGS | sed 's/-mt//'`
-                                GTK_LIBS=`echo $GTK_LIBS | sed 's/-mt//'`
-                            fi
-                            dnl solaris also requires -lX11 for static lib
                             if test "$wxUSE_SHARED" != "yes"; then
                                 GTK_LIBS="$GTK_LIBS -lX11"
                             fi
                             if test "$wxUSE_SHARED" != "yes"; then
                                 GTK_LIBS="$GTK_LIBS -lX11"
                             fi
@@ -3117,45 +3183,70 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
                            [AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)],
                            [#include <gtk/gtk.h>])
 
                            [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])
+
+            dnl test if we have at least GTK+ 2.10:
+            AC_MSG_CHECKING([if GTK+ is version >= 2.10])
             AC_TRY_COMPILE([
                             #include <gtk/gtk.h>
                            ],
                            [
             AC_TRY_COMPILE([
                             #include <gtk/gtk.h>
                            ],
                            [
-                            #if !GTK_CHECK_VERSION(2,6,0)
-                            Not GTK+ 2.6
+                            #if !GTK_CHECK_VERSION(2,10,0)
+                            Not GTK+ 2.10
                             #endif
                            ],
                            [
                             #endif
                            ],
                            [
+                            AC_DEFINE(__WXGTK210__)
                             AC_DEFINE(__WXGTK26__)
                             AC_DEFINE(__WXGTK24__)
                             AC_MSG_RESULT([yes])
                             AC_DEFINE(__WXGTK26__)
                             AC_DEFINE(__WXGTK24__)
                             AC_MSG_RESULT([yes])
-                            ac_wxgtk26=1
+                            ac_wxgtk210=1
                            ],
                            [
                             AC_MSG_RESULT([no])
                            ],
                            [
                             AC_MSG_RESULT([no])
-                            ac_wxgtk26=0
+                            ac_wxgtk210=0
                            ])
 
                            ])
 
+            if test "$ac_wxgtk210" = 0; then
+                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>
+                            ],
+                            [
+                                #if !GTK_CHECK_VERSION(2,6,0)
+                                Not GTK+ 2.6
+                                #endif
+                            ],
+                            [
+                                AC_DEFINE(__WXGTK26__)
+                                AC_DEFINE(__WXGTK24__)
+                                AC_MSG_RESULT([yes])
+                                ac_wxgtk26=1
+                            ],
+                            [
+                                AC_MSG_RESULT([no])
+                                ac_wxgtk26=0
+                            ])
+            fi
+
             if test "$ac_wxgtk26" = 0; then
             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([
-                            #include <gtk/gtk.h>
-                           ],
-                           [
-                            #if !GTK_CHECK_VERSION(2,4,0)
-                            Not GTK+ 2.4
-                            #endif
-                           ],
-                           [
-                            AC_DEFINE(__WXGTK24__)
-                            AC_MSG_RESULT([yes])
-                           ],
-                           [
-                            AC_MSG_RESULT([no])
-                           ])
+                dnl test if we have at least GTK+ 2.4:
+                AC_MSG_CHECKING([if GTK+ is version >= 2.4])
+                AC_TRY_COMPILE([
+                                #include <gtk/gtk.h>
+                            ],
+                            [
+                                #if !GTK_CHECK_VERSION(2,4,0)
+                                Not GTK+ 2.4
+                                #endif
+                            ],
+                            [
+                                AC_DEFINE(__WXGTK24__)
+                                AC_MSG_RESULT([yes])
+                            ],
+                            [
+                                AC_MSG_RESULT([no])
+                            ])
             fi
 
             CFLAGS="$save_CFLAGS"
             fi
 
             CFLAGS="$save_CFLAGS"
@@ -3168,12 +3259,12 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
 
             dnl test for XIM support in libgdk
             AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
 
             dnl test for XIM support in libgdk
             AC_CHECK_LIB(gdk, gdk_im_open, AC_DEFINE(HAVE_XIM))
-        fi
 
 
-        dnl we need poll() in src/gtk/app.cpp (we know that Darwin doesn't
-        dnl have it but we do the check for the others)
-        if test "$USE_DARWIN" != 1; then
-            AC_CHECK_FUNCS(poll)
+            dnl we need poll() in src/gtk1/app.cpp (we know that Darwin doesn't
+            dnl have it but we do the check for the others)
+            if test "$USE_DARWIN" != 1; then
+                AC_CHECK_FUNCS(poll)
+            fi
         fi
 
         TOOLKIT_INCLUDE="$wx_cv_cflags_gtk"
         fi
 
         TOOLKIT_INCLUDE="$wx_cv_cflags_gtk"
@@ -3282,7 +3373,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
        PKG_PROG_PKG_CONFIG()
 
        PKG_CHECK_MODULES(DIRECTFB,
        PKG_PROG_PKG_CONFIG()
 
        PKG_CHECK_MODULES(DIRECTFB,
-                         [directfb >= 0.9.22],
+                         [directfb >= 0.9.23],
                          [
                            wxUSE_UNIVERSAL="yes"
                            TOOLKIT_INCLUDE="$DIRECTFB_CFLAGS"
                          [
                            wxUSE_UNIVERSAL="yes"
                            TOOLKIT_INCLUDE="$DIRECTFB_CFLAGS"
@@ -3751,6 +3842,28 @@ else
     DISTDIR="wxBase"
 fi
 
     DISTDIR="wxBase"
 fi
 
+
+dnl ---------------------------------------------------------------------------
+dnl UTF-8 support
+dnl ---------------------------------------------------------------------------
+
+dnl If UTF-8 support wasn't explicitly enabled or disabled, enable it only
+dnl for ports where it makes sense by default (GTK+, DirectFB):
+if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_UTF8" = "auto" ; then
+    if test "$TOOLKIT" = "DFB" ; then
+        wxUSE_UNICODE_UTF8=yes
+    elif test "$TOOLKIT" = "GTK" -a "$WXGTK20" = "1" ; then
+        wxUSE_UNICODE_UTF8=yes
+    elif test "$USE_OS2" = "1" ; then
+        dnl wide char support is quite incomplete in libc;
+        dnl UTF-8 might actually work when evaluating/setting
+        dnl code pages correctly, even for ports other than GTK20.
+        wxUSE_UNICODE_UTF8=yes
+    else
+        wxUSE_UNICODE_UTF8=no
+    fi
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries included when system library is not used
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries included when system library is not used
 dnl ---------------------------------------------------------------------------
@@ -3759,8 +3872,8 @@ dnl do this after test for X11 above so that we have a chance of finding Xlib.h
 if test "$wxUSE_GUI" = "yes"; then
     if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_PM" != 1; then
         dnl defines HAVE_X11_XKBLIB_H
 if test "$wxUSE_GUI" = "yes"; then
     if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_PM" != 1; then
         dnl defines HAVE_X11_XKBLIB_H
-        AC_CHECK_HEADERS(X11/Xlib.h)
-        AC_CHECK_HEADERS([X11/XKBlib.h], [], [],
+        AC_CHECK_HEADER(X11/Xlib.h,,, [ ])
+        AC_CHECK_HEADER([X11/XKBlib.h],,,
                          [
                           #if HAVE_X11_XLIB_H
                             #include <X11/Xlib.h>
                          [
                           #if HAVE_X11_XLIB_H
                             #include <X11/Xlib.h>
@@ -3784,7 +3897,7 @@ if test "$TOOLKIT" != "MSW" ; then
         dnl This is not ideal we really ough to use the unixodbc-config
         dnl  or iodbc-config if they exist.
 
         dnl This is not ideal we really ough to use the unixodbc-config
         dnl  or iodbc-config if they exist.
 
-        AC_CHECK_HEADER([sql.h], [found_sql_h=1])
+        AC_CHECK_HEADER([sql.h], [found_sql_h=1],, [ ])
         if test "x$found_sql_h" = "x1" ; then
             AC_CHECK_LIB(iodbc, SQLAllocEnv, ODBC_LINK=" -liodbc",
             [
         if test "x$found_sql_h" = "x1" ; then
             AC_CHECK_LIB(iodbc, SQLAllocEnv, ODBC_LINK=" -liodbc",
             [
@@ -3843,7 +3956,7 @@ dnl ---------------------------------------------------------------------------
             WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xxf86vm)
             if test "$ac_find_libraries" != "" ; then
                 AC_MSG_RESULT([yes])
             WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xxf86vm)
             if test "$ac_find_libraries" != "" ; then
                 AC_MSG_RESULT([yes])
-                AC_CHECK_HEADERS([X11/extensions/xf86vmode.h],
+                AC_CHECK_HEADER([X11/extensions/xf86vmode.h],
                                  [
                                   GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm"
                                  ],
                                  [
                                   GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm"
                                  ],
@@ -3866,7 +3979,7 @@ dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl DirectDraw for MSW - optionally used by WxDisplay.
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl DirectDraw for MSW - optionally used by WxDisplay.
 dnl ---------------------------------------------------------------------------
-        AC_CHECK_HEADERS([ddraw.h], [], [], [#include <windows.h>])
+        AC_CHECK_HEADER([ddraw.h], [], [], [#include <windows.h>])
     fi
 fi
 
     fi
 fi
 
@@ -3970,7 +4083,9 @@ if test "$wxUSE_OPENGL" = "yes"; then
                     fi
                 fi
             ])
                     fi
                 fi
             ])
-        ])
+        ],
+        [],
+        [ ])
 
         if test "x$OPENGL_LIBS" = "x"; then
             dnl it should be an error and not a warning because OpenGL is not on
 
         if test "x$OPENGL_LIBS" = "x"; then
             dnl it should be an error and not a warning because OpenGL is not on
@@ -4012,6 +4127,11 @@ if test "$wxUSE_SHARED" = "yes"; then
     dnl use versioned symbols if available on the platform
     WX_VERSIONED_SYMBOLS([\$(wx_top_builddir)/version-script])
 
     dnl use versioned symbols if available on the platform
     WX_VERSIONED_SYMBOLS([\$(wx_top_builddir)/version-script])
 
+    dnl test for Sun CC which can be used under both Solaris and Linux
+    if test "x$SUNCXX" = xyes; then
+        SAMPLES_RPATH_FLAG="-R\$(wx_top_builddir)/lib"
+        WXCONFIG_RPATH="-R\$libdir"
+    else
     case "${host}" in
       *-*-linux* | *-*-gnu* )
         SAMPLES_RPATH_FLAG="-Wl,-rpath,\$(wx_top_builddir)/lib"
     case "${host}" in
       *-*-linux* | *-*-gnu* )
         SAMPLES_RPATH_FLAG="-Wl,-rpath,\$(wx_top_builddir)/lib"
@@ -4019,41 +4139,39 @@ if test "$wxUSE_SHARED" = "yes"; then
         ;;
 
       *-*-solaris2* )
         ;;
 
       *-*-solaris2* )
-        if test "$GCC" = yes ; then
-            dnl newer versions of gcc need -isystem to compile X headers on
-            dnl Solaris (which use old style C syntax)
-            CPPFLAGS="-isystem /usr/openwin/include $CPPFLAGS"
-
-            dnl gcc may use Sun's ld, in which case -rpath gives a confusing
-            dnl error message. We have to try both -Wl,-rpath and -Wl,-R:
-            saveLdflags="$LDFLAGS"
-            LDFLAGS="$saveLdflags -Wl,-rpath,/"
-            AC_MSG_CHECKING([if the linker accepts -rpath])
-            AC_TRY_LINK(
-                [],[],
-                [
-                    AC_MSG_RESULT([yes])
-                    SAMPLES_RPATH_FLAG="-Wl,-rpath,\$(wx_top_builddir)/lib"
-                    WXCONFIG_RPATH="-Wl,-rpath,\$libdir"
-                ],[
-                    AC_MSG_RESULT([no])
-                    AC_MSG_CHECKING([if the linker accepts -R])
-                    LDFLAGS="$saveLdflags -Wl,-R,/"
-                    AC_TRY_LINK(
-                        [],[],
-                        [
-                            AC_MSG_RESULT([yes])
-                            SAMPLES_RPATH_FLAG="-Wl,-R,\$(wx_top_builddir)/lib"
-                            WXCONFIG_RPATH="-Wl,-R,\$libdir"
-                        ],[
-                            AC_MSG_RESULT([no])
-                        ])
-                ])
-            LDFLAGS="$saveLdflags"
-        else
-            SAMPLES_RPATH_FLAG="-R\$(wx_top_builddir)/lib"
-            WXCONFIG_RPATH="-R\$libdir"
-        fi
+        dnl here we know that Sun CC is not used as we tested for it above,
+        dnl hence we must be using gcc
+
+        dnl newer versions of gcc need -isystem to compile X headers on
+        dnl Solaris (which use old style C syntax)
+        CPPFLAGS="-isystem /usr/openwin/include $CPPFLAGS"
+
+        dnl gcc may use Sun's ld, in which case -rpath gives a confusing
+        dnl error message. We have to try both -Wl,-rpath and -Wl,-R:
+        saveLdflags="$LDFLAGS"
+        LDFLAGS="$saveLdflags -Wl,-rpath,/"
+        AC_MSG_CHECKING([if the linker accepts -rpath])
+        AC_TRY_LINK(
+            [],[],
+            [
+                AC_MSG_RESULT([yes])
+                SAMPLES_RPATH_FLAG="-Wl,-rpath,\$(wx_top_builddir)/lib"
+                WXCONFIG_RPATH="-Wl,-rpath,\$libdir"
+            ],[
+                AC_MSG_RESULT([no])
+                AC_MSG_CHECKING([if the linker accepts -R])
+                LDFLAGS="$saveLdflags -Wl,-R,/"
+                AC_TRY_LINK(
+                    [],[],
+                    [
+                        AC_MSG_RESULT([yes])
+                        SAMPLES_RPATH_FLAG="-Wl,-R,\$(wx_top_builddir)/lib"
+                        WXCONFIG_RPATH="-Wl,-R,\$libdir"
+                    ],[
+                        AC_MSG_RESULT([no])
+                    ])
+            ])
+        LDFLAGS="$saveLdflags"
       ;;
 
       *-*-darwin* )
       ;;
 
       *-*-darwin* )
@@ -4085,6 +4203,7 @@ EOF
         ;;
 
     esac
         ;;
 
     esac
+    fi
 
     if test $wxUSE_RPATH = "no"; then
         SAMPLES_RPATH_FLAG=''
 
     if test $wxUSE_RPATH = "no"; then
         SAMPLES_RPATH_FLAG=''
@@ -4292,6 +4411,30 @@ else
     fi
 fi
 
     fi
 fi
 
+AC_CACHE_CHECK([if wchar_t is separate type],
+    wx_cv_wchar_t_is_separate_type,
+    AC_TRY_COMPILE([#include <wchar.h>],
+        [
+            return 0; }
+
+            struct Foo { void foo(wchar_t);
+                         void foo(unsigned short);
+                         void foo(unsigned int);
+                         void foo(unsigned long); };
+
+            int bar() {
+        ],
+        wx_cv_wchar_t_is_separate_type=yes,
+        wx_cv_wchar_t_is_separate_type=no
+    )
+)
+
+if test "$wx_cv_wchar_t_is_separate_type" = "yes"; then
+    AC_DEFINE(wxWCHAR_T_IS_SEPARATE_TYPE, 1)
+else
+    AC_DEFINE(wxWCHAR_T_IS_SEPARATE_TYPE, 0)
+fi
+
 AC_LANG_POP() dnl C++
 
 dnl ---------------------------------------------------------------------------
 AC_LANG_POP() dnl C++
 
 dnl ---------------------------------------------------------------------------
@@ -4349,6 +4492,8 @@ if test "$wxUSE_WCHAR_T" = "yes"; then
         AC_DEFINE(HAVE_WCSLEN)
     fi
 
         AC_DEFINE(HAVE_WCSLEN)
     fi
 
+    AC_CHECK_FUNCS([wcsdup])
+
     dnl On HP-UX aCC need this define to find mbstrtowcs() &c
     dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict
     dnl with g++'s in <cwchar> (unless -D_INCLUDE__STDC_A1_SOURCE is in the
     dnl On HP-UX aCC need this define to find mbstrtowcs() &c
     dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict
     dnl with g++'s in <cwchar> (unless -D_INCLUDE__STDC_A1_SOURCE is in the
@@ -4521,7 +4666,7 @@ if test "$ac_cv_func_snprintf" = "yes"; then
                         int main (void)
                         {
                             char buffer[128];
                         int main (void)
                         {
                             char buffer[128];
-                            snprintf (buffer, 128, "%2\$d %3\$d %1\$d", 1, 2, 3);
+                            snprintf (buffer, 128, "%2$d %3$d %1$d", 1, 2, 3);
                             if (strcmp ("2 3 1", buffer) == 0)
                                 exit (0);
                             exit (1);
                             if (strcmp ("2 3 1", buffer) == 0)
                                 exit (0);
                             exit (1);
@@ -4585,7 +4730,7 @@ if test "$wxUSE_UNICODE" = yes; then
 #include <wchar.h>"
     case "${host}" in
         *-*-solaris2* )
 #include <wchar.h>"
     case "${host}" in
         *-*-solaris2* )
-            AC_CHECK_HEADERS(widec.h)
+            AC_CHECK_HEADER(widec.h,,, [AC_INCLUDES_DEFAULT()])
             if test "$ac_cv_header_widec_h" = "yes"; then
                 wchar_headers="$wchar_headers
 #include <widec.h>"
             if test "$ac_cv_header_widec_h" = "yes"; then
                 wchar_headers="$wchar_headers
 #include <widec.h>"
@@ -4614,7 +4759,11 @@ if test "$wxUSE_FILE" = "yes"; then
     WX_CHECK_FUNCS(fsync)
 fi
 
     WX_CHECK_FUNCS(fsync)
 fi
 
+dnl at least under IRIX with mipsPro the C99 round() function is available when
+dnl building using the C compiler but not when using C++ one
+AC_LANG_PUSH(C++)
 WX_CHECK_FUNCS(round,,,[#include <math.h>])
 WX_CHECK_FUNCS(round,,,[#include <math.h>])
+AC_LANG_POP()
 
 dnl the following tests are for Unix(like) systems only
 if test "$TOOLKIT" != "MSW"; then
 
 dnl the following tests are for Unix(like) systems only
 if test "$TOOLKIT" != "MSW"; then
@@ -4938,35 +5087,6 @@ WX_CHECK_FUNCS(fdopen)
 
 fi
 
 
 fi
 
-dnl if !MSW
-
-
-dnl ------------------------------------------
-dnl Checks specific to contrib libs (MMedia)
-dnl ------------------------------------------
-
-dnl Check for ESD:
-EXTRALIBS_ESD=
-AC_CHECK_LIB(esd, esd_close, [
-    AC_CHECK_HEADERS([esd.h], [
-    EXTRALIBS_ESD="-lesd"
-  ])
-])
-AC_SUBST(EXTRALIBS_ESD)
-
-dnl check for known CD-ROM interface
-AC_MSG_CHECKING([for known CD-ROM interface])
-AC_TRY_COMPILE([#ifdef __linux__
-                #include <linux/cdrom.h>
-                #else
-                /* For Solaris */
-                #include <sys/cdio.h>
-                #endif
-                ],
-               [struct cdrom_tocentry entry, old_entry;],
-               [AC_MSG_RESULT([yes])
-                AC_DEFINE(HAVE_KNOWN_CDROM_INTERFACE)],
-               [AC_MSG_RESULT([no])])
 
 dnl ===========================================================================
 dnl Now we have all the info we need - use it!
 
 dnl ===========================================================================
 dnl Now we have all the info we need - use it!
@@ -5016,13 +5136,15 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
         dnl with the convention that anything starting with '-' is a cpp flag
         dnl while anything else is a library (i.e. there is an implicit "-l")
         THREAD_OPTS="-pthread"
         dnl with the convention that anything starting with '-' is a cpp flag
         dnl while anything else is a library (i.e. there is an implicit "-l")
         THREAD_OPTS="-pthread"
+        if test "x$SUNCXX" = xyes; then
+            THREAD_OPTS="-mt lthread $THREAD_OPTS"
+        fi
+
         case "${host}" in
           *-*-solaris2* | *-*-sunos4* )
                 if test "x$GCC" = "xyes"; then
                     dnl Solaris/gcc combination use this one for some reason
                     THREAD_OPTS="-pthreads $THREAD_OPTS"
         case "${host}" in
           *-*-solaris2* | *-*-sunos4* )
                 if test "x$GCC" = "xyes"; then
                     dnl Solaris/gcc combination use this one for some reason
                     THREAD_OPTS="-pthreads $THREAD_OPTS"
-                else
-                    THREAD_OPTS="-mt $THREAD_OPTS"
                 fi
                 ;;
           *-*-freebsd*)
                 fi
                 ;;
           *-*-freebsd*)
@@ -5167,6 +5289,10 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
       dnl wouldn't be found by it
       AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup,
       [
       dnl wouldn't be found by it
       AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup,
       [
+        dnl C compiler may treat pthread_cleanup_push() as an undeclared
+        dnl function and not give a warning even if it's unavailable, so use
+        dnl the C++ one for this test
+        AC_LANG_PUSH(C++)
         AC_TRY_COMPILE([#include <pthread.h>
                void ThreadCleanupFunc(void *p);
             ],
         AC_TRY_COMPILE([#include <pthread.h>
                void ThreadCleanupFunc(void *p);
             ],
@@ -5180,12 +5306,13 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
                wx_cv_func_pthread_cleanup=no
             ]
         )
                wx_cv_func_pthread_cleanup=no
             ]
         )
+        AC_LANG_POP()
       ])
       if test "x$wx_cv_func_pthread_cleanup" = "xyes"; then
         AC_DEFINE(wxHAVE_PTHREAD_CLEANUP)
       fi
 
       ])
       if test "x$wx_cv_func_pthread_cleanup" = "xyes"; then
         AC_DEFINE(wxHAVE_PTHREAD_CLEANUP)
       fi
 
-      AC_CHECK_HEADERS(sched.h)
+      AC_CHECK_HEADER(sched.h,,, [AC_INCLUDES_DEFAULT()])
       if test "$ac_cv_header_sched_h" = "yes"; then
           AC_CHECK_FUNC(sched_yield,
             AC_DEFINE(HAVE_SCHED_YIELD),
       if test "$ac_cv_header_sched_h" = "yes"; then
           AC_CHECK_FUNC(sched_yield,
             AC_DEFINE(HAVE_SCHED_YIELD),
@@ -5230,6 +5357,10 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
                     AC_DEFINE(HAVE_PTHREAD_CANCEL),
                     AC_MSG_WARN([wxThread::Kill() will not work properly]))
 
                     AC_DEFINE(HAVE_PTHREAD_CANCEL),
                     AC_MSG_WARN([wxThread::Kill() will not work properly]))
 
+      AC_CHECK_FUNC(pthread_mutex_timedlock,
+                    AC_DEFINE(HAVE_PTHREAD_MUTEX_TIMEDLOCK),
+                    AC_MSG_WARN([wxMutex::LockTimeout() will not work]))
+
       AC_CHECK_FUNC(pthread_attr_setstacksize,
                     AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE))
 
       AC_CHECK_FUNC(pthread_attr_setstacksize,
                     AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE))
 
@@ -5510,14 +5641,14 @@ dnl ---------------------------------------------------------------------------
 dnl compatibility level
 dnl ---------------------------------------------------------------------------
 
 dnl compatibility level
 dnl ---------------------------------------------------------------------------
 
-if test "x$WXWIN_COMPATIBILITY_2_4" = "xyes"; then
-    AC_DEFINE(WXWIN_COMPATIBILITY_2_4)
+if test "x$WXWIN_COMPATIBILITY_2_6" = "xyes"; then
+    AC_DEFINE(WXWIN_COMPATIBILITY_2_6)
 
 
-    WXWIN_COMPATIBILITY_2_6="yes"
+    WXWIN_COMPATIBILITY_2_8="yes"
 fi
 
 fi
 
-if test "x$WXWIN_COMPATIBILITY_2_6" != "xno"; then
-    AC_DEFINE(WXWIN_COMPATIBILITY_2_6)
+if test "x$WXWIN_COMPATIBILITY_2_8" != "xno"; then
+    AC_DEFINE(WXWIN_COMPATIBILITY_2_8)
 fi
 
 dnl ---------------------------------------------------------------------------
 fi
 
 dnl ---------------------------------------------------------------------------
@@ -5658,6 +5789,10 @@ if test "$wxUSE_STL" = "yes"; then
   AC_DEFINE(wxUSE_STL)
 fi
 
   AC_DEFINE(wxUSE_STL)
 fi
 
+if test "$wxUSE_EXTENDED_RTTI" = "yes"; then
+  AC_DEFINE(wxUSE_EXTENDED_RTTI)
+fi
+
 if test "$wxUSE_APPLE_IEEE" = "yes"; then
   AC_DEFINE(wxUSE_APPLE_IEEE)
 fi
 if test "$wxUSE_APPLE_IEEE" = "yes"; then
   AC_DEFINE(wxUSE_APPLE_IEEE)
 fi
@@ -5669,44 +5804,46 @@ fi
 dnl Unix implementation needs additional checks because audio support
 dnl comes in many favours:
 if test "$USE_UNIX" = "1" ; then
 dnl Unix implementation needs additional checks because audio support
 dnl comes in many favours:
 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 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_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_SPEED, 0);
-                    ],
-                    ac_cv_header_sys_soundcard=yes,
-                    [
-                        LIBS="$saveLibs"
-                        ac_cv_header_sys_soundcard=no
-                    ]
-                )
-            ]
-        )
-    ])
+    dnl mmedia doesn't compile with wxMGL, remove this if this is ever fixed
+    if test "$wxUSE_MGL" != 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 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_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_SPEED, 0);
+                        ],
+                        ac_cv_header_sys_soundcard=yes,
+                        [
+                            LIBS="$saveLibs"
+                            ac_cv_header_sys_soundcard=no
+                        ]
+                    )
+                ]
+            )
+        ])
+    fi
 
     if test "$ac_cv_header_sys_soundcard" = "yes"; then
         AC_DEFINE(HAVE_SYS_SOUNDCARD_H)
 
     if test "$ac_cv_header_sys_soundcard" = "yes"; then
         AC_DEFINE(HAVE_SYS_SOUNDCARD_H)
-    else
-        DISABLED_CONTRIB="$DISABLED_CONTRIB mmedia"
     fi
 fi
     fi
 fi
+
 WITH_PLUGIN_SDL=0
 if test "$wxUSE_SOUND" = "yes"; then
   if test "$USE_UNIX" = "1" ; then
 WITH_PLUGIN_SDL=0
 if test "$wxUSE_SOUND" = "yes"; then
   if test "$USE_UNIX" = "1" ; then
@@ -5977,6 +6114,9 @@ if test "$wxUSE_PRINTF_POS_PARAMS" = "yes"; then
   AC_DEFINE(wxUSE_PRINTF_POS_PARAMS)
 fi
 
   AC_DEFINE(wxUSE_PRINTF_POS_PARAMS)
 fi
 
+if test "$wxUSE_OBJC_UNIQUIFYING" = "yes"; then
+  AC_DEFINE(wxUSE_OBJC_UNIQUIFYING)
+fi
 
 dnl ---------------------------------------------------------------------------
 dnl time/date functions
 
 dnl ---------------------------------------------------------------------------
 dnl time/date functions
@@ -5984,8 +6124,7 @@ dnl ---------------------------------------------------------------------------
 
 if test "$wxUSE_DATETIME" = "yes"; then
     dnl check for strptime and for its declaration as some systems lack it
 
 if test "$wxUSE_DATETIME" = "yes"; then
     dnl check for strptime and for its declaration as some systems lack it
-    dnl FIXME: use WX_CHECK_FUNCS instead
-    AC_CHECK_FUNCS(strptime)
+    AC_CHECK_FUNC(strptime)
     if test "$ac_cv_func_strptime" = "yes"; then
         AC_CACHE_CHECK([for strptime declaration], wx_cv_func_strptime_decl,
             [
     if test "$ac_cv_func_strptime" = "yes"; then
         AC_CACHE_CHECK([for strptime declaration], wx_cv_func_strptime_decl,
             [
@@ -6007,6 +6146,40 @@ if test "$wxUSE_DATETIME" = "yes"; then
     fi
     if test "$wx_cv_func_strptime_decl" = "yes"; then
         AC_DEFINE(HAVE_STRPTIME_DECL)
     fi
     if test "$wx_cv_func_strptime_decl" = "yes"; then
         AC_DEFINE(HAVE_STRPTIME_DECL)
+    else
+        wx_strptime_decl="extern char *strptime(const char *, const char *, struct tm *);"
+    fi
+    if test "$ac_cv_func_strptime" = "yes"; then
+        dnl strptime() behaviour doesn't conform to POSIX under Mac OS X <
+        dnl 10.5 and possibly other BSD variants, check that strptime() we
+        dnl have fails to parse format when the string doesn't match it instea
+        dnl of just stopping immediately and returning non-NULL
+        AC_CACHE_CHECK([whether strptime() fails on invalid strings],
+            wx_cv_func_strptime_ok,
+            [AC_RUN_IFELSE(
+                [
+                    #include <stdlib.h>
+                    #include <time.h>
+                    #include "confdefs.h"
+
+                    $wx_strptime_decl
+
+                    int main()
+                    {
+                        struct tm t;
+                        return !!strptime("", "%x", &t);
+                    }
+                ],
+                wx_cv_func_strptime_ok=yes,
+                wx_cv_func_strptime_ok=no,
+                dnl be pessimistic when cross-compiling
+                wx_cv_func_strptime_ok=no
+            )]
+        )
+
+        if test "$wx_cv_func_strptime_ok" = "yes"; then
+            AC_DEFINE(HAVE_STRPTIME)
+        fi
     fi
 
     dnl check for timezone variable
     fi
 
     dnl check for timezone variable
@@ -6248,6 +6421,12 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
         AC_CACHE_CHECK([what is the type of the fifth argument of getsockopt],
                        wx_cv_type_getsockopt5,
             [
         AC_CACHE_CHECK([what is the type of the fifth argument of getsockopt],
                        wx_cv_type_getsockopt5,
             [
+                dnl Note that the rules for compatibility of pointers
+                dnl are somewhat different between C and C++, so code 
+                dnl that fails in C++ may not even give a warning about
+                dnl converting between incompatible pointer types in C.
+                dnl So this test needs to be done in C++ mode.
+                AC_LANG_PUSH(C++)
                 AC_TRY_COMPILE(
                     [
                         #include <sys/types.h>
                 AC_TRY_COMPILE(
                     [
                         #include <sys/types.h>
@@ -6259,12 +6438,6 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
                     ],
                     wx_cv_type_getsockopt5=socklen_t,
                     [
                     ],
                     wx_cv_type_getsockopt5=socklen_t,
                     [
-                        dnl Note that the rules for compatibility of pointers
-                        dnl are somewhat different between C and C++, so code 
-                        dnl that fails in C++ may not even give a warning about
-                        dnl converting between incompatible pointer types in C.
-                        dnl So this test needs to be done in C++ mode.
-                        AC_LANG_PUSH(C++)
                         AC_TRY_COMPILE(
                             [
                                 #include <sys/types.h>
                         AC_TRY_COMPILE(
                             [
                                 #include <sys/types.h>
@@ -6288,9 +6461,9 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
                                 wx_cv_type_getsockopt5=unknown
                             )
                         )
                                 wx_cv_type_getsockopt5=unknown
                             )
                         )
-                        AC_LANG_POP()
                     ]
                 )
                     ]
                 )
+                AC_LANG_POP()
             ])
 
         if test "$wx_cv_type_getsockopt5" = "unknown"; then
             ])
 
         if test "$wx_cv_type_getsockopt5" = "unknown"; then
@@ -6382,7 +6555,13 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then
     else
         dnl wxJoystick not supported by wxMGL at all
         if test "$wxUSE_MGL" != "1"; then
     else
         dnl wxJoystick not supported by wxMGL at all
         if test "$wxUSE_MGL" != "1"; then
-            AC_CHECK_HEADERS(linux/joystick.h, wxUSE_JOYSTICK=yes)
+            dnl notice the dummy includes argument: without it, AC_CHECK_HEADER
+            dnl checks only whether the header can be preprocessed, not that it
+            dnl can be compiled and in Linux 2.6.16 joystick.h is present but
+            dnl can't be compiled because of an error and with the default
+            dnl AC_CHECK_HEADER semantics we'd still detect it in this case and
+            dnl build would fail later
+            AC_CHECK_HEADER(linux/joystick.h, [wxUSE_JOYSTICK=yes],, [AC_INCLUDES_DEFAULT()])
         fi
     fi
 
         fi
     fi
 
@@ -6423,6 +6602,14 @@ if test "$wxUSE_UNICODE" = "yes" ; then
     fi
 fi
 
     fi
 fi
 
+if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_UTF8" = "yes"; then
+    AC_DEFINE(wxUSE_UNICODE_UTF8)
+
+    if test "$wxUSE_UNICODE_UTF8_LOCALE" = "yes"; then
+        AC_DEFINE(wxUSE_UTF8_LOCALE_ONLY)
+    fi
+fi
+
 if test "$wxUSE_wxUSE_EXPERIMENTAL_PRINTF" = "yes"; then
   AC_DEFINE(wxUSE_EXPERIMENTAL_PRINTF)
 fi
 if test "$wxUSE_wxUSE_EXPERIMENTAL_PRINTF" = "yes"; then
   AC_DEFINE(wxUSE_EXPERIMENTAL_PRINTF)
 fi
@@ -6494,9 +6681,6 @@ if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
 fi
 
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
 fi
 
-if test "$wxUSE_PROLOGIO" = "yes" -o  "$wxUSE_RESOURCES" = "yes"; then
-    AC_MSG_ERROR([wxExpr and old-style resources are now available in contrib only])
-fi
 
 dnl ---------------------------------------------------------------------------
 dnl wxMetafile availability
 
 dnl ---------------------------------------------------------------------------
 dnl wxMetafile availability
@@ -6519,7 +6703,7 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
                           -o "$wxUSE_CLIPBOARD"     = "yes" \
                           -o "$wxUSE_OLE"     = "yes" \
                           -o "$wxUSE_DRAG_AND_DROP" = "yes" \) ; then
                           -o "$wxUSE_CLIPBOARD"     = "yes" \
                           -o "$wxUSE_OLE"     = "yes" \
                           -o "$wxUSE_DRAG_AND_DROP" = "yes" \) ; then
-    AC_CHECK_HEADERS(ole2.h)
+    AC_CHECK_HEADER(ole2.h,,, [ ])
 
     if test "$ac_cv_header_ole2_h" = "yes" ; then
         if test "$GCC" = yes ; then
 
     if test "$ac_cv_header_ole2_h" = "yes" ; then
         if test "$GCC" = yes ; then
@@ -6534,7 +6718,7 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
             if test "$wxUSE_OLE" = "yes" ; then
                 AC_DEFINE(wxUSE_OLE)
                 AC_DEFINE(wxUSE_OLE_AUTOMATION)
             if test "$wxUSE_OLE" = "yes" ; then
                 AC_DEFINE(wxUSE_OLE)
                 AC_DEFINE(wxUSE_OLE_AUTOMATION)
-                AC_DEFINE(wxUSE_OLE_ACTIVEX)
+                AC_DEFINE(wxUSE_ACTIVEX)
                 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
             fi
         fi
                 SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
             fi
         fi
@@ -6573,8 +6757,8 @@ if test "$wxUSE_IPC" = "yes"; then
 fi
 
 if test "$wxUSE_DATAOBJ" = "yes"; then
 fi
 
 if test "$wxUSE_DATAOBJ" = "yes"; then
-    if test "$wxUSE_MGL" = 1; then
-        AC_MSG_WARN([wxDataObject not yet supported under MGL... disabled])
+    if test "$wxUSE_MGL" = 1 -o "$wxUSE_DFB" = 1; then
+        AC_MSG_WARN([wxDataObject not yet supported under $TOOLKIT... disabled])
         wxUSE_DATAOBJ=no
     else
         AC_DEFINE(wxUSE_DATAOBJ)
         wxUSE_DATAOBJ=no
     else
         AC_DEFINE(wxUSE_DATAOBJ)
@@ -6586,8 +6770,8 @@ else
 fi
 
 if test "$wxUSE_CLIPBOARD" = "yes"; then
 fi
 
 if test "$wxUSE_CLIPBOARD" = "yes"; then
-    if test "$wxUSE_MGL" = 1; then
-        AC_MSG_WARN([Clipboard not yet supported under MGL... disabled])
+    if test "$wxUSE_MGL" = 1 -o "$wxUSE_DFB" = 1; then
+        AC_MSG_WARN([Clipboard not yet supported under $TOOLKIT... disabled])
         wxUSE_CLIPBOARD=no
     fi
 
         wxUSE_CLIPBOARD=no
     fi
 
@@ -6604,18 +6788,9 @@ if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
         fi
     fi
 
         fi
     fi
 
-    if test "$wxUSE_MOTIF" = 1; then
-        AC_MSG_WARN([Drag and drop not yet supported under Motif... disabled])
-        wxUSE_DRAG_AND_DROP=no
-    fi
-
-    if test "$wxUSE_X11" = 1; then
-        AC_MSG_WARN([Drag and drop not yet supported under X11... disabled])
-        wxUSE_DRAG_AND_DROP=no
-    fi
-
-    if test "$wxUSE_MGL" = 1; then
-        AC_MSG_WARN([Drag and drop not yet supported under MGL... disabled])
+    if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_X11" = 1 -o "$wxUSE_MGL" = 1 -o \
+            "$wxUSE_DFB" = 1; then
+        AC_MSG_WARN([Drag and drop not yet supported under $TOOLKIT... disabled])
         wxUSE_DRAG_AND_DROP=no
     fi
 
         wxUSE_DRAG_AND_DROP=no
     fi
 
@@ -6742,8 +6917,13 @@ if test "$wxUSE_FONTPICKERCTRL" = "yes"; then
 fi
 
 if test "$wxUSE_DISPLAY" = "yes"; then
 fi
 
 if test "$wxUSE_DISPLAY" = "yes"; then
-    AC_DEFINE(wxUSE_DISPLAY)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display multimon"
+    if test "$wxUSE_DFB" = 1 -o "$wxUSE_MGL" = 1; then
+        AC_MSG_WARN([wxDisplay not yet supported under $TOOLKIT... disabled])
+        wxUSE_DISPLAY=no
+    else
+        AC_DEFINE(wxUSE_DISPLAY)
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display multimon"
+    fi
 fi
 
 if test "$wxUSE_DETECT_SM" = "yes"; then
 fi
 
 if test "$wxUSE_DETECT_SM" = "yes"; then
@@ -6802,6 +6982,12 @@ if test "$wxUSE_LISTCTRL" = "yes"; then
     fi
 fi
 
     fi
 fi
 
+if test "$wxUSE_EDITABLELISTBOX" = "yes"; then
+    AC_DEFINE(wxUSE_EDITABLELISTBOX)
+    USES_CONTROLS=1
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS editlbox"
+fi
+
 if test "$wxUSE_NOTEBOOK" = "yes"; then
     AC_DEFINE(wxUSE_NOTEBOOK)
     USES_CONTROLS=1
 if test "$wxUSE_NOTEBOOK" = "yes"; then
     AC_DEFINE(wxUSE_NOTEBOOK)
     USES_CONTROLS=1
@@ -6841,6 +7027,11 @@ if test "$wxUSE_SCROLLBAR" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS scroll scrollsub"
 fi
 
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS scroll scrollsub"
 fi
 
+if test "$wxUSE_SEARCHCTRL" = "yes"; then
+    AC_DEFINE(wxUSE_SEARCHCTRL)
+    USES_CONTROLS=1
+fi
+
 if test "$wxUSE_SLIDER" = "yes"; then
     AC_DEFINE(wxUSE_SLIDER)
     USES_CONTROLS=1
 if test "$wxUSE_SLIDER" = "yes"; then
     AC_DEFINE(wxUSE_SLIDER)
     USES_CONTROLS=1
@@ -7044,7 +7235,10 @@ if test "$wxUSE_WEBKIT" = "yes"; then
                            AC_MSG_WARN([WebKit headers not found; disabling wxWebKit])
                            wxUSE_WEBKIT=no
                         ],
                            AC_MSG_WARN([WebKit headers not found; disabling wxWebKit])
                            wxUSE_WEBKIT=no
                         ],
-                        [#include <Carbon/Carbon.h>])
+                        [
+                           #include <Carbon/Carbon.h>
+                           #include <WebKit/WebKit.h>
+                        ])
         CPPFLAGS="$old_CPPFLAGS"
     elif test "$wxUSE_COCOA" = 1; then
         AC_DEFINE(wxUSE_WEBKIT)
         CPPFLAGS="$old_CPPFLAGS"
     elif test "$wxUSE_COCOA" = 1; then
         AC_DEFINE(wxUSE_WEBKIT)
@@ -7072,6 +7266,13 @@ if test "$wxUSE_AUI" = "yes"; then
    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui"
 fi
 
    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui"
 fi
 
+USE_STC=0
+if test "$wxUSE_STC" = "yes"; then
+   AC_DEFINE(wxUSE_STC)
+   USE_STC=1
+   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS stc"
+fi
+
 if test "$wxUSE_MENUS" = "yes"; then
     AC_DEFINE(wxUSE_MENUS)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
 if test "$wxUSE_MENUS" = "yes"; then
     AC_DEFINE(wxUSE_MENUS)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
@@ -7105,7 +7306,12 @@ if test "$wxUSE_VALIDATORS" = "yes"; then
 fi
 
 if test "$wxUSE_PALETTE" = "yes" ; then
 fi
 
 if test "$wxUSE_PALETTE" = "yes" ; then
-  AC_DEFINE(wxUSE_PALETTE)
+    if test "$wxUSE_DFB" = 1; then
+        AC_MSG_WARN([wxPalette not yet supported under DFB... disabled])
+        wxUSE_PALETTE=no
+    else
+        AC_DEFINE(wxUSE_PALETTE)
+    fi
 fi
 
 if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then
 fi
 
 if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then
@@ -7304,16 +7510,6 @@ if test "$wxUSE_MEDIACTRL" = "yes"; then
 
 
         if test "$wxUSE_GSTREAMER" = "yes"; then
 
 
         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"
 
             CPPFLAGS="$GST_CFLAGS $CPPFLAGS"
             LIBS="$GST_LIBS $LIBS"
 
@@ -7383,6 +7579,9 @@ fi
 if test "$wxUSE_AUI" = "yes" ; then
     CORE_GUI_LIBS="aui $CORE_GUI_LIBS"
 fi
 if test "$wxUSE_AUI" = "yes" ; then
     CORE_GUI_LIBS="aui $CORE_GUI_LIBS"
 fi
+if test "$wxUSE_STC" = "yes" ; then
+    CORE_GUI_LIBS="stc $CORE_GUI_LIBS"
+fi
 
 if test "$wxUSE_GUI" != "yes"; then
     CORE_GUI_LIBS=""
 
 if test "$wxUSE_GUI" != "yes"; then
     CORE_GUI_LIBS=""
@@ -7432,7 +7631,7 @@ if test "$wxUSE_GUI" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs drawing \
                      dynamic erase event exec font image minimal mobile \
                      mobile/wxedit mobile/styles propsize render \
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs drawing \
                      dynamic erase event exec font image minimal mobile \
                      mobile/wxedit mobile/styles propsize render \
-                     rotate shaped vscroll widgets"
+                     rotate shaped svg taborder vscroll widgets"
 
     if test "$wxUSE_MONOLITHIC" != "yes"; then
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"
 
     if test "$wxUSE_MONOLITHIC" != "yes"; then
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"
@@ -7509,7 +7708,7 @@ CPPFLAGS=`echo $WXCONFIG_CPPFLAGS \
 
 C_AND_CXX_FLAGS="$DEBUG_CFLAGS $PROFILE_FLAGS $OPTIMISE_CFLAGS"
 CFLAGS=`echo $WXCONFIG_CFLAGS $CWARNINGS $C_AND_CXX_FLAGS $CFLAGS `
 
 C_AND_CXX_FLAGS="$DEBUG_CFLAGS $PROFILE_FLAGS $OPTIMISE_CFLAGS"
 CFLAGS=`echo $WXCONFIG_CFLAGS $CWARNINGS $C_AND_CXX_FLAGS $CFLAGS `
-CXXFLAGS=`echo $WXCONFIG_CXXFLAGS $CXXWARNINGS $C_AND_CXX_FLAGS $CXXFLAGS `
+CXXFLAGS=`echo $WXCONFIG_CXXFLAGS $C_AND_CXX_FLAGS $CXXFLAGS `
 
 dnl now that we added WXCONFIG_CPPFLAGS to CPPFLAGS we can add the wx-config
 dnl only stuff to it
 
 dnl now that we added WXCONFIG_CPPFLAGS to CPPFLAGS we can add the wx-config
 dnl only stuff to it
@@ -7537,6 +7736,7 @@ EXTRALIBS="$LDFLAGS $LDFLAGS_VERSIONING $LIBS $DMALLOC_LIBS"
 EXTRALIBS_XML="$EXPAT_LINK"
 EXTRALIBS_HTML="$MSPACK_LINK"
 EXTRALIBS_ODBC="$ODBC_LINK"
 EXTRALIBS_XML="$EXPAT_LINK"
 EXTRALIBS_HTML="$MSPACK_LINK"
 EXTRALIBS_ODBC="$ODBC_LINK"
+EXTRALIBS_STC="-lwxscintilla${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX}"
 if test "$wxUSE_GUI" = "yes"; then
     EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_HILDON $EXTRALIBS_GNOMEVFS $EXTRALIBS_GNOMEPRINT`
 fi
 if test "$wxUSE_GUI" = "yes"; then
     EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_HILDON $EXTRALIBS_GNOMEVFS $EXTRALIBS_GNOMEPRINT`
 fi
@@ -7640,6 +7840,7 @@ AC_SUBST(WXUNIV)
 AC_SUBST(MONOLITHIC)
 AC_SUBST(USE_PLUGINS)
 AC_SUBST(LIBS)
 AC_SUBST(MONOLITHIC)
 AC_SUBST(USE_PLUGINS)
 AC_SUBST(LIBS)
+AC_SUBST(CXXWARNINGS)
 AC_SUBST(EXTRALIBS)
 AC_SUBST(EXTRALIBS_XML)
 AC_SUBST(EXTRALIBS_HTML)
 AC_SUBST(EXTRALIBS)
 AC_SUBST(EXTRALIBS_XML)
 AC_SUBST(EXTRALIBS_HTML)
@@ -7842,6 +8043,38 @@ fi
 dnl TOOLCHAIN_DEFS should be used for both wx and client code
 WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS $TOOLCHAIN_DEFS"
 
 dnl TOOLCHAIN_DEFS should be used for both wx and client code
 WXCONFIG_CPPFLAGS="$WXCONFIG_CPPFLAGS $TOOLCHAIN_DEFS"
 
+
+dnl Sun cc is compatible with gcc and so either of them can use the C
+dnl libraries built with the other, i.e. gcc can be used to build wxGTK under
+dnl Solaris where GTK+ is compiled using cc and cc can be used under Linux
+dnl where GTK+ is built with gcc
+dnl
+dnl However the compiler options are not compatible at all and in particular
+dnl gcc doesn't like cc -mt option and cc doesn't like -pthread. We simply
+dnl filter them out as we already have the correct options for multithreaded
+dnl programs if we're using threads (and if we don't, it shouldn't matter)
+case "${host}" in
+    *-*-solaris2* )
+        dnl system packages are compiled with Sun CC and so pkg-config outputs
+        dnl CC-specific "-mt" flag, remove it when using gcc
+        if "$GCC" = yes; then
+            CPPFLAGS=`echo $CPPFLAGS | sed 's/-mt//'`
+            LIBS=`echo $LIBS | sed 's/-mt//'`
+            EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-mt//'`
+        fi
+        ;;
+
+    *-*-linux* )
+        dnl OTOH when using Sun CC under Linux, the flags contain gcc-specific
+        dnl -pthreads which Sun CC doesn't know about
+        if test "x$SUNCXX" = xyes; then
+            CPPFLAGS=`echo $CPPFLAGS | sed 's/-pthread//'`
+            LIBS=`echo $LIBS | sed 's/-pthread//'`
+            EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-pthread//'`
+        fi
+        ;;
+esac
+
 dnl for convenience, sort the samples in alphabetical order
 dnl
 dnl FIXME For some mysterious reasons, sometimes the directories are duplicated
 dnl for convenience, sort the samples in alphabetical order
 dnl
 dnl FIXME For some mysterious reasons, sometimes the directories are duplicated
@@ -7986,23 +8219,18 @@ dnl resembles an installed wx in prefix=$builddir.  It is troublesome
 dnl though in this form because AC_CONFIG_LINKS will fail for directories
 dnl on platforms that do not have symlinks.
 dnl AC_CONFIG_LINKS([ include/wx-$WX_RELEASE$WX_FLAVOUR:include ])
 dnl though in this form because AC_CONFIG_LINKS will fail for directories
 dnl on platforms that do not have symlinks.
 dnl AC_CONFIG_LINKS([ include/wx-$WX_RELEASE$WX_FLAVOUR:include ])
-dnl AC_CONFIG_LINKS([ contrib/include ])
 
 if test "$wxWITH_SUBDIRS" != "no"; then
 
 if test "$wxWITH_SUBDIRS" != "no"; then
-dnl Configure samples, contrib etc. directories, but only if they are present:
+dnl Configure samples, demos etc. directories, but only if they are present:
 if test "$wxUSE_GUI" = "yes"; then
 if test "$wxUSE_GUI" = "yes"; then
-    SUBDIRS="samples demos utils contrib"
+    SUBDIRS="samples demos utils"
 else dnl we build wxBase only
 else dnl we build wxBase only
-    dnl there are no wxBase programs in contrib nor demos
+    dnl there are no wxBase programs in demos
     SUBDIRS="samples utils"
 fi
 dnl Add tests to the list of subdirs if cppunit 1.8.0+ is detected
 AM_PATH_CPPUNIT(1.8.0, [SUBDIRS="$SUBDIRS tests"])
 
     SUBDIRS="samples utils"
 fi
 dnl Add tests to the list of subdirs if cppunit 1.8.0+ is detected
 AM_PATH_CPPUNIT(1.8.0, [SUBDIRS="$SUBDIRS tests"])
 
-if test "$USE_UNIX" != "1" -a "$USE_WIN32" != "1"; then
-    DISABLED_CONTRIB="$DISABLED_CONTRIB net"
-fi
-
 for subdir in `echo $SUBDIRS`; do
     if test -d ${srcdir}/${subdir} ; then
         if test "$wxUSE_GUI" = "yes"; then
 for subdir in `echo $SUBDIRS`; do
     if test -d ${srcdir}/${subdir} ; then
         if test "$wxUSE_GUI" = "yes"; then
@@ -8018,11 +8246,11 @@ for subdir in `echo $SUBDIRS`; do
             else
                 dnl assume that everything compiles for utils &c
                 dnl any that shouldn't be built can be added to
             else
                 dnl assume that everything compiles for utils &c
                 dnl any that shouldn't be built can be added to
-                dnl DISABLED_UTILS, DISABLED_CONTRIB or DISABLED_DEMOS
+                dnl DISABLED_UTILS, DISABLED_DEMOS
                 disabled_var=DISABLED_`echo $subdir | tr [[a-z]] [[A-Z]]`;
                 eval "disabled=\$$disabled_var"
                 disabled=/`echo X $disabled | sed 's@ @/|/@g'`/
                 disabled_var=DISABLED_`echo $subdir | tr [[a-z]] [[A-Z]]`;
                 eval "disabled=\$$disabled_var"
                 disabled=/`echo X $disabled | sed 's@ @/|/@g'`/
-                makefiles=`(cd $srcdir ; find $subdir -name Makefile.in) | egrep -v "$disabled"`
+                makefiles=`(cd $srcdir ; find $subdir -name Makefile.in) | $EGREP -v "$disabled"`
             fi
         else dnl we build wxBase only
             dnl don't take all samples/utils, just those which build with
             fi
         else dnl we build wxBase only
             dnl don't take all samples/utils, just those which build with
@@ -8062,11 +8290,20 @@ echo "  Should wxWidgets be compiled into single library?       ${wxUSE_MONOLITH
 
 echo "  Should wxWidgets be compiled in debug mode?             ${wxUSE_DEBUG:-no}"
 echo "  Should wxWidgets be linked as a shared library?         ${wxUSE_SHARED:-no}"
 
 echo "  Should wxWidgets be compiled in debug mode?             ${wxUSE_DEBUG:-no}"
 echo "  Should wxWidgets be linked as a shared library?         ${wxUSE_SHARED:-no}"
-echo "  Should wxWidgets be compiled in Unicode mode?           ${wxUSE_UNICODE:-no}"
+echo -n "  Should wxWidgets support Unicode?                       ${wxUSE_UNICODE:-no}"
+if test "$wxUSE_UNICODE" = "yes"; then
+    if test "$wxUSE_UNICODE_UTF8" = "yes"; then
+        echo " (using UTF-8)"
+    else
+        echo " (using wchar_t)"
+    fi
+else
+    echo
+fi
 
 echo "  What level of wxWidgets compatibility should be enabled?"
 
 echo "  What level of wxWidgets compatibility should be enabled?"
-echo "                                       wxWidgets 2.4      ${WXWIN_COMPATIBILITY_2_4:-no}"
-echo "                                       wxWidgets 2.6      ${WXWIN_COMPATIBILITY_2_6:-yes}"
+echo "                                       wxWidgets 2.6      ${WXWIN_COMPATIBILITY_2_6:-no}"
+echo "                                       wxWidgets 2.8      ${WXWIN_COMPATIBILITY_2_8:-yes}"
 
 echo "  Which libraries should wxWidgets use?"
 echo "                                       jpeg               ${wxUSE_LIBJPEG-none}"
 
 echo "  Which libraries should wxWidgets use?"
 echo "                                       jpeg               ${wxUSE_LIBJPEG-none}"