]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
use dummy.cpp with eVC, too
[wxWidgets.git] / configure.in
index fc4a6193a7620868e7ee54b7c4de28fb69722f2e..2314570a8c4f7d94462ef929215e6ee60bbac67c 100644 (file)
@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-AC_INIT([wxWidgets], [2.5.3], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [2.5.4], [wx-dev@lists.wxwidgets.org])
 
 dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
 AC_CONFIG_SRCDIR([wx-config.in])
@@ -55,8 +55,8 @@ 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=3
-wx_subrelease_number=3
+wx_release_number=4
+wx_subrelease_number=1
 
 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
 WX_VERSION=$WX_RELEASE.$wx_release_number
@@ -64,9 +64,9 @@ WX_SUBVERSION=$WX_VERSION.$wx_subrelease_number
 
 WX_MSW_VERSION=$wx_major_version_number$wx_minor_version_number$wx_release_number
 
-WX_CURRENT=3
+WX_CURRENT=4
 WX_REVISION=0
-WX_AGE=3
+WX_AGE=4
 
 
 dnl ------------------------------------------------------------------------
@@ -328,7 +328,6 @@ case "${host}" in
     SO_SUFFIX=dylib
     AC_DEFINE(__BSD__)
     AC_DEFINE(__DARWIN__)
-    AC_DEFINE(__POWERPC__)
     AC_DEFINE(TARGET_CARBON)
     DEFAULT_DEFAULT_wxUSE_MAC=1
   ;;
@@ -426,6 +425,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_STOPWATCH=no
   DEFAULT_wxUSE_FILE=no
   DEFAULT_wxUSE_FFILE=no
+  DEFAULT_wxUSE_STDPATHS=no
   DEFAULT_wxUSE_TEXTBUFFER=no
   DEFAULT_wxUSE_TEXTFILE=no
   DEFAULT_wxUSE_SOUND=no
@@ -500,6 +500,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_FS_INET=no
   DEFAULT_wxUSE_FS_ZIP=no
   DEFAULT_wxUSE_BUSYINFO=no
+  DEFAULT_wxUSE_ARCHIVE_STREAMS=no
   DEFAULT_wxUSE_ZIPSTREAM=no
   DEFAULT_wxUSE_VALIDATORS=no
 
@@ -513,6 +514,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_CHOICE=no
   DEFAULT_wxUSE_CHOICEBOOK=no
   DEFAULT_wxUSE_COMBOBOX=no
+  DEFAULT_wxUSE_DATEPICKCTRL=no
   DEFAULT_wxUSE_DISPLAY=no
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_GRID=no
@@ -617,6 +619,7 @@ else
   DEFAULT_wxUSE_STOPWATCH=yes
   DEFAULT_wxUSE_FILE=yes
   DEFAULT_wxUSE_FFILE=yes
+  DEFAULT_wxUSE_STDPATHS=yes
   DEFAULT_wxUSE_TEXTBUFFER=yes
   DEFAULT_wxUSE_TEXTFILE=yes
   DEFAULT_wxUSE_SOUND=yes
@@ -691,6 +694,7 @@ else
   DEFAULT_wxUSE_FS_INET=yes
   DEFAULT_wxUSE_FS_ZIP=yes
   DEFAULT_wxUSE_BUSYINFO=yes
+  DEFAULT_wxUSE_ARCHIVE_STREAMS=yes
   DEFAULT_wxUSE_ZIPSTREAM=yes
   DEFAULT_wxUSE_VALIDATORS=yes
 
@@ -704,6 +708,7 @@ else
   DEFAULT_wxUSE_CHOICE=yes
   DEFAULT_wxUSE_CHOICEBOOK=yes
   DEFAULT_wxUSE_COMBOBOX=yes
