]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Fixed toolbar crash for MinGW/Cygwin
[wxWidgets.git] / configure.in
index 4ecba3ab6a7f826ed899ae5c3c7fbb73ab2a2749..43621eef1946b827c8f3dd926df35fa0cea7a973 100644 (file)
@@ -11,329 +11,12 @@ dnl
 dnl Version: $Id$
 dnl ---------------------------------------------------------------------------
 
-dnl ===========================================================================
-dnl macros to find the a file in the list of include/lib paths
-dnl ===========================================================================
-
-dnl ---------------------------------------------------------------------------
-dnl call WX_PATH_FIND_INCLUDES(search path, header name), sets ac_find_includes
-dnl to the full name of the file that was found or leaves it empty if not found
-dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_PATH_FIND_INCLUDES,
-[
-ac_find_includes=
-for ac_dir in $1;
-  do
-    if test -f "$ac_dir/$2"; then
-      ac_find_includes=$ac_dir
-      break
-    fi
-  done
-])
-
-dnl ---------------------------------------------------------------------------
-dnl call WX_PATH_FIND_LIBRARIES(search path, header name), sets ac_find_libraries
-dnl to the full name of the file that was found or leaves it empty if not found
-dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_PATH_FIND_LIBRARIES,
-[
-ac_find_libraries=
-for ac_dir in $1;
-  do
-    for ac_extension in a so sl dylib; do
-      if test -f "$ac_dir/lib$2.$ac_extension"; then
-        ac_find_libraries=$ac_dir
-        break 2
-      fi
-    done
-  done
-])
-
-dnl ---------------------------------------------------------------------------
-dnl Path to include, already defined
-dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_INCLUDE_PATH_EXIST,
-[
-  ac_path_to_include=$1
-  echo "$2" | grep "\-I$1" > /dev/null
-  result=$?
-  if test $result = 0; then
-    ac_path_to_include=""
-  else
-    ac_path_to_include=" -I$1"
-  fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl Path to link, already defined
-dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_LINK_PATH_EXIST,
-[
-  echo "$2" | grep "\-L$1" > /dev/null
-  result=$?
-  if test $result = 0; then
-    ac_path_to_link=""
-  else
-    ac_path_to_link=" -L$1"
-  fi
-])
-
-dnl ===========================================================================
-dnl C++ features test
-dnl ===========================================================================
-
-dnl ---------------------------------------------------------------------------
-dnl WX_CPP_NEW_HEADERS checks whether the compiler has "new" <iostream> header
-dnl or only the old <iostream.h> one - it may be generally assumed that if
-dnl <iostream> exists, the other "new" headers (without .h) exist too.
-dnl
-dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false-or-cross-compiling)
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN(WX_CPP_NEW_HEADERS,
-[
-  if test "$cross_compiling" = "yes"; then
-    ifelse([$2], , :, [$2])
-  else
-    AC_LANG_SAVE
-    AC_LANG_CPLUSPLUS
-
-    AC_CHECK_HEADERS(iostream)
-
-    if test "$ac_cv_header_iostream" = "yes" ; then
-      ifelse([$1], , :, [$1])
-    else
-      ifelse([$2], , :, [$2])
-    fi
-
-    AC_LANG_RESTORE
-  fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl WX_CPP_BOOL checks whether the C++ compiler has a built in bool type
-dnl
-dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN(WX_CPP_BOOL,
-[
-  AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool,
-  [
-    AC_LANG_SAVE
-    AC_LANG_CPLUSPLUS
-
-    AC_TRY_COMPILE(
-      [
-      ],
-      [
-        bool b = true;
-
-        return 0;
-      ],
-      [
-        wx_cv_cpp_bool=yes
-      ],
-      [
-        wx_cv_cpp_bool=no
-      ]
-    )
-
-    AC_LANG_RESTORE
-  ])
-
-  if test "$wx_cv_cpp_bool" = "yes"; then
-    AC_DEFINE(HAVE_BOOL)
-  fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl a slightly better AC_C_BIGENDIAN macro which allows cross-compiling
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN(WX_C_BIGENDIAN,
-[AC_CACHE_CHECK(whether byte ordering is bigendian, ac_cv_c_bigendian,
-[ac_cv_c_bigendian=unknown
-# See if sys/param.h defines the BYTE_ORDER macro.
-AC_TRY_COMPILE([#include <sys/types.h>
-#include <sys/param.h>], [
-#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN
- bogus endian macros
-#endif], [# It does; now see whether it defined to BIG_ENDIAN or not.
-AC_TRY_COMPILE([#include <sys/types.h>
-#include <sys/param.h>], [
-#if BYTE_ORDER != BIG_ENDIAN
- not big endian
-#endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)])
-if test $ac_cv_c_bigendian = unknown; then
-AC_TRY_RUN([main () {
-  /* Are we little or big endian?  From Harbison&Steele.  */
-  union
-  {
-    long l;
-    char c[sizeof (long)];
-  } u;
-  u.l = 1;
-  exit (u.c[sizeof (long) - 1] == 1);
-}], ac_cv_c_bigendian=no, ac_cv_c_bigendian=yes, ac_cv_c_bigendian=unknown)
-fi])
-if test $ac_cv_c_bigendian = unknown; then
-  AC_MSG_WARN([Assuming little-endian target machine - this may be overriden by adding the line "ac_cv_c_bigendian=${ac_cv_c_bigendian='yes'}" to config.cache file])
-fi
-if test $ac_cv_c_bigendian = yes; then
-  AC_DEFINE(WORDS_BIGENDIAN)
-fi
-])
-
-dnl ---------------------------------------------------------------------------
-dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file
-dnl ---------------------------------------------------------------------------
-
-AC_DEFUN(WX_ARG_CACHE_INIT,
-        [
-          wx_arg_cache_file="configarg.cache"
-          echo "loading argument cache $wx_arg_cache_file"
-          rm -f ${wx_arg_cache_file}.tmp
-          touch ${wx_arg_cache_file}.tmp
-          touch ${wx_arg_cache_file}
-        ])
-
-AC_DEFUN(WX_ARG_CACHE_FLUSH,
-        [
-          echo "saving argument cache $wx_arg_cache_file"
-          mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file}
-        ])
-
-dnl this macro checks for a three-valued command line --with argument:
-dnl   possible arguments are 'yes', 'no', 'sys', or 'builtin'
-dnl usage: WX_ARG_SYS_WITH(option, helpmessage, variable-name)
-AC_DEFUN(WX_ARG_SYS_WITH,
-        [
-          AC_MSG_CHECKING([for --with-$1])
-          no_cache=0
-          AC_ARG_WITH($1, [$2],
-                      [
-                        if test "$withval" = yes; then
-                          ac_cv_use_$1='$3=yes'
-                        elif test "$withval" = no; then
-                          ac_cv_use_$1='$3=no'
-                        elif test "$withval" = sys; then
-                          ac_cv_use_$1='$3=sys'
-                        elif test "$withval" = builtin; then
-                          ac_cv_use_$1='$3=builtin'
-                        else
-                          AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
-                        fi
-                      ],
-                      [
-                        LINE=`grep "$3" ${wx_arg_cache_file}`
-                        if test "x$LINE" != x ; then
-                          eval "DEFAULT_$LINE"
-                        else
-                          no_cache=1
-                        fi
-
-                        ac_cv_use_$1='$3='$DEFAULT_$3
-                      ])
-
-          eval "$ac_cv_use_$1"
-          if test "$no_cache" != 1; then
-            echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
-          fi
-
-          if test "$$3" = yes; then
-            AC_MSG_RESULT(yes)
-          elif test "$$3" = no; then
-            AC_MSG_RESULT(no)
-          elif test "$$3" = sys; then
-            AC_MSG_RESULT(system version)
-          elif test "$$3" = builtin; then
-            AC_MSG_RESULT(builtin version)
-          else
-            AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
-          fi
-        ])
-
-dnl this macro checks for a command line argument and caches the result
-dnl usage: WX_ARG_WITH(option, helpmessage, variable-name)
-AC_DEFUN(WX_ARG_WITH,
-        [
-          AC_MSG_CHECKING([for --with-$1])
-          no_cache=0
-          AC_ARG_WITH($1, [$2],
-                      [
-                        if test "$withval" = yes; then
-                          ac_cv_use_$1='$3=yes'
-                        else
-                          ac_cv_use_$1='$3=no'
-                        fi
-                      ],
-                      [
-                        LINE=`grep "$3" ${wx_arg_cache_file}`
-                        if test "x$LINE" != x ; then
-                          eval "DEFAULT_$LINE"
-                        else
-                          no_cache=1
-                        fi
-
-                        ac_cv_use_$1='$3='$DEFAULT_$3
-                      ])
-
-          eval "$ac_cv_use_$1"
-          if test "$no_cache" != 1; then
-            echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
-          fi
-
-          if test "$$3" = yes; then
-            AC_MSG_RESULT(yes)
-          else
-            AC_MSG_RESULT(no)
-          fi
-        ])
-
-dnl like WX_ARG_WITH but uses AC_ARG_ENABLE instead of AC_ARG_WITH
-dnl usage: WX_ARG_ENABLE(option, helpmessage, variable-name)
-AC_DEFUN(WX_ARG_ENABLE,
-        [
-          AC_MSG_CHECKING([for --enable-$1])
-          no_cache=0
-          AC_ARG_ENABLE($1, [$2],
-                        [
-                          if test "$enableval" = yes; then
-                            ac_cv_use_$1='$3=yes'
-                          else
-                            ac_cv_use_$1='$3=no'
-                          fi
-                        ],
-                        [
-                          LINE=`grep "$3" ${wx_arg_cache_file}`
-                          if test "x$LINE" != x ; then
-                            eval "DEFAULT_$LINE"
-                          else
-                            no_cache=1
-                          fi
-
-                          ac_cv_use_$1='$3='$DEFAULT_$3
-                        ])
-
-          eval "$ac_cv_use_$1"
-          if test "$no_cache" != 1; then
-            echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp
-          fi
-
-          if test "$$3" = yes; then
-            AC_MSG_RESULT(yes)
-          else
-            AC_MSG_RESULT(no)
-          fi
-        ])
-
 dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
 dnl the file passed to AC_INIT should be specific to our package
-AC_INIT(wx-config.in)
+AC_INIT([wx-config.in])
 
 dnl sets build, host, target variables and the same with _alias
 AC_CANONICAL_SYSTEM
@@ -365,14 +48,14 @@ dnl   libwx_$(TOOLKIT)-$(WX_RELEASE).so.$(WX_CURRENT).$(WX_REVISION).$(WX_AGE)
 
 WX_MAJOR_VERSION_NUMBER=2
 WX_MINOR_VERSION_NUMBER=3
-WX_RELEASE_NUMBER=2
+WX_RELEASE_NUMBER=3
 
 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=1
+WX_CURRENT=2
 WX_REVISION=0
 WX_AGE=0
 
@@ -419,17 +102,19 @@ CPP_MT_FLAG=-D_REENTRANT
 dnl the list of all available toolkits
 dnl
 dnl update NUM_TOOLKITS calculation below when adding a new toolkit here!
-ALL_TOOLKITS="GTK MAC MGL MOTIF MSW PM WINE"
+ALL_TOOLKITS="GTK MAC MGL MICROWIN MOTIF MSW PM WINE X11"
 
 dnl NB: these wxUSE_XXX constants have value of 0 or 1 unlike all the other ones
 dnl     which are either yes or no
 DEFAULT_wxUSE_GTK=0
 DEFAULT_wxUSE_MAC=0
 DEFAULT_wxUSE_MGL=0
+DEFAULT_wxUSE_MICROWIN=0
 DEFAULT_wxUSE_MOTIF=0
 DEFAULT_wxUSE_MSW=0
 DEFAULT_wxUSE_PM=0
 DEFAULT_wxUSE_WINE=0
+DEFAULT_wxUSE_X11=0
 
 dnl these are the values which are really default for the given platform -
 dnl they're not cached and are only used if no --with-toolkit was given *and*
@@ -437,10 +122,12 @@ dnl nothing was found in the cache
 DEFAULT_DEFAULT_wxUSE_GTK=0
 DEFAULT_DEFAULT_wxUSE_MAC=0
 DEFAULT_DEFAULT_wxUSE_MGL=0
+DEFAULT_DEFAULT_wxUSE_MICROWIN=0
 DEFAULT_DEFAULT_wxUSE_MOTIF=0
 DEFAULT_DEFAULT_wxUSE_MSW=0
 DEFAULT_DEFAULT_wxUSE_PM=0
 DEFAULT_DEFAULT_wxUSE_WINE=0
+DEFAULT_DEFAULT_wxUSE_X11=0
 
 PROGRAM_EXT=
 SO_SUFFIX=so
@@ -568,7 +255,6 @@ case "${host}" in
     AC_DEFINE(__DOS__)
     PROGRAM_EXT=".exe"
     DEFAULT_DEFAULT_wxUSE_MGL=1
-    DEFAULT_DEFAULT_wxUSE_SHARED=0
   ;;
 
   *-pc-os2_emx | *-pc-os2-emx )
@@ -606,7 +292,7 @@ fi
 
 dnl check for glibc version
 if test "$USE_LINUX" = 1; then
-    AC_CACHE_CHECK([for glibc 2.1 or later], wx_lib_glibc21,
+    AC_CACHE_CHECK([for glibc 2.1 or later], wx_lib_glibc21,[
         AC_TRY_COMPILE([#include <features.h>],
             [
                 #if !__GLIBC_PREREQ(2, 1)
@@ -620,7 +306,7 @@ if test "$USE_LINUX" = 1; then
                 wx_lib_glibc21=no
             ]
         )
-    )
+    ])
     if test "$wx_lib_glibc21" = "yes"; then
         AC_DEFINE(wxHAVE_GLIBC2)
     fi
@@ -644,6 +330,8 @@ DEBUG_CONFIGURE=0
 if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_UNIVERSAL=no
 
+  DEFAULT_wxUSE_NANOX=no
+
   DEFAULT_wxUSE_THREADS=yes
 
   DEFAULT_wxUSE_SHARED=yes
@@ -660,7 +348,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_MEM_TRACING=no
   DEFAULT_wxUSE_DEBUG_CONTEXT=no
   DEFAULT_wxUSE_DMALLOC=no
-  DEFAULT_wxUSE_PRECOMP=yes
+  DEFAULT_wxUSE_PRECOMP=no
   DEFAULT_wxUSE_APPLE_IEEE=no
 
   DEFAULT_wxUSE_LOG=yes
@@ -677,7 +365,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_LIBJPEG=no
   DEFAULT_wxUSE_LIBTIFF=no
   DEFAULT_wxUSE_ODBC=no
-  DEFAULT_wxUSE_FREETYPE=no
   DEFAULT_wxUSE_OPENGL=no
 
   DEFAULT_wxUSE_ON_FATAL_EXCEPTION=no
@@ -699,9 +386,9 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_STREAMS=no
   DEFAULT_wxUSE_SOCKETS=no
   DEFAULT_wxUSE_DIALUP_MANAGER=no
-  DEFAULT_wxUSE_SERIAL=no
   DEFAULT_wxUSE_JOYSTICK=no
   DEFAULT_wxUSE_DYNLIB_CLASS=no
+  DEFAULT_wxUSE_DYNAMIC_LOADER=no
   DEFAULT_wxUSE_LONGLONG=no
   DEFAULT_wxUSE_GEOMETRY=no
 
@@ -730,8 +417,13 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_TREELAYOUT=no
   DEFAULT_wxUSE_METAFILE=no
   DEFAULT_wxUSE_MIMETYPE=no
-  DEFAULT_wxUSE_SYSTEM_OPTIONS=yes
-
+  DEFAULT_wxUSE_SYSTEM_OPTIONS=no
+  DEFAULT_wxUSE_PROTOCOL=no
+  DEFAULT_wxUSE_PROTOCOL_HTTP=no
+  DEFAULT_wxUSE_PROTOCOL_FTP=no
+  DEFAULT_wxUSE_PROTOCOL_FILE=no
+  DEFAULT_wxUSE_URL=no
+  
   DEFAULT_wxUSE_COMMONDLGS=no
   DEFAULT_wxUSE_CHOICEDLG=no
   DEFAULT_wxUSE_COLOURDLG=no
@@ -798,6 +490,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_TIPWINDOW=no
 
   DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE_MSLU=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=no
@@ -805,10 +498,14 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_GIF=no
   DEFAULT_wxUSE_PCX=no
   DEFAULT_wxUSE_PNM=no
+  DEFAULT_wxUSE_IFF=no
   DEFAULT_wxUSE_XPM=no
+  DEFAULT_wxUSE_ICO_CUR=no
 else
   DEFAULT_wxUSE_UNIVERSAL=no
 
+  DEFAULT_wxUSE_NANOX=no
+
   DEFAULT_wxUSE_THREADS=yes
 
   DEFAULT_wxUSE_SHARED=yes
@@ -825,7 +522,7 @@ else
   DEFAULT_wxUSE_MEM_TRACING=no
   DEFAULT_wxUSE_DEBUG_CONTEXT=no
   DEFAULT_wxUSE_DMALLOC=no
-  DEFAULT_wxUSE_PRECOMP=yes
+  DEFAULT_wxUSE_PRECOMP=no
   DEFAULT_wxUSE_APPLE_IEEE=yes
 
   DEFAULT_wxUSE_LOG=yes
@@ -841,7 +538,6 @@ else
   DEFAULT_wxUSE_LIBJPEG=yes
   DEFAULT_wxUSE_LIBTIFF=yes
   DEFAULT_wxUSE_ODBC=no
-  DEFAULT_wxUSE_FREETYPE=no
   DEFAULT_wxUSE_OPENGL=no
 
   DEFAULT_wxUSE_ON_FATAL_EXCEPTION=yes
@@ -863,9 +559,9 @@ else
   DEFAULT_wxUSE_STREAMS=yes
   DEFAULT_wxUSE_SOCKETS=yes
   DEFAULT_wxUSE_DIALUP_MANAGER=yes
-  DEFAULT_wxUSE_SERIAL=yes
   DEFAULT_wxUSE_JOYSTICK=yes
   DEFAULT_wxUSE_DYNLIB_CLASS=yes
+  DEFAULT_wxUSE_DYNAMIC_LOADER=no
   DEFAULT_wxUSE_LONGLONG=yes
   DEFAULT_wxUSE_GEOMETRY=yes
 
@@ -895,6 +591,11 @@ else
   DEFAULT_wxUSE_METAFILE=yes
   DEFAULT_wxUSE_MIMETYPE=yes
   DEFAULT_wxUSE_SYSTEM_OPTIONS=yes
+  DEFAULT_wxUSE_PROTOCOL=yes
+  DEFAULT_wxUSE_PROTOCOL_HTTP=yes
+  DEFAULT_wxUSE_PROTOCOL_FTP=yes
+  DEFAULT_wxUSE_PROTOCOL_FILE=yes
+  DEFAULT_wxUSE_URL=yes
 
   DEFAULT_wxUSE_COMMONDLGS=yes
   DEFAULT_wxUSE_CHOICEDLG=yes
@@ -962,14 +663,17 @@ else
   DEFAULT_wxUSE_TIPWINDOW=yes
 
   DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE_MSLU=yes
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=yes
   DEFAULT_wxUSE_IMAGE=yes
   DEFAULT_wxUSE_GIF=yes
   DEFAULT_wxUSE_PCX=yes
+  DEFAULT_wxUSE_IFF=no
   DEFAULT_wxUSE_PNM=yes
   DEFAULT_wxUSE_XPM=yes
+  DEFAULT_wxUSE_ICO_CUR=yes
 fi
 
 dnl WX_ARG_WITH should be used to select whether an external package will be
@@ -1011,13 +715,15 @@ AC_ARG_WITH(wine,          [  --with-wine             use WINE], [wxUSE_WINE="$w
 AC_ARG_WITH(msw,           [  --with-msw              use MS-Windows], [wxUSE_MSW="$withval" CACHE_MSW TOOLKIT_GIVEN=1])
 AC_ARG_WITH(pm,            [  --with-pm               use OS/2 Presentation Manager], [wxUSE_PM="$withval" CACHE_PM=1 TOOLKIT_GIVEN=1])
 AC_ARG_WITH(mgl,           [  --with-mgl              use SciTech MGL], [wxUSE_MGL="$withval" CACHE_MGL=1 TOOLKIT_GIVEN=1])
+AC_ARG_WITH(microwin,      [  --with-microwin         use MicroWindows], [wxUSE_MICROWIN="$withval" CACHE_MICROWIN=1 TOOLKIT_GIVEN=1])
+AC_ARG_WITH(x11,           [  --with-x11              use X11], [wxUSE_X11="$withval" wxUSE_UNIVERSAL="yes" CACHE_X11=1 TOOLKIT_GIVEN=1])
+WX_ARG_ENABLE(nanox,       [  --enable-nanox          use NanoX], wxUSE_NANOX)
 
 AC_ARG_ENABLE(gtk2,        [  --enable-gtk2           use GTK+ 2.0 if available (EXPERIMENTAL)],wxUSE_GTK2=1,wxUSE_GTK2=0)
 
 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(freetype,  [  --with-freetype         use freetype (font rasterizer)], wxUSE_FREETYPE)
 WX_ARG_WITH(opengl,        [  --with-opengl           use OpenGL (or Mesa)], wxUSE_OPENGL)
 
 fi
@@ -1069,6 +775,10 @@ dnl ---------------------------------------------------------------------------
 WX_ARG_ENABLE(intl,          [  --enable-intl           use internationalization system], wxUSE_INTL)
 WX_ARG_ENABLE(config,        [  --enable-config         use wxConfig (and derived) classes], wxUSE_CONFIG)
 
+WX_ARG_ENABLE(protocols,     [  --enable-protocols      use wxProtocol and derived classes], wxUSE_PROTOCOL)
+WX_ARG_ENABLE(ftp,           [  --enable-ftp            use wxFTP (requires wxProtocol], wxUSE_PROTOCOL_FTP)
+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(ipc,           [  --enable-ipc            use interprocess communication (wxSocket etc.)], wxUSE_IPC)
@@ -1083,6 +793,7 @@ WX_ARG_ENABLE(timer,         [  --enable-timer          use wxTimer class], wxUS
 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(geometry,      [  --enable-geometry       use geometry class], wxUSE_GEOMETRY)
 WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxUSE_LOG)
@@ -1093,6 +804,7 @@ WX_ARG_ENABLE(textbuf,       [  --enable-textbuf        use wxTextBuffer class],
 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(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(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)
@@ -1106,12 +818,18 @@ WX_ARG_ENABLE(snglinst,      [  --enable-snglinst       use wxSingleInstanceChec
 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(url,           [  --enable-url            use wxURL class], wxUSE_URL)
+WX_ARG_ENABLE(protocol,      [  --enable-protocol       use wxProtocol class], wxUSE_PROTOCOL)
+WX_ARG_ENABLE(protocol_http, [  --enable-protocol-http  HTTP support in wxProtocol], wxUSE_PROTOCOL_HTTP)
+WX_ARG_ENABLE(protocol_ftp,  [  --enable-protocol-ftp   FTP support in wxProtocol], wxUSE_PROTOCOL_FTP)
+WX_ARG_ENABLE(protocol_file, [  --enable-protocol-file  FILE support in wxProtocol], wxUSE_PROTOCOL_FILE)
+
+
 dnl ---------------------------------------------------------------------------
 dnl "big" options (i.e. those which change a lot of things throughout the library)
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_ENABLE(threads,     [  --enable-threads        use threads], wxUSE_THREADS)
-WX_ARG_ENABLE(serial,      [  --enable-serial         use class serialization], wxUSE_SERIAL)
 
 if test "$wxUSE_GUI" = "yes"; then
 
@@ -1329,8 +1047,10 @@ WX_ARG_ENABLE(palette,     [  --enable-palette        use wxPalette class], wxUS
 WX_ARG_ENABLE(image,       [  --enable-image          use wxImage class], wxUSE_IMAGE)
 WX_ARG_ENABLE(gif,         [  --enable-gif            use gif images (GIF file format)], wxUSE_GIF)
 WX_ARG_ENABLE(pcx,         [  --enable-pcx            use pcx images (PCX file format)], wxUSE_PCX)
+WX_ARG_ENABLE(iff,         [  --enable-iff            use iff images (IFF file format)], wxUSE_IFF)
 WX_ARG_ENABLE(pnm,         [  --enable-pnm            use pnm images (PNM file format)], wxUSE_PNM)
 WX_ARG_ENABLE(xpm,         [  --enable-xpm            use xpm images (XPM file format)], wxUSE_XPM)
+WX_ARG_ENABLE(ico_cur,     [  --enable-icocur         use Windows ICO and CUR formats], wxUSE_ICO_CUR)
 
 fi
 dnl for GUI only
@@ -1371,7 +1091,7 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl we suppose that expr is available (maybe there is a better way to do
     dnl this? what about using ALL_TOOLKITS? TODO)
     NUM_TOOLKITS=`expr ${wxUSE_GTK:-0} + ${wxUSE_MOTIF:-0} + ${wxUSE_MAC:-0}  \
-                  + ${wxUSE_WINE:-0} + ${wxUSE_MSW:-0} + ${wxUSE_MGL:-0}`
+                  + ${wxUSE_WINE:-0} + ${wxUSE_MSW:-0} + ${wxUSE_MGL:-0} + ${wxUSE_MICROWIN:-0} + ${wxUSE_X11:-0}`
 
     dnl Allow wxUSE_PM only for OS/2 with EMX.
     dnl Path separator; ':' for unix.
@@ -1499,8 +1219,29 @@ dnl strip command
 dnl   defines STRIP as strip or nothing if not found
 AC_CHECK_PROG(STRIP, strip, strip, true)
 
+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 |
+            egrep qs GNU > /dev/null); then
+        wx_cv_prog_makeisgnu="yes"
+    else
+        wx_cv_prog_makeisgnu="no"
+    fi
+])
+
+if test "x$wx_cv_prog_makeisgnu" = "xyes"; then
+    IF_GNU_MAKE=""
+else
+    IF_GNU_MAKE="#"
+fi
+
+AC_SUBST(IF_GNU_MAKE)
+
+dnl we don't need to check for VPATH support in GNU make - it does have it
+if test "x$wx_cv_prog_makeisgnu" != "xyes"; then
 dnl check if VPATH works
-AC_MSG_CHECKING(make for VPATH support)
+AC_CACHE_CHECK([if make supports VPATH], wx_cv_prog_makevpath, [
 dnl create Makefile
 cat - << EOF > confMake
 check : file
@@ -1517,10 +1258,14 @@ RESULT=$?
 rm -f sub/file check final_file confMake
 rmdir sub
 if test "$RESULT" = 0; then
-  AC_MSG_RESULT(yes)
+  wx_cv_prog_makevpath="yes"
 else
-  AC_MSG_RESULT(no)
-  AC_MSG_ERROR([
+  wx_cv_prog_makevpath="no"
+fi
+])
+
+if test "x$wx_cv_prog_makevpath" != "xyes"; then
+AC_MSG_ERROR([
 You need a make-utility that is able to use the variable
 VPATH correctly.
 If your version of make does not support VPATH correctly,
@@ -1531,7 +1276,8 @@ setenv MAKE gmake; ./configure  for csh-type shells
 Also please do remember to use gmake in this case every time
 you are trying to compile.
 ])
-fi
+fi dnl make without VPATH
+fi dnl not GNU make
 
 dnl YACC checks
 dnl   defines YACC with the appropriate command
@@ -1722,32 +1468,41 @@ PNG_INCLUDE=
 PNG_LINK=
 if test "$wxUSE_LIBPNG" != "no" ; then
     AC_DEFINE(wxUSE_LIBPNG)
+    
+    if test "$wxUSE_MGL" = 1 -a "$wxUSE_LIBPNG" = "builtin" ; then
+        AC_MSG_WARN([wxMGL doesn't work with builtin png library, will use MGL one instead])
+        wxUSE_LIBPNG=sys
+    fi
 
     dnl for the check below to have a chance to succeed, we must already have
-    dnl libz somewhere
-    if test "$wxUSE_LIBPNG" = "sys" -a "$wxUSE_ZLIB" != "sys" ; then
+    dnl libz somewhere (don't do this when bulding wxMGL since its libpng
+    dnl doesn't depend on zlib)
+    if test "$wxUSE_MGL" != 1 -a "$wxUSE_LIBPNG" = "sys" -a "$wxUSE_ZLIB" != "sys" ; then
         AC_MSG_WARN([system png library doesn't work without system zlib, will use built-in instead])
         wxUSE_LIBPNG=builtin
     fi
 
-    if test "$wxUSE_LIBPNG" = "sys" -o "$wxUSE_LIBPNG" = "yes" ; then
-        AC_CHECK_HEADER(png.h,
-                        AC_CHECK_LIB(png, png_check_sig,
-                                     PNG_LINK=" -lpng",
-                                     ,
-                                     [-lz -lm])
-                       )
+    if test "$wxUSE_MGL" != 1 ; then
+        dnl Don't check for libpng when building wxMGL, libmgl contains it
+        if test "$wxUSE_LIBPNG" = "sys" -o "$wxUSE_LIBPNG" = "yes" ; then
+            AC_CHECK_HEADER(png.h,
+                            AC_CHECK_LIB(png, png_check_sig,
+                                         PNG_LINK=" -lpng",
+                                         ,
+                                         [-lz -lm])
+                           )
 
-        if test "x$PNG_LINK" = "x" ; then
-            if test "$wxUSE_LIBPNG" = "sys" ; then
-                AC_MSG_ERROR([system png library not found! Use --with-libpng=builtin to use built-in version])
+            if test "x$PNG_LINK" = "x" ; then
+                if test "$wxUSE_LIBPNG" = "sys" ; then
+                    AC_MSG_ERROR([system png library not found! Use --with-libpng=builtin to use built-in version])
+                else
+                    AC_MSG_WARN([system png library not found, will use built-in instead])
+                    wxUSE_LIBPNG=builtin
+                fi
             else
-                AC_MSG_WARN([system png library not found, will use built-in instead])
-                wxUSE_LIBPNG=builtin
+                dnl we are using the system library
+                wxUSE_LIBPNG=yes
             fi
-        else
-            dnl we are using the system library
-            wxUSE_LIBPNG=yes
         fi
     fi
 
@@ -1767,40 +1522,48 @@ JPEG_LINK=
 if test "$wxUSE_LIBJPEG" != "no" ; then
     AC_DEFINE(wxUSE_LIBJPEG)
 
-    if test "$wxUSE_LIBJPEG" = "sys" -o "$wxUSE_LIBJPEG" = "yes" ; then
-        dnl can't use AC_CHECK_HEADER as jconfig.h defines things like
-        dnl HAVE_STDLIB_H which are already defined and this provokes
-        dnl a compiler warning which configure considers as an error...
-        AC_MSG_CHECKING(for jpeglib.h)
-        AC_CACHE_VAL(ac_cv_header_jpeglib_h,
-            AC_TRY_COMPILE(
-                [
-                    #undef HAVE_STDLIB_H
-                    #include <stdio.h>
-                    #include <jpeglib.h>
-                ],
-                [
-                ],
-                ac_cv_header_jpeglib_h=yes,
-                ac_cv_header_jpeglib_h=no
+    if test "$wxUSE_MGL" = 1 -a "$wxUSE_LIBJPEG" = "builtin" ; then
+        AC_MSG_WARN([wxMGL doesn't work with builtin jpeg library, will use MGL one instead])
+        wxUSE_LIBJPEG=sys
+    fi
+
+    if test "$wxUSE_MGL" != 1 ; then
+        dnl Don't check for libjpeg when building wxMGL, libmgl contains it
+        if test "$wxUSE_LIBJPEG" = "sys" -o "$wxUSE_LIBJPEG" = "yes" ; then
+            dnl can't use AC_CHECK_HEADER as jconfig.h defines things like
+            dnl HAVE_STDLIB_H which are already defined and this provokes
+            dnl a compiler warning which configure considers as an error...
+            AC_MSG_CHECKING(for jpeglib.h)
+            AC_CACHE_VAL(ac_cv_header_jpeglib_h,
+                AC_TRY_COMPILE(
+                    [
+                        #undef HAVE_STDLIB_H
+                        #include <stdio.h>
+                        #include <jpeglib.h>
+                    ],
+                    [
+                    ],
+                    ac_cv_header_jpeglib_h=yes,
+                    ac_cv_header_jpeglib_h=no
+                )
             )
-        )
-        AC_MSG_RESULT($ac_cv_header_jpeglib_h)
+            AC_MSG_RESULT($ac_cv_header_jpeglib_h)
 
-        if test "$ac_cv_header_jpeglib_h" = "yes"; then
-            AC_CHECK_LIB(jpeg, jpeg_read_header, JPEG_LINK=" -ljpeg")
-        fi
+            if test "$ac_cv_header_jpeglib_h" = "yes"; then
+                AC_CHECK_LIB(jpeg, jpeg_read_header, JPEG_LINK=" -ljpeg")
+            fi
 
-        if test "x$JPEG_LINK" = "x" ; then
-            if test "$wxUSE_LIBJPEG" = "sys" ; then
-                AC_MSG_ERROR([system jpeg library not found! Use --with-libjpeg=builtin to use built-in version])
+            if test "x$JPEG_LINK" = "x" ; then
+                if test "$wxUSE_LIBJPEG" = "sys" ; then
+                    AC_MSG_ERROR([system jpeg library not found! Use --with-libjpeg=builtin to use built-in version])
+                else
+                    AC_MSG_WARN([system jpeg library not found, will use built-in instead])
+                    wxUSE_LIBJPEG=builtin
+                fi
             else
-                AC_MSG_WARN([system jpeg library not found, will use built-in instead])
-                wxUSE_LIBJPEG=builtin
+                dnl we are using the system library
+                wxUSE_LIBJPEG=sys
             fi
-        else
-            dnl we are using the system library
-            wxUSE_LIBJPEG=sys
         fi
     fi
 
@@ -1844,41 +1607,6 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
     fi
 fi
 
-dnl ------------------------------------------------------------------------
-dnl Check for freetype library
-dnl ------------------------------------------------------------------------
-
-FREETYPE_INCLUDE=
-FREETYPE_LINK=
-if test "$wxUSE_FREETYPE" != "no" ; then
-    AC_DEFINE(wxUSE_FREETYPE)
-
-    if test "$wxUSE_FREETYPE" = "sys" -o "$wxUSE_FREETYPE" = "yes" ; then
-        AC_CHECK_HEADER(freetype.h,
-                        AC_CHECK_LIB(freetype, FT_Render_Glyph,
-                                     FREETYPE_LINK=" -lfreetype",
-                                     ,
-                                     [-lm])
-                       )
-
-        if test "x$FREETYPE_LINK" = "x" ; then
-            if test "$wxUSE_FREETYPE" = "sys" ; then
-                AC_MSG_ERROR([system freetype library not found! Use --with-freetype=builtin to use built-in version])
-            else
-                AC_MSG_WARN([system freetype library not found, will use built-in instead])
-                wxUSE_FREETYPE=builtin
-            fi
-        else
-            dnl we are using the system library
-            wxUSE_FREETYPE=sys
-        fi
-    fi
-
-    if test "$wxUSE_FREETYPE" = "builtin" ; then
-        FREETYPE_INCLUDE="-I\${top_srcdir}/src/freetype"
-    fi
-fi
-
 dnl ----------------------------------------------------------------
 dnl search for toolkit (widget sets)
 dnl ----------------------------------------------------------------
@@ -1934,7 +1662,7 @@ if test "$USE_WIN32" = 1 ; then
 
     dnl add extra odbc libs if we have compiled in odbc
     if test "$wxUSE_ODBC" = "yes" ; then
-        LIBS=" -lodbc32 -lole32 -loleaut32$LIBS"
+        LIBS=" -lodbc32 -lole32 -loleaut32 $LIBS"
     fi
 
     RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__"
@@ -2087,6 +1815,99 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         GUIDIST=MGL_DIST
     fi
 
+    if test "$wxUSE_MICROWIN" = 1; then
+        AC_MSG_CHECKING(for MicroWindows)
+        if test "x$MICROWINDOWS" = x ; then
+            AC_MSG_RESULT(not found)
+            AC_MSG_ERROR([Cannot find MicroWindows library. Make sure MICROWINDOWS is set.])
+        else
+            AC_MSG_RESULT($MICROWINDOWS)
+        fi
+
+        if test -f $MICROWINDOWS/lib/libmwin.a; then
+            AC_MSG_RESULT(MicroWindows' libraries found.)
+        else
+            AC_MSG_ERROR([Cannot find MicroWindows libraries, make sure they are compiled.])
+        fi
+
+        TOOLKIT_INCLUDE="-I$MICROWINDOWS/include"
+        GUI_TK_LIBRARY="-L$MICROWINDOWS/lib -lmwin -lmwengine -mwfonts -mwdrivers -mwinlib"
+
+        AFMINSTALL=afminstall
+        TOOLKIT=MICROWIN
+        GUIDIST=MICROWIN_DIST
+        
+        TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__WXUNIVERSAL__ -D__WXMSW__ -D__WIN95__ -D__WIN32__ -DMWIN -DMICROWIN_NOCONTROLS -DMICROWIN_TODO=1"
+    fi
+
+    if test "$wxUSE_X11" = 1; then
+        dnl use standard macros to check for X headers/libs, this brings support
+        dnl for the standard configure options --x-includes and --x-libraries
+        AC_PATH_XTRA
+
+        if test "$no_x" = "yes"; then
+          AC_MSG_ERROR(X11 not found, please use --x-includes and/or --x-libraries options)
+        fi
+
+        GUI_TK_LIBRARY="$X_LIBS"
+        TOOLKIT_INCLUDE="$X_CFLAGS"
+        AFMINSTALL=afminstall
+        COMPILED_X_PROGRAM=0
+
+        if test "$wxUSE_NANOX" = "yes"; then
+            AC_MSG_CHECKING(for MicroWindows/NanoX distribution)
+            if test "x$MICROWIN" = x ; then
+                AC_MSG_RESULT(not found)
+                AC_MSG_ERROR([Cannot find MicroWindows library. Make sure MICROWIN is set.])
+            else
+                AC_MSG_RESULT($MICROWIN)
+            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
+
+        if test "$wxUSE_NANOX" = "yes"; then
+            TOOLKIT_INCLUDE="-I\$(top_srcdir)/include/wx/x11/nanox -I\$(MICROWIN)/src/include $TOOLKIT_INCLUDE"
+            TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__NANOX__"
+            GUI_TK_LIBRARY="$GUI_TK_LIBRARY \$MICROWIN/src/lib/libnano-X.a \$MICROWIN/src/lib/libmwengine.a \$MICROWIN/src/lib/libmwfonts.a \$MICROWIN/src/lib/libmwdrivers.a \$MICROWIN/src/lib/libmwobjects.a"
+        else
+            GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lX11$xpm_link"
+        fi
+
+        TOOLKIT_VPATH="\${top_srcdir}/src/x11"
+        TOOLKIT=X11
+        GUIDIST=X11_DIST
+    fi
+
     if test "$wxUSE_WINE" = 1; then
         AC_CHECK_HEADER(windows.h, [],
         [
@@ -2239,7 +2060,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         CPPFLAGS="$CPPFLAGS -I/Developer/Headers/FlatCarbon -I\${top_srcdir}/src/mac/morefile"
         CFLAGS="$CFLAGS -fpascal-strings"
         CXXFLAGS="$CXXFLAGS -fpascal-strings"
-        TOOLCHAIN_DEFS="$TOOLCHAIN_DEFS -DTARGET_CARBON"
 
         TOOLKIT_VPATH="\${top_srcdir}/src/mac${PATH_IFS}\${top_srcdir}/src/mac/morefile"
         TOOLKIT=MAC
@@ -2264,12 +2084,21 @@ equivalent variable and GTK+ is version 1.2.3 or above.
 
     if test "$wxUSE_UNIVERSAL" = "yes"; then
         ALL_OBJECTS="\$(GUI_LOWLEVEL_OBJS) \${UNIVOBJS}"
+
+        dnl ALL_SOURCES and ALL_HEADERS shouldn't include really all sources
+        dnl and headers as some/most are not needed for wxUniv but I don't
+        dnl have time to add GUI_LOWLEVEL_SOURCES/HEADERS stuff now (TODO!)
+        ALL_SOURCES="\$(ALL_SOURCES) \${UNIV_SOURCES}"
+        ALL_HEADERS="\$(ALL_HEADERS) \${UNIV_HEADERS}"
+
         PORT_FILES="${PORT_FILES} \${top_srcdir}/src/univ/files.lst"
         TOOLKIT_VPATH="\${top_srcdir}/src/univ${PATH_IFS}\${top_srcdir}/src/univ/themes${PATH_IFS}\${top_srcdir}/src/${TOOLKIT_DIR}"
         TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__WXUNIVERSAL__"
         WIDGET_SET=univ
     else
         ALL_OBJECTS="\$(GUIOBJS)"
+        ALL_SOURCES="\$(ALL_SOURCES)"
+        ALL_HEADERS="\$(ALL_HEADERS)"
     fi
 
     ALL_OBJECTS="${ALL_OBJECTS} \$(COMMONOBJS) \$(GENERICOBJS)"
@@ -2282,10 +2111,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
         ALL_OBJECTS="${ALL_OBJECTS} \$(HTMLOBJS)"
     fi
 
-    dnl ODBC objects are Unix only
-    if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then
-        ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
-    fi
     if test "$wxUSE_LIBJPEG" = "builtin" ; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(JPEGOBJS)"
     fi
@@ -2295,9 +2120,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
     if test "$wxUSE_LIBPNG" = "builtin" ; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(PNGOBJS)"
     fi
-    if test "$wxUSE_FREETYPE" = "builtin" ; then
-        ALL_OBJECTS="${ALL_OBJECTS} \$(FREETYPEOBJS)"
-    fi
 
     dnl distribute samples/demos/utils with GUI versions
     GUIDIST="${GUIDIST} SAMPLES_DIST DEMOS_DIST UTILS_DIST MISC_DIST"
@@ -2322,6 +2144,9 @@ else
         TOOLKIT_VPATH="\${top_srcdir}/src/unix"
     fi
 
+    ALL_SOURCES="\$(ALL_SOURCES)"
+    ALL_HEADERS="\$(ALL_HEADERS)"
+
     PORT_FILES="\${top_srcdir}/src/files.lst"
 
     dnl distribute only wxBase sources/headers
@@ -2332,6 +2157,12 @@ fi
 dnl ---------------------------------------------------------------------------
 dnl Optional libraries included when system library is not used
 dnl ---------------------------------------------------------------------------
+
+dnl ODBC objects are Unix only
+if test "$TOOLKIT" != "MSW" -a "$wxUSE_ODBC" = "yes" ; then
+    ALL_OBJECTS="${ALL_OBJECTS} \$(IODBCOBJS)"
+fi
+
 if test "$wxUSE_REGEX" = "builtin" ; then
     ALL_OBJECTS="${ALL_OBJECTS} \$(REGEXOBJS)"
 fi
@@ -2353,7 +2184,11 @@ if test "$wxUSE_OPENGL" = "yes"; then
                 WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],[GL])
                 if test "$ac_find_libraries" != "" ; then
                     WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
-                    LDFLAGS_GL="$LDFLAGS$ac_path_to_link"
+                    if test "$ac_path_to_link" = " -L/usr/lib" ; then
+                        LDFLAGS_GL="$LDFLAGS"
+                    else
+                        LDFLAGS_GL="$LDFLAGS$ac_path_to_link"
+                    fi
                     OPENGL_LIBS="-lGL -lGLU"
                     AC_MSG_RESULT([yes])
                 else
@@ -2488,6 +2323,17 @@ fi
 
 dnl --- the marker for quick search, leave it here: SHARED_LIB_SETUP ---
 
+if test "$wxUSE_SHARED" = "yes"; then
+    case "${host}" in
+      *-pc-os2_emx | *-pc-os2-emx | \
+      *-pc-msdosdjgpp )
+        dnl only static for now
+        wxUSE_SHARED=no
+        AC_MSG_WARN([Host system doesn't support shared libraries, disabling])
+      ;;
+    esac
+fi
+
 if test "$wxUSE_SHARED" = "yes"; then
 
     dnl install targets
@@ -2511,7 +2357,9 @@ if test "$wxUSE_SHARED" = "yes"; then
     case "${host}" in
       *-hp-hpux* )
         dnl default settings are good for gcc but not for the native HP-UX
-        if test "$GCC" != "yes"; then
+        if test "$GCC" == "yes"; then
+            SHARED_LD="${SHARED_LD} ${PIC_FLAG}"
+        else
             dnl no idea why it wants it, but it does
             LDFLAGS="$LDFLAGS -L/usr/lib"
 
@@ -2564,7 +2412,7 @@ if test "$wxUSE_SHARED" = "yes"; then
             SHARED_LD="${CXX} -G -o"
             PIC_FLAG="-KPIC"
             SONAME_FLAGS="-h ${WX_LIBRARY_NAME_SHARED}"
-            SONAME_FLAGS_GL="-h ${WX_LIBRARY_NAME_SHARED}"
+            SONAME_FLAGS_GL="-h ${WX_LIBRARY_NAME_SHARED_GL}"
         fi
       ;;
 
@@ -2597,11 +2445,6 @@ if test "$wxUSE_SHARED" = "yes"; then
         fi
       ;;
 
-      *-pc-os2_emx | *-pc-os2-emx )
-        dnl only static for now
-        wxUSE_SHARED=no
-      ;;
-
       *-*-beos* )
         dnl can't use gcc under BeOS for shared library creation because it
         dnl complains about missing 'main'
@@ -2696,8 +2539,6 @@ dnl defined HAVE_WCTYPE_H
 AC_CHECK_HEADERS(wctype.h)
 dnl defines HAVE_FNMATCH_H
 AC_CHECK_HEADERS(fnmatch.h)
-dnl defines HAVE_ICONV_H (Unix98 encoding conversion routines)
-AC_CHECK_HEADERS(iconv.h)
 dnl defines HAVE_LANGINFO_H (GNU libc locale parameters)
 AC_CHECK_HEADERS(langinfo.h)
 
@@ -3033,23 +2874,9 @@ dnl check for available version of iconv()
 
 AC_LANG_SAVE
 AC_LANG_CPLUSPLUS
-AC_CACHE_CHECK([if iconv() takes char**], wx_cv_iconv_takes_char,
-[
-    AC_TRY_COMPILE([#include <iconv.h>],
-    [
-        char **inbuf, **outbuf;
-        iconv_t cd;
-        size_t insz, outsz;
-        iconv(cd, inbuf, &insz, outbuf, &outsz);
-    ],
-    wx_cv_iconv_takes_char=yes,
-    wx_cv_iconv_takes_char=no)
-])
+AM_ICONV
+LIBS="$LIBICONV $LIBS"
 AC_LANG_RESTORE
-if test "$wx_cv_iconv_takes_char" = yes ; then
-    AC_DEFINE(WX_ICONV_TAKES_CHAR)
-fi
-
 
 dnl check for POSIX signals if we need them
 if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes" -a "$wxUSE_UNIX" = "yes"; then
@@ -3219,7 +3046,7 @@ AC_CHECK_FUNCS(strtok_r)
 AC_LANG_RESTORE
 
 dnl check for inet_addr and inet_aton (these may live either in libc, or in
-dnl libnsl or libresolv)
+dnl libnsl or libresolv or libsocket)
 INET_LINK=
 AC_CHECK_FUNCS(inet_addr,
     AC_DEFINE(HAVE_INET_ADDR),
@@ -3227,7 +3054,10 @@ AC_CHECK_FUNCS(inet_addr,
         AC_CHECK_LIB(nsl, inet_addr,
             INET_LINK="nsl",
             AC_CHECK_LIB(resolv, inet_addr,
-                INET_LINK="resolv"
+                INET_LINK="resolv",
+                AC_CHECK_LIB(socket, inet_addr,
+                    INET_LINK="socket"
+                )
             )
         )
     ]
@@ -3893,10 +3723,17 @@ dnl ------------------------------------------------------------------------
 dnl wxSocket
 dnl ------------------------------------------------------------------------
 
-dnl under MSW we always have sockets
-if test "$TOOLKIT" != "MSW"; then
+dnl VZ: the GUI hooks wxSocket needs are not implemented yet in wxX11
+if test "$wxUSE_SOCKETS" = "yes"; then
+    if test "$TOOLKIT" = "X11"; then
+        AC_MSG_WARN([wxSocket not yet supported under X11... disabled])
+        wxUSE_SOCKETS="no"
+    fi
+fi
 
-    if test "$wxUSE_SOCKETS" = "yes"; then
+if test "$wxUSE_SOCKETS" = "yes"; then
+    dnl under MSW we always have sockets
+    if test "$TOOLKIT" != "MSW"; then
         dnl under Solaris, socket functions live in -lsocket
         AC_CHECK_FUNC(socket,,
             AC_CHECK_LIB(socket, socket,
@@ -3908,12 +3745,13 @@ if test "$TOOLKIT" != "MSW"; then
             )
         )
     fi
+fi
 
+if test "$wxUSE_SOCKETS" = "yes" ; then
     dnl this test may be appropriate if building under cygwin
     dnl right now I'm assuming it also uses the winsock stuff
     dnl like mingw does..  -- RL
-
-    if test "$wxUSE_SOCKETS" = "yes" ; then
+    if test "$TOOLKIT" != "MSW"; then
         dnl determine the type of third argument for getsockname
         AC_CACHE_CHECK([what is the type of the third argument of getsockname],
                        wx_cv_type_getsockname3,
@@ -3967,7 +3805,6 @@ if test "$TOOLKIT" != "MSW"; then
         fi
     fi
 fi
-dnl if !MSW
 
 if test "$wxUSE_SOCKETS" = "yes" ; then
     AC_DEFINE(wxUSE_SOCKETS)
@@ -3988,6 +3825,10 @@ if test "$wxUSE_GUI" = "yes"; then
         AC_MSG_WARN([Joystick not yet supported under Motif... disabled])
         wxUSE_JOYSTICK=no
      fi
+    if test "$TOOLKIT" = "X11"; then
+        AC_MSG_WARN([Joystick not yet supported under X11... disabled])
+        wxUSE_JOYSTICK=no
+     fi
 
     dnl under MSW we always have joystick support
     if test "$TOOLKIT" != "MSW"; then
@@ -4016,7 +3857,7 @@ if test "$TOOLKIT" != "MSW"; then
 
     HAVE_DL_FUNCS=0
     HAVE_SHL_FUNCS=0
-    if test "$wxUSE_DYNLIB_CLASS" = "yes"; then
+    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
@@ -4064,6 +3905,7 @@ if test "$TOOLKIT" != "MSW"; 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])
@@ -4073,11 +3915,10 @@ if test "$TOOLKIT" != "MSW"; then
     fi
 fi
 
-if test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
+if test "$wxUSE_DYNAMIC_LOADER" = "yes" ; then
+    AC_DEFINE(wxUSE_DYNAMIC_LOADER)
+elif test "$wxUSE_DYNLIB_CLASS" = "yes" ; then
     AC_DEFINE(wxUSE_DYNLIB_CLASS)
-else
-    wxUSE_ODBC=no
-    wxUSE_SERIAL=no
 fi
 
 dnl ---------------------------------------------------------------------------
@@ -4090,19 +3931,24 @@ fi
 
 if test "$wxUSE_UNICODE" = "yes" ; then
   AC_DEFINE(wxUSE_UNICODE)
+
+  if test "$wxUSE_MSW" = 1 -a "$wxUSE_UNICODE_MSLU" = "yes"; then
+        AC_CHECK_LIB(unicows,main,
+            [
+                AC_DEFINE(wxUSE_UNICODE_MSLU)
+            ],
+            [
+                AC_MSG_WARN([Compiler doesn't support MSLU (libunicows.a), disabled.
+                             Applications will only run on Windows NT/2000/XP!])
+                wxUSE_UNICODE_MSLU=no
+            ])
+    fi
 fi
 
 if test "$wxUSE_wxUSE_EXPERIMENTAL_PRINTF" = "yes"; then
   AC_DEFINE(wxUSE_EXPERIMENTAL_PRINTF)
 fi
 
-dnl ----------------------------------------------------------------
-dnl serialization support
-dnl ----------------------------------------------------------------
-
-if test "$wxUSE_SERIAL" = "yes" ; then
-    AC_DEFINE(wxUSE_SERIAL)
-fi
 
 dnl ----------------------------------------------------------------
 dnl iODBC support
@@ -4138,7 +3984,7 @@ fi
 
 if test "$wxUSE_MDI_ARCHITECTURE" = "yes"; then
     if test "$wxUSE_UNIVERSAL" = "yes"; then
-        AC_MSG_WARN(MDI not yet supported for wxUNIVERSAL... disabled)
+        AC_MSG_WARN(MDI not yet supported for wxUniversal... disabled)
         wxUSE_MDI_ARCHITECTURE=no
     fi
 
@@ -4197,8 +4043,12 @@ if test "$wxUSE_PROLOGIO" = "yes" ; then
 fi
 
 if test "$wxUSE_RESOURCES" = "yes" ; then
-    AC_DEFINE(wxUSE_RESOURCES)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource"
+    if test "$wxUSE_NANOX" = "yes"; then
+        AC_MSG_WARN([Cannot use resource database functions in NanoX])
+       else
+               AC_DEFINE(wxUSE_RESOURCES)
+               SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS resource"
+    fi
 fi
 
 if test "$wxUSE_X_RESOURCES" = "yes"; then
@@ -4252,10 +4102,17 @@ if test "$wxUSE_IPC" = "yes"; then
 fi
 
 if test "$wxUSE_CLIPBOARD" = "yes"; then
-    AC_DEFINE(wxUSE_CLIPBOARD)
+    if test "$wxUSE_X11" = 1; then
+        AC_MSG_WARN([Clipboard not yet supported under X11... disabled])
+        wxUSE_CLIPBOARD=no
+    fi
+
+    if test "$wxUSE_CLIPBOARD" = "yes"; then
+        AC_DEFINE(wxUSE_CLIPBOARD)
 
-    dnl required by clipboard code in configuration check
-    AC_DEFINE(wxUSE_DATAOBJ)
+        dnl required by clipboard code in configuration check
+        AC_DEFINE(wxUSE_DATAOBJ)
+    fi
 fi
 
 if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
@@ -4271,8 +4128,8 @@ if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
         wxUSE_DRAG_AND_DROP=no
     fi
 
-    if test "$wxUSE_MAC" = 1; then
-        AC_MSG_WARN([Drag and drop not yet supported under Mac OS X... disabled])
+    if test "$wxUSE_X11" = 1; then
+        AC_MSG_WARN([Drag and drop not yet supported under X11... disabled])
         wxUSE_DRAG_AND_DROP=no
     fi
 
@@ -4482,7 +4339,7 @@ if test "$wxUSE_TOGGLEBTN" = "yes"; then
         wxUSE_TOGGLEBTN=no
     fi
     if test "$wxUSE_UNIVERSAL" = "yes"; then
-        AC_MSG_WARN([Toggle button not yet supported under wxUNIVERSAL... disabled])
+        AC_MSG_WARN([Toggle button not yet supported under wxUniversal... disabled])
         wxUSE_TOGGLEBTN=no
     fi
 
@@ -4523,7 +4380,7 @@ if test "$wxUSE_TOOLTIPS" = "yes"; then
             AC_MSG_WARN([wxTooltip not supported under WINE... disabled])
         else
             if test "$wxUSE_UNIVERSAL" = "yes"; then
-                AC_MSG_WARN([wxTooltip not supported yet in wxUNIVERSAL... disabled])
+                AC_MSG_WARN([wxTooltip not supported yet in wxUniversal... disabled])
             else
                 AC_DEFINE(wxUSE_TOOLTIPS)
             fi
@@ -4548,15 +4405,23 @@ if test "$wxUSE_POPUPWIN" = "yes"; then
         if test "$wxUSE_MOTIF" = 1; then
             AC_MSG_WARN([wxPopupWindow not yet supported under Motif... disabled])
         else
-            AC_DEFINE(wxUSE_POPUPWIN)
+            if test "$wxUSE_PM" = 1; then
+                AC_MSG_WARN([wxPopupWindow not yet supported under PM... disabled])
+            else 
+                AC_DEFINE(wxUSE_POPUPWIN)
 
-            USES_CONTROLS=1
+                USES_CONTROLS=1
+            fi
         fi
     fi
 fi
 
 if test "$wxUSE_TIPWINDOW" = "yes"; then
-    AC_DEFINE(wxUSE_TIPWINDOW)
+    if test "$wxUSE_PM" = 1; then
+        AC_MSG_WARN([wxTipWindow not yet supported under PM... disabled])
+    else 
+        AC_DEFINE(wxUSE_TIPWINDOW)
+    fi
 fi
 
 if test "$USES_CONTROLS" = 1; then
@@ -4594,6 +4459,37 @@ if test "$wxUSE_SYSTEM_OPTIONS" = "yes"; then
     AC_DEFINE(wxUSE_SYSTEM_OPTIONS)
 fi
 
+if test "$wxUSE_PROTOCOL" = "yes"; then
+    if test "$wxUSE_SOCKETS" != "yes"; then
+        AC_MSG_WARN(Protocol classes require sockets... disabled)
+        wxUSE_PROTOCOL=no
+    fi
+
+    if test "$wxUSE_PROTOCOL" = "yes"; then
+        AC_DEFINE(wxUSE_PROTOCOL)
+
+        if test "$wxUSE_PROTOCOL_HTTP" = "yes"; then
+            AC_DEFINE(wxUSE_PROTOCOL_HTTP)
+        fi
+        if test "$wxUSE_PROTOCOL_FTP" = "yes"; then
+            AC_DEFINE(wxUSE_PROTOCOL_FTP)
+        fi
+        if test "$wxUSE_PROTOCOL_FILE" = "yes"; then
+            AC_DEFINE(wxUSE_PROTOCOL_FILE)
+        fi
+    fi
+fi
+
+if test "$wxUSE_URL" = "yes"; then
+    if test "$wxUSE_PROTOCOL" != "yes"; then
+        AC_MSG_WARN(wxURL class requires wxProtocol... disabled)
+        wxUSE_URL=no
+    fi
+    if test "$wxUSE_URL" = "yes"; then
+        AC_DEFINE(wxUSE_URL)
+    fi
+fi
+
 if test "$wxUSE_MINIFRAME" = "yes"; then
     AC_DEFINE(wxUSE_MINIFRAME)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS minifram"
@@ -4625,6 +4521,10 @@ if test "$wxUSE_PCX" = "yes" ; then
   AC_DEFINE(wxUSE_PCX)
 fi
 
+if test "$wxUSE_IFF" = "yes" ; then
+  AC_DEFINE(wxUSE_IFF)
+fi
+
 if test "$wxUSE_PNM" = "yes" ; then
   AC_DEFINE(wxUSE_PNM)
 fi
@@ -4633,6 +4533,15 @@ if test "$wxUSE_XPM" = "yes" ; then
   AC_DEFINE(wxUSE_XPM)
 fi
 
+if test "$wxUSE_ICO_CUR" = "yes" ; then
+  AC_DEFINE(wxUSE_ICO_CUR)
+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"
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl common dialog
 dnl ---------------------------------------------------------------------------
@@ -4750,11 +4659,11 @@ dnl FIXME: should this be covered by the conditional above
 dnl given the -lm comment there?  Or should that comment (and
 dnl this one) be removed..   [ 7 Nov 2001 ]
 
-LIBS="$ZLIB_LINK$POSIX4_LINK$INET_LINK$WCHAR_LINK$THREADS_LINK$DL_LINK -lm$LIBS"
+LIBS="$ZLIB_LINK $POSIX4_LINK $INET_LINK $WCHAR_LINK $THREADS_LINK $DL_LINK -lm $LIBS"
 
 if test "$wxUSE_GUI" = "yes"; then
 
-    LIBS=" $GUI_TK_LIBRARY$PNG_LINK$JPEG_LINK$TIFF_LINK$FREETYPE_LINK$LIBS"
+    LIBS="$GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $LIBS"
 
     dnl TODO add checks that these samples will really compile (i.e. all the
     dnl      library features they need are present)
@@ -4774,8 +4683,7 @@ fi
 
 dnl all -I options we must pass to the compiler
 INCLUDES="-I\${top_builddir}/lib/wx/include/${TOOLCHAIN_NAME} -I\${top_srcdir}/include \
-$REGEX_INCLUDE $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TIFF_INCLUDE \
-$FREETYPE_INCLUDE $TOOLKIT_INCLUDE"
+$REGEX_INCLUDE $ZLIB_INCLUDE $PNG_INCLUDE $JPEG_INCLUDE $TIFF_INCLUDE $TOOLKIT_INCLUDE"
 
 dnl wxGTK does not need TOOLKIT includes in wx-config
 if test "$wxUSE_GTK" = 1; then
@@ -4799,7 +4707,7 @@ if test "$GXX" = yes ; then
     fi
 fi
 
-EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG$PROFILE $OPTIMISE $INCLUDES"
+EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG $PROFILE $OPTIMISE $INCLUDES"
 
 CFLAGS=`echo $CFLAGS $EXTRA_CFLAGS $CXXWARNINGS | sed 's/ \\+/ /g'`
 CXXFLAGS=`echo $CXXFLAGS $EXTRA_CFLAGS $CXXWARNINGS | sed 's/ \+/ /g'`
@@ -4875,8 +4783,10 @@ AC_SUBST(WXCONFIG_LIBS_STATIC)
 AC_SUBST(WXCONFIG_LIBS_STATIC_GL)
 AC_SUBST(WXCONFIG_INCLUDE)
 
-dnl what to compile
+dnl the list of files to compile/install
 AC_SUBST(ALL_OBJECTS)
+AC_SUBST(ALL_HEADERS)
+AC_SUBST(ALL_SOURCES)
 
 dnl distribution vars
 AC_SUBST(GUIDIST)
@@ -4931,6 +4841,7 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl we need to pass SAMPLES_SUBDIRS (and some other) to the configure in
     dnl samples and the only way to do it is, again, use the cache
     wx_cv_path_samplesubdirs=$SAMPLES_SUBDIRS
+    wx_cv_if_gnu_make=$IF_GNU_MAKE
     wx_cv_path_ifs=$PATH_IFS
     wx_cv_program_ext=$PROGRAM_EXT
     wx_cv_target_library=$WX_TARGET_LIBRARY
@@ -4938,7 +4849,8 @@ if test "$wxUSE_GUI" = "yes"; then
     wx_cv_target_libtype=$WX_TARGET_LIBRARY_TYPE
     dnl we need to export them because passing them through cache won't
     dnl work when cache=/dev/null (which is default for autoconf 2.50)
-    export wx_cv_path_samplesubdirs wx_cv_path_ifs wx_cv_program_ext \
+    export wx_cv_path_samplesubdirs wx_cv_if_gnu_make \
+           wx_cv_path_ifs wx_cv_program_ext \
            wx_cv_target_library wx_cv_target_library_gl wx_cv_target_libtype
     AC_CONFIG_SUBDIRS(demos samples utils contrib)
 fi