dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Id$)dnl
AC_PREREQ(2.58)
dnl Vadim Zeitlin and Ron Lee
dnl
dnl This script is under the wxWindows licence.
-dnl
-dnl Version: $Id$
dnl ---------------------------------------------------------------------------
dnl ---------------------------------------------------------------------------
dnl initialization
dnl ---------------------------------------------------------------------------
-AC_INIT([wxWidgets], [2.9.5], [wx-dev@lists.wxwidgets.org])
+AC_INIT([wxWidgets], [3.0.0], [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
dnl wx_release_number += 1
-wx_major_version_number=2
-wx_minor_version_number=9
-wx_release_number=5
+wx_major_version_number=3
+wx_minor_version_number=0
+wx_release_number=0
wx_subrelease_number=0
WX_RELEASE=$wx_major_version_number.$wx_minor_version_number
AC_DEFINE(__BSD__)
AC_DEFINE(__DARWIN__)
AC_DEFINE(TARGET_CARBON)
- DEFAULT_DEFAULT_wxUSE_OSX_CARBON=1
+ DEFAULT_DEFAULT_wxUSE_OSX_COCOA=1
;;
*-*-beos* )
WX_ARG_SYS_WITH(libpng, [ --with-libpng use libpng (PNG image format)], wxUSE_LIBPNG)
WX_ARG_SYS_WITH(libjpeg, [ --with-libjpeg use libjpeg (JPEG file format)], wxUSE_LIBJPEG)
WX_ARG_SYS_WITH(libtiff, [ --with-libtiff use libtiff (TIFF file format)], wxUSE_LIBTIFF)
+WX_ARG_WITHOUT(libjbig, [ --without-libjbig don't use libjbig in libtiff even if available)], wxUSE_LIBJBIG)
+WX_ARG_WITHOUT(liblzma, [ --without-liblzma don't use liblzma in libtiff even if available)], wxUSE_LIBLZMA)
WX_ARG_SYS_WITH(libxpm, [ --with-libxpm use libxpm (XPM file format)], wxUSE_LIBXPM)
WX_ARG_WITH(libiconv, [ --with-libiconv use libiconv (character conversion)], wxUSE_LIBICONV)
WX_ARG_WITH(libmspack, [ --with-libmspack use libmspack (CHM help files loading)], wxUSE_LIBMSPACK)
WX_ARG_FEATURE(fs_archive, [ --enable-fs_archive use virtual archive filesystems], wxUSE_FS_ARCHIVE)
WX_ARG_FEATURE(fs_inet, [ --enable-fs_inet use virtual HTTP/FTP filesystems], wxUSE_FS_INET)
WX_ARG_FEATURE(fs_zip, [ --enable-fs_zip now replaced by fs_archive], wxUSE_FS_ZIP)
+WX_ARG_FEATURE(fsvolume, [ --enable-fsvolume use wxFSVolume class], wxUSE_FSVOLUME)
WX_ARG_FEATURE(fswatcher, [ --enable-fswatcher use wxFileSystemWatcher class], wxUSE_FSWATCHER)
WX_ARG_FEATURE(geometry, [ --enable-geometry use geometry class], wxUSE_GEOMETRY)
WX_ARG_FEATURE(log, [ --enable-log use logging system], wxUSE_LOG)
WX_ARG_FEATURE(notifmsg, [ --enable-notifmsg use wxNotificationMessage class], wxUSE_NOTIFICATION_MESSAGE)
WX_ARG_FEATURE(odcombobox, [ --enable-odcombobox use wxOwnerDrawnComboBox class], wxUSE_ODCOMBOBOX)
WX_ARG_FEATURE(popupwin, [ --enable-popupwin use wxPopUpWindow class], wxUSE_POPUPWIN)
+WX_ARG_FEATURE(prefseditor, [ --enable-prefseditor use wxPreferencesEditor class], wxUSE_PREFERENCES_EDITOR)
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(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)
+WX_ARG_FEATURE(webviewwebkit,[ --enable-webviewwebkit 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)
+WX_ARG_FEATURE(webviewie, [ --enable-webviewie 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
USE_UNIX=0
USE_WIN32=1
AC_DEFINE(__WIN32__)
- AC_DEFINE(__WIN95__)
AC_DEFINE(__WINDOWS__)
AC_DEFINE(__GNUWIN32__)
AC_DEFINE(STRICT)
dnl More complete Unix emulation for unix-like ports
dnl by linking in POSIX/2's cExt (if available).
AC_CHECK_LIB(cExt, drand48, LIBS="$LIBS -lcExt")
- else
- dnl Include resources for the "native" port (wxPM).
- RESPROGRAMOBJ="\${top_srcdir}/include/wx/os2/wx.res"
fi
dnl Check for the gcc version (and thereby for the C runtime library).
dnl wx_cv_gccversion = EMX2 -> Standard EMX environment
fi
dnl (end of OS/2-only piece)
;;
- *)
- dnl ---------------------------------------------------------------------
- dnl look for strcasecmp() in string.h and then strings.h if it's not
- dnl there. Don't do this on OS/2, where "stricmp" is the function to be
- dnl used.
- dnl ---------------------------------------------------------------------
- dnl (non-OS/2-only piece)
-
- AC_CACHE_CHECK([for strcasecmp() in string.h], ac_cv_string_strcasecmp, [
- AC_TRY_LINK([
- #include <string.h>
- ],
- [
- strcasecmp("foo", "bar");
- ],
- ac_cv_string_strcasecmp=yes,
- ac_cv_string_strcasecmp=no
- )
- ])
-
- if test x"$ac_cv_string_strcasecmp" = "xyes"; then
- AC_DEFINE(HAVE_STRCASECMP_IN_STRING_H)
- else
- AC_CACHE_CHECK([for strcasecmp() in strings.h], ac_cv_strings_strcasecmp, [
- AC_TRY_LINK([
- #include <strings.h>
- ],
- [
- strcasecmp("foo", "bar");
- ],
- ac_cv_strings_strcasecmp=yes,
- ac_cv_strings_strcasecmp=no
- )
- ])
-
- if test x"$ac_cv_strings_strcasecmp" = "xyes"; then
- AC_DEFINE(HAVE_STRCASECMP_IN_STRINGS_H)
- else
- AC_MSG_ERROR([No case-insensitive string comparison function found.])
- fi
- fi
-
- dnl (end of non-OS/2-only piece)
- ;;
esac
dnl ------------------------------------------------------------------------
;;
esac
-dnl POSIX needs this for select(), but old systems don't have it
if test "$USE_UNIX" = 1 ; then
+ dnl POSIX needs this for select(), but old systems don't have it
AC_CHECK_HEADERS([sys/select.h],,, [AC_INCLUDES_DEFAULT()])
+
+ dnl Header defining C++ ABI is currently only available with g++ but test
+ dnl for it unconditionally in case it becomes supported by other compilers.
+ AC_LANG_PUSH(C++)
+ AC_CHECK_HEADERS([cxxabi.h],,, [AC_INCLUDES_DEFAULT()])
+ AC_LANG_POP()
fi
dnl ---------------------------------------------------------------------------
AC_DEFINE(HAVE_VARIADIC_MACROS)
fi
+else
+ AC_DEFINE(wxNO_VARIADIC_MACROS)
fi dnl wxUSE_VARARG_MACROS == yes
dnl we need to hack around this
ac_configure_args="$ac_configure_args --disable-jpeg"
fi
+
+ if test "$wxUSE_LIBLZMA" = "yes"; then
+ dnl If libtiff configure detects lzma library, it enables support for
+ dnl LZMA compression and using it requires linking with liblzma.
+ AC_CHECK_LIB(lzma, lzma_code, [LIBS="$LIBS -llzma"])
+ else
+ dnl Prevent libtiff configure from looking for liblzma if it's
+ dnl explicitly disabled.
+ ac_configure_args="$ac_configure_args --disable-lzma"
+ fi
+
+ dnl Similarly for jbig
+ if test "$wxUSE_LIBJBIG" = "yes"; then
+ AC_CHECK_LIB(jbig, jbg_dec_init, [LIBS="$LIBS -ljbig"])
+ else
+ ac_configure_args="$ac_configure_args --disable-jbig"
+ fi
+
AC_CONFIG_SUBDIRS([src/tiff])
fi
fi
dnl search for toolkit (widget sets)
dnl ----------------------------------------------------------------
-AFMINSTALL=
-WIN32INSTALL=
-
TOOLKIT=
TOOLKIT_INCLUDE=
WIDGET_SET=
LIBS="$LIBS -lkernel32 -luser32"
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__ $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__ $WINDRES_CPU_DEFINE"
-
- dnl install Win32-specific files in "make install"
- WIN32INSTALL=win32install
+ dnl Flags to be passed to windres by the applications using wxWidgets.
+ WXCONFIG_RESFLAGS="--define __WIN32__ --define __GNUWIN32__ $WINDRES_CPU_DEFINE"
fi
if test "$wxUSE_GUI" = "yes"; then
TOOLKIT_INCLUDE="$wx_cv_cflags_gtk"
GUI_TK_LIBRARY="$wx_cv_libs_gtk $GUI_TK_LIBRARY"
- AFMINSTALL=afminstall
TOOLKIT=GTK
GUIDIST=GTK_DIST
wxUSE_UNIVERSAL="yes"
- AFMINSTALL=afminstall
TOOLKIT=MICROWIN
GUIDIST=MICROWIN_DIST
dnl this junk out
GUI_TK_LIBRARY=`echo $X_LIBS | sed 's/ -LNONE//' | sed 's/ -RNONE//'`
TOOLKIT_INCLUDE=`echo $X_CFLAGS | sed 's/ -INONE//'`
- AFMINSTALL=afminstall
COMPILED_X_PROGRAM=0
fi
AC_DEFINE(HAVE_WCSLEN)
fi
-AC_CHECK_FUNCS([wcsdup wcsftime strnlen wcsnlen wcscasecmp wcsncasecmp])
+dnl Notice that unlike the functions below, this one seems to be present in all
+dnl support OS X versions so it's OK to test for it here.
+AC_CHECK_FUNCS(wcsftime)
+
+dnl OS X provides the wide character functions (and also strnlen(), for some
+dnl reason) only starting from 10.7 so our tests would succeed if we're
+dnl configuring under 10.7 or later, yet the compiled programs would fail if
+dnl ran under 10.6 or earlier. To avoid this problem, define the corresponding
+dnl HAVE_XXX in wx/osx/config_xcode.h instead of testing for them here.
+if test "$wxUSE_MAC" != 1; then
+ AC_CHECK_FUNCS([strnlen wcsdup wcsnlen wcscasecmp wcsncasecmp])
+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
if test "$wxUSE_STACKWALKER" = "yes" -a "$wxUSE_UNIX" = "yes"; then
AC_CACHE_CHECK([for backtrace() in <execinfo.h>], wx_cv_func_backtrace,
[
- AC_LANG_PUSH(C++)
- AC_TRY_COMPILE([#include <execinfo.h>],
+ AC_SEARCH_LIBS(backtrace, execinfo,
[
- void *trace[1];
- char **messages;
-
- backtrace(trace, 1);
- messages = backtrace_symbols(trace, 1);
+ AC_LANG_PUSH(C++)
+ AC_TRY_LINK([#include <execinfo.h>],
+ [
+ void *trace[1];
+ char **messages;
+ backtrace(trace, 1);
+ messages = backtrace_symbols(trace, 1);
+ ],
+ wx_cv_func_backtrace=yes,
+ wx_cv_func_backtrace=no
+ )
+ AC_LANG_POP()
],
- wx_cv_func_backtrace=yes,
wx_cv_func_backtrace=no
)
- AC_LANG_POP()
]
)
-
if test "$wx_cv_func_backtrace" = "no"; then
AC_MSG_WARN([backtrace() is not available, wxStackWalker will not be available])
wxUSE_STACKWALKER=no
else
- AC_CACHE_CHECK([for __cxa_demangle() in <cxxabi.h>], wx_cv_func_cxa_demangle,
- [
- AC_LANG_PUSH(C++)
- AC_TRY_LINK([#include <cxxabi.h>],
- [
- int rc;
- __cxxabiv1::__cxa_demangle("foo", 0, 0, &rc);
- ],
- wx_cv_func_cxa_demangle=yes,
- wx_cv_func_cxa_demangle=no
- )
- AC_LANG_POP()
- ]
- )
+ if test "$ac_cv_header_cxxabi_h" = "yes"; then
+ AC_CACHE_CHECK([for __cxa_demangle() in <cxxabi.h>], wx_cv_func_cxa_demangle,
+ [
+ AC_LANG_PUSH(C++)
+ AC_TRY_LINK([#include <cxxabi.h>],
+ [
+ int rc;
+ __cxxabiv1::__cxa_demangle("foo", 0, 0, &rc);
+ ],
+ wx_cv_func_cxa_demangle=yes,
+ wx_cv_func_cxa_demangle=no
+ )
+ AC_LANG_POP()
+ ]
+ )
+ else
+ wx_cv_func_cxa_demangle=no
+ fi
if test "$wx_cv_func_cxa_demangle" = "yes"; then
AC_DEFINE(HAVE_CXA_DEMANGLE)
AC_DEFINE(HAVE___THREAD_KEYWORD)
fi
fi
+
+ if test "$ac_cv_header_cxxabi_h" = "yes"; then
+ AC_CACHE_CHECK([for abi::__forced_unwind() in <cxxabi.h>],
+ wx_cv_type_abi_forced_unwind,
+ [
+ AC_LANG_PUSH(C++)
+ AC_TRY_COMPILE([#include <cxxabi.h>],
+ [
+ void foo(abi::__forced_unwind&);
+ ],
+ wx_cv_type_abi_forced_unwind=yes,
+ wx_cv_type_abi_forced_unwind=no
+ )
+ AC_LANG_POP()
+ ]
+ )
+ else
+ wx_cv_type_abi_forced_unwind=no
+ fi
+
+ if test "$wx_cv_type_abi_forced_unwind" = "yes"; then
+ AC_DEFINE(HAVE_ABI_FORCEDUNWIND)
+ fi
fi
dnl from if !MSW
if test "$wxUSE_NOTIFICATION_MESSAGE" = "yes" ; then
if test "$wxUSE_LIBNOTIFY" = "yes" ; then
+ HAVE_LIBNOTIFY=0
PKG_CHECK_MODULES(LIBNOTIFY, [libnotify >= 0.7],
[
- GUI_TK_LIBRARY="$GUI_TK_LIBRARY $LIBNOTIFY_LIBS"
- CFLAGS="$LIBNOTIFY_CFLAGS $CFLAGS"
- CXXFLAGS="$LIBNOTIFY_CFLAGS $CXXFLAGS"
- AC_DEFINE(wxUSE_LIBNOTIFY)
+ HAVE_LIBNOTIFY=1
+ AC_DEFINE(wxUSE_LIBNOTIFY_0_7)
],
[
- AC_MSG_WARN([libnotify not found, wxNotificationMessage will use generic implementation.])
+ PKG_CHECK_MODULES(LIBNOTIFY, [libnotify >= 0.4],
+ [HAVE_LIBNOTIFY=1],
+ [AC_MSG_WARN([libnotify not found, wxNotificationMessage will use generic implementation.])]
+ )
]
)
+
+ if test "$HAVE_LIBNOTIFY" = "1" ; then
+ GUI_TK_LIBRARY="$GUI_TK_LIBRARY $LIBNOTIFY_LIBS"
+ CFLAGS="$LIBNOTIFY_CFLAGS $CFLAGS"
+ CXXFLAGS="$LIBNOTIFY_CFLAGS $CXXFLAGS"
+ AC_DEFINE(wxUSE_LIBNOTIFY)
+ fi
fi
fi
fi
fi
+if test "$wxUSE_FSVOLUME" = "yes"; then
+ AC_DEFINE(wxUSE_FSVOLUME)
+fi
+
if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes"; then
if test "$USE_UNIX" != 1; then
AC_MSG_WARN([Catching fatal exceptions not currently supported on this system, wxApp::OnFatalException will not be called])
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS typetest"
fi
+dnl ------------------------------------------------------------------------
+dnl wxProcess
+dnl ------------------------------------------------------------------------
+
+AC_CHECK_FUNCS(setpriority)
+
dnl ------------------------------------------------------------------------
dnl wxSocket
dnl ------------------------------------------------------------------------
fi
fi
+if test "$wxUSE_PREFERENCES_EDITOR" = "yes"; then
+ AC_DEFINE(wxUSE_PREFERENCES_EDITOR)
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS prefseditor"
+fi
+
if test "$wxUSE_DIALUP_MANAGER" = "yes"; then
if test "$wxUSE_MAC" = 1 -o "$wxUSE_OLD_COCOA" = 1; then
AC_MSG_WARN([Dialup manager not supported on this platform... disabled])
else
USE_MEDIA=0
fi
+
+ elif test "$wxUSE_MAC" = 1; then
+ dnl We always have the necessary libraries under Mac
+ dnl but we need to link with it explicitly.
+ GST_LIBS="-framework QTKit"
fi
if test $USE_MEDIA = 1; then
dnl The next version of Bakefile will have the correct fix for this
dnl at which time, this hack can be removed.
-if test "$wxUSE_MAC" = 1 ; then
+if test "$DEPS_TRACKING" = 1 -a "$wxUSE_MAC" = 1 ; then
if test "x$wxUSE_UNIVERSAL_BINARY" != "xno" ; then
if test "x$disable_macosx_deps" = "xyes"; then
sed "s/DEPSMODE=gcc/DEPSMODE=none/" < bk-deps > temp
- mv temp bk-deps
+ mv temp bk-deps
chmod +x bk-deps
fi
fi
dnl toolkit options
AC_SUBST(USE_GUI)
-AC_SUBST(AFMINSTALL)
-AC_SUBST(WIN32INSTALL)
AC_SUBST(TOOLKIT)
AC_SUBST(TOOLKIT_DIR)
AC_SUBST(TOOLCHAIN_NAME)
AC_SUBST(RESCOMP)
AC_SUBST(WINDRES)
AC_SUBST(REZ)
-AC_SUBST(RESFLAGS)
-AC_SUBST(RESPROGRAMOBJ)
AC_SUBST(WX_RESOURCES_MACOSX_ASCII)
AC_SUBST(WX_RESOURCES_MACOSX_DATA)