]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
fix return type for "map_event" and "unmap_event" handlers
[wxWidgets.git] / configure.in
index ccdd99f63ce49296f5101d415744ff3e1f1c1e0c..fec3b76fb0366c0e4a5c302c39d3815604f0f317 100644 (file)
@@ -369,6 +369,7 @@ DEBUG_CONFIGURE=0
 if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
+  DEFAULT_wxUSE_EXTENDED_RTTI=no
 
   DEFAULT_wxUSE_NANOX=no
 
@@ -466,7 +467,6 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=no
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=no
 
-  DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=no
   DEFAULT_wxUSE_IPC=no
   DEFAULT_wxUSE_HELP=no
@@ -505,6 +505,7 @@ if test $DEBUG_CONFIGURE = 1; then
   DEFAULT_wxUSE_RICHTEXT=no
   DEFAULT_wxUSE_XRC=no
   DEFAULT_wxUSE_AUI=no
+  DEFAULT_wxUSE_STC=no
   DEFAULT_wxUSE_WEBKIT=no
   DEFAULT_wxUSE_FILESYSTEM=no
   DEFAULT_wxUSE_FS_INET=no
@@ -575,6 +576,7 @@ if test $DEBUG_CONFIGURE = 1; then
 
   DEFAULT_wxUSE_UNICODE=no
   DEFAULT_wxUSE_UNICODE_MSLU=no
+  DEFAULT_wxUSE_UNICODE_UTF8=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=no
@@ -594,6 +596,7 @@ if test $DEBUG_CONFIGURE = 1; then
 else
   DEFAULT_wxUSE_UNIVERSAL=no
   DEFAULT_wxUSE_STL=no
+  DEFAULT_wxUSE_EXTENDED_RTTI=no
 
   DEFAULT_wxUSE_NANOX=no
 
@@ -690,7 +693,6 @@ else
   DEFAULT_wxUSE_DOC_VIEW_ARCHITECTURE=yes
   DEFAULT_wxUSE_PRINTING_ARCHITECTURE=yes
 
-  DEFAULT_wxUSE_RESOURCES=no
   DEFAULT_wxUSE_CONSTRAINTS=yes
   DEFAULT_wxUSE_IPC=yes
   DEFAULT_wxUSE_HELP=yes
@@ -729,6 +731,7 @@ else
   DEFAULT_wxUSE_RICHTEXT=yes
   DEFAULT_wxUSE_XRC=yes
   DEFAULT_wxUSE_AUI=yes
+  DEFAULT_wxUSE_STC=yes
   DEFAULT_wxUSE_WEBKIT=yes
   DEFAULT_wxUSE_FILESYSTEM=yes
   DEFAULT_wxUSE_FS_INET=yes
@@ -799,6 +802,7 @@ else
 
   DEFAULT_wxUSE_UNICODE=no
   DEFAULT_wxUSE_UNICODE_MSLU=yes
+  DEFAULT_wxUSE_UNICODE_UTF8=no
   DEFAULT_wxUSE_WCSRTOMBS=no
 
   DEFAULT_wxUSE_PALETTE=yes
