]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Fix for compilation under GTK+ 2.0
[wxWidgets.git] / configure.in
index 1c445a06e22f33fdb68587d9ff206cd66df93d76..0b43af54ec0b531d47c880c73b8516f99666ac34 100644 (file)
@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-AC_INIT([wxWindows], [2.5.0], [wx-dev@lists.wxwindows.org])
+AC_INIT([wxWindows], [2.5.1], [wx-dev@lists.wxwindows.org])
 
 dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
 AC_CONFIG_SRCDIR([wx-config.in])
@@ -55,14 +55,14 @@ dnl   libwx_$(TOOLKIT)-$(WX_RELEASE).so.$(WX_CURRENT).$(WX_REVISION).$(WX_AGE)
 
 WX_MAJOR_VERSION_NUMBER=2
 WX_MINOR_VERSION_NUMBER=5
-WX_RELEASE_NUMBER=0
+WX_RELEASE_NUMBER=1
 
 WX_VERSION=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER.$WX_RELEASE_NUMBER
 WX_RELEASE=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER
 
 WX_MSW_VERSION=$WX_MAJOR_VERSION_NUMBER$WX_MINOR_VERSION_NUMBER$WX_RELEASE_NUMBER
 
-WX_CURRENT=0
+WX_CURRENT=1
 WX_REVISION=0
 WX_AGE=0
 
@@ -73,6 +73,7 @@ dnl ------------------------------------------------------------------------
 
 dnl OS (assume Unix)
 USE_UNIX=1
+USE_OS2=0
 USE_WIN32=0
 USE_DOS=0
 USE_BEOS=0
@@ -288,8 +289,35 @@ case "${host}" in
 
   *-pc-os2_emx | *-pc-os2-emx )
     AC_DEFINE(__EMX__)
+    USE_OS2=1
+    AC_DEFINE(__OS2__)
     PROGRAM_EXT=".exe"
     DEFAULT_DEFAULT_wxUSE_PM=1
+    dnl "c++" wrapper is not always available, so always use plain gcc.
+    CXX=gcc
+    LDFLAGS="$LDFLAGS -Zcrtdll -Zsysv-signals"
+    dnl
+    dnl Some special code that's automatically added by autoconf-2.57 for OS/2
+    dnl and hopefully also by autoconf-2.58 and newer on all other platforms.
+    dnl For now however, we still need it to make sure the configure script
+    dnl works on OS/2 no matter what platform it is generated on.
+    ac_executable_extensions=".exe"
+    export ac_executable_extensions
+    dnl This strange code is necessary to deal with handling of
+    dnl backslashes by ksh and pdksh's sh variant.
+    ac_save_IFS="$IFS"
+    IFS='\\'
+    ac_TEMP_PATH=
+    for ac_dir in $PATH; do
+      IFS=$ac_save_IFS
+      if test -z "$ac_TEMP_PATH"; then
+        ac_TEMP_PATH="$ac_dir"
+      else
+        ac_TEMP_PATH="$ac_TEMP_PATH/$ac_dir"
+      fi
+    done
+    export PATH="$ac_TEMP_PATH"
+    unset ac_TEMP_PATH
   ;;
 
   powerpc-*-darwin* )
@@ -352,6 +380,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_DMALLOC=no
   DEFAULT_wxUSE_APPLE_IEEE=no
 
+  DEFAULT_wxUSE_EXCEPTIONS=no
   DEFAULT_wxUSE_LOG=yes
   DEFAULT_wxUSE_LOGWINDOW=no
   DEFAULT_wxUSE_LOGGUI=no
@@ -367,6 +396,9 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_LIBPNG=no
   DEFAULT_wxUSE_LIBJPEG=no
   DEFAULT_wxUSE_LIBTIFF=no
+  DEFAULT_wxUSE_LIBXPM=no
+  DEFAULT_wxUSE_LIBMSPACK=no
+  DEFAULT_wxUSE_LIBSDL=no
   DEFAULT_wxUSE_ODBC=no
   DEFAULT_wxUSE_OPENGL=no
 
@@ -381,7 +413,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_FFILE=no
   DEFAULT_wxUSE_TEXTBUFFER=no
   DEFAULT_wxUSE_TEXTFILE=no
-  DEFAULT_wxUSE_WAVE=no
+  DEFAULT_wxUSE_SOUND=no
   DEFAULT_wxUSE_INTL=no
   DEFAULT_wxUSE_CONFIG=no
   DEFAULT_wxUSE_FONTMAP=no
@@ -449,6 +481,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_FS_ZIP=no
   DEFAULT_wxUSE_BUSYINFO=no
   DEFAULT_wxUSE_ZIPSTREAM=no
+  DEFAULT_wxUSE_GZSTREAM=no
   DEFAULT_wxUSE_VALIDATORS=no
 
   DEFAULT_wxUSE_ACCEL=no
@@ -464,6 +497,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_GRID=no
   DEFAULT_wxUSE_IMAGLIST=no
+  DEFAULT_wxUSE_LISTBOOK=no
   DEFAULT_wxUSE_LISTBOX=no
   DEFAULT_wxUSE_LISTCTRL=no
   DEFAULT_wxUSE_NOTEBOOK=no
@@ -505,6 +539,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_ACCESSIBILITY=no
   
   DEFAULT_wxUSE_MONOLITHIC=no
+  DEFAULT_wxUSE_PLUGINS=no
   DEFAULT_wxUSE_OFFICIAL_BUILD=no
 else
   DEFAULT_wxUSE_UNIVERSAL=no
@@ -529,6 +564,7 @@ else
   DEFAULT_wxUSE_DMALLOC=no
   DEFAULT_wxUSE_APPLE_IEEE=yes
 
+  DEFAULT_wxUSE_EXCEPTIONS=yes
   DEFAULT_wxUSE_LOG=yes
   DEFAULT_wxUSE_LOGWINDOW=yes
   DEFAULT_wxUSE_LOGGUI=yes
@@ -543,6 +579,9 @@ else
   DEFAULT_wxUSE_LIBPNG=yes
   DEFAULT_wxUSE_LIBJPEG=yes
   DEFAULT_wxUSE_LIBTIFF=yes
+  DEFAULT_wxUSE_LIBXPM=yes
+  DEFAULT_wxUSE_LIBMSPACK=yes
+  DEFAULT_wxUSE_LIBSDL=no
   DEFAULT_wxUSE_ODBC=no
   DEFAULT_wxUSE_OPENGL=no
 
@@ -557,7 +596,7 @@ else
   DEFAULT_wxUSE_FFILE=yes
   DEFAULT_wxUSE_TEXTBUFFER=yes
   DEFAULT_wxUSE_TEXTFILE=yes
-  DEFAULT_wxUSE_WAVE=no
+  DEFAULT_wxUSE_SOUND=yes
   DEFAULT_wxUSE_INTL=yes
   DEFAULT_wxUSE_CONFIG=yes
   DEFAULT_wxUSE_FONTMAP=yes
@@ -625,6 +664,7 @@ else
   DEFAULT_wxUSE_FS_ZIP=yes
   DEFAULT_wxUSE_BUSYINFO=yes
   DEFAULT_wxUSE_ZIPSTREAM=yes
+  DEFAULT_wxUSE_GZSTREAM=yes
   DEFAULT_wxUSE_VALIDATORS=yes
 
   DEFAULT_wxUSE_ACCEL=yes
@@ -640,6 +680,7 @@ else
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
   DEFAULT_wxUSE_IMAGLIST=yes
+  DEFAULT_wxUSE_LISTBOOK=yes
   DEFAULT_wxUSE_LISTBOX=yes
   DEFAULT_wxUSE_LISTCTRL=yes
   DEFAULT_wxUSE_NOTEBOOK=yes
@@ -681,6 +722,7 @@ else
   DEFAULT_wxUSE_ACCESSIBILITY=no
   
   DEFAULT_wxUSE_MONOLITHIC=no
+  DEFAULT_wxUSE_PLUGINS=no
   DEFAULT_wxUSE_OFFICIAL_BUILD=no
 fi
 
