]> git.saurik.com Git - wxWidgets.git/blobdiff - configure.in
Resolve ambiguity between GetClientXXX() methods in wxOSX wxComboBox.
[wxWidgets.git] / configure.in
index 214c7034baaf3125da668504bb989410f6abc9aa..f2a5156351455c0763d3010d5bb81e6aebdaa0e3 100644 (file)
@@ -17,7 +17,7 @@ dnl ---------------------------------------------------------------------------
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
 dnl initialization
 dnl ---------------------------------------------------------------------------
 
-AC_INIT([wxWidgets], [2.9.2], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [2.9.3], [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])
 
 dnl the file passed to AC_CONFIG_SRCDIR should be specific to our package
 AC_CONFIG_SRCDIR([wx-config.in])
@@ -43,7 +43,7 @@ dnl wx_release_number += 1
 
 wx_major_version_number=2
 wx_minor_version_number=9
 
 wx_major_version_number=2
 wx_minor_version_number=9
-wx_release_number=2
+wx_release_number=3
 wx_subrelease_number=0
 
 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
 wx_subrelease_number=0
 
 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
@@ -372,6 +372,7 @@ dnl wxUSE_ALL_FEATURES which is the only which has to be set to "yes" by
 dnl default)
 DEFAULT_wxUSE_ALL_FEATURES=yes
 
 dnl default)
 DEFAULT_wxUSE_ALL_FEATURES=yes
 
+DEFAULT_wxUSE_STD_CONTAINERS=no
 DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
 DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
 
 DEFAULT_wxUSE_STD_IOSTREAM=$DEFAULT_STD_FLAG
 DEFAULT_wxUSE_STD_STRING=$DEFAULT_STD_FLAG
 
@@ -533,7 +534,7 @@ if test "$wxUSE_GUI" = "yes"; then
         fi
       done
     else
         fi
       done
     else
-      dnl try to guess the most apropriate toolkit for this platform
+      dnl try to guess the most appropriate toolkit for this platform
       for toolkit in $ALL_TOOLKITS; do
         var=DEFAULT_DEFAULT_wxUSE_$toolkit
         eval "wxUSE_$toolkit=\$${var}"
       for toolkit in $ALL_TOOLKITS; do
         var=DEFAULT_DEFAULT_wxUSE_$toolkit
         eval "wxUSE_$toolkit=\$${var}"
@@ -699,9 +700,16 @@ dnl global compile options
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_DISABLE(shared,     [  --disable-shared        create static library instead of shared], wxUSE_SHARED)
 dnl ---------------------------------------------------------------------------
 
 WX_ARG_DISABLE(shared,     [  --disable-shared        create static library instead of shared], wxUSE_SHARED)
-WX_ARG_ENABLE(stl,         [  --enable-stl            use STL for containers], wxUSE_STL)
+WX_ARG_ENABLE(stl,         [  --enable-stl            use standard C++ classes for everything], wxUSE_STL)
+if test "$wxUSE_STL" = "yes"; then
+    DEFAULT_wxUSE_STD_CONTAINERS=yes
+    DEFAULT_wxUSE_STD_IOSTREAM=yes
+    DEFAULT_wxUSE_STD_STRING=yes
+fi
+WX_ARG_ENABLE(std_containers,[  --enable-std_containers use standard C++ container classes], wxUSE_STD_CONTAINERS)
 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)
 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)