@@ -909,6 +913,7 @@ WX_ARG_ENABLE(shared,      [  --enable-shared         create shared library code
 WX_ARG_ENABLE(optimise,    [  --enable-optimise       create optimised code], wxUSE_OPTIMISE)
 WX_ARG_ENABLE(debug,       [  --enable-debug          same as debug_flag and debug_info], wxUSE_DEBUG)
 WX_ARG_ENABLE(stl,         [  --enable-stl            use STL for containers], wxUSE_STL)
+WX_ARG_ENABLE(extended_rtti, [  --enable-extended_rtti  use extended RTTI (XTI)], wxUSE_EXTENDED_RTTI)
 if test "$USE_OS2" = "1"; then
     DEFAULT_wxUSE_OMF=no
     WX_ARG_ENABLE(omf,     [  --enable-omf            use OMF object format], wxUSE_OMF)
@@ -984,6 +989,8 @@ WX_ARG_ENABLE(log,           [  --enable-log            use logging system], wxU
 WX_ARG_ENABLE(longlong,      [  --enable-longlong       use wxLongLong class], wxUSE_LONGLONG)
 WX_ARG_ENABLE(mimetype,      [  --enable-mimetype       use wxMimeTypesManager], wxUSE_MIMETYPE)
 WX_ARG_ENABLE(mslu,          [  --enable-mslu           use MS Layer for Unicode on Windows 9x (Win32 only)], wxUSE_UNICODE_MSLU)
+dnl FIXME-UTF8: make UTF8 automatic
+WX_ARG_ENABLE(utf8,          [  --enable-utf8           use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
 WX_ARG_ENABLE(snglinst,      [  --enable-snglinst       use wxSingleInstanceChecker class], wxUSE_SNGLINST_CHECKER)
 WX_ARG_ENABLE(std_iostreams, [  --enable-std_iostreams  use standard C++ stream classes], wxUSE_STD_IOSTREAM)
 WX_ARG_ENABLE(std_string,    [  --enable-std_string     use standard C++ string classes], wxUSE_STD_STRING)
@@ -1029,6 +1036,7 @@ WX_ARG_ENABLE(html,        [  --enable-html           use wxHTML sub-library], w
 WX_ARG_ENABLE(htmlhelp,    [  --enable-htmlhelp       use wxHTML-based help], wxUSE_WXHTML_HELP)
 WX_ARG_ENABLE(xrc,         [  --enable-xrc            use XRC resources sub-library], wxUSE_XRC)
 WX_ARG_ENABLE(aui,         [  --enable-aui            use AUI docking library], wxUSE_AUI)
+WX_ARG_ENABLE(stc,         [  --enable-stc            use wxStyledTextCtrl library], wxUSE_STC)
 WX_ARG_ENABLE(constraints, [  --enable-constraints    use layout-constraints system], wxUSE_CONSTRAINTS)
 WX_ARG_ENABLE(printarch,   [  --enable-printarch      use printing architecture], wxUSE_PRINTING_ARCHITECTURE)
 WX_ARG_ENABLE(mdi,         [  --enable-mdi            use multiple document interface architecture], wxUSE_MDI)
@@ -1049,13 +1057,6 @@ dnl VZ: these options seem to be always on, if someone wants to change it please
 dnl WX_ARG_ENABLE(PS-normalized,    [  --enable-PS-normalized  use normalized PS fonts], dnl             wxUSE_NORMALIZED_PS_FONTS)
 dnl WX_ARG_ENABLE(afmfonts,        [  --enable-afmfonts       use Adobe Font Metric Font table], dnl             wxUSE_AFM_FOR_POSTSCRIPT)
 
-dnl ---------------------------------------------------------------------------
-dnl resources
-dnl ---------------------------------------------------------------------------
-
-WX_ARG_ENABLE(prologio,    [  --enable-prologio       not available; see contrib], wxUSE_PROLOGIO)
-WX_ARG_ENABLE(resources,   [  --enable-resources      not available; see contrib], wxUSE_RESOURCES)
-
 dnl ---------------------------------------------------------------------------
 dnl IPC &c
 dnl ---------------------------------------------------------------------------
@@ -1831,11 +1832,13 @@ dnl ------------------------------------------------------------------------
 dnl Check for headers
 dnl ------------------------------------------------------------------------
 
-AC_CHECK_HEADERS(stdlib.h fnmatch.h langinfo.h malloc.h unistd.h wchar.h)
+dnl Note: non-empty last parameter makes check compile-only,
+dnl   skipping worthless preprocessing check
+AC_CHECK_HEADERS(stdlib.h fnmatch.h langinfo.h malloc.h unistd.h wchar.h,,, [AC_INCLUDES_DEFAULT()])
 
 dnl maybe wchar_t is in wcstr.h if we don't have wchar.h?
 if test "$ac_cv_header_wchar_h" != "yes"; then
-    AC_CHECK_HEADERS(wcstr.h)
+    AC_CHECK_HEADER(wcstr.h,,, [AC_INCLUDES_DEFAULT()])
 fi
 
 case "${host}" in
@@ -1853,7 +1856,7 @@ esac
 
 dnl POSIX needs this for select(), but old systems don't have it
 if test "$USE_UNIX" = 1 ; then
-    AC_CHECK_HEADERS([sys/select.h])
+    AC_CHECK_HEADER([sys/select.h],,, [AC_INCLUDES_DEFAULT()])
 fi
 
 dnl ---------------------------------------------------------------------------
@@ -1868,7 +1871,6 @@ AC_C_INLINE
 dnl check the sizes of integral types (give some reasonable default values for
 dnl cross-compiling)
 dnl   defines the size of certain types of variables in SIZEOF_<TYPE>
-AC_CHECK_SIZEOF(char, 1)
 AC_CHECK_SIZEOF(short, 2)
 AC_CHECK_SIZEOF(void *, 4)
 AC_CHECK_SIZEOF(int, 4)
@@ -2278,7 +2280,9 @@ if test "$wxUSE_STL" = "yes"; then
                 wx_cv_class_stdhashmapset=yes,
                 wx_cv_class_stdhashmapset=no)
             ]
-        )]
+        )],
+        [],
+        [ ]
     )
 
     if test "$wx_cv_class_stdhashmapset" = yes; then