@@ -712,7 +754,8 @@ dnl     doing
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_ENABLE(gui,         [  --enable-gui            use GUI classes], wxUSE_GUI)
-WX_ARG_ENABLE(monolithic,  [  --disable-monolithic    don't build wxWindows as single library], wxUSE_MONOLITHIC)
+WX_ARG_ENABLE(monolithic,  [  --enable-monolithic     build wxWindows as single library], wxUSE_MONOLITHIC)
+WX_ARG_ENABLE(plugins,     [  --enable-plugins        build parts of wxWindows as loadable components], wxUSE_PLUGINS)
 
 if test "$wxUSE_GUI" = "yes"; then
 
@@ -734,6 +777,9 @@ WX_ARG_ENABLE(gtk2,        [  --enable-gtk2           use GTK+ 2.0 if available
 WX_ARG_SYS_WITH(libpng,    [  --with-libpng           use libpng (PNG image format)], wxUSE_LIBPNG)
 WX_ARG_SYS_WITH(libjpeg,   [  --with-libjpeg          use libjpeg (JPEG file format)], wxUSE_LIBJPEG)
 WX_ARG_SYS_WITH(libtiff,   [  --with-libtiff          use libtiff (TIFF file format)], wxUSE_LIBTIFF)
+WX_ARG_SYS_WITH(libxpm,    [  --with-libxpm           use libxpm (XPM file format)], wxUSE_LIBXPM)
+WX_ARG_WITH(libmspack,     [  --with-libmspack        use libmspack (CHM help files loading)], wxUSE_LIBMSPACK)
+WX_ARG_WITH(sdl,           [  --with-sdl              use SDL for audio on Unix], wxUSE_LIBSDL)
 WX_ARG_WITH(opengl,        [  --with-opengl           use OpenGL (or Mesa)], wxUSE_OPENGL)
 
 fi
@@ -775,7 +821,6 @@ WX_ARG_ENABLE(no_exceptions, [  --enable-no_exceptions  create code without C++
 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(compat20,      [  --enable-compat20       enable wxWindows 2.0 compatibility], WXWIN_COMPATIBILITY_2)
 WX_ARG_ENABLE(compat22,      [  --enable-compat22       enable wxWindows 2.2 compatibility], WXWIN_COMPATIBILITY_2_2)
 WX_ARG_ENABLE(compat24,      [  --disable-compat24      disable wxWindows 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, disable)
 
@@ -798,44 +843,44 @@ WX_ARG_ENABLE(ftp,           [  --enable-ftp            use wxFTP (requires wxPr
 WX_ARG_ENABLE(http,          [  --enable-http           use wxHTTP (requires wxProtocol], wxUSE_PROTOCOL_HTTP)
 WX_ARG_ENABLE(fileproto,     [  --enable-fileproto      use wxFileProto class (requires wxProtocol], wxUSE_PROTOCOL_FILE)
 WX_ARG_ENABLE(sockets,       [  --enable-sockets        use socket/network classes], wxUSE_SOCKETS)
-WX_ARG_ENABLE(ole,           [  --enable-ole            use OLE classes], wxUSE_OLE)
+WX_ARG_ENABLE(ole,           [  --enable-ole            use OLE classes (Win32 only)], wxUSE_OLE)
 WX_ARG_ENABLE(dataobj,       [  --enable-dataobj        use data object classes], wxUSE_DATAOBJ)
 
 WX_ARG_ENABLE(ipc,           [  --enable-ipc            use interprocess communication (wxSocket etc.)], wxUSE_IPC)
 
+dnl please keep the settings below in alphabetical order
+WX_ARG_ENABLE(apple_ieee,    [  --enable-apple_ieee     use the Apple IEEE codec], wxUSE_APPLE_IEEE)
+WX_ARG_ENABLE(catch_segvs,   [  --enable-catch_segvs    catch signals in wxApp::OnFatalException (Unix only)], wxUSE_ON_FATAL_EXCEPTION)
 WX_ARG_ENABLE(cmdline,       [  --enable-cmdline        use wxCmdLineParser class], wxUSE_CMDLINE_PARSER)
 WX_ARG_ENABLE(datetime,      [  --enable-datetime       use wxDateTime class], wxUSE_DATETIME)
-WX_ARG_ENABLE(stopwatch,     [  --enable-stopwatch      use wxStopWatch class], wxUSE_STOPWATCH)
 WX_ARG_ENABLE(dialupman,     [  --enable-dialupman      use dialup network classes], wxUSE_DIALUP_MANAGER)
-WX_ARG_ENABLE(apple_ieee,    [  --enable-apple_ieee     use the Apple IEEE codec], wxUSE_APPLE_IEEE)
-WX_ARG_ENABLE(timer,         [  --enable-timer          use wxTimer class], wxUSE_TIMER)
-WX_ARG_ENABLE(wave,          [  --enable-wave           use wxWave class], wxUSE_WAVE)
-WX_ARG_ENABLE(fraction,      [  --enable-fraction       use wxFraction class], wxUSE_FRACTION)
 WX_ARG_ENABLE(dynlib,        [  --enable-dynlib         use wxLibrary class for DLL loading], wxUSE_DYNLIB_CLASS)
 WX_ARG_ENABLE(dynamicloader, [  --enable-dynamicloader  use (new) wxDynamicLibrary class], wxUSE_DYNAMIC_LOADER)
-WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
+WX_ARG_ENABLE(exceptions,    [  --enable-exceptions     build exception-safe library], wxUSE_EXCEPTIONS)
+WX_ARG_ENABLE(ffile,         [  --enable-ffile          use wxFFile class], wxUSE_FFILE)
+WX_ARG_ENABLE(file,          [  --enable-file           use wxFile class], wxUSE_FILE)
+WX_ARG_ENABLE(filesystem,    [  --enable-filesystem     use virtual file systems classes], wxUSE_FILESYSTEM)
+WX_ARG_ENABLE(fontmap,       [  --enable-fontmap        use font encodings conversion classes], wxUSE_FONTMAP)
+WX_ARG_ENABLE(fs_inet,       [  --enable-fs_inet        use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
+WX_ARG_ENABLE(fs_zip,        [  --enable-fs_zip         use virtual ZIP filesystems], wxUSE_FS_ZIP)
 WX_ARG_ENABLE(geometry,      [  --enable-geometry       use geometry class], wxUSE_GEOMETRY)
 WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxUSE_LOG)
+WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
+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(snglinst,      [  --enable-snglinst       use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
 WX_ARG_ENABLE(streams,       [  --enable-streams        use wxStream etc classes], wxUSE_STREAMS)
-WX_ARG_ENABLE(file,          [  --enable-file           use wxFile classes], wxUSE_FILE)
-WX_ARG_ENABLE(ffile,         [  --enable-ffile          use wxFFile classes], wxUSE_FFILE)
+WX_ARG_ENABLE(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
+WX_ARG_ENABLE(stopwatch,     [  --enable-stopwatch      use wxStopWatch class], wxUSE_STOPWATCH)
+WX_ARG_ENABLE(system_options,[  --enable-sysoptions     use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
 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(fontmap,       [  --enable-fontmap        use font encodings conversion classes], wxUSE_FONTMAP)
+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(mslu,          [  --enable-mslu           use MS Layer for Unicode on Windows 9x (win32 only)], wxUSE_UNICODE_MSLU)
+WX_ARG_ENABLE(sound,         [  --enable-sound          use wxSound class], wxUSE_SOUND)
 WX_ARG_ENABLE(wxprintfv,     [  --enable-wxprintfv      use wxWindows implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
-WX_ARG_ENABLE(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
-WX_ARG_ENABLE(filesystem,    [  --enable-filesystem     use virtual file systems classes], wxUSE_FILESYSTEM)
-WX_ARG_ENABLE(fs_inet,       [  --enable-fs_inet        use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
-WX_ARG_ENABLE(fs_zip,        [  --enable-fs_zip         use virtual ZIP filesystems], wxUSE_FS_ZIP)
 WX_ARG_ENABLE(zipstream,     [  --enable-zipstream      use wxZipInputStream], wxUSE_ZIPSTREAM)
-
-WX_ARG_ENABLE(catch_segvs,   [  --enable-catch_segvs    catch signals and pass them to wxApp::OnFatalException], wxUSE_ON_FATAL_EXCEPTION)
-WX_ARG_ENABLE(snglinst,      [  --enable-snglinst       use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
-
-WX_ARG_ENABLE(mimetype,      [  --enable-mimetype       use wxMimeTypesManager], wxUSE_MIMETYPE)
-WX_ARG_ENABLE(system_options,[  --enable-sysoptions     use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
+WX_ARG_ENABLE(gzstream,      [  --enable-gzstream       use wxGzipInputStream], wxUSE_GZSTREAM)
 
 WX_ARG_ENABLE(url,           [  --enable-url            use wxURL class], wxUSE_URL)
 WX_ARG_ENABLE(protocol,      [  --enable-protocol       use wxProtocol class], wxUSE_PROTOCOL)
@@ -916,6 +961,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
   DEFAULT_wxUSE_IMAGLIST=yes
+  DEFAULT_wxUSE_LISTBOOK=yes
   DEFAULT_wxUSE_LISTBOX=yes
   DEFAULT_wxUSE_LISTCTRL=yes
   DEFAULT_wxUSE_NOTEBOOK=yes
@@ -953,6 +999,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_GRID=no
   DEFAULT_wxUSE_IMAGLIST=no
+  DEFAULT_wxUSE_LISTBOOK=no
   DEFAULT_wxUSE_LISTBOX=no
   DEFAULT_wxUSE_LISTCTRL=no
   DEFAULT_wxUSE_NOTEBOOK=no
@@ -985,7 +1032,6 @@ if test "x$wxUSE_COCOA" != "x" -a "$wxUSE_COCOA" != "0" ; then
   wxUSE_DRAG_AND_DROP=no
   # Generic notebook requires tab dialog
   DEFAULT_wxUSE_TABDIALOG=yes
-  DEFAULT_wxUSE_TOOLBAR_NATIVE=no
   DEFAULT_wxUSE_SCROLLBAR=no
   DEFAULT_wxUSE_TOOLTIPS=no
   DEFAULT_wxUSE_DRAGIMAGE=no
@@ -1004,6 +1050,7 @@ WX_ARG_ENABLE(display,     [  --enable-display        use wxDisplay class], wxUS
 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(imaglist,    [  --enable-imaglist       use wxImageList class], wxUSE_IMAGLIST)
+WX_ARG_ENABLE(listbook,    [  --enable-listbook       use wxListbook class], wxUSE_LISTBOOK)
 WX_ARG_ENABLE(listbox,     [  --enable-listbox        use wxListBox class], wxUSE_LISTBOX)
 WX_ARG_ENABLE(listctrl,    [  --enable-listctrl       use wxListCtrl class], wxUSE_LISTCTRL)
 WX_ARG_ENABLE(notebook,    [  --enable-notebook       use wxNotebook class], wxUSE_NOTEBOOK)
@@ -1091,17 +1138,12 @@ fi
 
 dnl General settings (needed for GUI and non-GUI compilations alike).
 dnl Path separator; ':' for unix, ';' for OS/2
-dnl Stem for flex output; lexyy for OS/2, lex.yy otherwise
 case "${host}" in
   *-pc-os2_emx | *-pc-os2-emx )
     PATH_IFS=';'
-dnl Really ought to text for this as meanwhile there are flex versions using
-dnl lex.yy as well due to FAT support being more and more dropped...
-    LEX_STEM="lexyy"
   ;;
   *)
     PATH_IFS=':'
-    LEX_STEM="lex.yy"
   ;;
 esac
 
@@ -1120,6 +1162,7 @@ if test "$wxUSE_WINE" = "yes"; then
     DEFAULT_DEFAULT_wxUSE_GTK=0
     DEFAULT_DEFAULT_wxUSE_MOTIF=0
     DEFAULT_DEFAULT_wxUSE_MSW=1
+    wxUSE_SHARED=no
 fi
 
 if test "$wxUSE_GUI" = "yes"; then
@@ -1180,7 +1223,7 @@ if test "$wxUSE_GUI" = "yes"; then
           echo "$var=$value" >> ${wx_arg_cache_file}
         fi
         if test "$value" = 1; then
-          toolkit_echo=`echo $toolkit | tr [[A-Z]] [[a-z]]`
+          toolkit_echo=`echo $toolkit | tr "[[A-Z]]" "[[a-z]]"`
           AC_MSG_RESULT($toolkit_echo)
         fi
       fi
@@ -1222,6 +1265,7 @@ if test "$wxUSE_WINE" = "yes"; then
     CC=winegcc
     CXX=wineg++
     RESCOMP=wrc
+    LDFLAGS_GUI="-mwindows"
 fi
 
 dnl NB: The two tests bellow are *NOT* mutually exclusive! They should only
@@ -1303,13 +1347,28 @@ AC_PROG_CXX
 
 AC_LANG_RESTORE
 
+dnl check if compiler includes /usr/local/include in
+dnl default include files search path.
+AC_MSG_CHECKING([for /usr/local/include in default include path])
+GCC_SEARCHES_USR_LOCAL_INCLUDE="no"
+if test "$GCC" = "yes" ; then
+  echo | gcc -v -x c++ -E - 2>&1 | sed -n '/^#include </,$p' | \
+       sed -n '1,/End of search list\./p' | \
+        grep '^ */usr/local/include$' 2>&1 /dev/null \
+  && GCC_SEARCHES_USR_LOCAL_INCLUDE="yes"
+fi
+AC_MSG_RESULT([$GCC_SEARCHES_USR_LOCAL_INCLUDE])
+
 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_PROG(AR, ar, ar, ar)
+AC_CHECK_PROG(AR, ar, ar)
+if test "x$AR" = "x" ; then
+    AC_MSG_ERROR([ar is needed to build wxWindows])
+fi
 
 dnl install checks
 dnl   defines INSTALL with the appropriate command
@@ -1414,27 +1473,23 @@ you are trying to compile.
 fi dnl make without VPATH
 fi dnl not GNU make
 
-dnl YACC checks
-dnl   defines YACC with the appropriate command
-AC_PROG_YACC
-
-dnl LEX checks
-dnl   defines LEX with the appropriate command
-dnl   defines LEXLIB with the appropriate library
-AC_PROG_LEX
-
 dnl needed for making link to setup.h
 AC_PROG_LN_S
 
-dnl ---------------------------------------------------------------------------
-dnl When we are using gcc on OS/2, we want to be either using resources (PM)
-dnl or a more complete POSIX emulation for Motif/GTK+/X11
-dnl ---------------------------------------------------------------------------
-dnl (OS/2-only piece)
+dnl ------------------------------------------------------------------------
+dnl Platform specific tests
+dnl ------------------------------------------------------------------------
+
 case "${host}" in
   *-pc-os2_emx | *-pc-os2-emx )
-      dnl Explicitly link -lstdcpp, since we are using "gcc" not "g++"/"c++".
-      LIBS="$LIBS -lstdcpp"
+      dnl ---------------------------------------------------------------------
+      dnl When we are using gcc on OS/2, we want to be either using resources
+      dnl (PM) or a more complete POSIX emulation for Motif/GTK+/X11.
+      dnl Moreover we need to link explicitly against either stdcpp.a or
+      dnl stdcxx.a (depending on compiler version), since we are using "gcc",
+      dnl not "g++/c++".
+      dnl ---------------------------------------------------------------------
+      dnl (OS/2-only piece)
       if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_GTK" = 1 -o "$wxUSE_X11" = 1; then
           dnl More complete Unix emulation for unix-like ports
           dnl by linking in POSIX/2's cExt (if available).
@@ -1443,36 +1498,82 @@ case "${host}" in
           dnl Include resources for the "native" port (wxPM).
           RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res"
       fi
+      AC_CACHE_CHECK([for gcc 3 or later], wx_cv_gcc3,[
+          AC_TRY_COMPILE([],
+              [
+                  #if (__GNUC__ < 3)
+                      #error old gcc
+                  #endif
+              ],
+              [
+                  wx_cv_gcc3=yes
+              ],
+              [
+                  wx_cv_gcc3=no
+              ]
+          )
+      ])
+      if test "$wx_cv_gcc3" = "no"; then
+          LIBS="$LIBS -lstdcpp"
+      else
+          LIBS="$LIBS -lstdcxx"
+      fi
+      dnl (end of OS/2-only piece)
+  ;;
+  *)
+      dnl ---------------------------------------------------------------------
+      dnl look for strcasecmp() in string.h and then strings.h if it's not
+      dnl there. Don't do this on OS/2, where "stricmp" is the function to be
+      dnl used.
+      dnl ---------------------------------------------------------------------
+      dnl (non-OS/2-only piece)
+
+      AC_LANG_SAVE
+      AC_LANG_CPLUSPLUS
+
+      AC_CACHE_CHECK([for strcasecmp() in string.h], ac_cv_string_strcasecmp, [
+          AC_TRY_LINK([
+              #include <string.h>
+              ],
+              [
+                  strcasecmp("foo", "bar");
+              ],
+              ac_cv_string_strcasecmp=yes,
+              ac_cv_string_strcasecmp=no
+          )
+      ])
+
+      if test x"$ac_cv_string_strcasecmp" = "xyes"; then
+          AC_DEFINE(HAVE_STRCASECMP_IN_STRING_H)
+      else
+          AC_CACHE_CHECK([for strcasecmp() in strings.h], ac_cv_strings_strcasecmp, [
+              AC_TRY_LINK([
+                  #include <strings.h>
+                  ],
+                  [
+                      strcasecmp("foo", "bar");
+                  ],
+                  ac_cv_strings_strcasecmp=yes,
+                  ac_cv_strings_strcasecmp=no
+              )
+          ])
+
+          if test x"$ac_cv_string_strcasecmp" = "xyes"; then
+              AC_DEFINE(HAVE_STRCASECMP_IN_STRINGS_H)
+          else
+              AC_MSG_ERROR([No case-insensitive string comparison function found.])
+          fi
+      fi
+
+      AC_LANG_RESTORE
+      dnl (end of non-OS/2-only piece)
   ;;
 esac
-dnl (end of OS/2-only piece)
 
 dnl ------------------------------------------------------------------------
 dnl Check for headers
 dnl ------------------------------------------------------------------------
 
-dnl test for strings.h needed under AIX, but do not check for it wxMac as
-dnl it exists but is only a simple redirection to string.h and it is in
-dnl conflict with Strings.h in FlatCarbon headers
-dnl
-dnl Autoconf 2.5 tends to check for strings.h on its own, so avoiding the 
-dnl test (as the current configure script does) is not possible.  Instead, 
-dnl you must remind autoconf that strings.h is NOT valid.  The autoconf 
-dnl test succeeds because there is a strings.h file that simply includes 
-dnl string.h.  Unfortunately, there is also a strings.h as part of the 
-dnl FlatCarbon headers.                                    -- David Elliott
-if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then
-    AC_CACHE_CHECK([for strings.h], ac_cv_header_strings_h, 
-                   [ac_cv_header_strings_h=no])
-    if test "$ac_cv_header_strings_h" = "no"; then
-        AC_MSG_RESULT([forced no into cache])
-    else
-        AC_MSG_WARN([strings.h is not compatible with Mac OS X])
-    fi
-fi
-dnl defines HAVE_STRINGS_H
-AC_CHECK_HEADERS(strings.h)
-
 dnl defines HAVE_STDLIB_H
 AC_CHECK_HEADERS(stdlib.h)
 dnl defines HAVE_MALLOC_H
@@ -1508,9 +1609,15 @@ case "${host}" in
 esac
 
 if test "$wxUSE_GUI" = "yes"; then
-    if test "$wxUSE_UNIX" = "yes"; then
+    if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_PM" != 1; then
         dnl defines HAVE_X11_XKBLIB_H
-        AC_CHECK_HEADERS(X11/XKBlib.h)
+        AC_CHECK_HEADERS(X11/Xlib.h)
+        AC_CHECK_HEADERS([X11/XKBlib.h], [], [], 
+                         [
+                          #if HAVE_X11_XLIB_H
+                            #include <X11/Xlib.h>
+                          #endif
+                         ])
     fi
 fi
 
@@ -1531,6 +1638,7 @@ AC_CHECK_SIZEOF(short, 2)
 AC_CHECK_SIZEOF(void *, 4)
 AC_CHECK_SIZEOF(int, 4)
 AC_CHECK_SIZEOF(long, 4)
+AC_CHECK_SIZEOF(size_t, 4)
 
 case "${host}" in
     arm-*-linux* )
@@ -1624,6 +1732,7 @@ WX_CPP_EXPLICIT
 
 dnl check whether C++ compiler supports C++ casts
 AC_CXX_CONST_CAST
+AC_CXX_STATIC_CAST
 
 dnl check various STL features
 if test "$wxUSE_STL" = "yes"; then
@@ -1681,18 +1790,19 @@ dnl headers are included instead of the "fixed" (ANSI-fied) gcc ones.
 dnl
 dnl Also try to put all directories which may contain X11R6 before those which
 dnl may contain X11R5/4 - we want to use R6 on machines which have both!
+dnl
+dnl In the same vein. Motif 2.1 should be tried before Motif 1.2 for the
+dnl systems which have both (AIX 4.x does)
 SEARCH_INCLUDE="\
     /usr/local/include        \
                               \
-    /usr/Motif-1.2/include    \
     /usr/Motif-2.1/include    \
-                              \
+    /usr/Motif-1.2/include    \
     /usr/include/Motif1.2     \
     /opt/xpm/include/X11      \
     /opt/GBxpm/include/       \
     /opt/GBxpm/X11/include/   \
                               \
-    /usr/Motif1.2/include     \
     /usr/dt/include           \
     /usr/openwin/include      \
                               \
@@ -1746,7 +1856,13 @@ SEARCH_INCLUDE="\
                               \
     /usr/openwin/share/include"
 
-SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s/include/lib/g` "
+dnl prepend lib and lib32 for IRIX where the files in these directories should
+dnl be found before the ones in lib64 for 32bit compilation -- of course, this
+dnl probably/surely breaks 64bit compilation... IMO the only real solution is to
+dnl stop using WX_PATH_FIND_LIBRARIES() at all and use AC_CHECK_LIB() instead
+dnl
+dnl add 64 bit versions for Linux on AMD (this is not perfect but well...)
+SEARCH_LIB="/usr/lib /usr/lib32 `echo "$SEARCH_INCLUDE" | sed s/include/lib/g` /usr/lib64 /usr/X11R6/lib64"
 
 dnl ------------------------------------------------------------------------
 dnl Check for libraries
@@ -1818,9 +1934,13 @@ dnl ------------------------------------------------------------------------
 dnl Check for regex libraries
 dnl ------------------------------------------------------------------------
 
-REGEX_INCLUDE=
 if test "$wxUSE_REGEX" != "no"; then
     AC_DEFINE(wxUSE_REGEX)
+            
+    if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_REGEX" = "yes"; then
+        AC_MSG_WARN([Defaulting to the the builtin regex library for Unicode build.])
+        wxUSE_REGEX=builtin
+    fi
 
     if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then
         dnl according to Unix 98 specs, regcomp() is in libc but I believe that
@@ -1837,19 +1957,16 @@ if test "$wxUSE_REGEX" != "no"; then
         else
             dnl we are using the system library
             wxUSE_REGEX=sys
+            dnl only the built-in supports advanced REs
+            AC_DEFINE(WX_NO_REGEX_ADVANCED)
         fi
     fi
-
-    if test "$wxUSE_REGEX" = "builtin" ; then
-        REGEX_INCLUDE="-I\${top_srcdir}/src/regex"
-    fi
 fi
 
 dnl ------------------------------------------------------------------------
 dnl Check for zlib compression library
 dnl ------------------------------------------------------------------------
 
-ZLIB_INCLUDE=
 ZLIB_LINK=
 if test "$wxUSE_ZLIB" != "no" ; then
     AC_DEFINE(wxUSE_ZLIB)
@@ -1917,17 +2034,12 @@ if test "$wxUSE_ZLIB" != "no" ; then
             wxUSE_ZLIB=sys
         fi
     fi
-
-    if test "$wxUSE_ZLIB" = "builtin" ; then
-        ZLIB_INCLUDE="-I\${top_srcdir}/src/zlib"
-    fi
 fi
 
 dnl ------------------------------------------------------------------------
 dnl Check for png library
 dnl ------------------------------------------------------------------------
 
-PNG_INCLUDE=
 PNG_LINK=
 if test "$wxUSE_LIBPNG" != "no" ; then
     AC_DEFINE(wxUSE_LIBPNG)
@@ -1992,10 +2104,6 @@ if test "$wxUSE_LIBPNG" != "no" ; then
         fi
     fi
 
-    if test "$wxUSE_LIBPNG" = "builtin" ; then
-        PNG_INCLUDE="-I\${top_srcdir}/src/png"
-    fi
-
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS png"
 fi
 
@@ -2003,7 +2111,6 @@ dnl ------------------------------------------------------------------------
 dnl Check for jpeg library
 dnl ------------------------------------------------------------------------
 
-JPEG_INCLUDE=
 JPEG_LINK=
 if test "$wxUSE_LIBJPEG" != "no" ; then
     AC_DEFINE(wxUSE_LIBJPEG)
@@ -2052,17 +2159,12 @@ if test "$wxUSE_LIBJPEG" != "no" ; then
             fi
         fi
     fi
-
-    if test "$wxUSE_LIBJPEG" = "builtin" ; then
-        JPEG_INCLUDE="-I\${top_srcdir}/src/jpeg"
-    fi
 fi
 
 dnl ------------------------------------------------------------------------
 dnl Check for tiff library
 dnl ------------------------------------------------------------------------
 
-TIFF_INCLUDE=
 TIFF_LINK=
 TIFF_PREREQ_LINKS=-lm
 if test "$wxUSE_LIBTIFF" != "no" ; then
@@ -2078,10 +2180,12 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
             TIFF_PREREQ_LINKS="$TIFF_PREREQ_LINKS $ZLIB_LINK"
         fi
         AC_CHECK_HEADER(tiffio.h,
-                        AC_CHECK_LIB(tiff, TIFFError,
-                                     TIFF_LINK=" -ltiff",
-                                     ,
-                                     $TIFF_PREREQ_LINKS)
+                        [
+                            AC_CHECK_LIB(tiff, TIFFError,
+                                         TIFF_LINK=" -ltiff",
+                                         ,
+                                         $TIFF_PREREQ_LINKS)
+                        ]
                        )
 
         if test "x$TIFF_LINK" = "x" ; then
@@ -2096,10 +2200,6 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
             wxUSE_LIBTIFF=sys
         fi
     fi
-
-    if test "$wxUSE_LIBTIFF" = "builtin" ; then
-        TIFF_INCLUDE="-I\${top_srcdir}/src/tiff"
-    fi
 fi
 
 dnl ------------------------------------------------------------------------
@@ -2150,6 +2250,25 @@ if test "$wxUSE_EXPAT" != "no"; then
 fi
 
 
+dnl ------------------------------------------------------------------------
+dnl Check for libmspack
+dnl ------------------------------------------------------------------------
+
+if test "$wxUSE_LIBMSPACK" != "no"; then
+    
+    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")
+    fi
+    if test "x$MSPACK_LINK" = "x" ; then
+        wxUSE_LIBMSPACK=no
+    else
+        AC_DEFINE(wxUSE_LIBMSPACK)
+    fi
+fi
+
+
 dnl ----------------------------------------------------------------
 dnl search for toolkit (widget sets)
 dnl ----------------------------------------------------------------
@@ -2214,6 +2333,14 @@ if test "$wxUSE_GUI" = "yes"; then
     if test "$wxUSE_MSW" = 1 ; then
         TOOLKIT=MSW
         GUIDIST=MSW_DIST
+
+        dnl -mwindows causes a heap of other default gui libs to be linked in.
+        dnl FIXME: If cygwin needs this, please push it above, if not, please
+        dnl        remove this comment :-)
+        case "${host}" in
+            *-*-mingw32* )
+                WXCONFIG_LDFLAGS_GUI="$LDFLAGS -Wl,--subsystem,windows -mwindows"
+        esac
     fi
 
     if test "$wxUSE_GTK" = 1; then
@@ -2331,13 +2458,16 @@ equivalent variable and GTK+ is version 1.2.3 or above.
 
         AC_MSG_CHECKING(for libmgl location)
         dnl Find MGL library that we want
-        dnl FIXME_MGL - test for MGL variants for freebsd etc.
+        dnl FIXME_MGL - test for MGL variants for freebsd etc.;
+        dnl             and for non-x86 versions
         case "${host}" in
             *-*-linux* )
+              dnl glibc.so, glibc are for older versions of MGL,
+              dnl x86/a, x86/so are used by >= 5.0 R11
               if test "x$wxUSE_SHARED" = xyes ; then
-                  mgl_os_candidates="linux/gcc/glibc.so linux/gcc/glibc"
+                  mgl_os_candidates="linux/gcc/x86/so linux/gcc/x86/a linux/gcc/glibc.so linux/gcc/glibc"
               else
-                  mgl_os_candidates="linux/gcc/glibc linux/gcc/glibc.so"
+                  mgl_os_candidates="linux/gcc/x86/a linux/gcc/x86/so linux/gcc/glibc linux/gcc/glibc.so"
               fi
               ;;
             *-pc-msdosdjgpp )
@@ -2437,44 +2567,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             fi
         fi
 
-        xpm_link=
-        AC_MSG_CHECKING(for Xpm library)
-        WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
-        if test "$ac_find_libraries" != "" ; then
-            WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
-            GUI_TK_LIBRARY="$GUI_TK_LIBRARY$ac_path_to_link"
-            xpm_link=" -lXpm"
-            AC_DEFINE(wxHAVE_LIB_XPM)
-            AC_MSG_RESULT(found at $ac_find_libraries)
-        else
-            AC_TRY_COMPILE(
-                [
-                    #include <X11/xpm.h>
-                ],
-                [
-                    int version;
-                    version = XpmLibraryVersion();
-                ],
-                [
-                    xpm_link=" -lXpm"
-                    AC_DEFINE(wxHAVE_LIB_XPM)
-                    AC_MSG_RESULT(found in default search path)
-                    COMPILED_X_PROGRAM=0
-                ],
-                [
-                    AC_MSG_RESULT(no)
-                    AC_MSG_WARN(library will be compiled without support for images in XPM format)
-                ]
-            )
-        fi
-
-        AC_CHECK_LIB([Xext], [XShapeQueryExtension],
-                     [
-                      GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXext"
-                      wxHAVE_XEXT_LIB=1
-                     ],
-                     [], [$GUI_TK_LIBRARY -lX11])
-
         if test "$wxUSE_UNICODE" = "yes"; then
                 PKG_CHECK_MODULES(PANGOX, pangox,
                     [
@@ -2513,7 +2605,7 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__NANOX__ -DMWPIXEL_FORMAT=MWPF_TRUECOLOR0888 -DHAVE_FILEIO -DHAVE_BMP_SUPPORT=1 -DHAVE_GIF_SUPPORT=1 -DHAVE_PNM_SUPPORT=1 -DHAVE_XPM_SUPPORT=1 -DUNIX=1 -DUSE_EXPOSURE -DSCREEN_HEIGHT=480 -DSCREEN_WIDTH=640 -DSCREEN_DEPTH=4 -DX11=1"
             GUI_TK_LIBRARY="$GUI_TK_LIBRARY \$(MICROWIN)/src/lib/libnano-X.a"
         else
-            GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lX11$xpm_link"
+            GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lX11"
         fi
 
         TOOLKIT_VPATH="\${top_srcdir}/src/x11"
@@ -2600,53 +2692,16 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             fi
         fi
 
-        xpm_link=
-        AC_MSG_CHECKING(for Xpm library)
-        WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
-        if test "$ac_find_libraries" != "" ; then
-            WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
-            GUI_TK_LIBRARY="$GUI_TK_LIBRARY$ac_path_to_link"
-
-            xpm_link=" -lXpm"
-            AC_DEFINE(wxHAVE_LIB_XPM)
-            AC_MSG_RESULT(found at $ac_find_libraries)
-        else
-            save_CFLAGS=$CFLAGS
-            CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
-
-            AC_TRY_COMPILE(
-                [
-                    #include <X11/xpm.h>
-                ],
-                [
-                    int version;
-                    version = XpmLibraryVersion();
-                ],
-                [
-                    xpm_link=" -lXpm"
-                    AC_DEFINE(wxHAVE_LIB_XPM)
-                    AC_MSG_RESULT(found in default search path)
-                    COMPILED_X_PROGRAM=0
-                ],
-                [
-                    AC_MSG_RESULT(no)
-                    AC_MSG_WARN(library will be compiled without support for images in XPM format)
-                ]
-            )
-
-            CFLAGS=$save_CFLAGS
-        fi
-
         AC_MSG_CHECKING([if we need -lXp and/or -lSM -lICE])
         libp_link=""
         libsm_ice_link=""
         libs_found=0
         for libp in "" " -lXp"; do
             if test "$libs_found" = "0"; then
-                for libsm_ice in " -lSM -lICE"; do
+                for libsm_ice in "" " -lSM -lICE"; do
                     if test "$libs_found" = "0"; then
                         save_LIBS="$LIBS"
-                        LIBS="$GUI_TK_LIBRARY -lXm${xpm_link} ${libp} -lXmu -lXext -lXt${libsm_ice} -lX11"
+                        LIBS="$GUI_TK_LIBRARY -lXm ${libp} -lXmu -lXext -lXt${libsm_ice} -lX11"
                         save_CFLAGS=$CFLAGS
                         CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
 
@@ -2703,40 +2758,101 @@ equivalent variable and GTK+ is version 1.2.3 or above.
                        ])
         CFLAGS=$save_CFLAGS
 
-        GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXm$xpm_link${libp_link} -lXmu -lXext -lXt${libsm_ice_link} -lX11"
+        GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXm${libp_link} -lXmu -lXext -lXt${libsm_ice_link} -lX11"
         TOOLKIT_VPATH="\${top_srcdir}/src/motif${PATH_IFS}\${top_srcdir}/src/motif/xmcombo${PATH_IFS}\${top_srcdir}/src/x11"
         TOOLKIT=MOTIF
         GUIDIST=MOTIF_DIST
-        wxHAVE_XEXT_LIB=1
     fi
 
-    if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1 &&
-       test "$wxHAVE_XEXT_LIB" = 1; then
-        save_CFLAGS="$CFLAGS"
-        CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
+    if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
+        dnl test for external libxpm if we're configured to use it
+        if test "$wxUSE_LIBXPM" = "sys"; then
+            AC_MSG_CHECKING(for Xpm library)
+            WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
+            if test "$ac_find_libraries" != "" ; then
+                WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
+                GUI_TK_LIBRARY="$GUI_TK_LIBRARY$ac_path_to_link"
+                AC_MSG_RESULT(found at $ac_find_libraries)
 
-        AC_MSG_CHECKING([for X11/extensions/shape.h])
-        AC_TRY_COMPILE([
-                        #include <X11/Xlib.h> 
-                        #include <X11/extensions/shape.h>
-                       ],
-                       [
-                        int dummy1, dummy2;
-                        XShapeQueryExtension((Display*)NULL,
-                                             (int*)NULL, (int*)NULL);
-                       ],
-                       [
-                        AC_DEFINE(HAVE_XSHAPE)
-                        AC_MSG_RESULT([found])
-                       ],
-                       [
-                        AC_MSG_RESULT([not found])
-                       ])
-        CFLAGS="$save_CFLAGS"
+                AC_CACHE_CHECK([for X11/xpm.h],
+                    wx_cv_x11_xpm_h,
+                    [
+                        save_CFLAGS=$CFLAGS
+                        CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
+
+                        AC_TRY_COMPILE(
+                            [
+                                #include <X11/xpm.h>
+                            ],
+                            [
+                                int version;
+                                version = XpmLibraryVersion();
+                            ],
+                            wx_cv_x11_xpm_h=yes,
+                            wx_cv_x11_xpm_h=no
+                        )
+
+                        CFLAGS=$save_CFLAGS
+                    ]
+                )
+
+                if test $wx_cv_x11_xpm_h = "yes"; then
+                    GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXpm"
+                    AC_DEFINE(wxHAVE_LIB_XPM)
+                else
+                    AC_MSG_WARN([built-in less efficient XPM decoder will be used])
+                fi
+            fi
+
+        fi
+
+        dnl XShapeQueryExtension checks: first the library, then prototype
+        AC_CHECK_LIB([Xext], [XShapeQueryExtension],
+                     [
+                      GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXext"
+                      wxHAVE_XEXT_LIB=1
+                     ],
+                     [], [$GUI_TK_LIBRARY -lX11])
+
+        if test "$wxHAVE_XEXT_LIB" = 1; then
+            save_CFLAGS="$CFLAGS"
+            CFLAGS="$CFLAGS $TOOLKIT_INCLUDE"
+
+            AC_MSG_CHECKING([for X11/extensions/shape.h])
+            AC_TRY_COMPILE([
+                            #include <X11/Xlib.h> 
+                            #include <X11/extensions/shape.h>
+                           ],
+                           [
+                            int dummy1, dummy2;
+                            XShapeQueryExtension((Display*)NULL,
+                                                 (int*)NULL, (int*)NULL);
+                           ],
+                           [
+                            AC_DEFINE(HAVE_XSHAPE)
+                            AC_MSG_RESULT([found])
+                           ],
+                           [
+                            AC_MSG_RESULT([not found])
+                           ])
+            CFLAGS="$save_CFLAGS"
+
+        fi
     fi
 
     if test "$wxUSE_MAC" = 1; then
-        CPPFLAGS="$CPPFLAGS -fpascal-strings -I\${top_srcdir}/src/mac/morefilex -I/Developer/Headers/FlatCarbon"
+        AC_MSG_CHECKING([for compiler syntax to enable Pascal strings])
+        if test "$GCC" = yes; then
+            AC_MSG_RESULT([gcc])
+            CPPFLAGS_PASCAL="-fpascal-strings"
+        elif test "`echo $CXX | sed -e 's@.*/@@'`" = "xlC"; then
+            AC_MSG_RESULT([xlc])
+            CPPFLAGS_PASCAL="-qmacpstr"
+        else
+            AC_MSG_RESULT([none])
+        fi
+
+        CPPFLAGS="$CPPFLAGS $CPPFLAGS_PASCAL -I\${top_srcdir}/src/mac/morefilex -I/Developer/Headers/FlatCarbon"
 
         TOOLKIT_VPATH="\${top_srcdir}/src/mac${PATH_IFS}\${top_srcdir}/src/mac/morefilex"
         TOOLKIT=MAC
@@ -2756,8 +2872,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
     if test "$wxUSE_PM" = 1; then
         TOOLKIT=PM
         GUIDIST=GTK_DIST
-        AC_MSG_WARN([OS/2 threads are not yet supported... disabled])
-        wxUSE_THREADS="no"
     fi
 
     dnl the name of the directory where the files for this toolkit live
@@ -2867,11 +2981,11 @@ if test "$TOOLKIT" != "MSW" ; then
 
         AC_CHECK_HEADER([sql.h], [found_sql_h=1])
         if test "x$found_sql_h" = "x1" ; then
-            AC_CHECK_LIB(SQLAllocEnv, iodbc, ODBC_LINK=" -liodbc",
+            AC_CHECK_LIB(iodbc, SQLAllocEnv, ODBC_LINK=" -liodbc",
             [
-                AC_CHECK_LIB(SQLAllocEnv, unixodbc, ODBC_LINK=" -lunixodbc",
+                AC_CHECK_LIB(unixodbc, SQLAllocEnv, ODBC_LINK=" -lunixodbc",
                 [
-                    AC_CHECK_LIB(SQLAllocEnv, odbc, ODBC_LINK=" -lodbc")
+                    AC_CHECK_LIB(odbc, SQLAllocEnv, ODBC_LINK=" -lodbc")
                 ])
             ])
         fi 
@@ -2889,6 +3003,9 @@ if test "$TOOLKIT" != "MSW" ; then
     fi
     if test "$wxUSE_ODBC" != "no" ; then
         AC_DEFINE(wxUSE_ODBC)
+        if test "$wxUSE_ODBC" = "builtin" ; then
+            AC_DEFINE(wxUSE_BUILTIN_IODBC)
+        fi
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
     
         dnl is this still necessary in 2.5?
@@ -2903,6 +3020,47 @@ if test "$wxUSE_ZLIB" = "builtin" ; then
     ALL_OBJECTS="${ALL_OBJECTS} \$(ZLIBOBJS)"
 fi
 
+dnl ---------------------------------------------------------------------------
+dnl Xinerama (for unix wxDisplay) - Brian Victor
+dnl ---------------------------------------------------------------------------
+if test "$wxUSE_DISPLAY" = "yes"; then
+    if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_MAC" != 1; then
+        AC_MSG_CHECKING([for Xinerama])
+        WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xinerama)
+        if test "$ac_find_libraries" != "" ; then
+            WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
+            if test "$ac_path_to_link" != " -L/usr/lib" ; then
+                LDFLAGS="$LDFLAGS $ac_path_to_link"
+            fi
+            GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXinerama"
+            AC_MSG_RESULT([yes])
+
+            AC_MSG_CHECKING([for Xxf86vm extension])
+            WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xxf86vm)
+            if test "$ac_find_libraries" != "" ; then
+                AC_MSG_RESULT([yes])
+                AC_CHECK_HEADERS([X11/extensions/xf86vmode.h],
+                                 [
+                                  GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm"
+                                 ],
+                                 [], 
+                                 [
+                                      #if HAVE_X11_XLIB_H
+                                        #include <X11/Xlib.h>
+                                      #endif
+                                 ])
+            else
+                AC_MSG_RESULT([no])
+            fi
+        
+        else
+            AC_MSG_RESULT([no])
+            AC_MSG_WARN("*** Xinerama not found; disabling wxDisplay")
+            wxUSE_DISPLAY="no"
+        fi
+    fi
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl OpenGL libraries
 dnl ---------------------------------------------------------------------------
@@ -3058,11 +3216,9 @@ case "${host}" in
         WX_LIBRARY_LINK1_GL="lib${WX_LIBRARY_GL}.${WX_CURRENT}.${SO_SUFFIX}"
         WX_LIBRARY_LINK2_GL="lib${WX_LIBRARY_GL}.${SO_SUFFIX}"
 
-        dnl Under Mac OS X, we should build real frameworks instead of simple
-        dnl dynamic shared libraries (in order to embed the resources)
-        if test "$wxUSE_MAC" = 1; then
-            dnl base name of the resource file for wxMac must be the same
-            dnl as library installation base name (-install_name)
+        dnl base name of the resource file for wxMac must be the same
+        dnl as library installation base name (-install_name)
+        if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = "1"; then
             WX_RESOURCES_MACOSX_ASCII="lib${WX_LIBRARY}.${WX_CURRENT}.r"
             WX_RESOURCES_MACOSX_DATA="lib${WX_LIBRARY}.${WX_CURRENT}.rsrc"
         fi
@@ -3206,37 +3362,44 @@ else
     STATIC_FLAG="no"
 fi
 
-dnl default value is to (silently) do nothing in the makefile
-MACRESCOMP="@#"
-MACSETFILE="@#"
-MACRESWXCONFIG="#"
-if test "$wxUSE_MAC" = 1; then
+if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1; then
     dnl add the resources target for wxMac
     LIBWXMACRES="\$(top_builddir)lib/${WX_RESOURCES_MACOSX_ASCII}"
     WX_ALL="${WX_ALL} ${LIBWXMACRES}"
     WX_ALL_INSTALLED="${WX_ALL_INSTALLED} preinstall_res"
+
     AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
     AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
     AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile)
-    MACOSX_BUNDLE="bundle"
+
+    MACSETFILE="\$(SETFILE)"
+
     dnl resources are bundled both with shared library and applications
     dnl since the carb resource *must* be included in the application
-    MACRESCOMP="\$(RESCOMP) -d __DARWIN__ -t APPL Carbon.r ${LIBWXMACRES} -o"
-    MACSETFILE="\$(SETFILE)"
-    MACRESWXCONFIG="${RESCOMP} -d __DARWIN__ -t APPL Carbon.r \${exec_prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o"
-elif test "$wxUSE_COCOA" = 1; then
-    AC_CHECK_PROG(RESCOMP, Rez, Rez, /Developer/Tools/Rez)
-    AC_CHECK_PROG(DEREZ, DeRez, DeRez, /Developer/Tools/DeRez)
-    AC_CHECK_PROG(SETFILE, SetFile, SetFile, /Developer/Tools/SetFile)
-    MACRESCOMP="echo -n | \$(RESCOMP) -d __DARWIN__ -t APPL ${LIBWXMACRES} -o"
-    MACSETFILE="\$(SETFILE)"
-    MACRESWXCONFIG="echo -n | ${RESCOMP} -d __DARWIN__ -t APPL \${exec_prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o"
+    if test "$wxUSE_MAC" = 1; then
+        MACRESCOMP="\$(RESCOMP) -d __DARWIN__ -t APPL Carbon.r ${LIBWXMACRES} -o"
+
+        dnl this command is used to implement `wx-config --rezflags` and it is
+        dnl eval'd there so escape any metacharacters inside
+        MACRESWXCONFIG="${RESCOMP} -d __DARWIN__ -t APPL Carbon.r \\\${exec_prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o"
+    else
+        MACRESCOMP="echo -n | \$(RESCOMP) -d __DARWIN__ -t APPL ${LIBWXMACRES} -o"
+        MACRESWXCONFIG="echo -n \\\| ${RESCOMP} -d __DARWIN__ -t APPL \\\${exec_prefix}/lib/${WX_RESOURCES_MACOSX_ASCII} -o"
+    fi
 else
+    dnl default value is to (silently) do nothing in the makefile
+    MACSETFILE="@#"
+    MACRESWXCONFIG="#"
+
+    dnl confusingly, wxOS2 also uses MACRESCOMP in its post-link step
     if test "$wxUSE_PM" = 1; then
         MACRESCOMP="emxbind -ep"
+    else
+        MACRESCOMP="@#"
     fi
 fi
 
+
 dnl ---------------------------------------------------------------------------
 dnl Checks for typedefs
 dnl ---------------------------------------------------------------------------
@@ -3657,12 +3820,16 @@ AC_CHECK_FUNCS(inet_addr,
     [
         AC_CHECK_LIB(nsl, inet_addr,
             INET_LINK="nsl",
-            AC_CHECK_LIB(resolv, inet_addr,
-                INET_LINK="resolv",
-                AC_CHECK_LIB(socket, inet_addr,
-                    INET_LINK="socket"
+            [
+                AC_CHECK_LIB(resolv, inet_addr,
+                    INET_LINK="resolv",
+                    [
+                        AC_CHECK_LIB(socket, inet_addr,
+                            INET_LINK="socket"
+                        )
+                    ]
                 )
-            )
+            ]
         )
     ]
 )
@@ -3696,6 +3863,19 @@ AC_CHECK_LIB(esd, esd_close, [
 ])
 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!
@@ -3705,12 +3885,13 @@ dnl flush the cache
 AC_CACHE_SAVE
 
 dnl ---------------------------------------------------------------------------
-dnl thread support for Unix (for Win32 see past the next matching "else")
+dnl thread support for Unix (for Win32 and OS/2 see past
+dnl                          the next matching "else")
 dnl ---------------------------------------------------------------------------
 
 dnl under MSW (except mingw32) we always have thread support
 CPP_MT_FLAG=
-if test "$TOOLKIT" != "MSW"; then
+if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
 
     dnl the code below:
     dnl
@@ -3937,22 +4118,26 @@ if test "$TOOLKIT" != "MSW"; then
                     AC_DEFINE(HAVE_PTHREAD_CANCEL),
                     AC_MSG_WARN([wxThread::Kill() will not work properly]))
 
-      AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
-      [
-        AC_TRY_COMPILE([#include <pthread.h>],
-                     [
-                        pthread_cleanup_push(NULL, NULL);
-                        pthread_cleanup_pop(0);
-                     ], [
-                        wx_cv_func_pthread_cleanup_push=yes
-                     ], [
-                        wx_cv_func_pthread_cleanup_push=no
-                     ])
-      ])
-
-      if test "$wx_cv_func_pthread_cleanup_push" = "yes"; then
-          AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
-      fi
+      dnl we don't use pthread_cleanup_push/pop() any more in the code, but I
+      dnl the code here for now in case we need it again soon; otherwise it
+      dnl should be removed in a couple of months (VZ in Sep 2003)
+      dnl
+      dnl AC_CACHE_CHECK([for pthread_cleanup_push/pop], wx_cv_func_pthread_cleanup_push,
+      dnl [
+      dnl   AC_TRY_COMPILE([#include <pthread.h>],
+      dnl                [
+      dnl                   pthread_cleanup_push(NULL, NULL);
+      dnl                   pthread_cleanup_pop(0);
+      dnl                ], [
+      dnl                   wx_cv_func_pthread_cleanup_push=yes
+      dnl                ], [
+      dnl                   wx_cv_func_pthread_cleanup_push=no
+      dnl                ])
+      dnl ])
+      dnl 
+      dnl if test "$wx_cv_func_pthread_cleanup_push" = "yes"; then
+      dnl     AC_DEFINE(HAVE_THREAD_CLEANUP_FUNCTIONS)
+      dnl fi
 
       dnl mutexattr_t initialization is done in quite different ways on different
       dnl platforms, so check for a few things:
@@ -4031,6 +4216,11 @@ else
                 CFLAGS="$CFLAGS_OLD"
             fi
         ;;
+        *-pc-os2*emx )
+            CFLAGS="$CFLAGS -Zmt -D__ST_MT_ERRNO__"
+            CXXFLAGS="$CXXFLAGS -Zmt -D__ST_MT_ERRNO__"
+            LDFLAGS="$LDFLAGS -Zmt"
+        ;;
       esac
     fi
 fi
@@ -4163,12 +4353,6 @@ dnl ---------------------------------------------------------------------------
 dnl compatibility level
 dnl ---------------------------------------------------------------------------
 
-if test "$WXWIN_COMPATIBILITY_2" = "yes"; then
-    AC_DEFINE(WXWIN_COMPATIBILITY_2)
-
-    WXWIN_COMPATIBILITY_2_2="yes"
-fi
-
 if test "x$WXWIN_COMPATIBILITY_2_2" = "xyes"; then
     AC_DEFINE(WXWIN_COMPATIBILITY_2_2)
 
@@ -4209,6 +4393,106 @@ if test "$wxUSE_UNIX" = "yes"; then
   AC_DEFINE(wxUSE_UNIX)
 fi
 
+dnl ------------------------------------------------------------------------
+dnl DLL support
+dnl ------------------------------------------------------------------------
+
+dnl under MSW we always have LoadLibrary/GetProcAddress
+if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
+
+    HAVE_DL_FUNCS=0
+    HAVE_SHL_FUNCS=0
+    if test "$wxUSE_DYNAMIC_LOADER" = "yes" -o "$wxUSE_DYNLIB_CLASS" = "yes" ; then
+        if test "$USE_DARWIN" = 1; then
+            dnl dlopen/dlerror is implemented in dynlib.cpp for Darwin/Mac OS X
+            HAVE_DL_FUNCS=1
+        else
+            dnl the test is a bit complicated because we check for dlopen() both with
+            dnl and without -ldl and we also try to find shl_load() if there is no
+            dnl dlopen() on this system
+            AC_CHECK_FUNCS(dlopen,
+            [
+                AC_DEFINE(HAVE_DLOPEN)
+                HAVE_DL_FUNCS=1
+            ],
+            [
+                AC_CHECK_LIB(dl, dlopen,
+                            [
+                                AC_DEFINE(HAVE_DLOPEN)
+                                HAVE_DL_FUNCS=1
+                                DL_LINK=" -ldl$DL_LINK"
+                            ],
+                            [
+                                AC_CHECK_FUNCS(shl_load,
+                                              [
+                                                AC_DEFINE(HAVE_SHL_LOAD)
+                                                HAVE_SHL_FUNCS=1
+                                              ],
+                                              [
+                                                AC_CHECK_LIB(shl_load, dld,
+                                                             [
+                                                                HAVE_SHL_FUNCS=1
+                                                                DL_LINK=" -ldld$DL_LINK"
+                                                             ])
+                                              ])
+                            ])
+            ])
+
+        dnl check also for dlerror()
+        if test "$HAVE_DL_FUNCS" = 1; then
+            AC_CHECK_FUNCS(dlerror,
+                AC_DEFINE(HAVE_DLERROR),
+                [
+                    AC_CHECK_LIB(dl, dlerror, AC_DEFINE(HAVE_DLERROR))
+                ]
+            )
+        fi
+        fi
+
+        if test "$HAVE_DL_FUNCS" = 0; then
+            if test "$HAVE_SHL_FUNCS" = 0; then
+              if test "$USE_UNIX" = 1; then
+                  AC_MSG_WARN([Missing dynamic loading support, several features will be disabled])
+                  wxUSE_DYNAMIC_LOADER=no
+                  wxUSE_DYNLIB_CLASS=no
+              else
+                  AC_MSG_WARN([Assuming wxLibrary class works on this platform])
+              fi
+            fi
+        fi
+    fi
+fi
+
+if test "$wxUSE_DYNAMIC_LOADER" = "yes" ; then
+    AC_DEFINE(wxUSE_DYNAMIC_LOADER)
+fi
+if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
+    AC_DEFINE(wxUSE_DYNLIB_CLASS)
+fi
+
+
+dnl ---------------------------------------------------------------------------
+dnl Verify consistency of plugins/monolithic/shared settings:
+dnl ---------------------------------------------------------------------------
+
+if test "$wxUSE_PLUGINS" = "yes" ; then
+    if test "$wxUSE_SHARED" = "no" ; then
+        AC_MSG_WARN([plugins supported only in shared build, disabling])
+        wxUSE_PLUGINS=no
+    fi
+    if test "$wxUSE_MONOLITHIC" = "yes" ; then
+        AC_MSG_WARN([plugins not supported monolithic build, disabling])
+        wxUSE_PLUGINS=no
+    fi
+    if test "$wxUSE_DYNLIB_CLASS" = "no" ; then
+        AC_MSG_WARN([plugins require wxDynamicLibrary, disabling])
+        wxUSE_PLUGINS=no
+    fi
+    if test "$wxUSE_PLUGINS" = "yes" ; then
+        AC_DEFINE(wxUSE_PLUGINS)
+    fi
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl Register non-GUI class options for makefiles and setup.h
 dnl ---------------------------------------------------------------------------
@@ -4225,8 +4509,29 @@ if test "$wxUSE_TIMER" = "yes"; then
   AC_DEFINE(wxUSE_TIMER)
 fi
 
-if test "$wxUSE_WAVE" = "yes"; then
-  AC_DEFINE(wxUSE_WAVE)
+WITH_PLUGIN_SDL=0
+if test "$wxUSE_SOUND" = "yes"; then
+  dnl Unix implementation needs additional checks because audio support
+  dnl comes in many favours:
+  if test "$USE_UNIX" = "1" ; then
+    AC_CHECK_HEADERS([sys/soundcard.h])
+
+    if test "$wxUSE_LIBSDL" != "no"; then
+      AM_PATH_SDL([1.2.0],
+                  [
+                    EXTRALIBS_SDL="$SDL_LIBS"
+                    CXXFLAGS="$CXXFLAGS $SDL_CFLAGS"
+                    AC_DEFINE(wxUSE_LIBSDL)
+                  ],
+                  [wxUSE_LIBSDL="no"])
+      if test "$wxUSE_LIBSDL" = "yes" -a "$wxUSE_PLUGINS" = "yes" ; then
+        WITH_PLUGIN_SDL=1
+      fi
+    fi
+  fi
+  AC_DEFINE(wxUSE_SOUND)
+  SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sound"
 fi
 
 if test "$wxUSE_CMDLINE_PARSER" = "yes"; then
@@ -4261,6 +4566,10 @@ if test "$wxUSE_ZIPSTREAM" = "yes"; then
   AC_DEFINE(wxUSE_ZIPSTREAM)
 fi
 
+if test "$wxUSE_GZSTREAM" = "yes"; then
+  AC_DEFINE(wxUSE_GZSTREAM)
+fi
+
 if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
   AC_DEFINE(wxUSE_ON_FATAL_EXCEPTION)
 fi
@@ -4493,10 +4802,6 @@ if test "$wxUSE_SOCKETS" = "yes"; then
         AC_MSG_WARN([wxSocket not yet supported under MGL... disabled])
         wxUSE_SOCKETS="no"
     fi
-    if test "$wxUSE_COCOA" = "1"; then
-        AC_MSG_WARN([wxSocket not yet supported under Cocoa... disabled])
-        wxUSE_SOCKETS="no"
-    fi
 fi
 
 if test "$wxUSE_SOCKETS" = "yes"; then
@@ -4504,15 +4809,17 @@ if test "$wxUSE_SOCKETS" = "yes"; then
     if test "$TOOLKIT" != "MSW"; then
         dnl under Solaris and OS/2, socket functions live in -lsocket
         AC_CHECK_FUNC(socket,,
-            AC_CHECK_LIB(socket, socket,
-                if test "$INET_LINK" != " -lsocket"; then
-                    INET_LINK="$INET_LINK -lsocket"
-                fi,
-                [
-                    AC_MSG_WARN([socket library not found - sockets will be disabled])
-                    wxUSE_SOCKETS=no
-                ]
-            )
+            [
+                AC_CHECK_LIB(socket, socket,
+                    if test "$INET_LINK" != " -lsocket"; then
+                        INET_LINK="$INET_LINK -lsocket"
+                    fi,
+                    [
+                        AC_MSG_WARN([socket library not found - sockets will be disabled])
+                        wxUSE_SOCKETS=no
+                    ]
+                )
+            ]
         )
     fi
 fi
@@ -4660,79 +4967,7 @@ if test "$wxUSE_GUI" = "yes"; then
     fi
 fi
 
-dnl ------------------------------------------------------------------------
-dnl DLL support
-dnl ------------------------------------------------------------------------
 
-dnl under MSW we always have LoadLibrary/GetProcAddress
-if test "$TOOLKIT" != "MSW"; then
-
-    HAVE_DL_FUNCS=0
-    HAVE_SHL_FUNCS=0
-    if test "$wxUSE_DYNAMIC_LOADER" = "yes" -o "$wxUSE_DYNLIB_CLASS" = "yes" ; then
-        if test "$USE_DARWIN" = 1; then
-            dnl dlopen/dlerror is implemented in dynlib.cpp for Darwin/Mac OS X
-            HAVE_DL_FUNCS=1
-        else
-            dnl the test is a bit complicated because we check for dlopen() both with
-            dnl and without -ldl and we also try to find shl_load() if there is no
-            dnl dlopen() on this system
-            AC_CHECK_FUNCS(dlopen,
-            [
-                AC_DEFINE(HAVE_DLOPEN)
-                HAVE_DL_FUNCS=1
-            ],
-            [
-                AC_CHECK_LIB(dl, dlopen,
-                            [
-                                AC_DEFINE(HAVE_DLOPEN)
-                                HAVE_DL_FUNCS=1
-                                DL_LINK=" -ldl$DL_LINK"
-                            ],
-                            [
-                                AC_CHECK_FUNCS(shl_load,
-                                              [
-                                                AC_DEFINE(HAVE_SHL_LOAD)
-                                                HAVE_SHL_FUNCS=1
-                                              ],
-                                              [
-                                                AC_CHECK_LIB(shl_load, dld,
-                                                             [
-                                                                HAVE_SHL_FUNCS=1
-                                                                DL_LINK=" -ldld$DL_LINK"
-                                                             ])
-                                              ])
-                            ])
-            ])
-
-        dnl check also for dlerror()
-        if test "$HAVE_DL_FUNCS" = 1; then
-            AC_CHECK_FUNCS(dlerror,
-                           AC_DEFINE(HAVE_DLERROR),
-                           AC_CHECK_LIB(dl, dlerror, AC_DEFINE(HAVE_DLERROR)))
-        fi
-        fi
-
-        if test "$HAVE_DL_FUNCS" = 0; then
-            if test "$HAVE_SHL_FUNCS" = 0; then
-              if test "$USE_UNIX" = 1; then
-                  AC_MSG_WARN([Missing dynamic loading support, several features will be disabled])
-                  wxUSE_DYNAMIC_LOADER=no
-                  wxUSE_DYNLIB_CLASS=no
-              else
-                  AC_MSG_WARN([Assuming wxLibrary class works on this platform])
-              fi
-            fi
-        fi
-    fi
-fi
-
-if test "$wxUSE_DYNAMIC_LOADER" = "yes" ; then
-    AC_DEFINE(wxUSE_DYNAMIC_LOADER)
-fi
-if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
-    AC_DEFINE(wxUSE_DYNLIB_CLASS)
-fi
 
 dnl ---------------------------------------------------------------------------
 dnl String stuff
@@ -4839,7 +5074,7 @@ dnl ---------------------------------------------------------------------------
 
 dnl check for ole headers and disable a few features requiring it if not
 dnl present (earlier versions of mingw32 don't have ole2.h)
-if test "$wxUSE_MSW" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
+if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
                           -o "$wxUSE_CLIPBOARD"     = "yes" \
                           -o "$wxUSE_OLE"     = "yes" \
                           -o "$wxUSE_DRAG_AND_DROP" = "yes" \) ; then
@@ -4860,12 +5095,15 @@ if test "$wxUSE_MSW" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
             AC_LANG_RESTORE
             ALL_OBJECTS="$ALL_OBJECTS \$(OLEOBJS)"
             LIBS=" -lrpcrt4 -loleaut32 -lole32 -luuid$LIBS"
-            AC_DEFINE(wxUSE_OLE)
-
+            if test "$wxUSE_OLE" = "yes" ; then
+                AC_DEFINE(wxUSE_OLE)
+            fi
         fi
 
         dnl for OLE clipboard and dnd
-        AC_DEFINE(wxUSE_DATAOBJ)
+        if test "$wxUSE_DATAOBJ" = "yes" ; then
+            AC_DEFINE(wxUSE_DATAOBJ)
+        fi
     else
         AC_MSG_WARN([Some features disabled because OLE headers not found])
 
@@ -5016,6 +5254,11 @@ if test "$wxUSE_IMAGLIST" = "yes"; then
     AC_DEFINE(wxUSE_IMAGLIST)
 fi
 
+if test "$wxUSE_LISTBOOK" = "yes"; then
+    AC_DEFINE(wxUSE_LISTBOOK)
+    USES_CONTROLS=1
+fi
+
 if test "$wxUSE_LISTBOX" = "yes"; then
     AC_DEFINE(wxUSE_LISTBOX)
     USES_CONTROLS=1
@@ -5123,7 +5366,7 @@ if test "$wxUSE_TEXTCTRL" = "yes"; then
 fi
 
 if test "$wxUSE_TOGGLEBTN" = "yes"; then
-    if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1 ; then
+    if test "$wxUSE_COCOA" = 1 ; then
         AC_MSG_WARN([Toggle button not yet supported under Mac OS X... disabled])
         wxUSE_TOGGLEBTN=no
     fi
@@ -5187,16 +5430,12 @@ if test "$wxUSE_POPUPWIN" = "yes"; then
     if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1 ; then
         AC_MSG_WARN([Popup window not yet supported under Mac OS X... disabled])
     else
-        if test "$wxUSE_MOTIF" = 1; then
-            AC_MSG_WARN([wxPopupWindow not yet supported under Motif... disabled])
+        if test "$wxUSE_PM" = 1; then
+            AC_MSG_WARN([wxPopupWindow not yet supported under PM... disabled])
         else
-            if test "$wxUSE_PM" = 1; then
-                AC_MSG_WARN([wxPopupWindow not yet supported under PM... disabled])
-            else
-                AC_DEFINE(wxUSE_POPUPWIN)
+            AC_DEFINE(wxUSE_POPUPWIN)
 
-                USES_CONTROLS=1
-            fi
+            USES_CONTROLS=1
         fi
     fi
 fi
@@ -5217,19 +5456,26 @@ dnl ---------------------------------------------------------------------------
 dnl misc options
 dnl ---------------------------------------------------------------------------
 
-dnl if test "$wxUSE_TREELAYOUT" = "yes"; then
-dnl     AC_DEFINE(wxUSE_TREELAYOUT)
-dnl     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS treelay"
-dnl fi
+dnl please keep the settings below in alphabetical order
+if test "$wxUSE_ACCESSIBILITY" = "yes"; then
+    AC_DEFINE(wxUSE_ACCESSIBILITY)
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS access"
+fi
 
 if test "$wxUSE_DRAGIMAGE" = "yes"; then
     AC_DEFINE(wxUSE_DRAGIMAGE)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dragimag"
 fi
 
-if test "$wxUSE_ACCESSIBILITY" = "yes"; then
-    AC_DEFINE(wxUSE_ACCESSIBILITY)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS access"
+if test "$wxUSE_EXCEPTIONS" = "yes"; then
+    AC_DEFINE(wxUSE_EXCEPTIONS)
+fi
+
+USE_HTML=0
+if test "$wxUSE_HTML" = "yes"; then
+    AC_DEFINE(wxUSE_HTML)
+    USE_HTML=1
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html html/about html/help html/helpview html/printing html/test html/virtual html/widget html/zip htlbox"
 fi
 
 if test "$wxUSE_MENUS" = "yes"; then
@@ -5245,27 +5491,20 @@ if test "$wxUSE_MIMETYPE" = "yes"; then
     AC_DEFINE(wxUSE_MIMETYPE)
 fi
 
-if test "$wxUSE_SYSTEM_OPTIONS" = "yes"; then
-    AC_DEFINE(wxUSE_SYSTEM_OPTIONS)
-if test "$TOOLKIT" = "MSW" -o "$TOOLKIT" = "GTK" -o "$TOOLKIT" = "X11" -o \
-        "$TOOLKIT" = "MOTIF"; then
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS taskbar"
-fi
-
-fi
-
 if test "$wxUSE_MINIFRAME" = "yes"; then
     AC_DEFINE(wxUSE_MINIFRAME)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
 fi
 
-USE_HTML=0
-if test "$wxUSE_HTML" = "yes"; then
-    AC_DEFINE(wxUSE_HTML)
-    USE_HTML=1
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html html/about html/help html/helpview html/printing html/test html/virtual html/widget html/zip htlbox"
+if test "$wxUSE_SYSTEM_OPTIONS" = "yes"; then
+    AC_DEFINE(wxUSE_SYSTEM_OPTIONS)
+    if test "$TOOLKIT" = "MSW" -o "$TOOLKIT" = "GTK" -o "$TOOLKIT" = "X11" -o \
+        "$TOOLKIT" = "MOTIF"; then
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS taskbar"
+    fi
 fi
 
+
 if test "$wxUSE_VALIDATORS" = "yes"; then
     AC_DEFINE(wxUSE_VALIDATORS)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS validate"
@@ -5275,41 +5514,45 @@ if test "$wxUSE_PALETTE" = "yes" ; then
   AC_DEFINE(wxUSE_PALETTE)
 fi
 
-if test "$wxUSE_IMAGE" = "yes" ; then
-  AC_DEFINE(wxUSE_IMAGE)
+if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then
+  dnl Must be done this late because -lunicows must be before all the other libs
+  LIBS=" -lunicows $LIBS"
 fi
 
-if test "$wxUSE_GIF" = "yes" ; then
-  AC_DEFINE(wxUSE_GIF)
-fi
+dnl ---------------------------------------------------------------------------
+dnl wxImage options
+dnl ---------------------------------------------------------------------------
 
-if test "$wxUSE_PCX" = "yes" ; then
-  AC_DEFINE(wxUSE_PCX)
-fi
+if test "$wxUSE_IMAGE" = "yes" ; then
+    AC_DEFINE(wxUSE_IMAGE)
 
-if test "$wxUSE_IFF" = "yes" ; then
-  AC_DEFINE(wxUSE_IFF)
-fi
+    if test "$wxUSE_GIF" = "yes" ; then
+      AC_DEFINE(wxUSE_GIF)
+    fi
 
-if test "$wxUSE_PNM" = "yes" ; then
-  AC_DEFINE(wxUSE_PNM)
-fi
+    if test "$wxUSE_PCX" = "yes" ; then
+      AC_DEFINE(wxUSE_PCX)
+    fi
 
-if test "$wxUSE_XPM" = "yes" ; then
-  AC_DEFINE(wxUSE_XPM)
-fi
+    if test "$wxUSE_IFF" = "yes" ; then
+      AC_DEFINE(wxUSE_IFF)
+    fi
 
-if test "$wxUSE_ICO_CUR" = "yes" ; then
-  AC_DEFINE(wxUSE_ICO_CUR)
-fi
+    if test "$wxUSE_PNM" = "yes" ; then
+      AC_DEFINE(wxUSE_PNM)
+    fi
 
-if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_MSLU" = "yes" ; then
-  dnl Must be done this late because -lunicows must be before all the other libs
-  LIBS=" -lunicows $LIBS"
+    if test "$wxUSE_XPM" = "yes" ; then
+      AC_DEFINE(wxUSE_XPM)
+    fi
+
+    if test "$wxUSE_ICO_CUR" = "yes" ; then
+      AC_DEFINE(wxUSE_ICO_CUR)
+    fi
 fi
 
 dnl ---------------------------------------------------------------------------
-dnl common dialog
+dnl common dialogs
 dnl ---------------------------------------------------------------------------
 
 if test "$wxUSE_CHOICEDLG" = "yes"; then
@@ -5426,6 +5669,10 @@ if test "$wxUSE_HTML" = "yes" ; then
     CORE_GUI_LIBS="html $CORE_GUI_LIBS"
 fi
 
+if test "$wxUSE_GUI" != "yes"; then
+    CORE_GUI_LIBS=""
+fi
+
 AC_SUBST(CORE_BASE_LIBS)
 AC_SUBST(CORE_GUI_LIBS)
 
@@ -5514,15 +5761,12 @@ fi
 
 dnl all -I options we must pass to the compiler
 dnl
-dnl note that the order is somewhat important, in particular the ZLIB_INCLUDE
-dnl and other stuff for the built in libraries should come first to avoid
-dnl including the system headers with the same name (it is particularly
-dnl important for zlib because XFree 4.2.0 has its own, horribly old and
-dnl incompatible, zlib.h) and the wxWindows headers should come first anyhow
+dnl note that the order is somewhat important: wxWindows headers should
+dnl come first and the one with setup.h should be before $(top_srcdir)/include
+dnl in case the latter contains setup.h used by non-autoconf makefiles (e.g.
+dnl CodeWarrior):
 INCLUDES="-I\${top_builddir}lib/wx/include/${TOOLCHAIN_NAME} \
--I\${top_srcdir}/include \
-$REGEX_INCLUDE $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TIFF_INCLUDE \
-$TOOLKIT_INCLUDE"
+-I\${top_srcdir}/include $TOOLKIT_INCLUDE"
 
 dnl C/C++ compiler options used to compile wxWindows
 if test "$GXX" = yes ; then
@@ -5543,6 +5787,7 @@ CXXFLAGS=`echo $CODE_GEN_FLAGS $CODE_GEN_FLAGS_CXX $EXTRA_CFLAGS $CXXFLAGS $CXXW
 LIBS=`echo $LIBS | sed 's/ \+/ /g'`
 EXTRALIBS="$LDFLAGS $LDFLAGS_VERSIONING $LIBS $DMALLOC_LIBS"
 EXTRALIBS_XML="$EXPAT_LINK"
+EXTRALIBS_HTML="$MSPACK_LINK"
 EXTRALIBS_ODBC="$ODBC_LINK"
 if test "$wxUSE_GUI" = "yes"; then
     EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK | sed 's/ \+/ /g'`
@@ -5564,7 +5809,7 @@ WXCONFIG_EXTRALIBS="$LIBS"
 
 dnl wx-config must output builtin 3rd party libs in --libs in static build:
 if test "$wxUSE_REGEX" = "builtin" ; then
-    wxconfig_3rdparty="$wxconfig_3rdparty regex"
+    wxconfig_3rdparty="$wxconfig_3rdparty regex${lib_unicode_suffix}"
 fi
 if test "$wxUSE_EXPAT" = "builtin" ; then
     wxconfig_3rdparty="$wxconfig_3rdparty expat"
@@ -5613,6 +5858,12 @@ else
     MONOLITHIC=0
 fi
 
+if test $wxUSE_PLUGINS = "yes" ; then
+    USE_PLUGINS=1
+else
+    USE_PLUGINS=0
+fi
+
 if test $wxUSE_ODBC != "no" ; then
     USE_ODBC=1
 else
@@ -5630,18 +5881,22 @@ AC_SUBST(OFFICIAL_BUILD)
 
 AC_SUBST(WXUNIV)
 AC_SUBST(MONOLITHIC)
+AC_SUBST(USE_PLUGINS)
 AC_SUBST(LIBS)
 AC_SUBST(EXTRALIBS)
 AC_SUBST(EXTRALIBS_XML)
+AC_SUBST(EXTRALIBS_HTML)
 AC_SUBST(EXTRALIBS_ODBC)
 AC_SUBST(EXTRALIBS_GUI)
 AC_SUBST(EXTRALIBS_OPENGL)
+AC_SUBST(EXTRALIBS_SDL)
+AC_SUBST(WITH_PLUGIN_SDL)
 AC_SUBST(UNICODE)
 AC_SUBST(BUILD)
 AC_SUBST(DEBUG_INFO)
 AC_SUBST(DEBUG_FLAG)
 AC_SUBST(SHARED)
-TOOLKIT_LOWERCASE=`echo $TOOLKIT | tr [[A-Z]] [[a-z]]`
+TOOLKIT_LOWERCASE=`echo $TOOLKIT | tr "[[A-Z]]" "[[a-z]]"`
 AC_SUBST(TOOLKIT_LOWERCASE)
 AC_SUBST(TOOLKIT_VERSION)
 AC_SUBST(SAMPLES_RPATH_FLAG)
@@ -5653,16 +5908,16 @@ AC_BAKEFILE
 
 dnl Find out if we have to define NO_GCC_PRAGMA and WX_PRECOMP:
 if test $GCC_PCH = 1 ; then
+    CODE_GEN_FLAGS="-DWX_PRECOMP -DNO_GCC_PRAGMA $CODE_GEN_FLAGS"
     CPPFLAGS="-DWX_PRECOMP -DNO_GCC_PRAGMA $CPPFLAGS"
 else
     case "${host}" in
         powerpc-*-darwin* )
             dnl Some Apple's GCC version are broken and can't handle the
             dnl pragmas:
+            CODE_GEN_FLAGS="-DNO_GCC_PRAGMA $CODE_GEN_FLAGS"
             CPPFLAGS="-DNO_GCC_PRAGMA $CPPFLAGS"
             ;;
-        *)
-            ;;
     esac
 fi
 
@@ -5678,7 +5933,6 @@ dnl       only removes the Unix-like part of the introduced line break.
 SAMPLES_SUBDIRS="`echo $SAMPLES_SUBDIRS | tr -s ' ' | tr ' ' '\n' | sort | uniq | tr '\n' ' '| tr -d '\r'`"
 
 dnl makefile variables
-AC_SUBST(LEX_STEM)
 AC_SUBST(PATH_IFS)
 
 dnl global options
@@ -5738,6 +5992,7 @@ AC_SUBST(WXCONFIG_LIBS_STATIC)
 AC_SUBST(WXCONFIG_LIBS_STATIC_GL)
 AC_SUBST(WXCONFIG_INCLUDE)
 AC_SUBST(WXCONFIG_RPATH)
+AC_SUBST(WXCONFIG_LDFLAGS_GUI)
 AC_SUBST(WX_LARGEFILE_FLAGS)
 AC_SUBST(CODE_GEN_FLAGS)
 AC_SUBST(CODE_GEN_FLAGS_CXX)
@@ -5773,7 +6028,6 @@ AC_SUBST(WX_RESOURCES_MACOSX_DATA)
 
 dnl additional for Mac OS X
 AC_SUBST(DEREZ)
-AC_SUBST(MACOSX_BUNDLE)
 AC_SUBST(LIBWXMACRES)
 AC_SUBST(MACRESCOMP)
 AC_SUBST(MACSETFILE)
@@ -5781,6 +6035,7 @@ AC_SUBST(MACRESWXCONFIG)
 
 dnl other tools
 AC_SUBST(GCC)
+AC_SUBST(GCC_SEARCHES_USR_LOCAL_INCLUDE)
 AC_SUBST(DLLTOOL)
 AC_SUBST(AS)
 AC_SUBST(NM)
@@ -5883,7 +6138,8 @@ for subdir in `echo $SUBDIRS`; do
             else dnl utils
                 makefiles="utils/HelpGen/Makefile.in \
                            utils/HelpGen/src/Makefile.in \
-                           utils/makegen/Makefile.in"
+                           utils/tex2rtf/Makefile.in \
+                           utils/tex2rtf/src/Makefile.in"
             fi
         fi
 
@@ -5901,7 +6157,7 @@ dnl report on what we decided to do
 echo
 echo "Configured wxWindows ${WX_VERSION} for \`${host}'"
 echo ""
-echo "  Which GUI toolkit should wxWindows use?                 ${TOOLKIT:-base only}"
+echo "  Which GUI toolkit should wxWindows use?                 ${TOOLKIT_LOWERCASE:-base only}"
 echo "  Should wxWindows be compiled into single library?       ${wxUSE_MONOLITHIC:-yes}"
 
 echo "  Should wxWindows be compiled in debug mode?             ${wxUSE_DEBUG:-no}"
@@ -5909,7 +6165,6 @@ echo "  Should wxWindows be linked as a shared library?         ${wxUSE_SHARED:-
 echo "  Should wxWindows be compiled in Unicode mode?           ${wxUSE_UNICODE:-no}"
 
 echo "  What level of wxWindows compatibility should be enabled?"
-echo "                                       wxWindows 2.0      ${WXWIN_COMPATIBILITY_2:-no}"
 echo "                                       wxWindows 2.2      ${WXWIN_COMPATIBILITY_2_2:-no}"
 echo "                                       wxWindows 2.4      ${WXWIN_COMPATIBILITY_2_4:-yes}"
 
@@ -5918,9 +6173,14 @@ echo "                                       jpeg               ${wxUSE_LIBJPEG-
 echo "                                       png                ${wxUSE_LIBPNG-none}"
 echo "                                       regex              ${wxUSE_REGEX}"
 echo "                                       tiff               ${wxUSE_LIBTIFF-none}"
+if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
+echo "                                       xpm                ${wxUSE_LIBXPM-none}"
+fi
 echo "                                       zlib               ${wxUSE_ZLIB}"
 echo "                                       odbc               ${wxUSE_ODBC}"
 echo "                                       expat              ${wxUSE_EXPAT}"
+echo "                                       libmspack          ${wxUSE_LIBMSPACK}"
+echo "                                       sdl                ${wxUSE_LIBSDL}"
 
 echo ""