X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/224d4f6d7ca1ad289dd86ec6971964d77d94d3a6..ce6fbc83acbe2e850436f7656c39b7c1478812f4:/configure.in diff --git a/configure.in b/configure.in index bdd1f619a2..612034e20c 100644 --- a/configure.in +++ b/configure.in @@ -17,7 +17,7 @@ dnl --------------------------------------------------------------------------- dnl initialization dnl --------------------------------------------------------------------------- -AC_INIT([wxWidgets], [2.7.1], [wx-dev@lists.wxwidgets.org]) +AC_INIT([wxWidgets], [2.8.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]) @@ -33,8 +33,8 @@ dnl dnl wx_release_number += 1 wx_major_version_number=2 -wx_minor_version_number=7 -wx_release_number=2 +wx_minor_version_number=8 +wx_release_number=0 wx_subrelease_number=0 WX_RELEASE=$wx_major_version_number.$wx_minor_version_number @@ -1519,7 +1519,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" @@ -1974,6 +1974,9 @@ AC_CACHE_CHECK( [whether the compiler supports variadic macros], [wx_cv_have_variadic_macros], [ + 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_LANG_PROGRAM( [ @@ -1987,6 +1990,7 @@ AC_CACHE_CHECK( [wx_cv_have_variadic_macros=yes], [wx_cv_have_variadic_macros=no] ) + AC_LANG_POP() ] ) @@ -2017,6 +2021,7 @@ if test "x$wx_largefile" = "xyes"; then [if -D__STDC_EXT__ is required], wx_cv_STDC_EXT_required, [ + AC_LANG_PUSH(C++) AC_TRY_COMPILE( [], [ @@ -2027,6 +2032,7 @@ if test "x$wx_largefile" = "xyes"; then wx_cv_STDC_EXT_required=no, wx_cv_STDC_EXT_required=yes ) + AC_LANG_POP() ] ) if test "x$wx_cv_STDC_EXT_required" = "xyes"; then @@ -2131,41 +2137,59 @@ if test "$wxUSE_STD_STRING" = "yes" -o "$wxUSE_STL" = "yes"; then fi dnl check if declares std::[w]string - AC_MSG_CHECKING([for $std_string in ]) - AC_TRY_COMPILE([#include ], - [$std_string foo;], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_STD_WSTRING)], - [AC_MSG_RESULT(no) - AC_MSG_CHECKING([if std::basic_string<$char_type> works]) - AC_TRY_COMPILE([ - #ifdef HAVE_WCHAR_H - # ifdef __CYGWIN__ - # include - # endif - # include - #endif - #ifdef HAVE_STDLIB_H - # include - #endif - #include - #include - ], - [std::basic_string<$char_type> foo; - const $char_type* dummy = foo.c_str();], - [AC_MSG_RESULT(yes)], - [AC_MSG_RESULT([no]) - if test "$wxUSE_STL" = "yes"; then - AC_MSG_ERROR([Can't use --enable-stl without $std_string or std::basic_string<$char_type>]) - elif grep wxUSE_STD_STRING $wx_arg_cache_file >/dev/null; then - AC_MSG_ERROR([Can't use --enable-std_string without $std_string or std::basic_string<$char_type>]) - else - AC_MSG_WARN([No $std_string or std::basic_string<$char_type>, switching to --disable-std_string]) - wxUSE_STD_STRING=no - fi - ] - ) - ]) + AC_CACHE_CHECK([for $std_string in ], + wx_cv_class_stdstring, + [ + AC_TRY_COMPILE([#include ], + [$std_string foo;], + wx_cv_class_stdstring=yes, + wx_cv_class_stdstring=no + ) + ] + ) + + if test "$wx_cv_class_stdstring" = yes; then + if test "$wxUSE_UNICODE" = "yes"; then + AC_DEFINE(HAVE_STD_WSTRING) + fi + dnl we don't need HAVE_STD_STRING, we just suppose it's available if + dnl wxUSE_STD_STRING==yes + else + AC_CACHE_CHECK([if std::basic_string<$char_type> works], + wx_cv_class_stdbasicstring, + [ + AC_TRY_COMPILE([ + #ifdef HAVE_WCHAR_H + # ifdef __CYGWIN__ + # include + # endif + # include + #endif + #ifdef HAVE_STDLIB_H + # include + #endif + #include + #include + ], + [std::basic_string<$char_type> foo; + const $char_type* dummy = foo.c_str();], + wx_cv_class_stdbasicstring=yes, + wx_cv_class_stdbasicstring=no + ) + ] + ) + + if test "$wx_cv_class_stdbasicstring" != yes; then + if test "$wxUSE_STL" = "yes"; then + AC_MSG_ERROR([Can't use --enable-stl without $std_string or std::basic_string<$char_type>]) + elif grep wxUSE_STD_STRING $wx_arg_cache_file >/dev/null; then + AC_MSG_ERROR([Can't use --enable-std_string without $std_string or std::basic_string<$char_type>]) + else + AC_MSG_WARN([No $std_string or std::basic_string<$char_type>, switching to --disable-std_string]) + wxUSE_STD_STRING=no + fi + fi + fi fi if test "$wxUSE_STD_IOSTREAM" = "yes"; then @@ -2184,59 +2208,83 @@ fi if test "$wxUSE_STL" = "yes"; then dnl check for basic STL functionality - AC_MSG_CHECKING([for basic STL functionality]) - AC_TRY_COMPILE([#include - #include - #include - #include - #include ], - [std::vector moo; - std::list foo; - std::vector::iterator it = - std::find_if(moo.begin(), moo.end(), - std::bind2nd(std::less(), 3));], - [AC_MSG_RESULT([yes])], - [AC_MSG_RESULT([no]) - AC_MSG_ERROR([Basic STL functionality missing])]) + AC_CACHE_CHECK([for basic STL functionality], + wx_cv_lib_stl, + [AC_TRY_COMPILE([#include + #include + #include + #include + #include ], + [std::vector moo; + std::list foo; + std::vector::iterator it = + std::find_if(moo.begin(), moo.end(), + std::bind2nd(std::less(), 3));], + wx_cv_lib_stl=yes, + wx_cv_lib_stl=no + )] + ) + + if test "$wx_cv_lib_stl" != yes; then + AC_MSG_ERROR([Can't use --enable-stl as basic STL functionality is missing]) + fi dnl check for compliant std::string::compare - AC_MSG_CHECKING([for compliant std::string::compare]) - AC_TRY_COMPILE([#include ], - [std::string foo, bar; - foo.compare(bar); - foo.compare(1, 1, bar); - foo.compare(1, 1, bar, 1, 1); - foo.compare(""); - foo.compare(1, 1, ""); - foo.compare(1, 1, "", 2);], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_STD_STRING_COMPARE)], - [AC_MSG_RESULT(no)]) + AC_CACHE_CHECK([for compliant std::string::compare], + wx_cv_func_stdstring_compare, + [AC_TRY_COMPILE([#include ], + [std::string foo, bar; + foo.compare(bar); + foo.compare(1, 1, bar); + foo.compare(1, 1, bar, 1, 1); + foo.compare(""); + foo.compare(1, 1, ""); + foo.compare(1, 1, "", 2);], + wx_cv_func_stdstring_compare=yes, + wx_cv_func_stdstring_compare=no + )] + ) + + if test "$wx_cv_func_stdstring_compare" = yes; then + AC_DEFINE(HAVE_STD_STRING_COMPARE) + fi dnl check for hash_map and hash_set headers AC_CHECK_HEADER([hash_map], - [AC_MSG_CHECKING([for hash_map and hash_set]) - AC_TRY_COMPILE([#include - #include ], - [std::hash_map, std::equal_to > test1; - std::hash_set, std::equal_to > test2;], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_HASH_MAP) - AC_DEFINE(HAVE_STD_HASH_MAP)], - [AC_MSG_RESULT(no)]) - ]) + [AC_CACHE_CHECK([for standard hash_map and hash_set], + wx_cv_class_stdhashmapset, + [AC_TRY_COMPILE([#include + #include ], + [std::hash_map, std::equal_to > test1; + std::hash_set, std::equal_to > test2;], + wx_cv_class_stdhashmapset=yes, + wx_cv_class_stdhashmapset=no) + ] + )] + ) + + if test "$wx_cv_class_stdhashmapset" = yes; then + AC_DEFINE(HAVE_HASH_MAP) + AC_DEFINE(HAVE_STD_HASH_MAP) + fi AC_CHECK_HEADER([ext/hash_map], - [AC_MSG_CHECKING([for hash_map and hash_set]) - AC_TRY_COMPILE([#include - #include ], - [__gnu_cxx::hash_map, std::equal_to > test1; - __gnu_cxx::hash_set, std::equal_to > test2;], - [AC_MSG_RESULT(yes) - AC_DEFINE(HAVE_EXT_HASH_MAP) - AC_DEFINE(HAVE_GNU_CXX_HASH_MAP)], - [AC_MSG_RESULT(no)]) - ]) + [AC_CACHE_CHECK([for GNU hash_map and hash_set], + wx_cv_class_gnuhashmapset, + [AC_TRY_COMPILE([#include + #include ], + [__gnu_cxx::hash_map, std::equal_to > test1; + __gnu_cxx::hash_set, std::equal_to > test2;], + wx_cv_class_gnuhashmapset=yes, + wx_cv_class_gnuhashmapset=no) + ] + )] + ) + + if test "$wx_cv_class_gnuhashmapset" = yes; then + AC_DEFINE(HAVE_EXT_HASH_MAP) + AC_DEFINE(HAVE_GNU_CXX_HASH_MAP) + fi fi dnl pop C++ @@ -3234,7 +3282,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" @@ -3313,6 +3361,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config PKG_CHECK_MODULES(PANGOX, pangox, [ + CFLAGS="$PANGOX_CFLAGS $CFLAGS" CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOX_LIBS" ], @@ -3322,6 +3371,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ) PKG_CHECK_MODULES(PANGOFT2, pangoft2, [ + CFLAGS="$PANGOFT2_CFLAGS $CFLAGS" CXXFLAGS="$PANGOFT2_CFLAGS $CXXFLAGS" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOFT2_LIBS" ], @@ -3333,6 +3383,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config PKG_CHECK_MODULES(PANGOXFT, pangoxft, [ AC_DEFINE(HAVE_PANGO_XFT) + CFLAGS="$PANGOXFT_CFLAGS $CFLAGS" CXXFLAGS="$PANGOXFT_CFLAGS $CXXFLAGS" GUI_TK_LIBRARY="$GUI_TK_LIBRARY $PANGOXFT_LIBS" ], @@ -3340,12 +3391,9 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config AC_MSG_WARN([pangoxft library not found, library will be compiled without anti-aliasing support]) ] ) - save_CXXFLAGS="$CXXFLAGS" save_LIBS="$LIBS" - CXXFLAGS="$PANGOX_CFLAGS $CXXFLAGS" LIBS="$LIBS $PANGOX_LIBS" AC_CHECK_FUNCS([pango_font_family_is_monospace]) - CXXFLAGS="$save_CXXFLAGS" LIBS="$save_LIBS" fi @@ -3375,8 +3423,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config WX_INCLUDE_PATH_EXIST($ac_find_includes, $TOOLKIT_INCLUDE) TOOLKIT_INCLUDE="$TOOLKIT_INCLUDE$ac_path_to_include" else - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS=$CFLAGS + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" AC_TRY_COMPILE( [ @@ -3396,7 +3444,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CXXFLAGS=$save_CXXFLAGS + CFLAGS=$save_CFLAGS fi @@ -3412,8 +3460,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config dnl it might happen that we found headers in one of the standard dnl paths but the libs are elsewhere but still in default (linker) dnl path -- try to compile a test program to check for this - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS=$CFLAGS + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" save_LIBS="$LIBS" LIBS="$GUI_TK_LIBRARY -lXm -lXmu -lXext -lX11" @@ -3435,7 +3483,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ] ) - CXXFLAGS=$save_CXXFLAGS + CFLAGS=$save_CFLAGS LIBS="$save_LIBS" fi @@ -3449,8 +3497,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config if test "$libs_found" = "0"; then save_LIBS="$LIBS" LIBS="$GUI_TK_LIBRARY -lXm ${libp} -lXmu -lXext -lXt${libsm_ice} -lX11" - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS=$CFLAGS + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" AC_TRY_LINK( [ @@ -3473,7 +3521,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config ) LIBS="$save_LIBS" - CXXFLAGS=$save_CXXFLAGS + CFLAGS=$save_CFLAGS fi done fi @@ -3488,8 +3536,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config dnl elsewhere AC_CHECK_LIB(Sgm, [SgCreateList], [libsgm_link=" -lSgm"]) - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS=$CFLAGS + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" AC_CACHE_CHECK([for Motif 2], wx_cv_lib_motif2, @@ -3528,7 +3576,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config AC_DEFINE(__WXLESSTIF__,0) fi - CXXFLAGS=$save_CXXFLAGS + CFLAGS=$save_CFLAGS GUI_TK_LIBRARY="$GUI_TK_LIBRARY${libsgm_link} -lXm${libp_link} -lXmu -lXext -lXt${libsm_ice_link} -lX11" TOOLKIT=MOTIF @@ -3549,8 +3597,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config AC_CACHE_CHECK([for X11/xpm.h], wx_cv_x11_xpm_h, [ - save_CXXFLAGS=$CXXFLAGS - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS=$CFLAGS + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" AC_TRY_COMPILE( [ @@ -3564,7 +3612,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config wx_cv_x11_xpm_h=no ) - CXXFLAGS=$save_CXXFLAGS + CFLAGS=$save_CFLAGS ] ) @@ -3587,8 +3635,8 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config [], [$GUI_TK_LIBRARY -lX11]) if test "$wxHAVE_XEXT_LIB" = 1; then - save_CXXFLAGS="$CXXFLAGS" - CXXFLAGS="$TOOLKIT_INCLUDE $CXXFLAGS" + save_CFLAGS="$CFLAGS" + CFLAGS="$TOOLKIT_INCLUDE $CFLAGS" AC_MSG_CHECKING([for X11/extensions/shape.h]) AC_TRY_COMPILE([ @@ -3607,7 +3655,7 @@ libraries returned by 'pkg-config gtk+-2.0 --libs' or 'gtk-config [ AC_MSG_RESULT([not found]) ]) - CXXFLAGS="$save_CXXFLAGS" + CFLAGS="$save_CFLAGS" fi fi @@ -3853,7 +3901,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" @@ -4556,7 +4607,7 @@ if test "$wxUSE_UNICODE" = yes; then fi if test "x$ac_cv_header_fnmatch_h" = "xyes"; then - WX_CHECK_FUNCS(fnmatch) + WX_CHECK_FUNCS(fnmatch,,,[#include ]) fi if test "$wxUSE_FILE" = "yes"; then @@ -4842,7 +4893,10 @@ if test "$HAVE_SOME_SLEEP_FUNC" != 1; then fi dnl check for uname (POSIX) and gethostname (BSD) -WX_CHECK_FUNCS(uname gethostname, break) +WX_CHECK_FUNCS(uname,,,[#include ]) +if test "$wx_cv_func_uname" != yes; then + WX_CHECK_FUNCS(gethostname) +fi WX_CHECK_FUNCS(strtok_r, [], [], [#define _REENTRANT]) @@ -4931,14 +4985,14 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then dnl the code below: dnl - dnl defines THREADS_LINK and THREADS_CXXFLAGS which are the options + dnl defines THREADS_LINK and THREADS_CFLAGS which are the options dnl necessary to build the MT programs for the linker and compiler dnl respectively dnl dnl sets wxUSE_THREADS=1 if thread support is activated THREADS_LINK= - THREADS_CXXFLAGS= + THREADS_CFLAGS= if test "$wxUSE_THREADS" = "yes" ; then if test "$USE_BEOS" = 1; then @@ -5029,7 +5083,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then -*) AC_MSG_CHECKING([whether pthreads work with $flag]) - THREADS_CXXFLAGS="$flag" + THREADS_CFLAGS="$flag" ;; *) @@ -5039,16 +5093,16 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then esac save_LIBS="$LIBS" - save_CXXFLAGS="$CXXFLAGS" + save_CFLAGS="$CFLAGS" LIBS="$THREADS_LINK $LIBS" - CXXFLAGS="$THREADS_CXXFLAGS $CXXFLAGS" + CFLAGS="$THREADS_CFLAGS $CFLAGS" AC_TRY_LINK([#include ], [pthread_create(0,0,0,0);], THREADS_OK=yes) LIBS="$save_LIBS" - CXXFLAGS="$save_CXXFLAGS" + CFLAGS="$save_CFLAGS" AC_MSG_RESULT($THREADS_OK) if test "x$THREADS_OK" = "xyes"; then @@ -5056,7 +5110,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then fi THREADS_LINK="" - THREADS_CXXFLAGS="" + THREADS_CFLAGS="" done if test "x$THREADS_OK" != "xyes"; then @@ -5065,7 +5119,7 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then else dnl yes, these special compiler flags should be used with the dnl linker as well - LDFLAGS="$THREADS_CXXFLAGS $LDFLAGS" + LDFLAGS="$THREADS_CFLAGS $LDFLAGS" LIBS="$THREADS_LINK $LIBS" AC_MSG_CHECKING([if more special flags are required for pthreads]) @@ -5097,11 +5151,11 @@ if test "$TOOLKIT" != "MSW" -a "$USE_OS2" != 1; then esac AC_MSG_RESULT(${flag}) if test "x$flag" != xno; then - THREADS_CXXFLAGS="$THREADS_CXXFLAGS $flag" + THREADS_CFLAGS="$THREADS_CFLAGS $flag" fi dnl don't add these options to CPPFLAGS as cpp might not know them - WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS $THREADS_CXXFLAGS" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS $THREADS_CFLAGS" fi fi @@ -5252,8 +5306,8 @@ else AC_CACHE_CHECK([if compiler supports -mthreads], wx_cv_cflags_mthread, [ - CXXFLAGS_OLD="$CXXFLAGS" - CXXFLAGS="-mthreads $CXXFLAGS" + CFLAGS_OLD="$CFLAGS" + CFLAGS="-mthreads $CFLAGS" AC_TRY_COMPILE([], [], wx_cv_cflags_mthread=yes, wx_cv_cflags_mthread=no @@ -5263,16 +5317,15 @@ else if test "$wx_cv_cflags_mthread" = "yes"; then dnl it does, use it - WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -mthreads" + WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -mthreads" LDFLAGS="$LDFLAGS -mthreads" else dnl it doesn't - CXXFLAGS="$CXXFLAGS_OLD" + CFLAGS="$CFLAGS_OLD" fi ;; *-pc-os2*emx ) WXCONFIG_CFLAGS="$WXCONFIG_CFLAGS -Zmt -D__ST_MT_ERRNO__" - WXCONFIG_CXXFLAGS="$WXCONFIG_CXXFLAGS -Zmt -D__ST_MT_ERRNO__" LDFLAGS="$LDFLAGS -Zmt" ;; esac @@ -5616,37 +5669,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) @@ -5654,6 +5710,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 @@ -5661,6 +5718,7 @@ if test "$wxUSE_SOUND" = "yes"; then AM_PATH_SDL([1.2.0], [ EXTRALIBS_SDL="$SDL_LIBS" + CFLAGS="$SDL_CFLAGS $CFLAGS" CXXFLAGS="$SDL_CFLAGS $CXXFLAGS" AC_DEFINE(wxUSE_LIBSDL) ], @@ -5692,6 +5750,7 @@ if test "$WXGTK20" = 1; then PKG_CHECK_MODULES(LIBGNOMEPRINTUI, [libgnomeprintui-2.2 >= 2.8], [ + CFLAGS="$LIBGNOMEPRINTUI_CFLAGS $CFLAGS" CXXFLAGS="$LIBGNOMEPRINTUI_CFLAGS $CXXFLAGS" AC_DEFINE(wxUSE_LIBGNOMEPRINT) ], @@ -5709,6 +5768,7 @@ if test "$WXGTK20" = 1; then PKG_CHECK_MODULES(GNOMEVFS, [gnome-vfs-2.0 >= 2.0], [ + CFLAGS="$GNOMEVFS_CFLAGS $CFLAGS" CXXFLAGS="$GNOMEVFS_CFLAGS $CXXFLAGS" AC_DEFINE(wxUSE_LIBGNOMEVFS) ], @@ -5725,6 +5785,7 @@ if test "$WXGTK20" = 1; then [hildon-lgpl >= 0.9], [ EXTRALIBS_HILDON="$HILDON_LIBS" + CFLAGS="$CFLAGS $HILDON_CFLAGS" CXXFLAGS="$CXXFLAGS $HILDON_CFLAGS" AC_DEFINE(wxUSE_LIBHILDON) ], @@ -5957,6 +6018,7 @@ if test "$wxUSE_DATETIME" = "yes"; then AC_CACHE_CHECK(for timezone variable in , wx_cv_var_timezone, [ + AC_LANG_PUSH(C++) AC_TRY_COMPILE( [ #include @@ -6002,6 +6064,7 @@ if test "$wxUSE_DATETIME" = "yes"; then ) ] ) + AC_LANG_POP() ] ) @@ -6144,9 +6207,9 @@ if test "$wxUSE_SOCKETS" = "yes" ; then 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) - CXXFLAGS_OLD="$CXXFLAGS" + CFLAGS_OLD="$CFLAGS" if test "$GCC" = yes ; then - CXXFLAGS="-Werror $CXXFLAGS" + CFLAGS="-Werror $CFLAGS" fi AC_TRY_COMPILE( @@ -6173,7 +6236,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then ) ) - CXXFLAGS="$CXXFLAGS_OLD" + CFLAGS="$CFLAGS_OLD" ] ) AC_LANG_POP() @@ -6200,17 +6263,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) - CXXFLAGS_OLD="$CXXFLAGS" - if test "$GCC" = yes ; then - CXXFLAGS="-Werror $CXXFLAGS" - 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 @@ -6234,8 +6292,7 @@ if test "$wxUSE_SOCKETS" = "yes" ; then wx_cv_type_getsockopt5=unknown ) ) - - CXXFLAGS="$CXXFLAGS_OLD" + AC_LANG_POP() ] ) ]) @@ -6329,7 +6386,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 @@ -7969,7 +8032,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