@@ -2296,7 +2300,9 @@ if test "$wxUSE_STL" = "yes"; then
                 wx_cv_class_gnuhashmapset=yes,
                 wx_cv_class_gnuhashmapset=no)
             ]
-        )]
+        )],
+        [],
+        [ ]
     )
 
     if test "$wx_cv_class_gnuhashmapset" = yes; then
@@ -2591,7 +2597,7 @@ if test "$wxUSE_REGEX" != "no"; then
     if test "$wxUSE_REGEX" = "sys" -o "$wxUSE_REGEX" = "yes" ; then
         dnl according to Unix 98 specs, regcomp() is in libc but I believe that
         dnl on some old systems it may be in libregex - check for it too?
-        AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp re_search)])
+        AC_CHECK_HEADER(regex.h, [AC_CHECK_FUNCS(regcomp re_search)],, [ ])
 
         if test "x$ac_cv_func_regcomp" != "xyes"; then
             if test "$wxUSE_REGEX" = "sys" ; then
@@ -2659,7 +2665,7 @@ if test "$wxUSE_ZLIB" != "no" ; then
             )
             dnl If the test above did not come up with a value (e.g. cross
             dnl compiling) then this should give a definitive answer
-            AC_CHECK_HEADER(zlib.h)
+            AC_CHECK_HEADER(zlib.h,,, [ ])
 
             system_zlib_h_ok=$ac_cv_header_zlib_h
         fi
@@ -2730,7 +2736,7 @@ if test "$wxUSE_LIBPNG" != "no" ; then
                     unset ac_cv_header_png_h
                 )]
             )
-            AC_CHECK_HEADER(png.h)
+            AC_CHECK_HEADER(png.h,,, [ ])
 
             if test "$ac_cv_header_png_h" = "yes"; then
                 AC_CHECK_LIB(png, png_check_sig, PNG_LINK=" -lpng -lz", , [-lz -lm])
@@ -2855,7 +2861,9 @@ if test "$wxUSE_LIBTIFF" != "no" ; then
                                          TIFF_LINK=" -ltiff",
                                          ,
                                          $TIFF_PREREQ_LINKS)
-                        ]
+                        ],
+                        [],
+                        [ ]
                        )
 
         if test "x$TIFF_LINK" = "x" ; then
@@ -2893,7 +2901,7 @@ if test "$wxUSE_EXPAT" != "no"; then
     AC_DEFINE(wxUSE_XML)
 
     if test "$wxUSE_EXPAT" = "sys" -o "$wxUSE_EXPAT" = "yes" ; then
