X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/38c6938f8dd61e03045c6b2b6a16efd9b7f3b3fa..4326154d28a4a3fab64b39f813326919cf2b2a11:/configure.in diff --git a/configure.in b/configure.in index cea9dafdb0..70b23acd60 100644 --- a/configure.in +++ b/configure.in @@ -35,7 +35,7 @@ dnl wx_release_number += 1 wx_major_version_number=2 wx_minor_version_number=8 wx_release_number=0 -wx_subrelease_number=0 +wx_subrelease_number=1 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number WX_VERSION=$WX_RELEASE.$wx_release_number @@ -378,6 +378,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_OPTIMISE=no DEFAULT_wxUSE_PROFILE=no DEFAULT_wxUSE_NO_DEPS=no + DEFAULT_wxUSE_VARARG_MACROS=no DEFAULT_wxUSE_NO_RTTI=no DEFAULT_wxUSE_NO_EXCEPTIONS=no DEFAULT_wxUSE_UNIVERSAL_BINARY=no @@ -551,6 +552,7 @@ if test $DEBUG_CONFIGURE = 1; then DEFAULT_wxUSE_RADIOBTN=no DEFAULT_wxUSE_SASH=no DEFAULT_wxUSE_SCROLLBAR=no + DEFAULT_wxUSE_SEARCHCTRL=no DEFAULT_wxUSE_SLIDER=no DEFAULT_wxUSE_SPINBTN=no DEFAULT_wxUSE_SPINCTRL=no @@ -601,6 +603,7 @@ else DEFAULT_wxUSE_OPTIMISE=yes DEFAULT_wxUSE_PROFILE=no DEFAULT_wxUSE_NO_DEPS=no + DEFAULT_wxUSE_VARARG_MACROS=yes DEFAULT_wxUSE_NO_RTTI=no DEFAULT_wxUSE_NO_EXCEPTIONS=no DEFAULT_wxUSE_UNIVERSAL_BINARY=no @@ -632,7 +635,7 @@ else DEFAULT_wxUSE_LIBXPM=yes DEFAULT_wxUSE_LIBMSPACK=yes DEFAULT_wxUSE_LIBSDL=no - DEFAULT_wxUSE_LIBGNOMEPRINT=no + DEFAULT_wxUSE_LIBGNOMEPRINT=yes DEFAULT_wxUSE_LIBGNOMEVFS=no DEFAULT_wxUSE_LIBHILDON=no DEFAULT_wxUSE_ODBC=no @@ -773,6 +776,7 @@ else DEFAULT_wxUSE_RADIOBTN=yes DEFAULT_wxUSE_SASH=yes DEFAULT_wxUSE_SCROLLBAR=yes + DEFAULT_wxUSE_SEARCHCTRL=yes DEFAULT_wxUSE_SLIDER=yes DEFAULT_wxUSE_SPINBTN=yes DEFAULT_wxUSE_SPINCTRL=yes @@ -930,6 +934,7 @@ WX_ARG_ENABLE(no_rtti, [ --enable-no_rtti create code without RTTI WX_ARG_ENABLE(no_exceptions, [ --enable-no_exceptions create code without C++ exceptions handling], wxUSE_NO_EXCEPTIONS) WX_ARG_ENABLE(permissive, [ --enable-permissive compile code disregarding strict ANSI], wxUSE_PERMISSIVE) WX_ARG_ENABLE(no_deps, [ --enable-no_deps create code without dependency information], wxUSE_NO_DEPS) +WX_ARG_ENABLE(vararg_macros, [ --disable-vararg_macros don't use vararg macros, even if they are supported], wxUSE_VARARG_MACROS) WX_ARG_ENABLE_PARAM(universal_binary, [[ --enable-universal_binary[=SDK] create Mac PowerPC and Intel Universal binary (not yet working)]], wxUSE_UNIVERSAL_BINARY) WX_ARG_ENABLE(compat24, [ --enable-compat24 enable wxWidgets 2.4 compatibility], WXWIN_COMPATIBILITY_2_4, enable) @@ -1104,6 +1109,7 @@ if test "$wxUSE_CONTROLS" = "yes"; then DEFAULT_wxUSE_RADIOBTN=yes DEFAULT_wxUSE_SASH=yes DEFAULT_wxUSE_SCROLLBAR=yes + DEFAULT_wxUSE_SEARCHCTRL=yes DEFAULT_wxUSE_SLIDER=yes DEFAULT_wxUSE_SPINBTN=yes DEFAULT_wxUSE_SPINCTRL=yes @@ -1156,6 +1162,7 @@ elif test "$wxUSE_CONTROLS" = "no"; then DEFAULT_wxUSE_RADIOBTN=no DEFAULT_wxUSE_SASH=no DEFAULT_wxUSE_SCROLLBAR=no + DEFAULT_wxUSE_SEARCHCTRL=no DEFAULT_wxUSE_SLIDER=no DEFAULT_wxUSE_SPINBTN=no DEFAULT_wxUSE_SPINCTRL=no @@ -1199,7 +1206,7 @@ WX_ARG_ENABLE(filepicker, [ --enable-filepicker use wxFilePickerCtrl class WX_ARG_ENABLE(fontpicker, [ --enable-fontpicker use wxFontPickerCtrl class], wxUSE_FONTPICKERCTRL) WX_ARG_ENABLE(gauge, [ --enable-gauge use wxGauge class], wxUSE_GAUGE) WX_ARG_ENABLE(grid, [ --enable-grid use wxGrid class], wxUSE_GRID) -WX_ARG_ENABLE(dataviewctrl,[ --enable-dataviewctrl, use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL) +WX_ARG_ENABLE(dataviewctrl,[ --enable-dataviewctrl use wxDataViewCtrl class], wxUSE_DATAVIEWCTRL) WX_ARG_ENABLE(hyperlink, [ --enable-hyperlink use wxHyperlinkCtrl class], wxUSE_HYPERLINKCTRL) WX_ARG_ENABLE(imaglist, [ --enable-imaglist use wxImageList class], wxUSE_IMAGLIST) WX_ARG_ENABLE(listbook, [ --enable-listbook use wxListbook class], wxUSE_LISTBOOK) @@ -1211,6 +1218,7 @@ WX_ARG_ENABLE(radiobox, [ --enable-radiobox use wxRadioBox class], wxU WX_ARG_ENABLE(radiobtn, [ --enable-radiobtn use wxRadioButton class], wxUSE_RADIOBTN) WX_ARG_ENABLE(sash, [ --enable-sash use wxSashWindow class], wxUSE_SASH) WX_ARG_ENABLE(scrollbar, [ --enable-scrollbar use wxScrollBar class and scrollable windows], wxUSE_SCROLLBAR) +WX_ARG_ENABLE(searchctrl, [ --enable-searchctrl use wxSearchCtrl class], wxUSE_SEARCHCTRL) WX_ARG_ENABLE(slider, [ --enable-slider use wxSlider class], wxUSE_SLIDER) WX_ARG_ENABLE(spinbtn, [ --enable-spinbtn use wxSpinButton class], wxUSE_SPINBTN) WX_ARG_ENABLE(spinctrl, [ --enable-spinctrl use wxSpinCtrl class], wxUSE_SPINCTRL) @@ -1323,6 +1331,8 @@ if test "$wxUSE_WINE" = "yes"; then DEFAULT_DEFAULT_wxUSE_MOTIF=0 DEFAULT_DEFAULT_wxUSE_MSW=1 wxUSE_SHARED=no + CC=${CC:-winegcc} + CXX=${CXX:-wineg++} fi @@ -1460,9 +1470,13 @@ AC_PROG_RANLIB dnl ar command dnl defines AR with the appropriate command -AC_CHECK_TOOL(AR, ar) -if test "x$AR" = "x" ; then - AC_MSG_ERROR([ar is needed to build wxWidgets]) +dnl +dnl For Sun CC AC_BAKEFILE below sets AR to the compiler itself. +if test "x$SUNCXX" != xyes; then + AC_CHECK_TOOL(AR, ar) + if test "x$AR" = "x" ; then + AC_MSG_ERROR([ar is needed to build wxWidgets]) + fi fi dnl install checks @@ -1519,7 +1533,7 @@ dnl does make support "-include" (only GNU make does AFAIK)? AC_CACHE_CHECK([if make is GNU make], wx_cv_prog_makeisgnu, [ if ( ${SHELL-sh} -c "${MAKE-make} --version" 2> /dev/null | - egrep -s GNU > /dev/null); then + $EGREP -s GNU > /dev/null); then wx_cv_prog_makeisgnu="yes" else wx_cv_prog_makeisgnu="no" @@ -1670,9 +1684,6 @@ esac if test "$wxUSE_WINE" = "yes"; then wants_win32=1 - dnl FIXME: we should do a better job of testing for these - CC=winegcc - CXX=wineg++ LDFLAGS_GUI="-mwindows" fi @@ -1969,6 +1980,11 @@ else fi fi +dnl don't check for vararg macros if they're explicitly disabled: this is +dnl useful if the user code using the library wants to limit itself to standard +dnl C++ only (e.g. is compiled with g++ -std=c++98) +if test "$wxUSE_VARARG_MACROS" = "yes"; then + dnl Check if variadic macros (C99 feature) are supported: AC_CACHE_CHECK( [whether the compiler supports variadic macros], @@ -1998,6 +2014,8 @@ if test $wx_cv_have_variadic_macros = "yes"; then AC_DEFINE(HAVE_VARIADIC_MACROS) fi +fi dnl wxUSE_VARARG_MACROS == yes + dnl check for large file support AC_SYS_LARGEFILE @@ -2779,6 +2797,30 @@ if test "$wxUSE_LIBJPEG" != "no" ; then else dnl we are using the system library wxUSE_LIBJPEG=sys + + if test "$wxUSE_MSW" = 1; then + dnl boolean is defined by the jpeg headers and also by the + dnl Windows headers of some compilers. This type has been + dnl renamed in the builtin, so it is only an issue when + dnl using an external jpeg lib on Windows. + AC_CHECK_TYPES( + [boolean], + [ + AC_CHECK_SIZEOF( + [boolean], + [], + [ + #undef HAVE_BOOLEAN + #include + #include + ]) + AC_DEFINE_UNQUOTED( + [wxHACK_BOOLEAN], + [wxInt`expr 8 \* $ac_cv_sizeof_boolean`]) + ], + [], + [#include ]) + fi fi fi fi @@ -2959,12 +3001,6 @@ if test "$USE_WIN32" = 1 ; then dnl install Win32-specific files in "make install" WIN32INSTALL=win32install - dnl the jpeg header jmorecfg.h delcares the type boolean, which conflicts - dnl on systems which declare it in the system headers. If HAVE_BOOLEAN is - dnl defined then jmorecfg.h doesn't declare it, so checking for it here - dnl solves the problem. - AC_CHECK_TYPES(boolean, [], [], [#include ]) - dnl pbt.h is missing on Wine at least AC_CHECK_HEADERS(pbt.h, [], [AC_DEFINE(NEED_PBT_H)]) fi @@ -3282,7 +3318,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config PKG_PROG_PKG_CONFIG() PKG_CHECK_MODULES(DIRECTFB, - [directfb >= 0.9.22], + [directfb >= 0.9.23], [ wxUSE_UNIVERSAL="yes" TOOLKIT_INCLUDE="$DIRECTFB_CFLAGS" @@ -3901,7 +3937,10 @@ dnl --------------------------------------------------------------------------- USE_OPENGL=0 if test "$wxUSE_OPENGL" = "yes"; then - if test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = "1"; then + if test "$wxUSE_MGL" = 1 -o "$wxUSE_DFB" = "1"; then + AC_MSG_WARN([wxGLCanvas not implemented for this port, library will be compiled without it.]) + wxUSE_OPENGL="no" + elif test "$wxUSE_MAC" = 1 -o "$wxUSE_COCOA" = "1"; then OPENGL_LIBS="-framework OpenGL -framework AGL" elif test "$wxUSE_MSW" = 1; then OPENGL_LIBS="-lopengl32 -lglu32" @@ -5666,37 +5705,40 @@ fi dnl Unix implementation needs additional checks because audio support dnl comes in many favours: if test "$USE_UNIX" = "1" ; then - dnl it's not enough to check for just the header because OSS under NetBSD - dnl redefines ioctl as oss_ioctrl inside it and so we also need to test - dnl whether we need -lossaudio at link-time - AC_CACHE_CHECK([for SNDCTL_DSP_SPEED in sys/soundcard.h], ac_cv_header_sys_soundcard, [ - AC_TRY_LINK([ - #include - #include - ], - [ - ioctl(0, SNDCTL_DSP_SPEED, 0); - ], - ac_cv_header_sys_soundcard=yes, - [ - saveLibs="$LIBS" - LIBS="$saveLibs -lossaudio" - AC_TRY_LINK([ - #include - #include - ], - [ - ioctl(0, SNDCTL_DSP_SPEED, 0); - ], - ac_cv_header_sys_soundcard=yes, - [ - LIBS="$saveLibs" - ac_cv_header_sys_soundcard=no - ] - ) - ] - ) - ]) + dnl mmedia doesn't compile with wxMGL, remove this if this is ever fixed + if test "$wxUSE_MGL" != 1; then + dnl it's not enough to check for just the header because OSS under NetBSD + dnl redefines ioctl as oss_ioctrl inside it and so we also need to test + dnl whether we need -lossaudio at link-time + AC_CACHE_CHECK([for SNDCTL_DSP_SPEED in sys/soundcard.h], ac_cv_header_sys_soundcard, [ + AC_TRY_LINK([ + #include + #include + ], + [ + ioctl(0, SNDCTL_DSP_SPEED, 0); + ], + ac_cv_header_sys_soundcard=yes, + [ + saveLibs="$LIBS" + LIBS="$saveLibs -lossaudio" + AC_TRY_LINK([ + #include + #include + ], + [ + ioctl(0, SNDCTL_DSP_SPEED, 0); + ], + ac_cv_header_sys_soundcard=yes, + [ + LIBS="$saveLibs" + ac_cv_header_sys_soundcard=no + ] + ) + ] + ) + ]) + fi if test "$ac_cv_header_sys_soundcard" = "yes"; then AC_DEFINE(HAVE_SYS_SOUNDCARD_H) @@ -5704,6 +5746,7 @@ if test "$USE_UNIX" = "1" ; then DISABLED_CONTRIB="$DISABLED_CONTRIB mmedia" fi fi + WITH_PLUGIN_SDL=0 if test "$wxUSE_SOUND" = "yes"; then if test "$USE_UNIX" = "1" ; then @@ -6256,17 +6299,12 @@ if test "$wxUSE_SOCKETS" = "yes" ; then ], wx_cv_type_getsockopt5=socklen_t, [ - dnl the compiler will compile the version with size_t - dnl even if the real type of the last parameter is int - dnl but it should give at least a warning about - dnl converting between incompatible pointer types, so - dnl try to use it to get the correct behaviour at - dnl least with gcc (otherwise we'd always use size_t) - CFLAGS_OLD="$CFLAGS" - if test "$GCC" = yes ; then - CFLAGS="-Werror $CFLAGS" - fi - + dnl Note that the rules for compatibility of pointers + dnl are somewhat different between C and C++, so code + dnl that fails in C++ may not even give a warning about + dnl converting between incompatible pointer types in C. + dnl So this test needs to be done in C++ mode. + AC_LANG_PUSH(C++) AC_TRY_COMPILE( [ #include @@ -6290,8 +6328,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then wx_cv_type_getsockopt5=unknown ) ) - - CFLAGS="$CFLAGS_OLD" + AC_LANG_POP() ] ) ]) @@ -6385,7 +6422,13 @@ if test "$wxUSE_GUI" = "yes" -a "$wxUSE_JOYSTICK" = "yes"; then else dnl wxJoystick not supported by wxMGL at all if test "$wxUSE_MGL" != "1"; then - AC_CHECK_HEADERS(linux/joystick.h, wxUSE_JOYSTICK=yes) + dnl notice the dummy includes argument: without it, AC_CHECK_HEADER + dnl checks only whether the header can be preprocessed, not that it + dnl can be compiled and in Linux 2.6.16 joystick.h is present but + dnl can't be compiled because of an error and with the default + dnl AC_CHECK_HEADER semantics we'd still detect it in this case and + dnl build would fail later + AC_CHECK_HEADER(linux/joystick.h, wxUSE_JOYSTICK=yes,,[#include ]) fi fi @@ -6844,6 +6887,11 @@ if test "$wxUSE_SCROLLBAR" = "yes"; then SAMPLES_SUBDIRS="$SAMPLES_SUBDIRS scroll scrollsub" fi +if test "$wxUSE_SEARCHCTRL" = "yes"; then + AC_DEFINE(wxUSE_SEARCHCTRL) + USES_CONTROLS=1 +fi + if test "$wxUSE_SLIDER" = "yes"; then AC_DEFINE(wxUSE_SLIDER) USES_CONTROLS=1 @@ -8025,7 +8073,7 @@ for subdir in `echo $SUBDIRS`; do disabled_var=DISABLED_`echo $subdir | tr [[a-z]] [[A-Z]]`; eval "disabled=\$$disabled_var" disabled=/`echo X $disabled | sed 's@ @/|/@g'`/ - makefiles=`(cd $srcdir ; find $subdir -name Makefile.in) | egrep -v "$disabled"` + makefiles=`(cd $srcdir ; find $subdir -name Makefile.in) | $EGREP -v "$disabled"` fi else dnl we build wxBase only dnl don't take all samples/utils, just those which build with