+WX_ARG_ENABLE(std_string_conv_in_wxstring, [ --enable-std_string_conv_in_wxstring     provide implicit conversion to std::string in wxString], wxUSE_STD_STRING_CONV_IN_WXSTRING)
 WX_ARG_DISABLE(unicode,      [  --disable-unicode       compile without 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_PARAM(utf8,    [  --enable-utf8           use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
 WX_ARG_DISABLE(unicode,      [  --disable-unicode       compile without 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_PARAM(utf8,    [  --enable-utf8           use UTF-8 representation for strings (Unix only)], wxUSE_UNICODE_UTF8)
@@ -898,6 +906,7 @@ if test "$wxUSE_CONTROLS" = "no"; then
     DEFAULT_wxUSE_LISTBOOK=no
     DEFAULT_wxUSE_LISTBOX=no
     DEFAULT_wxUSE_LISTCTRL=no
     DEFAULT_wxUSE_LISTBOOK=no
     DEFAULT_wxUSE_LISTBOX=no
     DEFAULT_wxUSE_LISTCTRL=no
+    DEFAULT_wxUSE_MARKUP=no
     DEFAULT_wxUSE_NOTEBOOK=no
     DEFAULT_wxUSE_POPUPWIN=no
     DEFAULT_wxUSE_RADIOBOX=no
     DEFAULT_wxUSE_NOTEBOOK=no
     DEFAULT_wxUSE_POPUPWIN=no
     DEFAULT_wxUSE_RADIOBOX=no
@@ -925,9 +934,13 @@ if test "$wxUSE_CONTROLS" = "no"; then
     DEFAULT_wxUSE_TREECTRL=no
 fi
 
     DEFAULT_wxUSE_TREECTRL=no
 fi
 
+dnl features affecting multiple controls
+WX_ARG_FEATURE(markup,      [  --enable-markup         support wxControl::SetLabelMarkup], wxUSE_MARKUP)
+
 dnl please keep the settings below in alphabetical order
 WX_ARG_FEATURE(accel,       [  --enable-accel          use accelerators], wxUSE_ACCEL)
 WX_ARG_FEATURE(animatectrl, [  --enable-animatectrl    use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL)
 dnl please keep the settings below in alphabetical order
 WX_ARG_FEATURE(accel,       [  --enable-accel          use accelerators], wxUSE_ACCEL)
 WX_ARG_FEATURE(animatectrl, [  --enable-animatectrl    use wxAnimationCtrl class], wxUSE_ANIMATIONCTRL)
+WX_ARG_FEATURE(artstd,      [  --enable-artstd         use standard XPM icons in wxArtProvider], wxUSE_ARTPROVIDER_STD)
 WX_ARG_FEATURE(arttango,    [  --enable-arttango       use Tango icons in wxArtProvider], wxUSE_ARTPROVIDER_TANGO)
 WX_ARG_FEATURE(bmpbutton,   [  --enable-bmpbutton      use wxBitmapButton class], wxUSE_BMPBUTTON)
 WX_ARG_FEATURE(bmpcombobox, [  --enable-bmpcombobox    use wxBitmapComboBox class], wxUSE_BITMAPCOMBOBOX)
 WX_ARG_FEATURE(arttango,    [  --enable-arttango       use Tango icons in wxArtProvider], wxUSE_ARTPROVIDER_TANGO)
 WX_ARG_FEATURE(bmpbutton,   [  --enable-bmpbutton      use wxBitmapButton class], wxUSE_BMPBUTTON)
 WX_ARG_FEATURE(bmpcombobox, [  --enable-bmpcombobox    use wxBitmapComboBox class], wxUSE_BITMAPCOMBOBOX)
@@ -1027,6 +1040,7 @@ WX_ARG_FEATURE(metafile,    [  --enable-metafiles      use wxMetaFile (Win32 onl
 WX_ARG_FEATURE(dragimage,   [  --enable-dragimage      use wxDragImage], wxUSE_DRAGIMAGE)
 WX_ARG_FEATURE(accessibility,[  --enable-accessibility  enable accessibility support], wxUSE_ACCESSIBILITY)
 WX_ARG_FEATURE(uiactionsim,  [  --enable-uiactionsim    use wxUIActionSimulator (experimental)], wxUSE_UIACTIONSIMULATOR)
 WX_ARG_FEATURE(dragimage,   [  --enable-dragimage      use wxDragImage], wxUSE_DRAGIMAGE)
 WX_ARG_FEATURE(accessibility,[  --enable-accessibility  enable accessibility support], wxUSE_ACCESSIBILITY)
 WX_ARG_FEATURE(uiactionsim,  [  --enable-uiactionsim    use wxUIActionSimulator (experimental)], wxUSE_UIACTIONSIMULATOR)
+WX_ARG_FEATURE(dctransform,  [  --enable-dctransform    use wxDC::SetTransformMatrix and related], wxUSE_DC_TRANSFORM_MATRIX)
 
 dnl ---------------------------------------------------------------------------
 dnl support for image formats that do not rely on external library
 
 dnl ---------------------------------------------------------------------------
 dnl support for image formats that do not rely on external library
@@ -1133,7 +1147,7 @@ dnl Support the old --enable-universal_binary in case anyone was using it.
         dnl --enable-universal_binary=SDK names a path to an SDK
         if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
             # Implicitly turn on the new --with-macosx-sdk using the default
         dnl --enable-universal_binary=SDK names a path to an SDK
         if test "x$wxUSE_UNIVERSAL_BINARY" == xyes; then
             # Implicitly turn on the new --with-macosx-sdk using the default
-            # SDK which provides the behavior this option has always had.
+            # SDK which provides the behaviour this option has always had.
             if test "x$wxUSE_MACOSX_SDK" = "x"; then
                 AC_MSG_WARN([Enabling default SDK due to --enable-universal_binary.])
                 AC_MSG_WARN([If you don't want this, specify --without-macosx-sdk])
             if test "x$wxUSE_MACOSX_SDK" = "x"; then
                 AC_MSG_WARN([Enabling default SDK due to --enable-universal_binary.])
                 AC_MSG_WARN([If you don't want this, specify --without-macosx-sdk])
@@ -1210,10 +1224,8 @@ if test "x$wxUSE_MACOSX_SDK" != "x"; then
     else
         AC_MSG_RESULT([exists])
     fi
     else
         AC_MSG_RESULT([exists])
     fi
+    dnl CC and CXX will have these flags added below, after the compiler has been chosen
     MACOSX_SDK_OPTS="-isysroot $wxUSE_MACOSX_SDK"
     MACOSX_SDK_OPTS="-isysroot $wxUSE_MACOSX_SDK"
-    eval "CC=\"$CC $MACOSX_SDK_OPTS\""
-    eval "CXX=\"$CXX $MACOSX_SDK_OPTS\""
-    eval "LD=\"$LD $MACOSX_SDK_OPTS\""
     retest_macosx_linking=yes
     dnl NOTE: When libtool is used in lieu of AR/RANLIB (i.e. in static mode)
     dnl the syslibroot makes no difference.  We aren't using libtool now but
     retest_macosx_linking=yes
     dnl NOTE: When libtool is used in lieu of AR/RANLIB (i.e. in static mode)
     dnl the syslibroot makes no difference.  We aren't using libtool now but
@@ -1295,18 +1307,24 @@ if test "x$NEEDS_GCC40" == "xyes"; then
         CCVERSION=`$CC --version | grep 4.[[2-9]].`
         if test "x$CCVERSION" != "x"; then
             echo "$as_me:$LINENO: WARNING: gcc >= 4.2 cannot compile 10.4 compatible code. Using gcc 4.0 instead."
         CCVERSION=`$CC --version | grep 4.[[2-9]].`
         if test "x$CCVERSION" != "x"; then
             echo "$as_me:$LINENO: WARNING: gcc >= 4.2 cannot compile 10.4 compatible code. Using gcc 4.0 instead."
-            CC="/usr/bin/gcc-4.0"
+            CC="gcc-4.0"
         fi
     fi
 
     if test "x$CXX" = "xg++"; then
         CCVERSION=`$CXX --version | grep 4.[[2-9]].`
         if test "x$CCVERSION" != "x"; then
         fi
     fi
 
     if test "x$CXX" = "xg++"; then
         CCVERSION=`$CXX --version | grep 4.[[2-9]].`
         if test "x$CCVERSION" != "x"; then
-            CXX="/usr/bin/g++-4.0"
+            CXX="g++-4.0"
         fi
     fi
 fi
 
         fi
     fi
 fi
 
+if test "x$MACOSX_SDK_OPTS" != "x"; then 
+    eval "CC=\"$CC $MACOSX_SDK_OPTS\""
+    eval "CXX=\"$CXX $MACOSX_SDK_OPTS\""
+    eval "LD=\"$LD $MACOSX_SDK_OPTS\""
+fi
+
 if test "x$wxUSE_MACOSX_VERSION_MIN" != "x"; then
     if test "$wxUSE_OSX_IPHONE" = 1; then
         MACOSX_VERSION_MIN_OPTS="-miphoneos-version-min=$wxUSE_MACOSX_VERSION_MIN"
 if test "x$wxUSE_MACOSX_VERSION_MIN" != "x"; then
     if test "$wxUSE_OSX_IPHONE" = 1; then
         MACOSX_VERSION_MIN_OPTS="-miphoneos-version-min=$wxUSE_MACOSX_VERSION_MIN"
@@ -1443,7 +1461,7 @@ if test "$wxUSE_WINE" = "yes"; then
     LDFLAGS_GUI="-mwindows"
 fi
 
     LDFLAGS_GUI="-mwindows"
 fi
 
-dnl NB: The two tests bellow are *NOT* mutually exclusive! They should only
+dnl NB: The two tests below are *NOT* mutually exclusive! They should only
 dnl     take effect on Cygwin/Mingw and not other platforms.
 if test "$wants_win32" = 1 ; then
     USE_UNIX=0
 dnl     take effect on Cygwin/Mingw and not other platforms.
 if test "$wants_win32" = 1 ; then
     USE_UNIX=0
@@ -2941,13 +2959,8 @@ if test "$wxUSE_GUI" = "yes"; then
 
                     AM_PATH_GTK_2_0(2.4.0, wx_cv_lib_gtk=2.0, , $GTK_MODULES)
 
 
                     AM_PATH_GTK_2_0(2.4.0, wx_cv_lib_gtk=2.0, , $GTK_MODULES)
 
-                    dnl Solaris also requires -lX11 for static lib
-                    case "${host}" in
-                        *-*-solaris2* )
-                            if test "$wxUSE_SHARED" != "yes"; then
-                                GTK_LIBS="$GTK_LIBS -lX11"
-                            fi
-                    esac
+                    dnl we use symbols from X11 directly so we should link with it
+                    GTK_LIBS="$GTK_LIBS -lX11"
                 fi
 
                 dnl detect GTK1.x
                 fi
 
                 dnl detect GTK1.x
@@ -3991,16 +4004,16 @@ if test "$wxUSE_SHARED" = "yes"; then
             DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
             cat <<EOF >change-install-names
 #!/bin/sh
             DYLIB_RPATH_POSTLINK="${HOST_PREFIX}install_name_tool -id \$@ \$@"
             cat <<EOF >change-install-names
 #!/bin/sh
-libnames=\`cd \${1} ; ls -1 | grep '\.[[0-9]][[0-9]]*\.dylib\$'\`
+libnames=\`cd \${2} ; ls -1 | grep '\.[[0-9]][[0-9]]*\.dylib\$'\`
 for i in \${libnames} ; do
 for i in \${libnames} ; do
-    ${HOST_PREFIX}install_name_tool -id \${1}/\${i} \${1}/\${i}
+    ${HOST_PREFIX}install_name_tool -id \${3}/\${i} \${1}/\${i}
     for dep in \${libnames} ; do
     for dep in \${libnames} ; do
-        ${HOST_PREFIX}install_name_tool -change \${2}/\${dep} \${1}/\${dep} \${1}/\${i}
+        ${HOST_PREFIX}install_name_tool -change \${2}/\${dep} \${3}/\${dep} \${1}/\${i}
     done
 done
 EOF
             chmod +x change-install-names
     done
 done
 EOF
             chmod +x change-install-names
-            DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${libdir} \$(wx_top_builddir)/lib"
+            DYLIB_RPATH_INSTALL="\$(wx_top_builddir)/change-install-names \${DESTDIR}\${libdir} \$(wx_top_builddir)/lib \${libdir}"
         fi
 
         dnl the HEADER_PAD_OPTION is required by some wx samples to avoid the error:
         fi
 
         dnl the HEADER_PAD_OPTION is required by some wx samples to avoid the error:
@@ -4257,7 +4270,7 @@ AC_CHECK_FUNCS([wcsdup wcsftime strnlen wcsnlen wcscasecmp wcsncasecmp])
 dnl On HP-UX aCC need this define to find mbstrtowcs() &c
 dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict
 dnl with g++'s in <cwchar> (unless -D_INCLUDE__STDC_A1_SOURCE is in the
 dnl On HP-UX aCC need this define to find mbstrtowcs() &c
 dnl Can't be used for g++ since the mbstate_t in wchar.h can conflict
 dnl with g++'s in <cwchar> (unless -D_INCLUDE__STDC_A1_SOURCE is in the
-dnl flags when g++ is configured, it will declare it's own).
+dnl flags when g++ is configured, it will declare its own).
 if test "$USE_HPUX" = 1 -a "$GCC" != "yes"; then
     CPPFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CPPFLAGS"
 fi
 if test "$USE_HPUX" = 1 -a "$GCC" != "yes"; then
     CPPFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CPPFLAGS"
 fi
@@ -4272,7 +4285,7 @@ AC_CHECK_TYPES([mbstate_t],
 
 dnl check for vsnprintf() -- a safe version of vsprintf())
 dnl
 
 dnl check for vsnprintf() -- a safe version of vsprintf())
 dnl
-dnl the trouble here is that on some systems (e.g HP-UX 10) this function is
+dnl the trouble here is that on some systems (e.g. HP-UX 10) this function is
 dnl present in libc but not in the system headers and so AC_CHECK_FUNCS (which,
 dnl stupidly, provides a dummy function declaration inside its extension)
 dnl succeeds, even with C++ compiler, but the compilation of wxWidgets fails
 dnl present in libc but not in the system headers and so AC_CHECK_FUNCS (which,
 dnl stupidly, provides a dummy function declaration inside its extension)
 dnl succeeds, even with C++ compiler, but the compilation of wxWidgets fails
@@ -5656,6 +5669,11 @@ if test "$wxUSE_FSWATCHER" = "yes"; then
         else
             wxUSE_FSWATCHER=no
         fi
         else
             wxUSE_FSWATCHER=no
         fi
+    else
+        if test "$wxUSE_THREADS" != "yes"; then
+            AC_MSG_WARN([wxFileSystemWatcher disabled due to --disable-threads])
+            wxUSE_FSWATCHER=no
+        fi
     fi
 
     if test "$wxUSE_FSWATCHER" = "yes"; then
     fi
 
     if test "$wxUSE_FSWATCHER" = "yes"; then
@@ -5963,6 +5981,10 @@ if test "$wxUSE_BUSYINFO" = "yes"; then
   AC_DEFINE(wxUSE_BUSYINFO)
 fi
 
   AC_DEFINE(wxUSE_BUSYINFO)
 fi
 
+if test "$wxUSE_STD_CONTAINERS" = "yes"; then
+  AC_DEFINE(wxUSE_STD_CONTAINERS)
+fi
+
 if test "$wxUSE_STD_IOSTREAM" = "yes"; then
   AC_DEFINE(wxUSE_STD_IOSTREAM)
 fi
 if test "$wxUSE_STD_IOSTREAM" = "yes"; then
   AC_DEFINE(wxUSE_STD_IOSTREAM)
 fi
@@ -5971,6 +5993,10 @@ if test "$wxUSE_STD_STRING" = "yes"; then
   AC_DEFINE(wxUSE_STD_STRING)
 fi
 
   AC_DEFINE(wxUSE_STD_STRING)
 fi
 
+if test "$wxUSE_STD_STRING_CONV_IN_WXSTRING" = "yes"; then
+  AC_DEFINE(wxUSE_STD_STRING_CONV_IN_WXSTRING)
+fi
+
 if test "$wxUSE_STDPATHS" = "yes"; then
   AC_DEFINE(wxUSE_STDPATHS)
 fi
 if test "$wxUSE_STDPATHS" = "yes"; then
   AC_DEFINE(wxUSE_STDPATHS)
 fi
@@ -6741,6 +6767,10 @@ if test "$wxUSE_UIACTIONSIMULATOR" = "yes" ; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS uiaction"
 fi
 
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS uiaction"
 fi
 
+if test "$wxUSE_DC_TRANSFORM_MATRIX" = "yes" ; then
+    AC_DEFINE(wxUSE_DC_TRANSFORM_MATRIX)
+fi
+
 dnl ---------------------------------------------------------------------------
 dnl GUI controls
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
 dnl GUI controls
 dnl ---------------------------------------------------------------------------
@@ -6750,6 +6780,10 @@ if test "$wxUSE_CONTROLS" = "yes"; then
   USES_CONTROLS=1
 fi
 
   USES_CONTROLS=1
 fi
 
+if test "$wxUSE_MARKUP" = "yes"; then
+  AC_DEFINE(wxUSE_MARKUP)
+fi
+
 if test "$wxUSE_ACCEL" = "yes"; then
   AC_DEFINE(wxUSE_ACCEL)
   USES_CONTROLS=1
 if test "$wxUSE_ACCEL" = "yes"; then
   AC_DEFINE(wxUSE_ACCEL)
   USES_CONTROLS=1
@@ -7147,6 +7181,10 @@ if test "$wxUSE_ACCESSIBILITY" = "yes"; then
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS access"
 fi
 
     SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS access"
 fi
 
+if test "$wxUSE_ARTPROVIDER_STD" = "yes"; then
+    AC_DEFINE(wxUSE_ARTPROVIDER_STD)
+fi
+
 if test "$wxUSE_ARTPROVIDER_TANGO" = "auto"; then
     dnl Tango-based art provider is not needed in GTK-based ports as the
     dnl native art provider completely replaces it.
 if test "$wxUSE_ARTPROVIDER_TANGO" = "auto"; then
     dnl Tango-based art provider is not needed in GTK-based ports as the
     dnl native art provider completely replaces it.
@@ -7505,13 +7543,25 @@ if test "$wxUSE_GRAPHICS_CONTEXT" = "yes"; then
             [AC_MSG_WARN([Cairo library not found])]
         )
         if test "$wx_has_graphics" = 1; then
             [AC_MSG_WARN([Cairo library not found])]
         )
         if test "$wx_has_graphics" = 1; then
-            AC_DEFINE(wxUSE_CAIRO)
+            dnl Check that Cairo library is new enough: wxGraphicsContext
+            dnl won't compile without cairo_push_group() and
+            dnl cairo_pop_group_to_source() which are new in 1.2.
+            save_LIBS="$LIBS"
+            LIBS="$LIBS $CAIRO_LIBS"
+            AC_CHECK_FUNCS([cairo_push_group])
+            LIBS="$save_LIBS"
+            if test "$ac_cv_func_cairo_push_group" = "no"; then
+                wx_has_graphics=0
+                AC_MSG_WARN([Cairo library is too old and misses cairo_push_group()])
+            else
+                AC_DEFINE(wxUSE_CAIRO)
 
 
-            dnl We don't need to do this for wxGTK as we already get Cairo
-            dnl flags as part of GTK+ ones.
-            if test "$wxUSE_GTK" != 1; then
-                CPPFLAGS="$CAIRO_CFLAGS $CPPFLAGS"
-                GUI_TK_LIBRARY="$GUI_TK_LIBRARY $CAIRO_LIBS"
+                dnl We don't need to do this for wxGTK as we already get Cairo
+                dnl flags as part of GTK+ ones.
+                if test "$wxUSE_GTK" != 1; then
+                    CPPFLAGS="$CAIRO_CFLAGS $CPPFLAGS"
+                    GUI_TK_LIBRARY="$GUI_TK_LIBRARY $CAIRO_LIBS"
+                fi
             fi
         fi
     else
             fi
         fi
     else