-        AC_CHECK_HEADER([expat.h], [found_expat_h=1])
+        AC_CHECK_HEADER([expat.h], [found_expat_h=1],, [ ])
         if test "x$found_expat_h" = "x1"; then
             dnl Expat 1.95.6 comes with broken expat.h:
             AC_CACHE_CHECK([if expat.h is valid C++ header],
@@ -2935,7 +2943,7 @@ dnl Check for libmspack
 dnl ------------------------------------------------------------------------
 
 if test "$wxUSE_LIBMSPACK" != "no"; then
-    AC_CHECK_HEADER([mspack.h], [found_mspack_h=1])
+    AC_CHECK_HEADER([mspack.h], [found_mspack_h=1],, [ ])
     if test "x$found_mspack_h" = "x1"; then
         AC_CHECK_LIB(mspack, mspack_create_chm_decompressor,
                      MSPACK_LINK=" -lmspack")
@@ -2964,11 +2972,12 @@ WIDGET_SET=
 dnl are we building for a win32 target environment?
 dnl If so, setup common stuff needed for both GUI and Base libs.
 if test "$USE_WIN32" = 1 ; then
-    AC_CHECK_HEADERS(w32api.h)
-    AC_CHECK_HEADER(windows.h, [],
+    AC_CHECK_HEADER(w32api.h,,, [ ])
+    AC_CHECK_HEADER(windows.h,,
     [
         AC_MSG_ERROR(please set CFLAGS to contain the location of windows.h)
-    ])
+    ],
+    [ ])
 
     dnl --- FIXME: This is still a somewhat random list of libs,
     dnl ---        some of them should probably be included conditionally.
@@ -3007,7 +3016,7 @@ if test "$USE_WIN32" = 1 ; then
     WIN32INSTALL=win32install
 
     dnl pbt.h is missing on Wine at least
-    AC_CHECK_HEADERS(pbt.h, [], [AC_DEFINE(NEED_PBT_H)])
+    AC_CHECK_HEADER(pbt.h,, [AC_DEFINE(NEED_PBT_H)], [ ])
 fi
 
 if test "$wxUSE_GUI" = "yes"; then
