dnl Process this file with autoconf to produce a configure script.
AC_REVISION($Id$)dnl
-AC_PREREQ(2.57)
+AC_PREREQ(2.58)
dnl ---------------------------------------------------------------------------
dnl
WX_MAJOR_VERSION_NUMBER=2
WX_MINOR_VERSION_NUMBER=5
WX_RELEASE_NUMBER=2
+WX_SUBRELEASE_NUMBER=3
WX_VERSION=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER.$WX_RELEASE_NUMBER
WX_RELEASE=$WX_MAJOR_VERSION_NUMBER.$WX_MINOR_VERSION_NUMBER
DEFAULT_wxUSE_MENUS=no
DEFAULT_wxUSE_MINIFRAME=no
DEFAULT_wxUSE_HTML=no
+ DEFAULT_wxUSE_WEBKIT=no
DEFAULT_wxUSE_FILESYSTEM=no
DEFAULT_wxUSE_FS_INET=no
DEFAULT_wxUSE_FS_ZIP=no
DEFAULT_wxUSE_MENUS=yes
DEFAULT_wxUSE_MINIFRAME=yes
DEFAULT_wxUSE_HTML=yes
+ DEFAULT_wxUSE_WEBKIT=yes
DEFAULT_wxUSE_FILESYSTEM=yes
DEFAULT_wxUSE_FS_INET=yes
DEFAULT_wxUSE_FS_ZIP=yes
DEFAULT_wxUSE_MONOLITHIC=no
DEFAULT_wxUSE_PLUGINS=no
DEFAULT_wxUSE_OFFICIAL_BUILD=no
+
+ dnl Appliable only when --with-gtk was used:
+ DEFAULT_wxUSE_GTK2=yes
fi
dnl WX_ARG_WITH should be used to select whether an external package will be
AC_ARG_WITH(x11, [ --with-x11 use X11], [wxUSE_X11="$withval" wxUSE_UNIVERSAL="yes" CACHE_X11=1 TOOLKIT_GIVEN=1])
WX_ARG_ENABLE(nanox, [ --enable-nanox use NanoX], wxUSE_NANOX)
-WX_ARG_ENABLE(gtk2, [ --enable-gtk2 use GTK+ 2.0 if available (EXPERIMENTAL)], wxUSE_GTK2)
+WX_ARG_ENABLE(gtk2, [ --disable-gtk2 use GTK+ 1.2 instead of 2.0], wxUSE_GTK2)
WX_ARG_ENABLE(gpe, [ --enable-gpe use GNOME PDA Environment features if possible], wxUSE_GPE)
WX_ARG_SYS_WITH(libpng, [ --with-libpng use libpng (PNG image format)], wxUSE_LIBPNG)
WX_ARG_ENABLE(loggui, [ --enable-loggui use standard GUI logger], wxUSE_LOGGUI)
WX_ARG_ENABLE(logwin, [ --enable-logwin use wxLogWindow], wxUSE_LOGWINDOW)
WX_ARG_ENABLE(logdialog, [ --enable-logdialog use wxLogDialog], wxUSE_LOGDIALOG)
+WX_ARG_ENABLE(webkit, [ --enable-webkit use wxWebKitCtrl (Mac)], wxUSE_WEBKIT)
dnl ---------------------------------------------------------------------------
dnl PostScript options
if test "x$wxUSE_COCOA" != "x" -a "$wxUSE_COCOA" != "0" ; then
wxUSE_PRINTING_ARCHITECTURE=no
wxUSE_DRAG_AND_DROP=no
- # Generic notebook requires tab dialog
- DEFAULT_wxUSE_TABDIALOG=yes
- DEFAULT_wxUSE_SCROLLBAR=no
DEFAULT_wxUSE_TOOLTIPS=no
DEFAULT_wxUSE_DRAGIMAGE=no
fi
AC_LANG_RESTORE
-dnl check if compiler includes /usr/local/include in
-dnl default include files search path.
-AC_MSG_CHECKING([for /usr/local/include in default include path])
-GCC_SEARCHES_USR_LOCAL_INCLUDE="no"
-if test "$GCC" = "yes" ; then
- echo | gcc -v -x c++ -E - 2>&1 | sed -n '/^#include </,$p' | \
- sed -n '1,/End of search list\./p' | \
- grep '^ */usr/local/include$' 2>&1 /dev/null \
- && GCC_SEARCHES_USR_LOCAL_INCLUDE="yes"
-fi
-AC_MSG_RESULT([$GCC_SEARCHES_USR_LOCAL_INCLUDE])
-
dnl ranlib command
dnl defines RANLIB with the appropriate command
AC_PROG_RANLIB
INSTALL=`pwd`/${INSTALL} ;;
esac
-dnl HP-UX install doesn't handle the "-d" switch so don't use it there
-case ${host} in
- *-hp-hpux* )
- INSTALL_DIR="mkdir"
- ;;
-
- *) INSTALL_DIR="$INSTALL -d"
- ;;
-esac
-
case "${host}" in
)
])
- if test x"$ac_cv_string_strcasecmp" = "xyes"; then
+ 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
+
+ save_CFLAGS="$CFLAGS"
+ save_LIBS="$LIBS"
+ CFLAGS="$CFLAGS $GTK_CFLAGS"
+ LIBS="$LIBS $GTK_LIBS"
+ AC_CHECK_FUNCS([pango_font_family_is_monospace])
+ CFLAGS="$save_CFLAGS"
+ LIBS="$save_LIBS"
else
if test "$wxUSE_UNICODE" = "yes"; then
AC_MSG_WARN([Unicode configuration not supported with GTK+ 1.x])
TOOLCHAIN_DEFS="${TOOLCHAIN_DEFS} -D__WXMSW__ -D__WIN95__ -D__WIN32__ -DMWIN -DMICROWIN_NOCONTROLS -DMICROWIN_TODO=1"
fi
- if test "$wxUSE_X11" = 1; then
- dnl use standard macros to check for X headers/libs, this brings support
- dnl for the standard configure options --x-includes and --x-libraries
+ dnl common part of X11 and Motif port checks
+ if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
+ dnl use standard macros to check for X headers/libs, this brings
+ dnl support for the standard configure options --x-includes,
+ dnl --x-libraries and --no-x
AC_PATH_XTRA
if test "$no_x" = "yes"; then
AC_MSG_ERROR(X11 not found, please use --x-includes and/or --x-libraries options)
fi
- GUI_TK_LIBRARY="$X_LIBS"
- TOOLKIT_INCLUDE="$X_CFLAGS"
+ dnl for some reason AC_PATH_XTRA seems to add -INONE and -LNONE (and
+ dnl also sometimes -RNONE) to X_CFLAGS and X_LIBS respectively, filter
+ 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
+
+ if test "$wxUSE_X11" = 1; then
if test "$wxUSE_NANOX" = "yes"; then
AC_MSG_CHECKING(for MicroWindows/NanoX distribution)
if test "x$MICROWIN" = x ; then
AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support])
]
)
+ save_CFLAGS="$CFLAGS"
+ save_LIBS="$LIBS"
+ CFLAGS="$CFLAGS $PANGOX_CFLAGS"
+ LIBS="$LIBS $PANGOX_LIBS"
+ AC_CHECK_FUNCS([pango_font_family_is_monospace])
+ CFLAGS="$save_CFLAGS"
+ LIBS="$save_LIBS"
fi
wxUSE_UNIVERSAL="yes"
fi
if test "$wxUSE_MOTIF" = 1; then
- dnl use standard macros to check for X headers/libs, this brings support
- dnl for the standard configure options --x-includes and --x-libraries
- AC_PATH_XTRA
-
- if test "$no_x" = "yes"; then
- AC_MSG_ERROR(X11 not found, please use --x-includes and/or --x-libraries options)
- fi
-
- dnl for some reason AC_PATH_XTRA seems to add -INONE and -LNONE to
- dnl X_LIBS and X_CFLAGS respectively -- what for??
- GUI_TK_LIBRARY=`echo $X_LIBS | sed 's/ -LNONE//'`
- TOOLKIT_INCLUDE=`echo $X_CFLAGS | sed 's/ -INONE//'`
- AFMINSTALL=afminstall
- COMPILED_X_PROGRAM=0
-
AC_MSG_CHECKING(for Motif/Lesstif headers)
WX_PATH_FIND_INCLUDES($SEARCH_INCLUDE, Xm/Xm.h)
if test "$ac_find_includes" != "" ; then
GUIDIST=MOTIF_DIST
fi
+ dnl more tests common to X11 and Motif:
if test "$wxUSE_X11" = 1 -o "$wxUSE_MOTIF" = 1; then
dnl test for external libxpm if we're configured to use it
if test "$wxUSE_LIBXPM" = "sys"; then
UNICODE=0
lib_unicode_suffix=
+wxconfig_filename_unicode="ansi"
if test "$wxUSE_UNICODE" = "yes"; then
lib_unicode_suffix=u
+ wxconfig_filename_unicode="unicode"
UNICODE=1
fi
lib_debug_suffix=
+wxconfig_filename_debug="release"
DEBUG_FLAG=0
if test "$wxUSE_DEBUG_FLAG" = "yes"; then
lib_debug_suffix=d
+ wxconfig_filename_debug="debug"
DEBUG_FLAG=1
fi
TOOLCHAIN_NAME="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}${lib_unicode_suffix}${lib_debug_suffix}-${WX_RELEASE}"
TOOLCHAIN_NAME_GL="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}${lib_unicode_suffix}${lib_debug_suffix}_gl-${WX_RELEASE}"
+WXCONFIG_DATA_FILE="${TOOLKIT_DIR}${TOOLKIT_VERSION}${WIDGET_SET}-${wxconfig_filename_unicode}-${wxconfig_filename_debug}-${WX_RELEASE}"
+
if test "$cross_compiling" = "yes"; then
TOOLCHAIN_NAME="${TOOLCHAIN_NAME}-${host_alias}"
TOOLCHAIN_NAME_GL="${TOOLCHAIN_NAME_GL}-${host_alias}"
+ WXCONFIG_DATA_FILE="${WXCONFIG_DATA_FILE}-${host_alias}"
HOST_SUFFIX="-${host_alias}"
fi
if test "$wxUSE_UNICODE" = yes; then
dnl also look if we have wide char IO functions
- AC_CHECK_FUNCS(fputwc wprintf vswprintf)
+ AC_CHECK_FUNCS(wputc wputchar putws fputws wprintf vswprintf)
dnl MinGW has a vswprintf with a different prototype, and
dnl a _vsnwprintf with the correct prototype, but AC_CHECK_FUNCS
dnl like mingw does.. -- RL
if test "$TOOLKIT" != "MSW"; then
dnl determine the type of third argument for getsockname
+ dnl This test needs to be done in C++ mode since gsocket.cpp now
+ dnl is C++ code and pointer cast that are possible even without
+ dnl warning in C still fail in C++.
+ AC_LANG_PUSH(C++)
AC_CACHE_CHECK([what is the type of the third argument of getsockname],
wx_cv_type_getsockname3,
[
else
AC_DEFINE_UNQUOTED(SOCKLEN_T, $wx_cv_type_getsockname3)
fi
+ AC_LANG_POP
fi
fi
fi
if test "$wxUSE_EXCEPTIONS" = "yes"; then
- AC_DEFINE(wxUSE_EXCEPTIONS)
+ if test "$wxUSE_NO_EXCEPTIONS" = "yes" ; then
+ AC_MSG_WARN([--enable-exceptions can't be used with --enable-no_exceptions])
+ else
+ AC_DEFINE(wxUSE_EXCEPTIONS)
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS except"
+ fi
fi
USE_HTML=0
SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS html/htmlctrl"
fi
fi
+if test "$wxUSE_WEBKIT" = "yes"; then
+ if test "$wxUSE_MAC" = 1; then
+ old_CPPFLAGS="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -x objective-c++"
+ AC_CHECK_HEADER([WebKit/HIWebView.h],
+ [
+ AC_DEFINE(wxUSE_WEBKIT)
+ WEBKIT_LINK="-framework WebKit"
+ ],
+ [
+ AC_MSG_WARN([WebKit headers not found; disabling wxWebKit])
+ wxUSE_WEBKIT=no
+ ],
+ [#include <Carbon/Carbon.h>])
+ CPPFLAGS="$old_CPPFLAGS"
+ elif test "$wxUSE_COCOA" = 1; then
+ AC_DEFINE(wxUSE_WEBKIT)
+ else
+ wxUSE_WEBKIT=no
+ fi
+fi
+
if test "$wxUSE_MENUS" = "yes"; then
AC_DEFINE(wxUSE_MENUS)
if test "$wxUSE_SPLASH" = "yes"; then
AC_DEFINE(wxUSE_SPLASH)
+ SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS splash"
fi
if test "$wxUSE_STARTUP_TIPS" = "yes"; then
dnl extended.c uses floor() and is always linked in
if test "$wxUSE_MAC" = 1 ; then
- LDFLAGS="$LDFLAGS -framework Carbon -framework Cocoa -framework WebKit -framework System"
+ if test "$wxUSE_SOUND" = "yes"; then
+ LDFLAGS="$LDFLAGS -framework QuickTime"
+ fi
+ LDFLAGS="$LDFLAGS -framework Carbon -framework Cocoa -framework System"
fi
if test "$wxUSE_COCOA" = 1 ; then
LDFLAGS="$LDFLAGS -framework Cocoa -framework System"
EXTRA_CFLAGS="$WXDEBUG $WXODBCFLAG $PROFILE $OPTIMISE"
dnl remove the extra white space from the cc/c++/ld options
-CPPFLAGS=`echo $WXDEBUG_DEFINE $INCLUDES $CPPFLAGS | sed 's/ \\+/ /g'`
-CFLAGS=`echo $CODE_GEN_FLAGS $EXTRA_CFLAGS $CFLAGS $CXXWARNINGS | sed 's/ \\+/ /g'`
-CXXFLAGS=`echo $CODE_GEN_FLAGS $CODE_GEN_FLAGS_CXX $EXTRA_CFLAGS $CXXFLAGS $CXXWARNINGS | sed 's/ \+/ /g'`
+CPPFLAGS=`echo $WXDEBUG_DEFINE $INCLUDES $CPPFLAGS`
+CFLAGS=`echo $CODE_GEN_FLAGS $EXTRA_CFLAGS $CFLAGS $CXXWARNINGS`
+CXXFLAGS=`echo $CODE_GEN_FLAGS $CODE_GEN_FLAGS_CXX $EXTRA_CFLAGS $CXXFLAGS $CXXWARNINGS`
-LIBS=`echo $LIBS | sed 's/ \+/ /g'`
+LIBS=`echo $LIBS`
EXTRALIBS="$LDFLAGS $LDFLAGS_VERSIONING $LIBS $DMALLOC_LIBS"
EXTRALIBS_XML="$EXPAT_LINK"
EXTRALIBS_HTML="$MSPACK_LINK"
EXTRALIBS_ODBC="$ODBC_LINK"
if test "$wxUSE_GUI" = "yes"; then
- EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK | sed 's/ \+/ /g'`
+ EXTRALIBS_GUI=`echo $GUI_TK_LIBRARY $PNG_LINK $JPEG_LINK $TIFF_LINK $WEBKIT_LINK`
fi
if test "$wxUSE_OPENGL" = "yes"; then
EXTRALIBS_OPENGL="$LDFLAGS_GL $OPENGL_LIBS"
AC_BAKEFILE
+GCC_PRAGMA_FLAGS=""
dnl Find out if we have to define NO_GCC_PRAGMA and WX_PRECOMP:
if test $GCC_PCH = 1 ; then
- CODE_GEN_FLAGS="-DWX_PRECOMP -DNO_GCC_PRAGMA $CODE_GEN_FLAGS"
- CPPFLAGS="-DWX_PRECOMP -DNO_GCC_PRAGMA $CPPFLAGS"
+ GCC_PRAGMA_FLAGS="-DWX_PRECOMP -DNO_GCC_PRAGMA"
else
case "${host}" in
powerpc-*-darwin* )
dnl Some Apple's GCC version are broken and can't handle the
dnl pragmas:
- CODE_GEN_FLAGS="-DNO_GCC_PRAGMA $CODE_GEN_FLAGS"
- CPPFLAGS="-DNO_GCC_PRAGMA $CPPFLAGS"
+ GCC_PRAGMA_FLAGS="-DNO_GCC_PRAGMA"
;;
*-*-mingw32* )
dnl MinGW GCC versions >= 3.2 have problems with
#error "Not GCC 3.2 or greater"
#endif
],
- [CODE_GEN_FLAGS="-DNO_GCC_PRAGMA $CODE_GEN_FLAGS"
- CPPFLAGS="-DNO_GCC_PRAGMA $CPPFLAGS"
+ [GCC_PRAGMA_FLAGS="-DNO_GCC_PRAGMA"
AC_MSG_RESULT([yes])],
[AC_MSG_RESULT([no])])
fi
;;
esac
fi
+CPPFLAGS="$GCC_PRAGMA_FLAGS $CPPFLAGS"
dnl for convenience, sort the samples in alphabetical order
AC_SUBST(WX_MAJOR_VERSION_NUMBER)
AC_SUBST(WX_MINOR_VERSION_NUMBER)
AC_SUBST(WX_RELEASE_NUMBER)
+AC_SUBST(WX_SUBRELEASE_NUMBER)
AC_SUBST(WX_LIBRARY_NAME_STATIC)
AC_SUBST(WX_LIBRARY_NAME_SHARED)
AC_SUBST(WX_LIBRARY_BASENAME_NOGUI)
AC_SUBST(WXCONFIG_INCLUDE)
AC_SUBST(WXCONFIG_RPATH)
AC_SUBST(WXCONFIG_LDFLAGS_GUI)
+AC_SUBST(WXCONFIG_DATA_FILE)
AC_SUBST(WX_LARGEFILE_FLAGS)
+AC_SUBST(GCC_PRAGMA_FLAGS)
AC_SUBST(CODE_GEN_FLAGS)
AC_SUBST(CODE_GEN_FLAGS_CXX)
dnl other tools
AC_SUBST(GCC)
-AC_SUBST(GCC_SEARCHES_USR_LOCAL_INCLUDE)
AC_SUBST(DLLTOOL)
AC_SUBST(AS)
AC_SUBST(NM)
AC_SUBST(LD)
AC_SUBST(MAKEINFO)
AC_SUBST(INSTALL_LIBRARY)
-AC_SUBST(INSTALL_DIR)
dnl MAKE_SET will be replaced with "MAKE=..." or nothing if make sets MAKE
dnl colon)
AC_CONFIG_FILES([
wx-config
+ wx-config-wrapper
version-script
Makefile
])
AC_CONFIG_COMMANDS([default],
[
- dnl This test is required to make the following idempotent.
- dnl Otherwise running config.status or rerunning configure
- dnl would stomp the wx-config link or try to move it onto
- dnl itself.
- dnl Use -h instead of -L to test for link (GD)
- dnl -h is documented as obsolete under Mac OS X but works
- dnl -L is obsolete under Solaris8
- if test ! -h wx-config; then
- chmod +x wx-config
- mv wx-config wx${TOOLCHAIN_NAME}-config
- ${LN_S} wx${TOOLCHAIN_NAME}-config wx-config
- fi
-
if test ! -d lib; then
mkdir lib
fi
if test ! -d lib/wx; then
mkdir lib/wx
fi
+ if test ! -d lib/wx/config; then
+ mkdir lib/wx/config
+ fi
if test ! -d lib/wx/include; then
mkdir lib/wx/include
fi
if test -f setup.h; then
mv -f setup.h lib/wx/include/${TOOLCHAIN_NAME}/wx/setup.h
fi
+
+ dnl This test is required to make the following idempotent.
+ dnl Otherwise running config.status or rerunning configure
+ dnl would stomp the wx-config link or try to move it onto
+ dnl itself.
+ dnl Use -h instead of -L to test for link (GD)
+ dnl -h is documented as obsolete under Mac OS X but works
+ dnl -L is obsolete under Solaris8
+ if test ! -h wx-config; then
+ chmod +x wx-config
+ mv -f wx-config lib/wx/config/${WXCONFIG_DATA_FILE}
+ ${LN_S} wx-config-${WX_RELEASE} wx-config
+ fi
+ ( cd lib/wx/config ;
+ rm -f ${TOOLCHAIN_NAME}
+ ${LN_S} ${WXCONFIG_DATA_FILE} ${TOOLCHAIN_NAME} )
+
+ if test -f wx-config-wrapper; then
+ chmod +x wx-config-wrapper
+ mv -f wx-config-wrapper wx-config-${WX_RELEASE}
+ rm -f wx${TOOLCHAIN_NAME}-config
+ ${LN_S} wx-config-${WX_RELEASE} wx${TOOLCHAIN_NAME}-config
+ fi
],
[
TOOLCHAIN_NAME="${TOOLCHAIN_NAME}"
+ WXCONFIG_DATA_FILE="${WXCONFIG_DATA_FILE}"
+ WX_RELEASE="${WX_RELEASE}"
LN_S="${LN_S}"
]
)