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])
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
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_GSTREAMER8=no
dnl automatic features
+DEFAULT_wxUSE_ARTPROVIDER_TANGO=auto
DEFAULT_wxUSE_UNICODE_UTF8=auto
DEFAULT_wxUSE_OPENGL=auto
DEFAULT_wxUSE_MEDIACTRL=auto
DEFAULT_wxUSE_COMPILER_TLS=auto
+DEFAULT_wxUSE_HOTKEY=auto
+DEFAULT_wxUSE_METAFILE=auto
DEFAULT_wxUSE_UNICODE_UTF8_LOCALE=no
dnl reset all the options with default value of auto if all features are to
dnl be disabled because we can't have an option with default value of
dnl "auto-or-no-if-wxUSE_ALL_FEATURES-is-disabled"
+ DEFAULT_wxUSE_ARTPROVIDER_TANGO=no
DEFAULT_wxUSE_MEDIACTRL=no
fi
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}"
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_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_FEATURE(mdidoc, [ --enable-mdidoc use docview architecture with MDI], wxUSE_MDI_ARCHITECTURE)
WX_ARG_FEATURE(mediactrl, [ --enable-mediactrl use wxMediaCtrl class], wxUSE_MEDIACTRL)
WX_ARG_FEATURE(gstreamer8, [ --enable-gstreamer8 force GStreamer 0.8 instead of 0.10 with the wxMediaCtrl class on unix], wxUSE_GSTREAMER8)
-WX_ARG_FEATURE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac)], wxUSE_WEBKIT)
WX_ARG_FEATURE(richtext, [ --enable-richtext use wxRichTextCtrl], wxUSE_RICHTEXT)
WX_ARG_FEATURE(postscript, [ --enable-postscript use wxPostscriptDC device context (default for gtk+)], wxUSE_POSTSCRIPT)
WX_ARG_FEATURE(printarch, [ --enable-printarch use printing architecture], wxUSE_PRINTING_ARCHITECTURE)
WX_ARG_FEATURE(svg, [ --enable-svg use wxSVGFileDC device context], wxUSE_SVG)
+WX_ARG_FEATURE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac-only, use wxWebView instead)], wxUSE_WEBKIT)
+WX_ARG_FEATURE(webview, [ --enable-webview use wxWebView library], wxUSE_WEBVIEW)
dnl wxDC is implemented in terms of wxGraphicsContext in wxOSX so the latter
dnl can't be disabled, don't even provide an option to do it
WX_ARG_FEATURE(clipboard, [ --enable-clipboard use wxClipboard class], wxUSE_CLIPBOARD)
WX_ARG_FEATURE(dnd, [ --enable-dnd use Drag'n'Drop classes], wxUSE_DRAG_AND_DROP)
-WX_ARG_FEATURE(metafile, [ --enable-metafile use win32 metafiles], wxUSE_METAFILE)
dnl ---------------------------------------------------------------------------
dnl optional GUI controls (in alphabetical order except the first one)
if test "$wxUSE_CONTROLS" = "no"; then
DEFAULT_wxUSE_ACCEL=no
DEFAULT_wxUSE_ANIMATIONCTRL=no
+ DEFAULT_wxUSE_BANNERWINDOW=no
DEFAULT_wxUSE_BMPBUTTON=no
DEFAULT_wxUSE_BUTTON=no
DEFAULT_wxUSE_CALCTRL=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_STATBOX=no
DEFAULT_wxUSE_STATLINE=no
DEFAULT_wxUSE_STATUSBAR=no
+ DEFAULT_wxUSE_TIMEPICKCTRL=no
DEFAULT_wxUSE_TIPWINDOW=no
DEFAULT_wxUSE_TOGGLEBTN=no
DEFAULT_wxUSE_TOOLBAR=no
DEFAULT_wxUSE_TOOLTIPS=no
DEFAULT_wxUSE_TREEBOOK=no
DEFAULT_wxUSE_TREECTRL=no
+ DEFAULT_wxUSE_TREELISTCTRL=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)
+WX_ARG_FEATURE(bannerwindow,[ --enable-bannerwindow use wxBannerWindow class], wxUSE_BANNERWINDOW)
+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(button, [ --enable-button use wxButton class], wxUSE_BUTTON)
WX_ARG_FEATURE(taskbaricon, [ --enable-taskbaricon use wxTaskBarIcon class], wxUSE_TASKBARICON)
WX_ARG_FEATURE(tbarnative, [ --enable-tbarnative use native wxToolBar class], wxUSE_TOOLBAR_NATIVE)
WX_ARG_FEATURE(textctrl, [ --enable-textctrl use wxTextCtrl class], wxUSE_TEXTCTRL)
+WX_ARG_FEATURE(datepick, [ --enable-timepick use wxTimePickerCtrl class], wxUSE_TIMEPICKCTRL)
WX_ARG_FEATURE(tipwindow, [ --enable-tipwindow use wxTipWindow class], wxUSE_TIPWINDOW)
WX_ARG_FEATURE(togglebtn, [ --enable-togglebtn use wxToggleButton class], wxUSE_TOGGLEBTN)
WX_ARG_FEATURE(toolbar, [ --enable-toolbar use wxToolBar class], wxUSE_TOOLBAR)
WX_ARG_FEATURE(toolbook, [ --enable-toolbook use wxToolbook class], wxUSE_TOOLBOOK)
WX_ARG_FEATURE(treebook, [ --enable-treebook use wxTreebook class], wxUSE_TREEBOOK)
WX_ARG_FEATURE(treectrl, [ --enable-treectrl use wxTreeCtrl class], wxUSE_TREECTRL)
+WX_ARG_FEATURE(treelist, [ --enable-treelist use wxTreeListCtrl class], wxUSE_TREELISTCTRL)
dnl ---------------------------------------------------------------------------
dnl common dialogs
WX_ARG_FEATURE(mousewheel, [ --enable-mousewheel use mousewheel], wxUSE_MOUSEWHEEL)
WX_ARG_FEATURE(validators, [ --enable-validators use wxValidator and derived classes], wxUSE_VALIDATORS)
WX_ARG_FEATURE(busyinfo, [ --enable-busyinfo use wxBusyInfo], wxUSE_BUSYINFO)
+WX_ARG_FEATURE(hotkey, [ --enable-hotkey use wxWindow::RegisterHotKey()], wxUSE_HOTKEY)
WX_ARG_FEATURE(joystick, [ --enable-joystick use wxJoystick], wxUSE_JOYSTICK)
-WX_ARG_FEATURE(metafile, [ --enable-metafiles use wxMetaFile (Win32 only)], wxUSE_METAFILE)
+WX_ARG_FEATURE(metafile, [ --enable-metafiles use wxMetaFile], wxUSE_METAFILE)
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)
+WX_ARG_FEATURE(webviewwebkit,[ --enable-webview-webkit use wxWebView WebKit backend], wxUSE_WEBVIEW_WEBKIT)
dnl ---------------------------------------------------------------------------
dnl support for image formats that do not rely on external library
WX_ARG_FEATURE(ownerdrawn, [ --enable-ownerdrawn use owner drawn controls (Win32 and OS/2 only)], wxUSE_OWNER_DRAWN)
WX_ARG_FEATURE(uxtheme, [ --enable-uxtheme enable support for Windows XP themed look (Win32 only)], wxUSE_UXTHEME)
WX_ARG_FEATURE(wxdib, [ --enable-wxdib use wxDIB class (Win32 only)], wxUSE_DIB)
+WX_ARG_FEATURE(webviewie, [ --enable-webview-ie use wxWebView IE backend (Win32 only)], wxUSE_WEBVIEW_IE)
dnl this one is not really MSW-specific but it exists mainly to be turned off
dnl under MSW, it should be off by default on the other platforms
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])
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"
- 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
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
- CXX="/usr/bin/g++-4.0"
+ CXX="g++-4.0"
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"
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
#include <stdio.h>
]
)
-if test "$ac_cv_sizeof_wchar_t" != 0; then
- wxUSE_WCHAR_T=yes
-else
- wxUSE_WCHAR_T=no
+if test "$ac_cv_sizeof_wchar_t" = 0; then
+ AC_MSG_ERROR([wxWidgets requires wchar_t support.])
fi
+AC_DEFINE(wxUSE_WCHAR_T)
dnl checks needed to define wxVaCopy
AC_CACHE_CHECK([for va_copy],
dnl try to find out the standard lib locations for the systems with multiple
dnl ABIs
-AC_MSG_CHECKING([for libraries directory])
+AC_MSG_CHECKING([for libraries directories])
case "${host}" in
*-*-irix6* )
fi
done
done
- if test "x$wx_cv_std_libpath" = "x"; then
- wx_cv_std_libpath="lib"
- fi
]
)
;;
dnl use ../lib or ../lib/64 depending on the size of void*
if test "$ac_cv_sizeof_void_p" = 8 -a -d "/usr/lib/64"; then
wx_cv_std_libpath="lib/64"
- else
- wx_cv_std_libpath="lib"
fi
;;
*-*-linux* )
- dnl use ../lib or ../lib64 depending on the size of void*
- if test "$ac_cv_sizeof_void_p" = 8 -a \
- -d "/usr/lib64" -a ! -h "/usr/lib64"; then
- wx_cv_std_libpath="lib64"
+ dnl Recent Debian versions (as of 2011) use new approach to multiarch
+ dnl and put the libraries under /usr/lib/arch-linux-gnu. Annoyingly,
+ dnl "arch" here is not `uname -m` because it is "i386" even when uname
+ dnl returns e.g. "i686". So we need to test for it explicitly.
+ if test "$ac_cv_sizeof_void_p" = 8; then
+ if test -d "/usr/lib/`uname -m`-linux-gnu"; then
+ wx_cv_std_libfullpath="/usr/lib/`uname -m`-linux-gnu"
+ elif test -d "/usr/lib64" -a ! -h "/usr/lib64"; then
+ wx_cv_std_libpath="lib64"
+ fi
else
- wx_cv_std_libpath="lib"
+ case "${host}" in
+ i*86-*-linux* )
+ if test -d '/usr/lib/i386-linux-gnu'; then
+ wx_cv_std_libfullpath='/usr/lib/i386-linux-gnu'
+ fi
+ esac
fi
- ;;
- *)
- wx_cv_std_libpath="lib";
+ dnl And on top of all this, some packages haven't been updated for
+ dnl full multiarch support yet so we still need to look in /usr/lib
+ dnl too as well.
+ if test -n "$wx_cv_std_libfullpath" -a -d "/usr/lib"; then
+ wx_cv_std_libfullpath="$wx_cv_std_libfullpath /usr/lib"
+ fi
;;
esac
-AC_MSG_RESULT($wx_cv_std_libpath)
+if test -z "$wx_cv_std_libpath"; then
+ wx_cv_std_libpath="lib"
+fi
-SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s@include@$wx_cv_std_libpath@g` /usr/$wx_cv_std_libpath"
+if test -z "$wx_cv_std_libfullpath"; then
+ wx_cv_std_libfullpath="/usr/$wx_cv_std_libpath"
+fi
+
+
+AC_MSG_RESULT($wx_cv_std_libfullpath)
+
+SEARCH_LIB="`echo "$SEARCH_INCLUDE" | sed s@include@$wx_cv_std_libpath@g` $wx_cv_std_libfullpath"
dnl Cross compiling with gcc?
if test "$build" != "$host" -a "$GCC" = yes; then
dnl Check for expat libraries
dnl ------------------------------------------------------------------------
-if test "$wxUSE_WCHAR_T" != "yes"; then
- if test "$wxUSE_EXPAT" != "no"; then
- AC_MSG_WARN([wxWidgets requires wchar_t to use expat, disabling])
- wxUSE_EXPAT=no
- fi
- if test "$wxUSE_XML" != "no"; then
- AC_MSG_WARN([wxWidgets requires wchar_t to use xml, disabling])
- wxUSE_XML=no
- fi
-fi
-
if test "$wxUSE_EXPAT" != "no"; then
wxUSE_XML=yes
AC_DEFINE(wxUSE_EXPAT)
esac
dnl This one is still used by some sample makefiles.
- RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__"
+ RESFLAGS="--include-dir \$(top_srcdir)/include --include-dir \$(top_srcdir)/\$(program_dir) --define __WIN32__ --define __WIN95__ --define __GNUWIN32__ $WINDRES_CPU_DEFINE"
RESPROGRAMOBJ="\$(PROGRAM)_resources.o"
dnl This lot we export to wx-config. It must add the relevant
dnl include directories at the point when they can be known.
dnl (but are these (still) required anyway?)
- WXCONFIG_RESFLAGS="--define __WIN32__ --define __WIN95__ --define __GNUWIN32__"
+ WXCONFIG_RESFLAGS="--define __WIN32__ --define __WIN95__ --define __GNUWIN32__ $WINDRES_CPU_DEFINE"
dnl install Win32-specific files in "make install"
WIN32INSTALL=win32install
GUI_TK_LIBRARY=
- WXGTK12=
WXGTK127=
WXGTK2=
WXGPE=
esac
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
fi
dnl detect GTK1.x
dnl looks better in AC_MSG_RESULT
wx_cv_lib_gtk=none
else
+ dnl we use symbols from X11 directly so we should link with it
+ GTK_LIBS="$GTK_LIBS -lX11"
+
dnl we need to cache GTK_CFLAGS and GTK_LIBS for the
dnl subsequent runs
wx_cv_cflags_gtk=$GTK_CFLAGS
TOOLKIT_VERSION=2
;;
1.2.7) WXGTK127=1
- WXGTK12=1
- ;;
- 1.2.3) WXGTK12=1
;;
+ 1.2*) ;;
*) AC_MSG_ERROR([
The development files for GTK+ were not found. For GTK+ 2, please
ensure that pkg-config is in the path and that gtk+-2.0.pc is
TOOLKIT_INCLUDE="$wx_cv_cflags_gtk"
GUI_TK_LIBRARY="$wx_cv_libs_gtk $GUI_TK_LIBRARY"
-
- dnl disable GTK runtime type checks
- TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE -DG_DISABLE_CAST_CHECKS"
-
AFMINSTALL=afminstall
TOOLKIT=GTK
GUIDIST=GTK_DIST
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
- ${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
- ${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
- 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:
dnl Check for functions
dnl ---------------------------------------------------------------------------
-dnl don't check for wchar_t functions if we haven't got wchar_t itself
-if test "$wxUSE_WCHAR_T" = "yes"; then
- AC_DEFINE(wxUSE_WCHAR_T)
-
- dnl check for wcslen in all possible places
- WCSLEN_FOUND=0
- WCHAR_LINK=
- AC_CHECK_FUNCS(wcslen, WCSLEN_FOUND=1)
-
- if test "$WCSLEN_FOUND" = 0; then
- if test "$TOOLKIT" = "MSW"; then
- AC_CHECK_LIB(msvcrt, wcslen, WCHAR_OK=1)
- else
- AC_CHECK_LIB(w, wcslen, [
- WCHAR_LINK=" -lw"
- WCSLEN_FOUND=1
- ])
- fi
- fi
+dnl check for wcslen in all possible places
+WCSLEN_FOUND=0
+WCHAR_LINK=
+AC_CHECK_FUNCS(wcslen, WCSLEN_FOUND=1)
- if test "$WCSLEN_FOUND" = 1; then
- AC_DEFINE(HAVE_WCSLEN)
+if test "$WCSLEN_FOUND" = 0; then
+ if test "$TOOLKIT" = "MSW"; then
+ AC_CHECK_LIB(msvcrt, wcslen, WCHAR_OK=1)
+ else
+ AC_CHECK_LIB(w, wcslen, [
+ WCHAR_LINK=" -lw"
+ WCSLEN_FOUND=1
+ ])
fi
+fi
- AC_CHECK_FUNCS([wcsdup strnlen wcsnlen wcscasecmp wcsncasecmp])
+if test "$WCSLEN_FOUND" = 1; then
+ AC_DEFINE(HAVE_WCSLEN)
+fi
- 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).
- if test "$USE_HPUX" = 1 -a "$GCC" != "yes"; then
- CPPFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CPPFLAGS"
- fi
+AC_CHECK_FUNCS([wcsdup wcsftime strnlen wcsnlen wcscasecmp wcsncasecmp])
- dnl Try to use wcsrtombs instead of wcstombs which is buggy in old GNU
- dnl libc versions if possible. AC_CHECK_FUNCS only checks it's in the
- dnl library, not the header, so do a header check for mbstate_t first.
- AC_CHECK_TYPES([mbstate_t],
- [AC_CHECK_FUNCS(wcsrtombs)],
- [],
- [#include <wchar.h>])
-else
- AC_MSG_WARN([Wide character support is unavailable])
+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 its own).
+if test "$USE_HPUX" = 1 -a "$GCC" != "yes"; then
+ CPPFLAGS="-D_INCLUDE__STDC_A1_SOURCE $CPPFLAGS"
fi
+dnl Try to use wcsrtombs instead of wcstombs which is buggy in old GNU
+dnl libc versions if possible. AC_CHECK_FUNCS only checks it's in the
+dnl library, not the header, so do a header check for mbstate_t first.
+AC_CHECK_TYPES([mbstate_t],
+ [AC_CHECK_FUNCS(wcsrtombs)],
+ [],
+ [#include <wchar.h>])
+
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
if test "$WXGTK2" = 1 ; then
AC_DEFINE_UNQUOTED(__WXGTK20__,$WXGTK2)
- WXGTK12=1
-fi
-
-if test "$WXGTK12" = 1 ; then
- AC_DEFINE_UNQUOTED(__WXGTK12__,$WXGTK12)
fi
if test "$WXGTK127" = 1 ; then
if test "$wxUSE_GTK" = 1 ; then
if test "x$wxGTK_VERSION" = "x1" ; then
CPPFLAGS="-DGTK_NO_CHECK_CASTS $CPPFLAGS"
+ else
+ CPPFLAGS="$CPPFLAGS -DG_DISABLE_CAST_CHECKS"
fi
fi
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
AC_DEFINE(wxUSE_BUSYINFO)
fi
+if test "$wxUSE_HOTKEY" = "yes"; then
+ if test "$wxUSE_MSW" != 1 -a "$wxUSE_OSX_COCOA" != 1 -a "$wxUSE_OSX_CARBON" != 1; then
+ AC_MSG_WARN([Hot keys not supported by the current toolkit, disabled])
+ wxUSE_HOTKEY=no
+ fi
+elif test "$wxUSE_HOTKEY" = "auto"; then
+ if test "$wxUSE_MSW" = 1 -o "$wxUSE_OSX_COCOA" = 1 -o "$wxUSE_OSX_CARBON" = 1; then
+ wxUSE_HOTKEY=yes
+ fi
+fi
+if test "$wxUSE_HOTKEY" = "yes"; then
+ AC_DEFINE(wxUSE_HOTKEY)
+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
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
fi
dnl ---------------------------------------------------------------------------
-dnl wxMetafile availability
+dnl wxMetafile
dnl ---------------------------------------------------------------------------
if test "$wxUSE_METAFILE" = "yes"; then
AC_MSG_WARN([wxMetafile is not available on this system... disabled])
wxUSE_METAFILE=no
fi
+elif test "$wxUSE_METAFILE" = "auto"; then
+ if test "$wxUSE_MSW" = 1 -o "$wxUSE_MAC" = 1 -o "$wxUSE_PM" = 1; then
+ wxUSE_METAFILE=yes
+ fi
+fi
+
+if test "$wxUSE_METAFILE" = "yes"; then
+ AC_DEFINE(wxUSE_METAFILE)
+ if test "$wxUSE_MSW" = 1; then
+ dnl this one should probably be made separately configurable
+ AC_DEFINE(wxUSE_ENH_METAFILE)
+ fi
fi
dnl ---------------------------------------------------------------------------
wxUSE_DATAOBJ=no
wxUSE_OLE=no
fi
-
- if test "$wxUSE_METAFILE" = "yes"; then
- AC_DEFINE(wxUSE_METAFILE)
-
- dnl this one should probably be made separately configurable
- AC_DEFINE(wxUSE_ENH_METAFILE)
- fi
fi
if test "$wxUSE_IPC" = "yes"; then
fi
if test "$wxUSE_DRAG_AND_DROP" = "yes" ; then
- if test "$wxUSE_GTK" = 1; then
- if test "$WXGTK12" != 1; then
- AC_MSG_WARN([Drag and drop is only supported under GTK+ 1.2... disabled])
- wxUSE_DRAG_AND_DROP=no
- fi
- fi
-
if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_X11" = 1 -o "$wxUSE_MGL" = 1 -o \
"$wxUSE_DFB" = 1; then
AC_MSG_WARN([Drag and drop not yet supported under $TOOLKIT... disabled])
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 ---------------------------------------------------------------------------
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
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS animate"
fi
+if test "$wxUSE_BANNERWINDOW" = "yes"; then
+ AC_DEFINE(wxUSE_BANNERWINDOW)
+fi
+
if test "$wxUSE_BUTTON" = "yes"; then
AC_DEFINE(wxUSE_BUTTON)
USES_CONTROLS=1
AC_DEFINE(wxUSE_RICHEDIT2)
fi
+if test "$wxUSE_TIMEPICKCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_TIMEPICKCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_TOGGLEBTN" = "yes"; then
if test "$wxUSE_OLD_COCOA" = 1 ; then
AC_MSG_WARN([Toggle button not yet supported under Mac OS X... disabled])
fi
fi
+if test "$wxUSE_TREELISTCTRL" = "yes"; then
+ AC_DEFINE(wxUSE_TREELISTCTRL)
+ USES_CONTROLS=1
+fi
+
if test "$wxUSE_POPUPWIN" = "yes"; then
if test "$wxUSE_OLD_COCOA" = 1 ; then
AC_MSG_WARN([Popup window not yet supported under Mac OS X... disabled])
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_GTK" != 1; then
+ dnl It also requires support for memory-mapped PNG images.
+ if test "$wxUSE_LIBPNG" != no -a \
+ "$wxUSE_IMAGE" = yes -a \
+ "$wxUSE_STREAMS" = yes; then
+ wxUSE_ARTPROVIDER_TANGO="yes"
+ fi
+ fi
+fi
+
+if test "$wxUSE_ARTPROVIDER_TANGO" = "yes"; then
+ AC_DEFINE(wxUSE_ARTPROVIDER_TANGO)
+fi
+
if test "$wxUSE_DRAGIMAGE" = "yes"; then
AC_DEFINE(wxUSE_DRAGIMAGE)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS dragimag"
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS menu"
fi
-if test "$wxUSE_METAFILE" = "yes"; then
- AC_DEFINE(wxUSE_METAFILE)
-fi
-
if test "$wxUSE_MIMETYPE" = "yes"; then
AC_DEFINE(wxUSE_MIMETYPE)
fi
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS richtext"
fi
+if test "$wxUSE_WEBVIEW" = "yes"; then
+ USE_WEBVIEW_WEBKIT=0
+ if test "$wxUSE_WEBVIEW_WEBKIT" = "yes"; then
+ if test "$wxUSE_GTK" = 1; then
+ AC_MSG_CHECKING([for webkitgtk libraries])
+ WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],webkitgtk-1.0)
+ if test "$ac_find_libraries" != "" ; then
+ WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
+ if test "$ac_path_to_link" != " -L/usr/lib" ; then
+ LDFLAGS="$LDFLAGS $ac_path_to_link"
+ fi
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lwebkitgtk-1.0"
+ AC_MSG_RESULT([yes])
+
+ AC_MSG_CHECKING(for webkitgtk headers)
+ WX_PATH_FIND_INCLUDES([$SEARCH_INCLUDE /usr/include/webkit-1.0], webkit/webkit.h)
+ if test "$ac_find_includes" != "" ; then
+ AC_MSG_RESULT(found in $ac_find_includes)
+ WX_INCLUDE_PATH_EXIST($ac_find_includes, $CPPFLAGS)
+ CPPFLAGS="$ac_path_to_include $CPPFLAGS"
+
+ dnl we also depend on libsoup
+ AC_MSG_CHECKING(for libsoup headers)
+ WX_PATH_FIND_INCLUDES([$SEARCH_INCLUDE /usr/include/libsoup-2.4], libsoup/soup.h)
+ if test "$ac_find_includes" != "" ; then
+ AC_MSG_RESULT(found in $ac_find_includes)
+ WX_INCLUDE_PATH_EXIST($ac_find_includes, $CPPFLAGS)
+ CPPFLAGS="$ac_path_to_include $CPPFLAGS"
+
+ USE_WEBVIEW_WEBKIT=1
+ else
+ AC_MSG_RESULT([not found])
+ AC_MSG_WARN([libsoup headers not found; disabling WebKit backend])
+ fi
+ else
+ AC_MSG_RESULT([not found])
+ AC_MSG_WARN([WebKit headers not found; disabling WebKit backend])
+ fi
+ else
+ AC_MSG_RESULT([no])
+ AC_MSG_WARN([WebKit libraries not found; disabling WebKit backend])
+ fi
+ elif test "$wxUSE_MAC" = 1 -a "$USE_DARWIN" = 1; then
+ dnl Under Mac we always have the libraries but check for the
+ dnl headers
+ old_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="-x objective-c++ $CPPFLAGS"
+ AC_CHECK_HEADER([WebKit/HIWebView.h],
+ [
+ USE_WEBVIEW_WEBKIT=1
+ WEBKIT_LINK="-framework WebKit"
+ ],
+ [
+ AC_MSG_WARN([WebKit headers not found])
+ ],
+ [
+ #include <Carbon/Carbon.h>
+ #include <WebKit/WebKit.h>
+ ])
+ CPPFLAGS="$old_CPPFLAGS"
+ fi
+ fi
+
+ wxUSE_WEBVIEW="no"
+ if test "$wxUSE_GTK" = 1 -o "$wxUSE_MAC" = 1; then
+ if test "$USE_WEBVIEW_WEBKIT" = 1; then
+ wxUSE_WEBVIEW="yes"
+ AC_DEFINE(wxUSE_WEBVIEW_WEBKIT)
+ else
+ AC_MSG_WARN([WebKit not available, disabling wxWebView])
+ fi
+ elif test "$wxUSE_MSW" = 1; then
+ if test "wxUSE_WEBVIEW_IE" = "yes"; then
+ dnl TODO: Check for the required headers/libraries under Windows
+ dnl too and do the right thing automatically there too.
+ wxUSE_WEBVIEW="yes"
+ AC_DEFINE(wxUSE_WEBVIEW_IE)
+ fi
+ fi
+fi
+
+if test "$wxUSE_WEBVIEW" = "yes"; then
+ USE_WEBVIEW=1
+ AC_DEFINE(wxUSE_WEBVIEW)
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS webview"
+else
+ USE_WEBVIEW=0
+fi
+
dnl ---------------------------------------------------------------------------
dnl wxImage options
dnl ---------------------------------------------------------------------------
[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
if test "$wxUSE_STC" = "yes" ; then
BUILT_WX_LIBS="stc $BUILT_WX_LIBS"
fi
+ if test "$wxUSE_WEBVIEW" = "yes" ; then
+ STD_GUI_LIBS="webview $STD_GUI_LIBS"
+ BUILT_WX_LIBS="webview $BUILT_WX_LIBS"
+ fi
if test "$wxUSE_XRC" = "yes" ; then
STD_GUI_LIBS="xrc $STD_GUI_LIBS"
BUILT_WX_LIBS="xrc $BUILT_WX_LIBS"
AC_MSG_ERROR([Required windres program not found])
fi
- RESCOMP="$WINDRES $WINDRES_CPU_DEFINE"
+ RESCOMP="$WINDRES"
fi
if test "$wxUSE_MAC" = 1 -o "$wxUSE_OLD_COCOA" = 1; then