@@ -3158,45 +3167,70 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config
                            [AC_DEFINE(NEED_GTK_ICON_SIZE_LOOKUP)],
                            [#include <gtk/gtk.h>])
 
-            dnl test if we have at least GTK+ 2.6:
-            AC_MSG_CHECKING([if GTK+ is version >= 2.6])
+
+            dnl test if we have at least GTK+ 2.10:
+            AC_MSG_CHECKING([if GTK+ is version >= 2.10])
             AC_TRY_COMPILE([
                             #include <gtk/gtk.h>
                            ],
                            [
-                            #if !GTK_CHECK_VERSION(2,6,0)
-                            Not GTK+ 2.6
+                            #if !GTK_CHECK_VERSION(2,10,0)
+                            Not GTK+ 2.10
                             #endif
                            ],
                            [
+                            AC_DEFINE(__WXGTK210__)
                             AC_DEFINE(__WXGTK26__)
                             AC_DEFINE(__WXGTK24__)
                             AC_MSG_RESULT([yes])
-                            ac_wxgtk26=1
+                            ac_wxgtk210=1
                            ],
                            [
                             AC_MSG_RESULT([no])
-                            ac_wxgtk26=0
+                            ac_wxgtk210=0
                            ])
 
+            if test "$ac_wxgtk210" = 0; then
+                dnl test if we have at least GTK+ 2.6:
+                AC_MSG_CHECKING([if GTK+ is version >= 2.6])
+                AC_TRY_COMPILE([
+                                #include <gtk/gtk.h>
+                            ],
+                            [
+                                #if !GTK_CHECK_VERSION(2,6,0)
+                                Not GTK+ 2.6
+                                #endif
+                            ],
+                            [
+                                AC_DEFINE(__WXGTK26__)
+                                AC_DEFINE(__WXGTK24__)
+                                AC_MSG_RESULT([yes])
+                                ac_wxgtk26=1
+                            ],
+                            [
+                                AC_MSG_RESULT([no])
+                                ac_wxgtk26=0
+                            ])
+            fi
+
             if test "$ac_wxgtk26" = 0; then
-            dnl test if we have at least GTK+ 2.4:
-            AC_MSG_CHECKING([if GTK+ is version >= 2.4])
-            AC_TRY_COMPILE([
-                            #include <gtk/gtk.h>
-                           ],
-                           [
-                            #if !GTK_CHECK_VERSION(2,4,0)
-                            Not GTK+ 2.4
-                            #endif
-                           ],
-                           [
-                            AC_DEFINE(__WXGTK24__)
-                            AC_MSG_RESULT([yes])
-                           ],
-                           [
-                            AC_MSG_RESULT([no])
-                           ])
+                dnl test if we have at least GTK+ 2.4:
+                AC_MSG_CHECKING([if GTK+ is version >= 2.4])
+                AC_TRY_COMPILE([
+                                #include <gtk/gtk.h>
+                            ],
+                            [
+                                #if !GTK_CHECK_VERSION(2,4,0)
+                                Not GTK+ 2.4
+                                #endif
+                            ],
+                            [
+                                AC_DEFINE(__WXGTK24__)
+                                AC_MSG_RESULT([yes])
+                            ],
+                            [
+                                AC_MSG_RESULT([no])
+                            ])
             fi
 
             CFLAGS="$save_CFLAGS"
@@ -3800,8 +3834,8 @@ dnl do this after test for X11 above so that we have a chance of finding Xlib.h
 if test "$wxUSE_GUI" = "yes"; then
     if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_PM" != 1; then
         dnl defines HAVE_X11_XKBLIB_H
-        AC_CHECK_HEADERS(X11/Xlib.h)
-        AC_CHECK_HEADERS([X11/XKBlib.h], [], [],
+        AC_CHECK_HEADER(X11/Xlib.h,,, [ ])
+        AC_CHECK_HEADER([X11/XKBlib.h],,,
                          [
                           #if HAVE_X11_XLIB_H
                             #include <X11/Xlib.h>
@@ -3825,7 +3859,7 @@ if test "$TOOLKIT" != "MSW" ; then
         dnl This is not ideal we really ough to use the unixodbc-config
         dnl  or iodbc-config if they exist.
 
-        AC_CHECK_HEADER([sql.h], [found_sql_h=1])
+        AC_CHECK_HEADER([sql.h], [found_sql_h=1],, [ ])
         if test "x$found_sql_h" = "x1" ; then
             AC_CHECK_LIB(iodbc, SQLAllocEnv, ODBC_LINK=" -liodbc",
             [
@@ -3884,7 +3918,7 @@ dnl ---------------------------------------------------------------------------
             WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xxf86vm)
             if test "$ac_find_libraries" != "" ; then
                 AC_MSG_RESULT([yes])
-                AC_CHECK_HEADERS([X11/extensions/xf86vmode.h],
+                AC_CHECK_HEADER([X11/extensions/xf86vmode.h],
                                  [
                                   GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm"
                                  ],
@@ -3907,7 +3941,7 @@ dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl DirectDraw for MSW - optionally used by WxDisplay.
 dnl ---------------------------------------------------------------------------
-        AC_CHECK_HEADERS([ddraw.h], [], [], [#include <windows.h>])
+        AC_CHECK_HEADER([ddraw.h], [], [], [#include <windows.h>])
     fi
 fi
 
@@ -4011,7 +4045,9 @@ if test "$wxUSE_OPENGL" = "yes"; then
                     fi
                 fi
             ])
-        ])
+        ],
+        [],
+        [ ])
 
         if test "x$OPENGL_LIBS" = "x"; then
             dnl it should be an error and not a warning because OpenGL is not on
@@ -4626,7 +4662,7 @@ if test "$wxUSE_UNICODE" = yes; then
 #include <wchar.h>"
     case "${host}" in
         *-*-solaris2* )
-            AC_CHECK_HEADERS(widec.h)
+            AC_CHECK_HEADER(widec.h,,, [AC_INCLUDES_DEFAULT()])
             if test "$ac_cv_header_widec_h" = "yes"; then
                 wchar_headers="$wchar_headers
 #include <widec.h>"
@@ -4979,35 +5015,6 @@ WX_CHECK_FUNCS(fdopen)
 
 fi
 
-dnl if !MSW
-
-
-dnl ------------------------------------------
-dnl Checks specific to contrib libs (MMedia)
-dnl ------------------------------------------
-
-dnl Check for ESD:
-EXTRALIBS_ESD=
-AC_CHECK_LIB(esd, esd_close, [
-    AC_CHECK_HEADERS([esd.h], [
-    EXTRALIBS_ESD="-lesd"
-  ])
-])
-AC_SUBST(EXTRALIBS_ESD)
-
-dnl check for known CD-ROM interface
-AC_MSG_CHECKING([for known CD-ROM interface])
-AC_TRY_COMPILE([#ifdef __linux__
-                #include <linux/cdrom.h>
-                #else
-                /* For Solaris */
-                #include <sys/cdio.h>
-                #endif
-                ],
-               [struct cdrom_tocentry entry, old_entry;],
-               [AC_MSG_RESULT([yes])
-                AC_DEFINE(HAVE_KNOWN_CDROM_INTERFACE)],
-               [AC_MSG_RESULT([no])])
 
 dnl ===========================================================================
 dnl Now we have all the info we need - use it!
@@ -5226,7 +5233,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
         AC_DEFINE(wxHAVE_PTHREAD_CLEANUP)
       fi
 
-      AC_CHECK_HEADERS(sched.h)
+      AC_CHECK_HEADER(sched.h,,, [AC_INCLUDES_DEFAULT()])
       if test "$ac_cv_header_sched_h" = "yes"; then
           AC_CHECK_FUNC(sched_yield,
             AC_DEFINE(HAVE_SCHED_YIELD),
@@ -5271,6 +5278,10 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then
                     AC_DEFINE(HAVE_PTHREAD_CANCEL),
                     AC_MSG_WARN([wxThread::Kill() will not work properly]))
 
+      AC_CHECK_FUNC(pthread_mutex_timedlock,
+                    AC_DEFINE(HAVE_PTHREAD_MUTEX_TIMEDLOCK),
+                    AC_MSG_WARN([wxMutex::LockTimeout() will not work]))
+
       AC_CHECK_FUNC(pthread_attr_setstacksize,
                     AC_DEFINE(HAVE_PTHREAD_ATTR_SETSTACKSIZE))
 
@@ -5699,6 +5710,10 @@ if test "$wxUSE_STL" = "yes"; then
   AC_DEFINE(wxUSE_STL)
 fi
 
+if test "$wxUSE_EXTENDED_RTTI" = "yes"; then
+  AC_DEFINE(wxUSE_EXTENDED_RTTI)
+fi
+
 if test "$wxUSE_APPLE_IEEE" = "yes"; then
   AC_DEFINE(wxUSE_APPLE_IEEE)
 fi
@@ -5747,8 +5762,6 @@ if test "$USE_UNIX" = "1" ; then
 
     if test "$ac_cv_header_sys_soundcard" = "yes"; then
         AC_DEFINE(HAVE_SYS_SOUNDCARD_H)
-    else
-        DISABLED_CONTRIB="$DISABLED_CONTRIB mmedia"
     fi
 fi
 
@@ -6293,6 +6306,12 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
         AC_CACHE_CHECK([what is the type of the fifth argument of getsockopt],
                        wx_cv_type_getsockopt5,
             [
+                dnl Note that the rules for compatibility of pointers
+                dnl are somewhat different between C and C++, so code 
+                dnl that fails in C++ may not even give a warning about
+                dnl converting between incompatible pointer types in C.
+                dnl So this test needs to be done in C++ mode.
+                AC_LANG_PUSH(C++)
                 AC_TRY_COMPILE(
                     [
                         #include <sys/types.h>
@@ -6304,12 +6323,6 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
                     ],
                     wx_cv_type_getsockopt5=socklen_t,
                     [
-                        dnl Note that the rules for compatibility of pointers
-                        dnl are somewhat different between C and C++, so code 
-                        dnl that fails in C++ may not even give a warning about
-                        dnl converting between incompatible pointer types in C.
-                        dnl So this test needs to be done in C++ mode.
-                        AC_LANG_PUSH(C++)
                         AC_TRY_COMPILE(
                             [
                                 #include <sys/types.h>
@@ -6333,9 +6346,9 @@ if test "$wxUSE_SOCKETS" = "yes" ; then
                                 wx_cv_type_getsockopt5=unknown
                             )
                         )
-                        AC_LANG_POP()
                     ]
                 )
+                AC_LANG_POP()
             ])
 
         if test "$wx_cv_type_getsockopt5" = "unknown"; then
@@ -6433,7 +6446,7 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then
             dnl can't be compiled because of an error and with the default
             dnl AC_CHECK_HEADER semantics we'd still detect it in this case and
             dnl build would fail later
-            AC_CHECK_HEADER(linux/joystick.h, wxUSE_JOYSTICK=yes,,[#include <stdio.h>])
+            AC_CHECK_HEADER(linux/joystick.h, [wxUSE_JOYSTICK=yes],, [AC_INCLUDES_DEFAULT()])
         fi
     fi
 
@@ -6474,6 +6487,10 @@ if test "$wxUSE_UNICODE" = "yes" ; then
     fi
 fi
 
+if test "$wxUSE_UNICODE" = "yes" -a "$wxUSE_UNICODE_UTF8" = "yes"; then
+    AC_DEFINE(wxUSE_UNICODE_UTF8)
+fi
+
 if test "$wxUSE_wxUSE_EXPERIMENTAL_PRINTF" = "yes"; then
   AC_DEFINE(wxUSE_EXPERIMENTAL_PRINTF)
 fi
@@ -6545,9 +6562,6 @@ if test "$wxUSE_PRINTING_ARCHITECTURE" = "yes" ; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS printing"
 fi
 
-if test "$wxUSE_PROLOGIO" = "yes" -o  "$wxUSE_RESOURCES" = "yes"; then
-    AC_MSG_ERROR([wxExpr and old-style resources are now available in contrib only])
-fi
 
 dnl ---------------------------------------------------------------------------
 dnl wxMetafile availability
@@ -6570,7 +6584,7 @@ if test "$USE_WIN32" = 1 -a \( "$wxUSE_DATAOBJ"       = "yes" \
                           -o "$wxUSE_CLIPBOARD"     = "yes" \
                           -o "$wxUSE_OLE"     = "yes" \
                           -o "$wxUSE_DRAG_AND_DROP" = "yes" \) ; then
-    AC_CHECK_HEADERS(ole2.h)
+    AC_CHECK_HEADER(ole2.h,,, [ ])
 
     if test "$ac_cv_header_ole2_h" = "yes" ; then
         if test "$GCC" = yes ; then
@@ -7127,6 +7141,13 @@ if test "$wxUSE_AUI" = "yes"; then
    SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS aui"
 fi
 
+USE_STC=0
+if test "$wxUSE_STC" = "yes"; then
+   AC_DEFINE(wxUSE_STC)
+   USE_STC=1
+   SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS stc"
+fi
+
 if test "$wxUSE_MENUS" = "yes"; then
     AC_DEFINE(wxUSE_MENUS)
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
@@ -7443,6 +7464,9 @@ fi
 if test "$wxUSE_AUI" = "yes" ; then
     CORE_GUI_LIBS="aui $CORE_GUI_LIBS"
 fi
+if test "$wxUSE_STC" = "yes" ; then
+    CORE_GUI_LIBS="stc $CORE_GUI_LIBS"
+fi
 
 if test "$wxUSE_GUI" != "yes"; then
     CORE_GUI_LIBS=""
@@ -7492,7 +7516,7 @@ if test "$wxUSE_GUI" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS artprov controls dialogs drawing \
                      dynamic erase event exec font image minimal mobile \
                      mobile/wxedit mobile/styles propsize render \
-                     rotate shaped vscroll widgets"
+                     rotate shaped svg taborder vscroll widgets"
 
     if test "$wxUSE_MONOLITHIC" != "yes"; then
         SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS console"
@@ -7569,7 +7593,7 @@ CPPFLAGS=`echo $WXCONFIG_CPPFLAGS \
 
 C_AND_CXX_FLAGS="$DEBUG_CFLAGS $PROFILE_FLAGS $OPTIMISE_CFLAGS"
 CFLAGS=`echo $WXCONFIG_CFLAGS $CWARNINGS $C_AND_CXX_FLAGS $CFLAGS `
-CXXFLAGS=`echo $WXCONFIG_CXXFLAGS $CXXWARNINGS $C_AND_CXX_FLAGS $CXXFLAGS `
+CXXFLAGS=`echo $WXCONFIG_CXXFLAGS $C_AND_CXX_FLAGS $CXXFLAGS `
 
 dnl now that we added WXCONFIG_CPPFLAGS to CPPFLAGS we can add the wx-config
 dnl only stuff to it
@@ -7597,6 +7621,7 @@ EXTRALIBS="$LDFLAGS $LDFLAGS_VERSIONING $LIBS $DMALLOC_LIBS"
 EXTRALIBS_XML="$EXPAT_LINK"
 EXTRALIBS_HTML="$MSPACK_LINK"
 EXTRALIBS_ODBC="$ODBC_LINK"
+EXTRALIBS_STC="-lwxscintilla${lib_debug_suffix}${WX_LIB_FLAVOUR}-${WX_RELEASE}${HOST_SUFFIX}"
 if test "$wxUSE_GUI" = "yes"; then
     EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK $EXTRALIBS_HILDON $EXTRALIBS_GNOMEVFS $EXTRALIBS_GNOMEPRINT`
 fi
@@ -7700,6 +7725,7 @@ AC_SUBST(WXUNIV)
 AC_SUBST(MONOLITHIC)
 AC_SUBST(USE_PLUGINS)
 AC_SUBST(LIBS)
+AC_SUBST(CXXWARNINGS)
 AC_SUBST(EXTRALIBS)
 AC_SUBST(EXTRALIBS_XML)
 AC_SUBST(EXTRALIBS_HTML)
@@ -8046,23 +8072,18 @@ dnl resembles an installed wx in prefix=$builddir.  It is troublesome
 dnl though in this form because AC_CONFIG_LINKS will fail for directories
 dnl on platforms that do not have symlinks.
 dnl AC_CONFIG_LINKS([ include/wx-$WX_RELEASE$WX_FLAVOUR:include ])
-dnl AC_CONFIG_LINKS([ contrib/include ])
 
 if test "$wxWITH_SUBDIRS" != "no"; then
-dnl Configure samples, contrib etc. directories, but only if they are present:
+dnl Configure samples, demos etc. directories, but only if they are present:
 if test "$wxUSE_GUI" = "yes"; then
-    SUBDIRS="samples demos utils contrib"
+    SUBDIRS="samples demos utils"
 else dnl we build wxBase only
-    dnl there are no wxBase programs in contrib nor demos
+    dnl there are no wxBase programs in demos
     SUBDIRS="samples utils"
 fi
 dnl Add tests to the list of subdirs if cppunit 1.8.0+ is detected
 AM_PATH_CPPUNIT(1.8.0, [SUBDIRS="$SUBDIRS tests"])
 
-if test "$USE_UNIX" != "1" -a "$USE_WIN32" != "1"; then
-    DISABLED_CONTRIB="$DISABLED_CONTRIB net"
-fi
-
 for subdir in `echo $SUBDIRS`; do
     if test -d ${srcdir}/${subdir} ; then
         if test "$wxUSE_GUI" = "yes"; then
@@ -8078,7 +8099,7 @@ for subdir in `echo $SUBDIRS`; do
             else
                 dnl assume that everything compiles for utils &c
                 dnl any that shouldn't be built can be added to
-                dnl DISABLED_UTILS, DISABLED_CONTRIB or DISABLED_DEMOS
+                dnl DISABLED_UTILS, DISABLED_DEMOS
                 disabled_var=DISABLED_`echo $subdir | tr [[a-z]] [[A-Z]]`;
                 eval "disabled=\$$disabled_var"
                 disabled=/`echo X $disabled | sed 's@ @/|/@g'`/