]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
compilation fixes for !wxUSE_STREAMS
[wxWidgets.git] / configure.in
index 188f00ca54cec5e6ad415fd67bb09c7070666648..24b327aadd3af783bc3f5ff385572c9347c32c64 100644 (file)
@@ -19,7 +19,7 @@ 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_DEFUN([WX_PATH_FIND_INCLUDES],
 [
 ac_find_includes=
 for ac_dir in $1;
@@ -35,7 +35,7 @@ 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_DEFUN([WX_PATH_FIND_LIBRARIES],
 [
 ac_find_libraries=
 for ac_dir in $1;
@@ -52,7 +52,7 @@ for ac_dir in $1;
 dnl ---------------------------------------------------------------------------
 dnl Path to include, already defined
 dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_INCLUDE_PATH_EXIST,
+AC_DEFUN([WX_INCLUDE_PATH_EXIST],
 [
   ac_path_to_include=$1
   echo "$2" | grep "\-I$1" > /dev/null
@@ -67,7 +67,7 @@ AC_DEFUN(WX_INCLUDE_PATH_EXIST,
 dnl ---------------------------------------------------------------------------
 dnl Path to link, already defined
 dnl ---------------------------------------------------------------------------
-AC_DEFUN(WX_LINK_PATH_EXIST,
+AC_DEFUN([WX_LINK_PATH_EXIST],
 [
   echo "$2" | grep "\-L$1" > /dev/null
   result=$?
@@ -90,7 +90,7 @@ dnl
 dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false-or-cross-compiling)
 dnl ---------------------------------------------------------------------------
 
-AC_DEFUN(WX_CPP_NEW_HEADERS,
+AC_DEFUN([WX_CPP_NEW_HEADERS],
 [
   if test "$cross_compiling" = "yes"; then
     ifelse([$2], , :, [$2])
@@ -116,7 +116,7 @@ dnl
 dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool
 dnl ---------------------------------------------------------------------------
 
-AC_DEFUN(WX_CPP_BOOL,
+AC_DEFUN([WX_CPP_BOOL],
 [
   AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool,
   [
@@ -151,8 +151,8 @@ 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_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>
@@ -175,7 +175,7 @@ AC_TRY_RUN([main () {
   } 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)
+}], [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])
@@ -189,7 +189,7 @@ dnl ---------------------------------------------------------------------------
 dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file
 dnl ---------------------------------------------------------------------------
 
-AC_DEFUN(WX_ARG_CACHE_INIT,
+AC_DEFUN([WX_ARG_CACHE_INIT],
         [
           wx_arg_cache_file="configarg.cache"
           echo "loading argument cache $wx_arg_cache_file"
@@ -198,7 +198,7 @@ AC_DEFUN(WX_ARG_CACHE_INIT,
           touch ${wx_arg_cache_file}
         ])
 
-AC_DEFUN(WX_ARG_CACHE_FLUSH,
+AC_DEFUN([WX_ARG_CACHE_FLUSH],
         [
           echo "saving argument cache $wx_arg_cache_file"
           mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file}
@@ -207,7 +207,7 @@ AC_DEFUN(WX_ARG_CACHE_FLUSH,
 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_DEFUN([WX_ARG_SYS_WITH],
         [
           AC_MSG_CHECKING([for --with-$1])
           no_cache=0
@@ -246,9 +246,9 @@ AC_DEFUN(WX_ARG_SYS_WITH,
           elif test "$$3" = no; then
             AC_MSG_RESULT(no)
           elif test "$$3" = sys; then
-            AC_MSG_RESULT(system version)
+            AC_MSG_RESULT([system version])
           elif test "$$3" = builtin; then
-            AC_MSG_RESULT(builtin version)
+            AC_MSG_RESULT([builtin version])
           else
             AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin])
           fi
@@ -256,7 +256,7 @@ AC_DEFUN(WX_ARG_SYS_WITH,
 
 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_DEFUN([WX_ARG_WITH],
         [
           AC_MSG_CHECKING([for --with-$1])
           no_cache=0
@@ -293,7 +293,7 @@ AC_DEFUN(WX_ARG_WITH,
 
 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_DEFUN([WX_ARG_ENABLE],
         [
           AC_MSG_CHECKING([for --enable-$1])
           no_cache=0
@@ -333,7 +333,7 @@ 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 +365,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
 
@@ -384,6 +384,7 @@ dnl ------------------------------------------------------------------------
 dnl assume Unix
 USE_UNIX=1
 USE_WIN32=0
+USE_DOS=0
 USE_BEOS=0
 USE_MAC=0
 
@@ -412,16 +413,20 @@ dnl _REENTRANT" and it's easier to just define this symbol for these platforms
 dnl than checking it during run-time
 NEEDS_D_REENTRANT_FOR_R_FUNCS=0
 
+dnl the additional define needed for MT programs
+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"
 
 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
@@ -433,6 +438,7 @@ 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
@@ -492,6 +498,7 @@ case "${host}" in
   *-*-freebsd*)
     USE_BSD=1
     USE_FREEBSD=1
+    CPP_MT_FLAG=-D_THREAD_SAFE
     AC_DEFINE(__FREEBSD__)
     AC_DEFINE(__BSD__)
     DEFAULT_DEFAULT_wxUSE_GTK=1
@@ -557,6 +564,15 @@ case "${host}" in
     DEFAULT_DEFAULT_wxUSE_MSW=1
   ;;
 
+  *-pc-msdosdjgpp )
+    USE_UNIX=0
+    USE_DOS=1
+    AC_DEFINE(__DOS__)
+    PROGRAM_EXT=".exe"
+    DEFAULT_DEFAULT_wxUSE_MGL=1
+    DEFAULT_DEFAULT_wxUSE_SHARED=0
+  ;;
+
   *-pc-os2_emx | *-pc-os2-emx )
     AC_DEFINE(__EMX__)
     PROGRAM_EXT=".exe"
@@ -567,6 +583,7 @@ case "${host}" in
     dnl PowerPC Darwin based distributions (including Mac OS X)
     USE_BSD=1
     USE_DARWIN=1
+    CPP_MT_FLAG=
     SO_SUFFIX=dylib
     AC_DEFINE(__BSD__)
     AC_DEFINE(__DARWIN__)
@@ -591,7 +608,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)
@@ -605,7 +622,7 @@ if test "$USE_LINUX" = 1; then
                 wx_lib_glibc21=no
             ]
         )
-    )
+    ])
     if test "$wx_lib_glibc21" = "yes"; then
         AC_DEFINE(wxHAVE_GLIBC2)
     fi
@@ -684,9 +701,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
 
@@ -780,8 +797,10 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_TOOLBAR_SIMPLE=no
   DEFAULT_wxUSE_TREECTRL=no
   DEFAULT_wxUSE_POPUPWIN=no
+  DEFAULT_wxUSE_TIPWINDOW=no
 
   DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE_MSLU=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=no
@@ -847,9 +866,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
 
@@ -943,8 +962,10 @@ else
   DEFAULT_wxUSE_TOOLBAR_SIMPLE=yes
   DEFAULT_wxUSE_TREECTRL=yes
   DEFAULT_wxUSE_POPUPWIN=yes
+  DEFAULT_wxUSE_TIPWINDOW=yes
 
   DEFAULT_wxUSE_UNICODE=no
+  DEFAULT_wxUSE_UNICODE_MSLU=yes
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=yes
@@ -994,6 +1015,7 @@ AC_ARG_WITH(wine,          [  --with-wine             use WINE], [wxUSE_WINE="$w
 AC_ARG_WITH(msw,           [  --with-msw              use MS-Windows], [wxUSE_MSW="$withval" CACHE_MSW 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_ENABLE(gtk2,        [  --enable-gtk2           use GTK+ 2.0 if available (EXPERIMENTAL)],wxUSE_GTK2=1,wxUSE_GTK2=0)
 
@@ -1006,7 +1028,7 @@ WX_ARG_WITH(opengl,        [  --with-opengl           use OpenGL (or Mesa)], wxU
 fi
 dnl for GUI only
 
-WX_ARG_WITH(dmalloc,       [  --with-dmalloc          use dmalloc library (www.letters.com/dmalloc)], wxUSE_DMALLOC)
+WX_ARG_WITH(dmalloc,       [  --with-dmalloc          use dmalloc library (http://dmalloc.com/)], wxUSE_DMALLOC)
 WX_ARG_SYS_WITH(regex,     [  --with-regex            enable support for wxRegEx class], wxUSE_REGEX)
 WX_ARG_SYS_WITH(zlib,      [  --with-zlib             use zlib for LZW compression], wxUSE_ZLIB)
 WX_ARG_WITH(odbc,          [  --with-odbc             use the IODBC and wxODBC classes], wxUSE_ODBC)
@@ -1066,6 +1088,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)
@@ -1076,6 +1099,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)
@@ -1094,7 +1118,6 @@ dnl "big" options (i.e. those which change a lot of things throughout the librar
 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
 
@@ -1189,6 +1212,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_TOOLTIPS=yes
   DEFAULT_wxUSE_TREECTRL=yes
   DEFAULT_wxUSE_POPUPWIN=yes
+  DEFAULT_wxUSE_TIPWINDOW=yes
 elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_ACCEL=no
   DEFAULT_wxUSE_BMPBUTTON=no
@@ -1227,6 +1251,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_TOOLTIPS=no
   DEFAULT_wxUSE_TREECTRL=no
   DEFAULT_wxUSE_POPUPWIN=no
+  DEFAULT_wxUSE_TIPWINDOW=no
 fi
 
 WX_ARG_ENABLE(accel,       [  --enable-accel          use accelerators], wxUSE_ACCEL)
@@ -1266,6 +1291,7 @@ WX_ARG_ENABLE(toolbar,     [  --enable-toolbar        use wxToolBar class], wxUS
 WX_ARG_ENABLE(tbarnative,  [  --enable-tbarnative     use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
 WX_ARG_ENABLE(tbarsmpl,    [  --enable-tbarsmpl       use wxToolBarSimple class], wxUSE_TOOLBAR_SIMPLE)
 WX_ARG_ENABLE(treectrl,    [  --enable-treectrl       use wxTreeCtrl class], wxUSE_TREECTRL)
+WX_ARG_ENABLE(tipwindow,   [  --enable-tipwindow      use wxTipWindow class], wxUSE_TIPWINDOW)
 WX_ARG_ENABLE(popupwin,    [  --enable-popupwin       use wxPopUpWindow class], wxUSE_POPUPWIN)
 
 dnl ---------------------------------------------------------------------------
@@ -1351,7 +1377,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}`
 
     dnl Allow wxUSE_PM only for OS/2 with EMX.
     dnl Path separator; ':' for unix.
@@ -1409,7 +1435,7 @@ AC_CACHE_SAVE
 dnl cross-compiling support: we're cross compiling if the build system is
 dnl different from the target one (assume host and target be always the same)
 if test "$build" != "$host" ; then
-    if test "$USE_WIN32" = 1 ; then
+    if test "$USE_WIN32" = 1 -o "$USE_DOS" = 1 ; then
         CC=$host_alias-gcc
         CXX=$host_alias-c++
         AR=$host_alias-ar
@@ -1914,7 +1940,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__"
@@ -1954,17 +1980,24 @@ if test "$wxUSE_GUI" = "yes"; then
                 gtk_version_cached=0
                 AC_MSG_RESULT()
 
+                dnl we must link against lgthread unless the user
+                dnl used --disable-threads
+                GTK_MODULES=
+                if test "$wxUSE_THREADS" = "yes"; then
+                    GTK_MODULES=gthread
+                fi
+
                 wx_cv_lib_gtk=
                 if test "x$wxUSE_GTK2" = "xyes"; then
-                    AM_PATH_GTK_2_0(1.3.1, wx_cv_lib_gtk=2.0, gthread)
+                    AM_PATH_GTK_2_0(1.3.1, wx_cv_lib_gtk=2.0, , $GTK_MODULES)
                 fi
 
                 if test -z "$wx_cv_lib_gtk"; then
-                    AM_PATH_GTK(1.2.7, wx_cv_lib_gtk=1.2.7)
+                    AM_PATH_GTK(1.2.7, wx_cv_lib_gtk=1.2.7, , $GTK_MODULES)
                 fi
 
                 if test -z "$wx_cv_lib_gtk"; then
-                    AM_PATH_GTK(1.2.3, wx_cv_lib_gtk=1.2.3)
+                    AM_PATH_GTK(1.2.3, wx_cv_lib_gtk=1.2.3, , $GTK_MODULES)
                 fi
 
                 if test -z "$wx_cv_lib_gtk"; then
@@ -2014,8 +2047,6 @@ equivalent variable and GTK+ is version 1.2.3 or above.
     fi
 
     if test "$wxUSE_MGL" = 1; then
-        dnl FIXME_MGL - test for MGL's variants for freebsd etc.
-
         AC_MSG_CHECKING(for SciTech MGL library)
         if test "x$MGL_ROOT" = x ; then
             AC_MSG_RESULT(not found)
@@ -2024,7 +2055,19 @@ equivalent variable and GTK+ is version 1.2.3 or above.
             AC_MSG_RESULT($MGL_ROOT)
         fi
 
-        mgl_os=linux/gcc/glibc
+        dnl Find MGL library that we want
+        dnl FIXME_MGL - test for MGL variants for freebsd etc.
+        case "${host}" in
+            *-*-linux* )
+              mgl_os=linux/gcc/glibc
+              ;;
+            *-pc-msdosdjgpp )
+              mgl_os=dos32/dj2
+              ;;
+            *)
+              AC_MSG_ERROR(This system type ${host} is not yet supported by wxMGL.)
+        esac
+
         mgl_lib_type=""
 
         if test "$wxUSE_DEBUG_FLAG" = yes ; then
@@ -2050,6 +2093,31 @@ 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_WINE" = 1; then
         AC_CHECK_HEADER(windows.h, [],
         [
@@ -2237,7 +2305,7 @@ equivalent variable and GTK+ is version 1.2.3 or above.
 
     ALL_OBJECTS="${ALL_OBJECTS} \$(COMMONOBJS) \$(GENERICOBJS)"
 
-    if test "$TOOLKIT" != "MSW"; then
+    if test "$TOOLKIT" != "MSW" -a "$USE_DOS" != 1; then
         ALL_OBJECTS="${ALL_OBJECTS} \$(UNIXOBJS)"
     fi
 
@@ -2884,20 +2952,21 @@ AC_FUNC_VPRINTF
 
 dnl check for vsscanf() and vsnprintf() - on some platforms (Linux, glibc
 dnl 2.1.1 for the first one, HP-UX for the second) it's available in the
-dnl library but the prototype is missing, so we can't use AC_CHECK_FUNCS here,
-dnl do it manually
+dnl library but the prototype is missing, so we can't use AC_CHECK_FUNCS() here,
+dnl do it manually. We can't use AC_TRY_COMPILE(), either, because it doesn't
+dnl check if the symbol is available at linking time
 
-dnl we use AC_TRY_COMPILE() here instead of AC_TRY_RUN() to make the checks
-dnl work for cross-compilation, but AC_TRY_COMPILE() normally only compiles
+dnl we use AC_TRY_LINK() here instead of AC_TRY_RUN() to make the checks
+dnl work for cross-compilation, but AC_TRY_LINK() normally only compiles
 dnl one function while we need at least 2 - hence the ugly hack below. To
-dnl understand why it works, remember that AC_TRY_COMPILE() just prepends
+dnl understand why it works, remember that AC_TRY_LINK() just prepends
 dnl "int main() {" in the beginning of the code and "; return 0; }" at the
 dnl end...
 
 dnl if we fail to find vsnprintf, also try for _vsnprintf as that is what
 dnl we'll find under MSW if it exists.
 
-dnl final note: AC_TRY_COMPILE will only be executed if there is nothing in
+dnl final note: AC_TRY_LINK will only be executed if there is nothing in
 dnl the cache so we have to do AC_DEFINE(HAVE_VSNPRINTF) below and not inside
 dnl it or the symbol wouldn't be defined for the 2nd and subsequent configure
 dnl runs
@@ -2905,7 +2974,7 @@ dnl runs
 dnl check for vsnprintf() - a safe version of vsprintf()
 AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf,
 [
-  AC_TRY_COMPILE([
+  AC_TRY_LINK([
                     #include <stdio.h>
                     #include <stdarg.h>
                  ], [
@@ -2926,7 +2995,7 @@ AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf,
                  ], [
                     wx_cv_func_vsnprintf=yes
                  ], [
-                    AC_TRY_COMPILE([
+                    AC_TRY_LINK([
                                       #include <stdio.h>
                                       #include <stdarg.h>
                                    ], [
@@ -2955,7 +3024,7 @@ AC_CACHE_CHECK([for vsnprintf], wx_cv_func_vsnprintf,
 if test "$wx_cv_func_vsnprintf" = yes; then
     AC_DEFINE(HAVE_VSNPRINTF)
 else
-    AC_MSG_WARN(unsafe function sprintf will be used instead of snprintf)
+    AC_MSG_WARN(unsafe function vsprintf will be used instead of vsnprintf)
 fi
 
 dnl check for vsscanf()
@@ -3050,6 +3119,9 @@ fi
 dnl check for vfork() (even if it's the same as fork() in modern Unices)
 AC_CHECK_FUNCS(vfork)
 
+dnl check for the function for temp files creation
+AC_CHECK_FUNCS(mkstemp mktemp, break)
+
 dnl get the library function to use for wxGetDiskSpace(): it is statfs() under
 dnl Linux and *BSD and statvfs() under Solaris
 AC_CACHE_CHECK(for statfs, wx_cv_func_statfs,
@@ -3426,10 +3498,8 @@ fi
 if test "$wxUSE_THREADS" = "yes"; then
   AC_DEFINE(wxUSE_THREADS)
 
-  dnl must define _REENTRANT for multithreaded code except for Darwin/Mac OS X
-  if test "$USE_DARWIN" != 1; then
-    TOOLCHAIN_DEFS="$TOOLCHAIN_DEFS -D_REENTRANT"
-  fi
+  dnl we must define _REENTRANT or something along these lines for MT code
+  TOOLCHAIN_DEFS="$TOOLCHAIN_DEFS $CPP_MT_FLAG"
 
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS thread"
 else
@@ -3755,7 +3825,11 @@ if test "$wxUSE_DATETIME" = "yes"; then
                                             [
                                                 wx_cv_var_timezone=__timezone
                                             ],
-                                            AC_MSG_ERROR(no timezone variable)
+                                            [
+                                                if test "$USE_DOS" = 0 ; then
+                                                    AC_MSG_ERROR(no timezone variable)
+                                                fi
+                                            ]
                                         )
                                     ]
                                 )
@@ -3765,7 +3839,9 @@ if test "$wxUSE_DATETIME" = "yes"; then
     )
 
     dnl as we want $wx_cv_var_timezone to be expanded, use AC_DEFINE_UNQUOTED
-    AC_DEFINE_UNQUOTED(WX_TIMEZONE, $wx_cv_var_timezone)
+    if test "x$wx_cv_var_timezone" != x ; then
+        AC_DEFINE_UNQUOTED(WX_TIMEZONE, $wx_cv_var_timezone)
+    fi
 
     dnl check for localtime (it's POSIX, but the check can do no harm...)
     AC_CHECK_FUNCS(localtime)
@@ -3971,7 +4047,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
@@ -4019,6 +4095,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])
@@ -4028,11 +4105,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 ---------------------------------------------------------------------------
@@ -4045,19 +4121,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
@@ -4500,11 +4581,20 @@ if test "$wxUSE_POPUPWIN" = "yes"; then
     if test "$wxUSE_MAC" = 1; then
         AC_MSG_WARN([Popup window not yet supported under Mac OS X... disabled])
     else
-        AC_DEFINE(wxUSE_POPUPWIN)
-        USES_CONTROLS=1
+        if test "$wxUSE_MOTIF" = 1; then
+            AC_MSG_WARN([wxPopupWindow not yet supported under Motif... disabled])
+        else
+            AC_DEFINE(wxUSE_POPUPWIN)
+
+            USES_CONTROLS=1
+        fi
     fi
 fi
 
+if test "$wxUSE_TIPWINDOW" = "yes"; then
+    AC_DEFINE(wxUSE_TIPWINDOW)
+fi
+
 if test "$USES_CONTROLS" = 1; then
     AC_DEFINE(wxUSE_CONTROLS)
 fi
@@ -4579,6 +4669,11 @@ if test "$wxUSE_XPM" = "yes" ; then
   AC_DEFINE(wxUSE_XPM)
 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 ---------------------------------------------------------------------------
@@ -4745,7 +4840,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'`