+  DEFAULT_wxUSE_DATEPICKCTRL=yes
   DEFAULT_wxUSE_DISPLAY=yes
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
@@ -882,6 +887,7 @@ WX_ARG_ENABLE(ipc,           [  --enable-ipc            use interprocess communi
 
 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(arcstream,     [  --enable-arcstream      use wxArchive streams], wxUSE_ARCHIVE_STREAMS)
 WX_ARG_ENABLE(catch_segvs,   [  --enable-catch_segvs    catch signals in wxApp::OnFatalException (Unix only)], wxUSE_ON_FATAL_EXCEPTION)
 WX_ARG_ENABLE(backtrace,     [  --enable-backtrace      use wxStackWalker class for getting backtraces], wxUSE_STACKWALKER)
 WX_ARG_ENABLE(cmdline,       [  --enable-cmdline        use wxCmdLineParser class], wxUSE_CMDLINE_PARSER)
@@ -902,9 +908,10 @@ WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], w
 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(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
+WX_ARG_ENABLE(stdpaths,      [  --enable-stdpaths       use wxStandardPaths class], wxUSE_STDPATHS)
 WX_ARG_ENABLE(stopwatch,     [  --enable-stopwatch      use wxStopWatch class], wxUSE_STOPWATCH)
+WX_ARG_ENABLE(streams,       [  --enable-streams        use wxStream etc classes], wxUSE_STREAMS)
 WX_ARG_ENABLE(system_options,[  --enable-sysoptions     use wxSystemOptions], wxUSE_SYSTEM_OPTIONS)
 WX_ARG_ENABLE(textbuf,       [  --enable-textbuf        use wxTextBuffer class], wxUSE_TEXTBUFFER)
 WX_ARG_ENABLE(textfile,      [  --enable-textfile       use wxTextFile class], wxUSE_TEXTFILE)
@@ -913,7 +920,7 @@ WX_ARG_ENABLE(unicode,       [  --enable-unicode        compile wxString with Un
 WX_ARG_ENABLE(sound,         [  --enable-sound          use wxSound class], wxUSE_SOUND)
 WX_ARG_ENABLE(mediactrl,     [  --enable-mediactrl      use wxMediaCtrl class], wxUSE_MEDIACTRL)
 WX_ARG_ENABLE(wxprintfv,     [  --enable-wxprintfv      use wxWidgets implementation of vprintf()], wxUSE_EXPERIMENTAL_PRINTF)
-WX_ARG_ENABLE(zipstream,     [  --enable-zipstream      use wxZipInputStream], wxUSE_ZIPSTREAM)
+WX_ARG_ENABLE(zipstream,     [  --enable-zipstream      use wxZip streams], wxUSE_ZIPSTREAM)
 
 WX_ARG_ENABLE(url,           [  --enable-url            use wxURL class], wxUSE_URL)
 WX_ARG_ENABLE(protocol,      [  --enable-protocol       use wxProtocol class], wxUSE_PROTOCOL)
@@ -988,13 +995,14 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   DEFAULT_wxUSE_ACCEL=yes
   DEFAULT_wxUSE_BMPBUTTON=yes
   DEFAULT_wxUSE_BUTTON=yes
-  DEFAULT_wxUSE_CALCTRL=no
+  DEFAULT_wxUSE_CALCTRL=yes
   DEFAULT_wxUSE_CARET=yes
   DEFAULT_wxUSE_COMBOBOX=yes
   DEFAULT_wxUSE_CHECKBOX=yes
   DEFAULT_wxUSE_CHECKLISTBOX=yes
   DEFAULT_wxUSE_CHOICE=yes
   DEFAULT_wxUSE_CHOICEBOOK=yes
+  DEFAULT_wxUSE_DATEPICKCTRL=yes
   DEFAULT_wxUSE_GAUGE=yes
   DEFAULT_wxUSE_GRID=yes
   DEFAULT_wxUSE_IMAGLIST=yes
@@ -1034,6 +1042,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then
   DEFAULT_wxUSE_CHECKLISTBOX=no
   DEFAULT_wxUSE_CHOICE=no
   DEFAULT_wxUSE_CHOICEBOOK=no
+  DEFAULT_wxUSE_DATEPICKCTRL=no
   DEFAULT_wxUSE_GAUGE=no
   DEFAULT_wxUSE_GRID=no
   DEFAULT_wxUSE_IMAGLIST=no
@@ -1074,6 +1083,7 @@ WX_ARG_ENABLE(checklst,    [  --enable-checklst       use wxCheckListBox (listbo
 WX_ARG_ENABLE(choice,      [  --enable-choice         use wxChoice class], wxUSE_CHOICE)
 WX_ARG_ENABLE(choicebook,  [  --enable-choicebook     use wxChoicebook class], wxUSE_CHOICEBOOK)
 WX_ARG_ENABLE(combobox,    [  --enable-combobox       use wxComboBox class], wxUSE_COMBOBOX)
+WX_ARG_ENABLE(datepick,    [  --enable-datepick       use wxDatePickerCtrl class], wxUSE_DATEPICKCTRL)
 WX_ARG_ENABLE(display,     [  --enable-display        use wxDisplay class], wxUSE_DISPLAY)
 WX_ARG_ENABLE(gauge,       [  --enable-gauge          use wxGauge class], wxUSE_GAUGE)
 WX_ARG_ENABLE(grid,        [  --enable-grid           use wxGrid class], wxUSE_GRID)
@@ -1134,7 +1144,7 @@ WX_ARG_ENABLE(tooltips,    [  --enable-tooltips       use wxToolTip class], wxUS
 WX_ARG_ENABLE(splines,     [  --enable-splines        use spline drawing code], wxUSE_SPLINES)
 WX_ARG_ENABLE(validators,  [  --enable-validators     use wxValidator and derived classes], wxUSE_VALIDATORS)
 WX_ARG_ENABLE(busyinfo,    [  --enable-busyinfo       use wxBusyInfo], wxUSE_BUSYINFO)
-WX_ARG_ENABLE(joystick,    [  --enable-joystick       use wxJoystick (Linux only)], wxUSE_JOYSTICK)
+WX_ARG_ENABLE(joystick,    [  --enable-joystick       use wxJoystick], wxUSE_JOYSTICK)
 WX_ARG_ENABLE(metafile,    [  --enable-metafiles      use wxMetaFile (Windows only)], wxUSE_METAFILE)
 WX_ARG_ENABLE(dragimage,   [  --enable-dragimage      use wxDragImage], wxUSE_DRAGIMAGE)
 WX_ARG_ENABLE(accessibility,[  --enable-accessibility  enable accessibility support], wxUSE_ACCESSIBILITY)
@@ -1354,6 +1364,13 @@ dnl default CFLAGS (something like "-g -O2") -- we don't need this as we add
 dnl -g and -O flags ourselves below
 CFLAGS=${CFLAGS:=}
 AC_PROG_CC
+AC_WX_METROWERKS_EXTO
+if test "x$wx_cv_c_exto" '!=' "x"; then
+    unset ac_cv_prog_cc_g
+    _AC_PROG_CC_G
+fi
+AC_BAKEFILE_PROG_MWCC
+AC_WX_PROG_XLCC
 
 dnl is -traditional needed for correct compilations
 dnl   adds -traditional for gcc if needed
@@ -1371,6 +1388,13 @@ dnl
 dnl see CFLAGS line above
 CXXFLAGS=${CXXFLAGS:=}
 AC_PROG_CXX
+AC_WX_METROWERKS_EXTO
+if test "x$wx_cv_cxx_exto" '!=' "x"; then
+    unset ac_cv_prog_cxx_g
+    _AC_PROG_CXX_G
+fi
+AC_BAKEFILE_PROG_MWCXX
+AC_WX_PROG_XLCXX
 
 AC_LANG_RESTORE
 
@@ -1485,6 +1509,46 @@ dnl ------------------------------------------------------------------------
 dnl Platform specific tests
 dnl ------------------------------------------------------------------------
 
+dnl xlC needs -qunique (at least on AIX) so that one source file can be
+dnl compiled to multiple object files and safely linked together.
+if test "x$XLCXX" = "xyes"; then
+    CXXFLAGS="$CXXFLAGS -qunique"
+fi
+
+
+dnl This case is for OS X vs. everything else
+case "${host}" in
+  powerpc-*-darwin* )
+    AC_MSG_CHECKING([if __POWERPC__ is already defined])
+    AC_TRY_COMPILE([],[#ifndef __POWERPC__
+        choke me for lack of PowerPC
+#endif
+],
+        [AC_MSG_RESULT([yes])],
+        [AC_MSG_RESULT([no])
+        AC_DEFINE(__POWERPC__)
+    ])
+    AC_MSG_CHECKING([if CoreFoundation/CFBase.h is usable])
+    AC_TRY_COMPILE([#include <CoreFoundation/CFBase.h>
+],[],
+        [AC_MSG_RESULT([yes])],
+        [AC_MSG_RESULT([no])
+        AC_MSG_CHECKING([if __CF_USE_FRAMEWORK_INCLUDES__ is required])
+        AC_TRY_COMPILE([#define __CF_USE_FRAMEWORK_INCLUDES__
+#include <CoreFoundation/CFBase.h>
+        ],[],
+        [AC_MSG_RESULT([yes])
+        dnl We must use -D so source files that don't include wx/setup.h
+        dnl but do include CFBase will work.
+        CPPFLAGS="$CPPFLAGS -D__CF_USE_FRAMEWORK_INCLUDES__"],
+        [AC_MSG_FAILURE([no.  CoreFoundation not available.])]
+        )
+        ]
+    )
+  ;;
+esac
+
+dnl This case is for OS/2 vs. everything else
 case "${host}" in
   *-pc-os2_emx | *-pc-os2-emx )
       dnl ---------------------------------------------------------------------
@@ -1503,46 +1567,59 @@ case "${host}" in
           dnl Include resources for the "native" port (wxPM).
           RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res"
       fi
+      dnl Check for the gcc version (and thereby for the C runtime library).
+      dnl wx_cv_gccversion = EMX2 -> Standard EMX environment
+      dnl wx_cv_gccversion = EMX3 -> EMX with gcc-3.0.3 or gcc-3.2.1
+      dnl wx_cv_gccversion = Innotek5 -> gcc-3.2.2 with Innotek libc5
+      dnl wx_cv_gccversion = Innotek6 -> gcc-3.3.5 with Innotek libc6.
       AC_CACHE_CHECK([for gcc version], wx_cv_gccversion,[
-          AC_TRY_COMPILE([],
+          AC_TRY_RUN(
+              dnl Check the gcc version macro.  
               [
+                  #include <stdio.h>
+
+                  int main()
+                  {
+                      FILE *f=fopen("conftestval", "w");
+                      if (!f) exit(1);
+                      fprintf(f,
                   #if (__GNUC__ < 3)
-                      #error old gcc
+                              "EMX2"
+                  #elif (__GNUC__==3) && ((__GNUC_MINOR__ < 2) || ((__GNUC_MINOR__==2) && (__GNUC_PATCHLEVEL__<2)))
+                              "EMX3"
+                  #elif (__GNUC__==3) && (__GNUC_MINOR__==2) && (__GNUC_PATCHLEVEL__==2)
+                              "Innotek5"
+                  #else
+                              "Innotek6"
                   #endif
+                     );
+                      exit(0);
+                  }
               ],
-              [
-                  AC_TRY_COMPILE([],
-                      [
-                          #if (__GNUC__==3) && ((__GNUC_MINOR__ < 2) || ((__GNUC_MINOR__==2) && (__GNUC_PATCHLEVEL__<2)))
-                              #error intermediate gcc
-                          #endif
-                      ],
-                      [
-                         wx_cv_gccversion=Innotek
-                      ],
-                      [
-                         wx_cv_gccversion=3
-                      ]
-                  )
-              ],
-              [
-                  wx_cv_gccversion=2
-              ]
+             wx_cv_gccversion=`cat conftestval`,
+              wx_cv_gccversion="EMX2",
+              dnl Compilation error: Assuming standard EMX environment
+              wx_cv_gccversion="EMX2"
           )
       ])
-      if test "$wx_cv_gccversion" = "2"; then
+      if test "$wx_cv_gccversion" = "EMX2"; then
           LIBS="$LIBS -lstdcpp"
           LDFLAGS="$LDFLAGS -Zsysv-signals"
       else
-          if test "$wx_cv_gccversion" = "3"; then
+          if test "$wx_cv_gccversion" = "EMX3"; then
               LIBS="$LIBS -lstdcxx"
               LDFLAGS="$LDFLAGS -Zsysv-signals"
           else
               LIBS="$LIBS -lstdc++"
           fi
       fi
+      if test "$wxUSE_SHARED" = "yes" -a "$wxUSE_OMF" = "no"; then
+        AC_MSG_WARN([Building DLLs requires OMF mode, enabled])
+        wxUSE_OMF=yes
+       enable_omf=yes
+      fi
       if test "$wxUSE_OMF" = "yes"; then
-        LDFLAGS="$LDFLAGS -Zomf -Zlinker /PMTYPE:PM -Zlinker /EXEPACK"
+        LDFLAGS="$LDFLAGS -Zlinker /EXEPACK -Zlinker /PMTYPE:PM"
       fi
       dnl (end of OS/2-only piece)
   ;;
@@ -1627,8 +1704,12 @@ AC_CHECK_HEADERS(langinfo.h)
 
 case "${host}" in
   *-pc-os2_emx | *-pc-os2-emx )
-      dnl Explicitly link -lintl if langinfo.h is available.
-      if test $ac_cv_header_langinfo_h = "yes"; then
+      dnl Explicitly link -lintl if langinfo.h is available
+      dnl and intl not yet included in libc
+      if test $ac_cv_header_langinfo_h = "yes" \
+                -a \(   "$wx_cv_gccversion" = "EMX2" \
+                     -o "$wx_cv_gccversion" = "EMX3" \
+                     -o "$wx_cv_gccversion" = "Innotek5" \); then
           LIBS="$LIBS -lintl"
       fi
   ;;
@@ -1681,51 +1762,26 @@ case "${host}" in
         AC_CHECK_SIZEOF(long long, 0)
 esac
 
-dnl we have to do it ourselves because SGI/Irix's stdio.h does not include
-dnl wchar_t and AC_CHECK_SIZEOF only includes stdio.h
-dnl Mac OS X does not provide wchar.h and wchar_t is defined by stdlib.h (GD)
-AC_CACHE_CHECK([size of wchar_t], wx_cv_sizeof_wchar_t,
-[
-    AC_TRY_RUN(
-        [
-            /* DJGPP only has fake wchar_t: */
-            #ifdef __DJGPP__
-            #  error "fake wchar_t"
-            #endif
-            #ifdef HAVE_WCHAR_H
-            #  ifdef __CYGWIN__
-            #    include <stddef.h>
-            #  endif
-            #  include <wchar.h>
-            #endif
-            #ifdef HAVE_STDLIB_H
-            #  include <stdlib.h>
-            #endif
-            #include <stdio.h>
-            int main()
-            {
-                FILE *f=fopen("conftestval", "w");
-                if (!f) exit(1);
-                fprintf(f, "%i", sizeof(wchar_t));
-                exit(0);
-            }
-        ],
-        wx_cv_sizeof_wchar_t=`cat conftestval`,
-        wx_cv_sizeof_wchar_t=0,
-        [
-            case "${host}" in
-              *-pc-msdosdjgpp )
-                wx_cv_sizeof_wchar_t=0
-                ;;
-              * )
-                wx_cv_sizeof_wchar_t=4
-                ;;
-            esac
-        ]
-    )
-])
-
-AC_DEFINE_UNQUOTED(SIZEOF_WCHAR_T, $wx_cv_sizeof_wchar_t)
+dnl SGI/Irix's stdio.h does not include wchar_t. Mac OS X does not provide
+dnl wchar.h and wchar_t is defined by stdlib.h (GD)
+AC_CHECK_SIZEOF(wchar_t, 0,
+    [
+        /* DJGPP only has fake wchar_t: */
+        #ifdef __DJGPP__
+        #  error "fake wchar_t"
+        #endif
+        #ifdef HAVE_WCHAR_H
+        #  ifdef __CYGWIN__
+        #    include <stddef.h>
+        #  endif
+        #  include <wchar.h>
+        #endif
+        #ifdef HAVE_STDLIB_H
+        #  include <stdlib.h>
+        #endif
+        #include <stdio.h>
+    ]
+)
 
 dnl checks needed to define wxVaCopy
 AC_CACHE_CHECK([for va_copy],
@@ -1829,6 +1885,8 @@ dnl check whether C++ compiler supports C++ casts
 AC_CXX_CONST_CAST
 AC_CXX_REINTERPRET_CAST
 AC_CXX_STATIC_CAST
+dnl we don't use HAVE_DYNAMIC_CAST anywhere right now...
+dnl AC_CXX_DYNAMIC_CAST
 
 dnl check various STL features
 if test "$wxUSE_STL" = "yes"; then
@@ -1984,8 +2042,9 @@ 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 also put 64 bit versions for Linux on AMD, they must come before the usual
+dnl locations or 64 bit compilation failed
+SEARCH_LIB="/usr/lib /usr/lib32 /usr/lib64 /usr/X11R6/lib64 `echo "$SEARCH_INCLUDE" | sed s/include/lib/g`"
 
 dnl ------------------------------------------------------------------------
 dnl Check for libraries
@@ -3152,18 +3211,19 @@ if test "$TOOLKIT" != "MSW" ; then
             wxUSE_ODBC=sys
         fi
     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?
-        WXODBCFLAG="-D_IODBC_"
+
+    if test "$wxUSE_ODBC" = "builtin" ; then
+        AC_DEFINE(wxUSE_BUILTIN_IODBC)
     fi
 fi
 
+if test "$wxUSE_ODBC" != "no" ; then
+    AC_DEFINE(wxUSE_ODBC)
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS db"
+
+    dnl is this still necessary?
+    WXODBCFLAG="-D_IODBC_"
+fi
 
 dnl ---------------------------------------------------------------------------
 dnl wxDisplay Sanity checks
@@ -3220,33 +3280,6 @@ dnl ---------------------------------------------------------------------------
     fi
 fi
 
-dnl ---------------------------------------------------------------------------
-dnl wxMediaCtrl 
-dnl ---------------------------------------------------------------------------
-
-if test "$wxUSE_MEDIACTRL" = "yes"; then
-    if test "$wxUSE_MSW" = 1; then
-dnl ---------------------------------------------------------------------------
-dnl DirectShow MSW
-dnl ---------------------------------------------------------------------------
-        wxUSE_DIRECTSHOW="yes"
-        AC_CHECK_HEADERS([dshow.h], [],
-            [
-                wxUSE_DIRECTSHOW="no"
-                AC_MSG_WARN([DirectShow not installed; consider installing the DirectX7 SDK or higher])
-            ],
-            [#include <windows.h>])
-
-       if test "$wxUSE_DIRECTSHOW" = "yes"; then
-            AC_DEFINE(wxUSE_DIRECTSHOW)
-            LIBS="$LIBS -lstrmiids"
-       fi
-    fi
-
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
-    AC_DEFINE(wxUSE_MEDIACTRL)
-fi
-
 dnl ---------------------------------------------------------------------------
 dnl OpenGL libraries
 dnl ---------------------------------------------------------------------------
@@ -3415,6 +3448,11 @@ EOF
         TOOLCHAIN_DLL_DEFS="${TOOLCHAIN_DLL_DEFS} -DWXUSINGDLL=1"
        ;;
       
+      *-*-hpux* )
+        SAMPLES_RPATH_FLAG="-Wl,+b,\$(top_builddir)lib"
+        WXCONFIG_RPATH="-Wl,+b,\$libdir"
+       ;;
+        
     esac
 
     if test $wxUSE_RPATH = "no"; then
@@ -3622,7 +3660,7 @@ dnl Check for functions
 dnl ---------------------------------------------------------------------------
 
 dnl don't check for wchar_t functions if we haven't got wchar_t itself
-if test "$wx_cv_sizeof_wchar_t" != "0"; then
+if test "$ac_cv_sizeof_wchar_t" != "0"; then
     AC_DEFINE(wxUSE_WCHAR_T)
 
     dnl check for wcslen in all possible places
@@ -3645,8 +3683,8 @@ if test "$wx_cv_sizeof_wchar_t" != "0"; then
         AC_DEFINE(HAVE_WCSLEN)
     fi
 
-    dnl HP-UX aCC needs this define to find mbstrtowcs() &c
-    if test "$USE_HPUX" = 1 -a "x$GCC" != "xyes"; then
+    dnl on HP-UX aCC and g++ need this define to find mbstrtowcs() &c
+    if test "$USE_HPUX" = 1; then
         CPPFLAGS="$CPPFLAGS -D_INCLUDE__STDC_A1_SOURCE "
     fi
 
@@ -3688,7 +3726,27 @@ if test "$ac_cv_func_vsnprintf" = "yes"; then
                     vsnprintf(buf, 10u, "%s", ap);
                 ],
                 wx_cv_func_vsnprintf_decl=yes,
-                wx_cv_func_vsnprintf_decl=no
+                [
+                    dnl Metrowerks does provide a vsnprintf declaration
+                    dnl but in C++ mode it's always in std namespace.
+                    dnl FIXME: Do we have any UNIX C++ compilers that would
+                    dnl fail this test if using namespace std; was
+                    dnl simply always included?
+                    AC_TRY_COMPILE(
+                        [
+                            #include <stdio.h>
+                            #include <stdarg.h>
+                            using namespace std;
+                        ],
+                        [
+                            char *buf;
+                            va_list ap;
+                            vsnprintf(buf, 10u, "%s", ap);
+                        ],
+                        wx_cv_func_vsnprintf_decl=yes,
+                        wx_cv_func_vsnprintf_decl=no
+                    )
+                ]
             )
         ]
     )
@@ -4760,8 +4818,18 @@ if test "$wxUSE_FS_ZIP" = "yes"; then
   AC_DEFINE(wxUSE_FS_ZIP)
 fi
 
+if test "$wxUSE_ARCHIVE_STREAMS" = "yes"; then
+  AC_DEFINE(wxUSE_ARCHIVE_STREAMS)
+fi
+
 if test "$wxUSE_ZIPSTREAM" = "yes"; then
-  AC_DEFINE(wxUSE_ZIPSTREAM)
+  if test "$wxUSE_ARCHIVE_STREAMS" != "yes"; then
+    AC_MSG_WARN(wxZip requires wxArchive... disabled)
+  elif test "$wxUSE_ZLIB" = "no"; then
+    AC_MSG_WARN(wxZip requires wxZlib... disabled)
+  else
+    AC_DEFINE(wxUSE_ZIPSTREAM)
+  fi
 fi
 
 if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
@@ -4784,6 +4852,10 @@ if test "$wxUSE_STD_IOSTREAM" = "yes"; then
   AC_DEFINE(wxUSE_STD_IOSTREAM)
 fi
 
+if test "$wxUSE_STDPATHS" = "yes"; then
+  AC_DEFINE(wxUSE_STDPATHS)
+fi
+
 if test "$wxUSE_TEXTBUFFER" = "yes"; then
     AC_DEFINE(wxUSE_TEXTBUFFER)
 fi
@@ -4801,6 +4873,7 @@ if test "$wxUSE_CONFIG" = "yes" ; then
     AC_MSG_WARN(wxConfig requires wxTextFile... disabled)
   else
     AC_DEFINE(wxUSE_CONFIG)
+    AC_DEFINE(wxUSE_CONFIG_NATIVE)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS config"
   fi
 fi
@@ -4829,6 +4902,9 @@ if test "$wxUSE_LOG" = "yes"; then
     if test "$wxUSE_LOGDIALOG" = "yes"; then
       AC_DEFINE(wxUSE_LOG_DIALOG)
     fi
+
+    dnl the keyboard sample requires wxUSE_LOG
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS keyboard"
 fi
 
 if test "$wxUSE_LONGLONG" = "yes"; then
@@ -4839,11 +4915,6 @@ if test "$wxUSE_GEOMETRY" = "yes"; then
   AC_DEFINE(wxUSE_GEOMETRY)
 fi
 
-if test "$wxUSE_DIALUP_MANAGER" = "yes" ; then
-  AC_DEFINE(wxUSE_DIALUP_MANAGER)
-  SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup"
-fi
-
 if test "$wxUSE_STREAMS" = "yes" ; then
   AC_DEFINE(wxUSE_STREAMS)
 fi
@@ -5207,27 +5278,29 @@ dnl Joystick support
 dnl ---------------------------------------------------------------------------
 
 if test "$wxUSE_GUI" = "yes"; then
-
-    if test "$TOOLKIT" = "MAC" -o "$TOOLKIT" = "COCOA"; then
-        AC_MSG_WARN([Joystick not yet supported under Mac OS X... disabled])
-        wxUSE_JOYSTICK=no
-     fi
-    
      dnl under MSW we always have joystick support
-    if test "$TOOLKIT" != "MSW"; then
-        if test "$wxUSE_JOYSTICK" = "yes"; then
-            dnl joystick support is only for Linux 2.1.x or greater
+     if test "$wxUSE_JOYSTICK" = "yes"; then
+         
+        dnl joystick support is only for Linux 2.1.x or greater
+        if test "$TOOLKIT" != "MAC" -a "$TOOLKIT" != "COCOA" -a "$TOOLKIT" != "MSW"; then
             AC_CHECK_HEADERS(linux/joystick.h)
             if test "$ac_cv_header_linux_joystick_h" != "yes"; then
                 wxUSE_JOYSTICK=no
                 AC_MSG_WARN(Joystick not supported by this system... disabled)
             fi
+        else
+           dnl mac only available on darwin
+           if test "$USE_DARWIN" != 1 -a "$TOOLKIT" != "MSW"; then
+                wxUSE_JOYSTICK=no
+                AC_MSG_WARN(Joystick not supported by this system... disabled)           
+           fi            
         fi
-    fi
 
-    if test "$wxUSE_JOYSTICK" = "yes"; then
-        AC_DEFINE(wxUSE_JOYSTICK)
-        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest"
+
+        if test "$wxUSE_JOYSTICK" = "yes"; then
+            AC_DEFINE(wxUSE_JOYSTICK)
+            SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS joytest"
+        fi
     fi
 fi
 
@@ -5363,6 +5436,7 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
             LIBS=" -lrpcrt4 -loleaut32 -lole32 -luuid$LIBS"
             if test "$wxUSE_OLE" = "yes" ; then
                 AC_DEFINE(wxUSE_OLE)
+                SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS oleauto"
             fi
         fi
 
@@ -5388,11 +5462,15 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
 fi
 
 if test "$wxUSE_IPC" = "yes"; then
-    if test "$wxUSE_SOCKETS" != "yes"; then
+    if test "$wxUSE_SOCKETS" != "yes" -a "$USE_WIN32" != 1; then
         AC_MSG_WARN(wxWidgets IPC classes require sockets... disabled)
+        wxUSE_IPC=no
     fi
 
-    AC_DEFINE(wxUSE_IPC)
+    if test "$wxUSE_IPC" = "yes"; then
+        AC_DEFINE(wxUSE_IPC)
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS ipc"
+    fi
 fi
 
 if test "$wxUSE_CLIPBOARD" = "yes"; then
@@ -5508,9 +5586,14 @@ if test "$wxUSE_CHECKLST" = "yes"; then
   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS checklst"
 fi
 
+if test "$wxUSE_DATEPICKCTRL" = "yes"; then
+  AC_DEFINE(wxUSE_DATEPICKCTRL)
+  USES_CONTROLS=1
+fi
+
 if test "$wxUSE_DISPLAY" = "yes"; then
     AC_DEFINE(wxUSE_DISPLAY)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display"
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS display multimon"
 fi
 
 if test "$wxUSE_GAUGE" = "yes"; then
@@ -5536,6 +5619,7 @@ fi
 if test "$wxUSE_LISTBOX" = "yes"; then
     AC_DEFINE(wxUSE_LISTBOX)
     USES_CONTROLS=1
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS listbox"
 fi
 
 if test "$wxUSE_LISTCTRL" = "yes"; then
@@ -5632,7 +5716,6 @@ fi
 
 if test "$wxUSE_TABDIALOG" = "yes"; then
     AC_DEFINE(wxUSE_TAB_DIALOG)
-    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS tab"
 fi
 
 if test "$wxUSE_TEXTCTRL" = "yes"; then
@@ -5715,12 +5798,22 @@ if test "$wxUSE_POPUPWIN" = "yes"; then
             AC_MSG_WARN([wxPopupWindow not yet supported under PM... disabled])
         else
             AC_DEFINE(wxUSE_POPUPWIN)
+            SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS popup"
 
             USES_CONTROLS=1
         fi
     fi
 fi
 
+if test "$wxUSE_DIALUP_MANAGER" = "yes"; then
+    if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = 1 ; then
+        AC_MSG_WARN([Dialup manager not yet supported under Mac OS X... disabled])
+    else
+        AC_DEFINE(wxUSE_DIALUP_MANAGER)
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dialup"
+    fi
+fi
+
 if test "$wxUSE_TIPWINDOW" = "yes"; then
     if test "$wxUSE_PM" = 1; then
         AC_MSG_WARN([wxTipWindow not yet supported under PM... disabled])
@@ -5943,6 +6036,111 @@ if test "$wxUSE_WIZARDDLG" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS wizard"
 fi
 
+dnl ---------------------------------------------------------------------------
+dnl wxMediaCtrl 
+dnl ---------------------------------------------------------------------------
+
+if test "$wxUSE_MEDIACTRL" = "yes"; then
+    if test "$wxUSE_MSW" = 1; then
+    dnl -----------------------------------------------------------------------
+    dnl DirectShow MSW
+    dnl -----------------------------------------------------------------------
+        wxUSE_DIRECTSHOW="yes"
+        AC_CHECK_HEADERS([dshow.h], [],
+            [
+                wxUSE_DIRECTSHOW="no"
+                AC_MSG_WARN([DirectShow not installed; consider installing the DirectX7 SDK or higher])
+            ],
+            [#include <windows.h>])
+
+       if test "$wxUSE_DIRECTSHOW" = "yes"; then
+            AC_DEFINE(wxUSE_DIRECTSHOW)
+            LIBS="$LIBS -lstrmiids"
+       fi
+    fi
+
+    dnl -----------------------------------------------------------------------
+    dnl GStreamer 
+    dnl -----------------------------------------------------------------------
+    if test "$wxUSE_GTK" = 1; then
+        wxUSE_GSTREAMER="yes"
+        
+        dnl -------------------------------------------------------------------
+        dnl Test for gstreamer module from pkg-config
+        dnl -------------------------------------------------------------------
+        PKG_CHECK_MODULES(GSTREAMER, gstreamer-0.8,
+        [
+            CPPFLAGS="$CPPFLAGS $GSTREAMER_CFLAGS"
+            LIBS="$LIBS $GSTREAMER_LIBS -lgstplay-0.8"
+        ],
+        [
+            AC_MSG_WARN([GStreamer installation not found])
+            wxUSE_GSTREAMER="no"
+        ])
+        
+        dnl -------------------------------------------------------------------
+        dnl Perform a check for a GStreamer element using gst-inspect
+        dnl Thomas Vander Stichele <thomas at apestaart dot org>
+        dnl Last modification: 25/01/2005
+        dnl
+        dnl AM_GST_ELEMENT_CHECK(ELEMENT-NAME, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND)
+        dnl -------------------------------------------------------------------
+        AC_DEFUN([AM_GST_ELEMENT_CHECK],
+        [
+        if test "x$GST_INSPECT" == "x"; then
+            AC_CHECK_PROG(GST_INSPECT, gst-inspect, gst-inspect, [])
+        fi
+        
+        if test "x$GST_INSPECT" != "x"; then
+            AC_MSG_CHECKING(GStreamer element $1)
+            if [ $GST_INSPECT $1 > /dev/null 2> /dev/null ]; then
+            AC_MSG_RESULT(found.)
+            $2
+            else
+            AC_MSG_RESULT(not found.)
+            $3
+            fi
+        fi
+        ])
+        
+        dnl -------------------------------------------------------------------
+        dnl Test for x video sink (video useless without)
+        dnl -------------------------------------------------------------------
+        AM_GST_ELEMENT_CHECK(xvimagesink,[], 
+                        [
+                            wxUSE_GSTREAMER="no"
+                            AC_MSG_WARN([x video sink not found - cannot use GStreamer])
+                        ])
+                            
+        dnl -------------------------------------------------------------------
+        dnl Check for gstplay-0.8 lib and corresponding x overlay header
+        dnl -------------------------------------------------------------------        
+        AC_CHECK_HEADER(gst/xoverlay/xoverlay.h, [], 
+                        [
+                            wxUSE_GSTREAMER="no"
+                            AC_MSG_WARN([xoverlay header not found, cannot use GStreamer])
+                        ],
+                        [#include <gst/gst.h>])
+        
+        AC_MSG_CHECKING([for gstplay 0.8])
+        WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],gstplay-0.8)           
+        
+        if test "$ac_find_libraries" = "" ; then
+            AC_MSG_RESULT([no])
+            wxUSE_GSTREAMER="no"
+        else
+            AC_MSG_RESULT([yes])        
+        fi
+        
+        if test "$wxUSE_GSTREAMER" = "yes"; then
+            AC_DEFINE(wxUSE_GSTREAMER)
+            AC_MSG_RESULT([GStreamer detection successful])
+        fi
+    fi
+    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS mediaplayer"
+    AC_DEFINE(wxUSE_MEDIACTRL)
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl get the string with OS info - used by wxGetOsDescription() on MacOS X
 dnl ---------------------------------------------------------------------------
@@ -6024,7 +6222,10 @@ if test "$wxUSE_MAC" = 1 ; then
     fi
 fi
 if test "$wxUSE_COCOA" = 1 ; then
-    LDFLAGS="$LDFLAGS -framework Cocoa"
+    LDFLAGS="$LDFLAGS -framework IOKit -framework Cocoa"
+    if test "$wxUSE_MEDIACTRL" = "yes"; then
+        LDFLAGS="$LDFLAGS -framework QuickTime"
+    fi
 fi
 
 dnl FIXME: should this be covered by the conditional above
@@ -6079,15 +6280,17 @@ if test "$wxUSE_GUI" = "yes"; then
     dnl TODO add checks that these samples will really compile (i.e. all the
     dnl      library features they need are present)
 
-    dnl TODO some samples are never built so far:
-    dnl      ipc, mfc, nativdlg, oleauto, ownerdrw
+    dnl TODO some samples are never built so far: mfc, ownerdrw
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs \
                      drawing dynamic erase event exec font image \
-                     minimal propsize rotate shaped widgets render"
+                     minimal propsize rotate shaped vscroll widgets render"
 
     if test "$wxUSE_MONOLITHIC" != "yes"; then
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"
     fi
+    if test "$TOOLKIT" = "MSW"; then
+        SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS nativdlg regtest richedit"
+    fi
 else
     SAMPLES_SUBDIRS="console"
 fi
@@ -6118,6 +6321,21 @@ CPPFLAGS=`echo $WXDEBUG_DEFINE $INCLUDES $CPPFLAGS`
 CFLAGS=`echo $CODE_GEN_FLAGS $EXTRA_CFLAGS $CFLAGS $CWARNINGS`
 CXXFLAGS=`echo $CODE_GEN_FLAGS $CODE_GEN_FLAGS_CXX $EXTRA_CFLAGS $CXXFLAGS $CXXWARNINGS`
     
+if test "x$MWCC" = "xyes"; then
+    dnl Correct MW 8.3 to be more similar to GCC.  In particular we
+    dnl must use <regex.h> from system not our local copy on OS X,
+    dnl but must use local not system on OS 9.
+    dnl The following should make all -I paths usable for <> includes
+    dnl while first checking in real system paths.  With 8.3 using
+    dnl -gccincludes it will actually check local paths before system
+    dnl even for <> which is totally wrong.
+
+    dnl Note that because this absolutely needs to be before any -I
+    dnl that we have to tack it on to the end of the compiler commandline.
+    CC="$CC -cwd source -I-"
+    CXX="$CXX -cwd source -I-"
+fi
+
 
 LIBS=`echo $LIBS`
 EXTRALIBS="$LDFLAGS $LDFLAGS_VERSIONING $LIBS $DMALLOC_LIBS"
@@ -6125,7 +6343,7 @@ 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 $WEBKIT_LINK`
+    EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_GNOMEPRINT`
 fi
 if test "$wxUSE_OPENGL" = "yes"; then
     EXTRALIBS_OPENGL="$LDFLAGS_GL $OPENGL_LIBS"
@@ -6255,7 +6473,7 @@ case "$TOOLKIT" in
         ;;
 esac
 
-AC_BAKEFILE
+AC_BAKEFILE([m4_include(autoconf_inc.m4)])
 
 if test "$wxUSE_SHARED" = "yes"; then