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_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
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_RADIOBOX=no
DEFAULT_wxUSE_RADIOBTN=no
DEFAULT_wxUSE_RICHMSGDLG=no
+ DEFAULT_wxUSE_RICHTOOLTIP=no
DEFAULT_wxUSE_REARRANGECTRL=no
DEFAULT_wxUSE_SASH=no
DEFAULT_wxUSE_SCROLLBAR=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
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(radiobox, [ --enable-radiobox use wxRadioBox class], wxUSE_RADIOBOX)
WX_ARG_FEATURE(radiobtn, [ --enable-radiobtn use wxRadioButton class], wxUSE_RADIOBTN)
WX_ARG_FEATURE(richmsgdlg, [ --enable-richmsgdlg use wxRichMessageDialog class], wxUSE_RICHMSGDLG)
+WX_ARG_FEATURE(richtooltip, [ --enable-richtooltip use wxRichToolTip class], wxUSE_RICHTOOLTIP)
WX_ARG_FEATURE(rearrangectrl,[ --enable-rearrangectrl use wxRearrangeList/Ctrl/Dialog], wxUSE_REARRANGECTRL)
WX_ARG_FEATURE(sash, [ --enable-sash use wxSashWindow class], wxUSE_SASH)
WX_ARG_FEATURE(scrollbar, [ --enable-scrollbar use wxScrollBar class and scrollable windows], wxUSE_SCROLLBAR)
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"
dnl Platform specific tests
dnl ------------------------------------------------------------------------
-dnl xlC needs -qunique under AIX so that one source file can be
-dnl compiled to multiple object files and safely linked together.
-if test "x$XLCXX" = "xyes" -a "x$USE_AIX" = "x1"; then
- CXXFLAGS="-qunique $CXXFLAGS"
+if test "x$USE_AIX" = "x1"; then
+ dnl xlC needs -qunique under 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="-qunique $CXXFLAGS"
+ fi
+
+ dnl AIX sys/timer.h header #defines func_data as t_union.data breaking the
+ dnl compilation of GTK+ headers that use func_data as parameter name in
+ dnl several places. We could work around this by inserting "#undef
+ dnl func_data" in the code but IBM provides a possibility to disable this
+ dnl #define by pre-defining the symbol below and this seems to be simpler.
+ dnl And if we have any problems because of it we can always remove it and
+ dnl use the #undef approach.
+ CPPFLAGS="-D_LINUX_SOURCE_COMPAT $CPPFLAGS"
fi
dnl This case is for PowerPC OS X vs. everything else
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
[
AC_LANG_PUSH(C++)
AC_LINK_IFELSE([
- #include <stdarg.h>
- void foo(char *f, ...)
- {
- va_list ap1, ap2;
- va_start(ap1, f);
- va_copy(ap2, ap1);
- va_end(ap2);
- va_end(ap1);
- }
- int main()
- {
- foo("hi", 17);
- return 0;
- }],
+ AC_LANG_SOURCE([
+ #include <stdarg.h>
+ void foo(char *f, ...)
+ {
+ va_list ap1, ap2;
+ va_start(ap1, f);
+ va_copy(ap2, ap1);
+ va_end(ap2);
+ va_end(ap1);
+ }
+ int main()
+ {
+ foo("hi", 17);
+ return 0;
+ }])
+ ],
wx_cv_func_va_copy=yes,
wx_cv_func_va_copy=no
)
wx_cv_type_va_list_lvalue,
[
AC_RUN_IFELSE([
- #include <stdarg.h>
- int foo(char *f, ...)
- {
- va_list ap1, ap2;
- va_start(ap1, f);
- ap2 = ap1;
- if ( va_arg(ap1, int) != 17 || va_arg(ap2, int) != 17 )
- return 1;
- va_end(ap2);
- va_end(ap1);
- return 0;
- }
- int main()
- {
- return foo("hi", 17);
- }],
+ AC_LANG_SOURCE([
+ #include <stdarg.h>
+ int foo(char *f, ...)
+ {
+ va_list ap1, ap2;
+ va_start(ap1, f);
+ ap2 = ap1;
+ if ( va_arg(ap1, int) != 17 || va_arg(ap2, int) != 17 )
+ return 1;
+ va_end(ap2);
+ va_end(ap1);
+ return 0;
+ }
+ int main()
+ {
+ return foo("hi", 17);
+ }])
+ ],
wx_cv_type_va_list_lvalue=yes,
wx_cv_type_va_list_lvalue=no,
dnl assume most common case for cross-compiling...
dnl C compiler might support variadic macros when C++ one doesn't
dnl (happens with gcc/g++ 2.95.4), so must use C++ one explicitly
AC_LANG_PUSH(C++)
- AC_COMPILE_IFELSE(
+ AC_COMPILE_IFELSE([
AC_LANG_PROGRAM(
[
#include <stdio.h>
[
test("%s %d %p", "test", 1, 0);
]
- ),
+ )],
[wx_cv_have_variadic_macros=yes],
[wx_cv_have_variadic_macros=no]
)
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* )
if test -f $libc; then
save_LIBS="$LIBS"
LIBS="$libc"
- AC_LINK_IFELSE([int main() { return 0; }],
+ AC_LINK_IFELSE([
+ AC_LANG_SOURCE([int main() { return 0; }])
+ ],
wx_cv_std_libpath=`echo $d | sed s@/usr/@@`)
LIBS="$save_LIBS"
if test "x$wx_cv_std_libpath" != "x"; then
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
x_includes=$ac_find_includes
fi
if test -z "$x_libraries" -o "$x_libraries" = NONE; then
- WX_PATH_FIND_LIBRARIES($SEARCH_LIB, Xt)
+ WX_PATH_FIND_LIBRARIES(Xt)
x_libraries=$ac_find_libraries
fi
fi
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"
-
- dnl enable useful GTK+ compile-time checks to ease transition to GTK+ 3:
- GTK_CHECKS_FLAGS="-DGTK_DISABLE_SINGLE_INCLUDES"
- TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE $GTK_CHECKS_FLAGS"
-
AFMINSTALL=afminstall
TOOLKIT=GTK
GUIDIST=GTK_DIST
dnl test for external libxpm if we're configured to use it
if test "$wxUSE_GPE" = "yes"; then
AC_MSG_CHECKING(for gpewidget library)
- WX_PATH_FIND_LIBRARIES($SEARCH_LIB,gpewidget)
+ WX_PATH_FIND_LIBRARIES(gpewidget)
if test "$ac_find_libraries" != "" ; then
WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
dnl -lgpewidget must be before all GTK libs and
fi
dnl AC_MSG_CHECKING(for gpe library)
- dnl WX_PATH_FIND_LIBRARIES($SEARCH_LIB,gpe)
+ dnl WX_PATH_FIND_LIBRARIES(gpe)
dnl if test "$ac_find_libraries" != "" ; then
dnl WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
dnl GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lgpe"
AC_MSG_CHECKING(for Motif/Lesstif library)
- WX_PATH_FIND_LIBRARIES($SEARCH_LIB, Xm)
+ WX_PATH_FIND_LIBRARIES(Xm)
if test "x$ac_find_libraries" != "x" ; then
AC_MSG_RESULT(found in $ac_find_libraries)
dnl test for external libxpm if we're configured to use it
if test "$wxUSE_LIBXPM" = "sys"; then
AC_MSG_CHECKING(for Xpm library)
- WX_PATH_FIND_LIBRARIES($SEARCH_LIB,Xpm)
+ WX_PATH_FIND_LIBRARIES(Xpm)
if test "$ac_find_libraries" != "" ; then
WX_LINK_PATH_EXIST($ac_find_libraries,$GUI_TK_LIBRARY)
GUI_TK_LIBRARY="$GUI_TK_LIBRARY$ac_path_to_link"
if test "$wxUSE_DISPLAY" = "yes"; then
dnl Xinerama is used for wxGTK1/wxX11/wxMotif only
if test "$wxUSE_MOTIF" = 1 -o "$wxUSE_X11" = 1 -o "$wxUSE_GTK1" = 1; then
- AC_MSG_CHECKING([for Xinerama])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xinerama)
+ WX_FIND_LIB(Xinerama, XineramaQueryScreens)
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"
+ if test "$ac_find_libraries" != "std" ; 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
fi
USE_XINERAMA=1
GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXinerama"
- AC_MSG_RESULT([yes])
else
- AC_MSG_RESULT([no])
AC_MSG_WARN([Xinerama not found; disabling wxDisplay])
wxUSE_DISPLAY="no"
fi
if test "$wxUSE_DISPLAY" = "yes"; then
dnl wxGTK2 needs Xxf86vm as well as Xinerama-using ports from above
if test "$USE_XINERAMA" = 1 -o "$wxUSE_GTK" = 1; then
- AC_MSG_CHECKING([for Xxf86vm extension])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],Xxf86vm)
+ WX_FIND_LIB(Xxf86vm, XF86VidModeQueryExtension)
if test "$ac_find_libraries" != "" ; then
- AC_MSG_RESULT([yes])
AC_CHECK_HEADERS([X11/extensions/xf86vmode.h],
[
GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lXxf86vm"
#include <X11/Xlib.h>
#endif
])
- else
- AC_MSG_RESULT([no])
fi
fi
fi
dnl ---------------------------------------------------------------------------
if test "$wxUSE_DETECT_SM" = "yes"; then
if test "$wxUSE_UNIX" = "yes" -a "$wxUSE_MAC" != 1 -a "$wxUSE_OLD_COCOA" != 1; then
- AC_MSG_CHECKING([for -lSM - X11 session management])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],SM)
+ WX_FIND_LIB(SM, SmcOpenConnection)
if test "$ac_find_libraries" != "" ; then
- WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
- if test "$ac_path_to_link" != " -L/usr/lib" ; then
+ if test "$ac_find_libraries" != "std" ; 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
fi
GUI_TK_LIBRARY="$GUI_TK_LIBRARY -lSM"
- AC_MSG_RESULT([yes])
else
- AC_MSG_RESULT([no])
AC_MSG_WARN([libSM not found; disabling session management detection])
wxUSE_DETECT_SM="no"
fi
AC_CHECK_HEADER(GL/glu.h, [
found_gl=0
- AC_MSG_CHECKING([for -lGL])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB /opt/graphics/OpenGL/lib],GL)
+ WX_FIND_LIB(GL, glBegin, [/opt/graphics/OpenGL/lib])
if test "$ac_find_libraries" != "" ; then
- AC_MSG_RESULT([found in $ac_find_libraries])
-
- WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
- if test "$ac_path_to_link" != " -L/usr/lib" ; then
+ if test "$ac_find_libraries" != "std" ; then
+ WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
+ if test "$ac_path_to_link" != " -L/usr/lib" ; then
LDFLAGS_GL="$ac_path_to_link"
+ fi
fi
dnl don't suppose that libGL and libGLU are always in the
dnl same directory -- this is not true for some common
dnl distributions
- AC_MSG_CHECKING([for -lGLU])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],GLU)
+ WX_FIND_LIB(GLU, gluBeginCurve, [/opt/graphics/OpenGL/lib])
if test "$ac_find_libraries" != "" ; then
+ if test "$ac_find_libraries" != "std" ; then
WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
if test "$ac_path_to_link" != " -L/usr/lib" -a \
- "$ac_path_to_link" != "$LDFLAGS_GL"; then
- LDFLAGS_GL="$LDFLAGS_GL$ac_path_to_link"
+ "$ac_path_to_link" != "$LDFLAGS_GL" ; then
+ LDFLAGS_GL="$LDFLAGS_GL$ac_path_to_link"
fi
+ fi
found_gl=1
OPENGL_LIBS="-lGL -lGLU"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
fi
- else
- AC_MSG_RESULT([no])
fi
if test "$found_gl" != 1; then
- AC_MSG_CHECKING([for -lMesaGL])
- WX_PATH_FIND_LIBRARIES([$SEARCH_LIB],MesaGL)
+ WX_FIND_LIB(MesaGL, glEnable, [/opt/graphics/OpenGL/lib])
if test "$ac_find_libraries" != "" ; then
+ if test "$ac_find_libraries" != "std" ; then
WX_LINK_PATH_EXIST([$ac_find_libraries],[$LDFLAGS])
- LDFLAGS_GL="$LDFLAGS$ac_path_to_link"
- OPENGL_LIBS="-lMesaGL -lMesaGLU"
- AC_MSG_RESULT([yes])
- else
- AC_MSG_RESULT([no])
+ if test "$ac_path_to_link" != " -L/usr/lib" ; then
+ LDFLAGS_GL="$LDFLAGS_GL$ac_path_to_link"
+ fi
+ fi
+ OPENGL_LIBS="-lMesaGL -lMesaGLU"
fi
fi
],, [ ])
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 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
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 ---------------------------------------------------------------------------
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_RICHMSGDLG)
fi
+if test "$wxUSE_RICHTOOLTIP" = "yes"; then
+ AC_DEFINE(wxUSE_RICHTOOLTIP)
+fi
+
if test "$wxUSE_SASH" = "yes"; then
AC_DEFINE(wxUSE_SASH)
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS sashtest"
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 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(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 ---------------------------------------------------------------------------
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"
dnl system packages are compiled with Sun CC and so pkg-config outputs
dnl CC-specific "-mt" flag, remove it when using gcc
if test "$GCC" = yes; then
- CPPFLAGS=`echo $CPPFLAGS | sed 's/-mt//'`
- LIBS=`echo $LIBS | sed 's/-mt//'`
- EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-mt//'`
+ CPPFLAGS=`echo $CPPFLAGS | sed 's/-mt//g'`
+ LIBS=`echo $LIBS | sed 's/-mt//g'`
+ EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-mt//g'`
fi
;;
dnl OTOH when using Sun CC under Linux, the flags contain gcc-specific
dnl -pthreads which Sun CC doesn't know about
if test "x$SUNCXX" = xyes; then
- CPPFLAGS=`echo $CPPFLAGS | sed 's/-pthread//'`
- LIBS=`echo $LIBS | sed 's/-pthread//'`
- EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-pthread//'`
+ CPPFLAGS=`echo $CPPFLAGS | sed 's/-pthread//g'`
+ LIBS=`echo $LIBS | sed 's/-pthread//g'`
+ EXTRALIBS_GUI=`echo $EXTRALIBS_GUI | sed 's/-pthread//g'`
fi
;;
esac