X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2e35017918e8b7a6a649ba60203d1e69a6b93023..35d1986eb8ca2e3737b5d8543b27a4230e1a5534:/aclocal.m4 diff --git a/aclocal.m4 b/aclocal.m4 index 646ec95551..97430256a5 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -1,6 +1,6 @@ -# aclocal.m4 generated automatically by aclocal 1.6.3 -*- Autoconf -*- +# generated automatically by aclocal 1.9.4 -*- Autoconf -*- -# Copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 +# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 # Free Software Foundation, Inc. # This file is free software; the Free Software Foundation # gives unlimited permission to copy and/or distribute it, @@ -12,642 +12,189 @@ # PARTICULAR PURPOSE. dnl --------------------------------------------------------------------------- -dnl -dnl Macros for configure.in for wxWindows by Robert Roebling, Phil Blecker, -dnl Vadim Zeitlin and Ron Lee -dnl -dnl This script is under the wxWindows licence. -dnl -dnl Version: $Id$ +dnl Compiler detection macros by David Elliott dnl --------------------------------------------------------------------------- + dnl =========================================================================== -dnl macros to find the a file in the list of include/lib paths +dnl Macros to detect non-GNU compilers (MetroWerks, XLC) dnl =========================================================================== -dnl --------------------------------------------------------------------------- -dnl call WX_PATH_FIND_INCLUDES(search path, header name), sets ac_find_includes -dnl to the full name of the file that was found or leaves it empty if not found -dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_PATH_FIND_INCLUDES], -[ -ac_find_includes= -for ac_dir in $1 /usr/include; - do - if test -f "$ac_dir/$2"; then - ac_find_includes=$ac_dir - break - fi - done +dnl Based on autoconf _AC_LANG_COMPILER_GNU +AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_MWERKS], +[AC_CACHE_CHECK([whether we are using the Metrowerks _AC_LANG compiler], + [bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks], + [AC_TRY_COMPILE([],[#ifndef __MWERKS__ + choke me +#endif +], + [bakefile_compiler_mwerks=yes], + [bakefile_compiler_mwerks=no]) + bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks=$bakefile_compiler_mwerks + ]) ]) -dnl --------------------------------------------------------------------------- -dnl call WX_PATH_FIND_LIBRARIES(search path, header name), sets ac_find_libraries -dnl to the full name of the file that was found or leaves it empty if not found -dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_PATH_FIND_LIBRARIES], -[ -ac_find_libraries= -for ac_dir in $1 /usr/lib; - do - for ac_extension in a so sl dylib; do - if test -f "$ac_dir/lib$2.$ac_extension"; then - ac_find_libraries=$ac_dir - break 2 - fi - done - done +dnl Loosely based on autoconf AC_PROG_CC +dnl TODO: Maybe this should wrap the call to AC_PROG_CC and be used instead. +AC_DEFUN([AC_BAKEFILE_PROG_MWCC], +[AC_LANG_PUSH(C) +_AC_BAKEFILE_LANG_COMPILER_MWERKS +MWCC=`test $bakefile_cv_c_compiler_mwerks = yes && echo yes` +AC_LANG_POP(C) ]) -dnl --------------------------------------------------------------------------- -dnl Path to include, already defined -dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_INCLUDE_PATH_EXIST], -[ - dnl never add -I/usr/include to the CPPFLAGS - if test "x$1" = "x/usr/include"; then - ac_path_to_include="" - else - echo "$2" | grep "\-I$1" > /dev/null - result=$? - if test $result = 0; then - ac_path_to_include="" - else - ac_path_to_include=" -I$1" - fi - fi +dnl Loosely based on autoconf AC_PROG_CXX +dnl TODO: Maybe this should wrap the call to AC_PROG_CXX and be used instead. +AC_DEFUN([AC_BAKEFILE_PROG_MWCXX], +[AC_LANG_PUSH(C++) +_AC_BAKEFILE_LANG_COMPILER_MWERKS +MWCXX=`test $bakefile_cv_cxx_compiler_mwerks = yes && echo yes` +AC_LANG_POP(C++) ]) -dnl --------------------------------------------------------------------------- -dnl Path to link, already defined -dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_LINK_PATH_EXIST], -[ - echo "$2" | grep "\-L$1" > /dev/null - result=$? - if test $result = 0; then - ac_path_to_link="" - else - ac_path_to_link=" -L$1" - fi +dnl Based on autoconf _AC_LANG_COMPILER_GNU +AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_XLC], +[AC_CACHE_CHECK([whether we are using the IBM xlC _AC_LANG compiler], + [wx_cv_[]_AC_LANG_ABBREV[]_compiler_xlc], + [AC_TRY_COMPILE([],[#ifndef __xlC__ + choke me +#endif +], + [wx_compiler_xlc=yes], + [wx_compiler_xlc=no]) + wx_cv_[]_AC_LANG_ABBREV[]_compiler_xlc=$wx_compiler_xlc + ]) ]) -dnl =========================================================================== -dnl C++ features test -dnl =========================================================================== - -dnl --------------------------------------------------------------------------- -dnl WX_CPP_NEW_HEADERS checks whether the compiler has "new" header -dnl or only the old one - it may be generally assumed that if -dnl exists, the other "new" headers (without .h) exist too. -dnl -dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false) -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_CPP_NEW_HEADERS], -[ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - AC_CHECK_HEADERS(iostream) - - if test "$ac_cv_header_iostream" = "yes" ; then - ifelse([$1], , :, [$1]) - else - ifelse([$2], , :, [$2]) - fi - - AC_LANG_RESTORE +dnl Loosely based on autoconf AC_PROG_CC +AC_DEFUN([AC_BAKEFILE_PROG_XLCC], +[AC_LANG_PUSH(C) +_AC_BAKEFILE_LANG_COMPILER_XLC +XLCC=`test $wx_cv_c_compiler_xlc = yes && echo yes` +AC_LANG_POP(C) ]) -dnl --------------------------------------------------------------------------- -dnl WX_CPP_BOOL checks whether the C++ compiler has a built in bool type -dnl -dnl call WX_CPP_BOOL - will define HAVE_BOOL if the compiler supports bool -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_CPP_BOOL], -[ - AC_CACHE_CHECK([if C++ compiler supports bool], wx_cv_cpp_bool, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - AC_TRY_COMPILE( - [ - ], - [ - bool b = true; - - return 0; - ], - [ - wx_cv_cpp_bool=yes - ], - [ - wx_cv_cpp_bool=no - ] - ) - - AC_LANG_RESTORE - ]) - - if test "$wx_cv_cpp_bool" = "yes"; then - AC_DEFINE(HAVE_BOOL) - fi +dnl Loosely based on autoconf AC_PROG_CXX +AC_DEFUN([AC_BAKEFILE_PROG_XLCXX], +[AC_LANG_PUSH(C++) +_AC_BAKEFILE_LANG_COMPILER_XLC +XLCXX=`test $wx_cv_cxx_compiler_xlc = yes && echo yes` +AC_LANG_POP(C++) ]) -dnl --------------------------------------------------------------------------- -dnl WX_CPP_EXPLICIT checks whether the C++ compiler support the explicit -dnl keyword and defines HAVE_EXPLICIT if this is the case -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_CPP_EXPLICIT], +dnl Based on autoconf _AC_LANG_COMPILER_GNU +dnl _AC_BAKEFILE_LANG_COMPILER(NAME, LANG, SYMBOL, IF-YES, IF-NO) +AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER], [ - AC_CACHE_CHECK([if C++ compiler supports the explicit keyword], - wx_cv_explicit, - [ - AC_LANG_SAVE - AC_LANG_CPLUSPLUS - - dnl do the test in 2 steps: first check that the compiler knows about the - dnl explicit keyword at all and then verify that it really honours it - AC_TRY_COMPILE( - [ - class Foo { public: explicit Foo(int) {} }; - ], - [ - return 0; - ], - [ - AC_TRY_COMPILE( + AC_LANG_PUSH($2) + AC_CACHE_CHECK( + [whether we are using the $1 $2 compiler], + [bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3], + [AC_TRY_COMPILE( + [], [ - class Foo { public: explicit Foo(int) {} }; - static void TakeFoo(const Foo& foo) { } + #ifndef $3 + choke me + #endif ], - [ - TakeFoo(17); - return 0; - ], - wx_cv_explicit=no, - wx_cv_explicit=yes - ) - ], - wx_cv_explicit=no + [bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3=yes], + [bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3=no] + ) + ] ) - - AC_LANG_RESTORE - ]) - - if test "$wx_cv_explicit" = "yes"; then - AC_DEFINE(HAVE_EXPLICIT) - fi + AC_LANG_POP($2) + if test "x$bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_[]$3" = "xyes"; then + :; $4 + else + :; $5 + fi ]) -dnl --------------------------------------------------------------------------- -dnl a slightly better AC_C_BIGENDIAN macro which allows cross-compiling -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_C_BIGENDIAN], -[AC_CACHE_CHECK([whether byte ordering is bigendian], ac_cv_c_bigendian, -[ac_cv_c_bigendian=unknown -# See if sys/param.h defines the BYTE_ORDER macro. -AC_TRY_COMPILE([#include -#include ], [ -#if !BYTE_ORDER || !BIG_ENDIAN || !LITTLE_ENDIAN - bogus endian macros -#endif], [# It does; now see whether it defined to BIG_ENDIAN or not. -AC_TRY_COMPILE([#include -#include ], [ -#if BYTE_ORDER != BIG_ENDIAN - not big endian -#endif], ac_cv_c_bigendian=yes, ac_cv_c_bigendian=no)]) -if test $ac_cv_c_bigendian = unknown; then -AC_TRY_RUN([main () { - /* Are we little or big endian? From Harbison&Steele. */ - union - { - long l; - char c[sizeof (long)]; - } u; - u.l = 1; - exit (u.c[sizeof (long) - 1] == 1); -}], [ac_cv_c_bigendian=no], [ac_cv_c_bigendian=yes], [ac_cv_c_bigendian=unknown]) -fi]) -if test $ac_cv_c_bigendian = unknown; then - AC_MSG_WARN([Assuming little-endian target machine - this may be overriden by adding the line "ac_cv_c_bigendian=${ac_cv_c_bigendian='yes'}" to config.cache file]) -fi -if test $ac_cv_c_bigendian = yes; then - AC_DEFINE(WORDS_BIGENDIAN) -fi +dnl Loosely based on autoconf AC_PROG_CC +AC_DEFUN([AC_BAKEFILE_PROG_SUNCC], +[ + _AC_BAKEFILE_LANG_COMPILER(Sun, C, __SUNPRO_C, SUNCC=yes) ]) -dnl --------------------------------------------------------------------------- -dnl override AC_ARG_ENABLE/WITH to cache the results in .cache file -dnl --------------------------------------------------------------------------- - -AC_DEFUN([WX_ARG_CACHE_INIT], - [ - wx_arg_cache_file="configarg.cache" - echo "loading argument cache $wx_arg_cache_file" - rm -f ${wx_arg_cache_file}.tmp - touch ${wx_arg_cache_file}.tmp - touch ${wx_arg_cache_file} - ]) - -AC_DEFUN([WX_ARG_CACHE_FLUSH], - [ - echo "saving argument cache $wx_arg_cache_file" - mv ${wx_arg_cache_file}.tmp ${wx_arg_cache_file} - ]) - -dnl this macro checks for a three-valued command line --with argument: -dnl possible arguments are 'yes', 'no', 'sys', or 'builtin' -dnl usage: WX_ARG_SYS_WITH(option, helpmessage, variable-name) -AC_DEFUN([WX_ARG_SYS_WITH], - [ - AC_MSG_CHECKING([for --with-$1]) - no_cache=0 - AC_ARG_WITH($1, [$2], - [ - if test "$withval" = yes; then - ac_cv_use_$1='$3=yes' - elif test "$withval" = no; then - ac_cv_use_$1='$3=no' - elif test "$withval" = sys; then - ac_cv_use_$1='$3=sys' - elif test "$withval" = builtin; then - ac_cv_use_$1='$3=builtin' - else - AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin]) - fi - ], - [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 - ]) - - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi - - if test "$$3" = yes; then - AC_MSG_RESULT(yes) - elif test "$$3" = no; then - AC_MSG_RESULT(no) - elif test "$$3" = sys; then - AC_MSG_RESULT([system version]) - elif test "$$3" = builtin; then - AC_MSG_RESULT([builtin version]) - else - AC_MSG_ERROR([Invalid value for --with-$1: should be yes, no, sys, or builtin]) - fi - ]) - -dnl this macro checks for a command line argument and caches the result -dnl usage: WX_ARG_WITH(option, helpmessage, variable-name) -AC_DEFUN([WX_ARG_WITH], - [ - AC_MSG_CHECKING([for --with-$1]) - no_cache=0 - AC_ARG_WITH($1, [$2], - [ - if test "$withval" = yes; then - ac_cv_use_$1='$3=yes' - else - ac_cv_use_$1='$3=no' - fi - ], - [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 - ]) - - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi - - if test "$$3" = yes; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - fi - ]) - -dnl like WX_ARG_WITH but uses AC_ARG_ENABLE instead of AC_ARG_WITH -dnl usage: WX_ARG_ENABLE(option, helpmessage, variable-name, enablestring) -dnl -dnl enablestring is a hack and allows to show "checking for --disable-foo" -dnl message when running configure instead of the default "checking for -dnl --enable-foo" one whih is useful for the options enabled by default -AC_DEFUN([WX_ARG_ENABLE], - [ - enablestring=$4 - AC_MSG_CHECKING([for --${enablestring:-enable}-$1]) - no_cache=0 - AC_ARG_ENABLE($1, [$2], - [ - if test "$enableval" = yes; then - ac_cv_use_$1='$3=yes' - else - ac_cv_use_$1='$3=no' - fi - ], - [ - LINE=`grep "$3" ${wx_arg_cache_file}` - if test "x$LINE" != x ; then - eval "DEFAULT_$LINE" - else - no_cache=1 - fi - - ac_cv_use_$1='$3='$DEFAULT_$3 - ]) - - eval "$ac_cv_use_$1" - if test "$no_cache" != 1; then - echo $ac_cv_use_$1 >> ${wx_arg_cache_file}.tmp - fi - - if test "$$3" = yes; then - AC_MSG_RESULT(yes) - else - AC_MSG_RESULT(no) - fi - ]) - - -dnl =========================================================================== -dnl Linker features test -dnl =========================================================================== - -dnl --------------------------------------------------------------------------- -dnl WX_VERSIONED_SYMBOLS checks whether the linker can create versioned -dnl symbols. If it can, sets LDFLAGS_VERSIONING to $CXX flags needed to use -dnl version script file named versionfile -dnl -dnl call WX_VERSIONED_SYMBOLS(versionfile) -dnl --------------------------------------------------------------------------- -AC_DEFUN([WX_VERSIONED_SYMBOLS], +dnl Loosely based on autoconf AC_PROG_CC +AC_DEFUN([AC_BAKEFILE_PROG_SUNCXX], [ - found_versioning=no - - dnl FIXME - doesn't work, Solaris linker doesn't accept wildcards - dnl in the script. - dnl dnl Check for known non-gcc cases: - dnl case "${host}" in - dnl *-*-solaris2* ) - dnl if test "x$GCC" != "xyes" ; then - dnl LDFLAGS_VERSIONING="-M $1" - dnl found_versioning=yes - dnl fi - dnl ;; - dnl esac - - dnl Generic check for GCC or GCC-like behaviour (Intel C++, GCC): - if test $found_versioning = no ; then - AC_CACHE_CHECK([if the linker accepts --version-script], wx_cv_version_script, - [ - echo "VER_1 { *; };" >conftest.sym - echo "int main() { return 0; }" >conftest.cpp - - if AC_TRY_COMMAND([ - $CXX -o conftest.output $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.cpp - -Wl,--version-script,conftest.sym >/dev/null 2>conftest.stderr]) ; then - if test -s conftest.stderr ; then - wx_cv_version_script=no - else - wx_cv_version_script=yes - fi - else - wx_cv_version_script=no - fi - rm -f conftest.output conftest.stderr conftest.sym conftest.cpp - ]) - if test $wx_cv_version_script = yes ; then - LDFLAGS_VERSIONING="-Wl,--version-script,$1" - fi - fi + _AC_BAKEFILE_LANG_COMPILER(Sun, C++, __SUNPRO_CC, SUNCXX=yes) ]) dnl =========================================================================== -dnl "3rd party" macros included here because they are not widely available +dnl macros to detect specialty compiler options dnl =========================================================================== -dnl --------------------------------------------------------------------------- -dnl test for availability of iconv() -dnl --------------------------------------------------------------------------- +dnl Figure out if we need to pass -ext o to compiler (MetroWerks) +AC_DEFUN([AC_BAKEFILE_METROWERKS_EXTO], +[AC_CACHE_CHECK([if the _AC_LANG compiler requires -ext o], wx_cv_[]_AC_LANG_ABBREV[]_exto, +dnl First create an empty conf test +[AC_LANG_CONFTEST([AC_LANG_PROGRAM()]) +dnl Now remove .o and .c.o or .cc.o +rm -f conftest.$ac_objext conftest.$ac_ext.o +dnl Now compile the test +AS_IF([AC_TRY_EVAL(ac_compile)], +dnl If the test succeeded look for conftest.c.o or conftest.cc.o +[for ac_file in `(ls conftest.* 2>/dev/null)`; do + case $ac_file in + conftest.$ac_ext.o) + wx_cv_[]_AC_LANG_ABBREV[]_exto="-ext o" + ;; + *) + ;; + esac +done], +[AC_MSG_FAILURE([cannot figure out if compiler needs -ext o: cannot compile]) +]) dnl AS_IF -dnl From Bruno Haible. +rm -f conftest.$ac_ext.o conftest.$ac_objext conftest.$ac_ext +]) dnl AC_CACHE_CHECK -AC_DEFUN([AM_ICONV], -[ - dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and - dnl those with the standalone portable GNU libiconv installed). - - AC_ARG_WITH([libiconv-prefix], -[ --with-libiconv-prefix=DIR search for libiconv in DIR/include and DIR/lib], [ - for dir in `echo "$withval" | tr : ' '`; do - if test -d $dir/include; then CPPFLAGS="$CPPFLAGS -I$dir/include"; fi - if test -d $dir/lib; then LDFLAGS="$LDFLAGS -L$dir/lib"; fi - done - ]) - - AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ - am_cv_func_iconv="no, consider installing GNU libiconv" - am_cv_lib_iconv=no - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_func_iconv=yes) - if test "$am_cv_func_iconv" != yes; then - am_save_LIBS="$LIBS" - LIBS="$LIBS -liconv" - AC_TRY_LINK([#include -#include ], - [iconv_t cd = iconv_open("",""); - iconv(cd,NULL,NULL,NULL,NULL); - iconv_close(cd);], - am_cv_lib_iconv=yes - am_cv_func_iconv=yes) - LIBS="$am_save_LIBS" +if test "x$wx_cv_[]_AC_LANG_ABBREV[]_exto" '!=' "x"; then + if test "[]_AC_LANG_ABBREV[]" = "c"; then + CFLAGS="$wx_cv_[]_AC_LANG_ABBREV[]_exto $CFLAGS" fi - ]) - if test "$am_cv_func_iconv" = yes; then - AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) - AC_CACHE_CHECK([if iconv needs const], wx_cv_func_iconv_const, - AC_TRY_COMPILE([ -#include -#include -extern -#ifdef __cplusplus -"C" -#endif -#if defined(__STDC__) || defined(__cplusplus) -size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); -#else -size_t iconv(); -#endif - ], - [], - wx_cv_func_iconv_const="no", - wx_cv_func_iconv_const="yes" - ) - ) - - iconv_const= - if test "x$wx_cv_func_iconv_const" = "xyes"; then - iconv_const="const" + if test "[]_AC_LANG_ABBREV[]" = "cxx"; then + CXXFLAGS="$wx_cv_[]_AC_LANG_ABBREV[]_exto $CXXFLAGS" fi - - AC_DEFINE_UNQUOTED(ICONV_CONST, $iconv_const, - [Define as const if the declaration of iconv() needs const.]) - fi - LIBICONV= - if test "$am_cv_lib_iconv" = yes; then - LIBICONV="-liconv" - fi - AC_SUBST(LIBICONV) -]) - -dnl --------------------------------------------------------------------------- -dnl AC_SYS_LARGEFILE (partly based on the code from autoconf 2.5x) -dnl --------------------------------------------------------------------------- - -dnl WX_SYS_LARGEFILE_TEST -dnl -dnl NB: original autoconf test was checking if compiler supported 6 bit off_t -dnl arithmetic properly but this failed miserably with gcc under Linux -dnl whereas the system still supports 64 bit files, so now simply check -dnl that off_t is big enough -define(WX_SYS_LARGEFILE_TEST, -[typedef struct { - unsigned int field: sizeof(off_t) == 8; -} wxlf; -]) +fi +]) dnl AC_DEFUN -dnl WX_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE, CACHE-VAR) -define(WX_SYS_LARGEFILE_MACRO_VALUE, +dnl =========================================================================== +dnl Macros to do all of the compiler detections as one macro +dnl =========================================================================== +AC_DEFUN([AC_BAKEFILE_PROG_CC], [ - AC_CACHE_CHECK([for $1 value needed for large files], [$3], - [ - AC_TRY_COMPILE([#define $1 $2 - #include ], - WX_SYS_LARGEFILE_TEST, - [$3=$2], - [$3=no]) - ] - ) - - if test "$$3" != no; then - wx_largefile=yes - AC_DEFINE_UNQUOTED([$1], [$$3]) + AC_PROG_CC + AC_BAKEFILE_METROWERKS_EXTO + dnl By the time we find out that we need -ext o some tests have failed. + if test "x$wx_cv_c_exto" '!=' "x"; then + unset ac_cv_prog_cc_g + _AC_PROG_CC_G fi + AC_BAKEFILE_PROG_MWCC + AC_BAKEFILE_PROG_XLCC + AC_BAKEFILE_PROG_SUNCC ]) - -dnl AC_SYS_LARGEFILE -dnl ---------------- -dnl By default, many hosts won't let programs access large files; -dnl one must use special compiler options to get large-file access to work. -dnl For more details about this brain damage please see: -dnl http://www.sas.com/standards/large.file/x_open.20Mar96.html -AC_DEFUN([AC_SYS_LARGEFILE], -[AC_ARG_ENABLE(largefile, - [ --disable-largefile omit support for large files]) -if test "$enable_largefile" != no; then - dnl _FILE_OFFSET_BITS==64 is needed for Linux, Solaris, ... - dnl _LARGE_FILES -- for AIX - wx_largefile=no - WX_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64, ac_cv_sys_file_offset_bits) - if test "x$wx_largefile" != "xyes"; then - WX_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1, ac_cv_sys_large_files) - fi - - AC_MSG_CHECKING(if large file support is available) - if test "x$wx_largefile" = "xyes"; then - AC_DEFINE(HAVE_LARGEFILE_SUPPORT) +AC_DEFUN([AC_BAKEFILE_PROG_CXX], +[ + AC_PROG_CXX + AC_BAKEFILE_METROWERKS_EXTO + dnl By the time we find out that we need -ext o some tests have failed. + if test "x$wx_cv_cxx_exto" '!=' "x"; then + unset ac_cv_prog_cxx_g + _AC_PROG_CXX_G fi - AC_MSG_RESULT($wx_largefile) -fi + AC_BAKEFILE_PROG_MWCXX + AC_BAKEFILE_PROG_XLCXX + AC_BAKEFILE_PROG_SUNCXX ]) -dnl Available from the GNU Autoconf Macro Archive at: -dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_const_cast.html -dnl -AC_DEFUN([AC_CXX_CONST_CAST], -[AC_CACHE_CHECK(whether the compiler supports const_cast<>, -ac_cv_cxx_const_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE(,[int x = 0;const int& y = x;int& z = const_cast(y);return z;], - ac_cv_cxx_const_cast=yes, ac_cv_cxx_const_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_const_cast" = yes; then - AC_DEFINE(HAVE_CONST_CAST,,[define if the compiler supports const_cast<>]) -fi -]) - -dnl http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_reinterpret_cast.html -AC_DEFUN([AC_CXX_REINTERPRET_CAST], -[AC_CACHE_CHECK(whether the compiler supports reinterpret_cast<>, -ac_cv_cxx_reinterpret_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -class Base { public : Base () {} virtual void f () = 0;}; -class Derived : public Base { public : Derived () {} virtual void f () {} }; -class Unrelated { public : Unrelated () {} }; -int g (Unrelated&) { return 0; }],[ -Derived d;Base& b=d;Unrelated& e=reinterpret_cast(b);return g(e);], - ac_cv_cxx_reinterpret_cast=yes, ac_cv_cxx_reinterpret_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_reinterpret_cast" = yes; then - AC_DEFINE(HAVE_REINTERPRET_CAST,, - [define if the compiler supports reinterpret_cast<>]) -fi -]) - -dnl and http://www.gnu.org/software/ac-archive/htmldoc/ac_cxx_static_cast.html -AC_DEFUN([AC_CXX_STATIC_CAST], -[AC_CACHE_CHECK(whether the compiler supports static_cast<>, -ac_cv_cxx_static_cast, -[AC_LANG_SAVE - AC_LANG_CPLUSPLUS - AC_TRY_COMPILE([#include -class Base { public : Base () {} virtual void f () = 0; }; -class Derived : public Base { public : Derived () {} virtual void f () {} }; -int g (Derived&) { return 0; }],[ -Derived d; Base& b = d; Derived& s = static_cast (b); return g (s);], - ac_cv_cxx_static_cast=yes, ac_cv_cxx_static_cast=no) - AC_LANG_RESTORE -]) -if test "$ac_cv_cxx_static_cast" = yes; then - AC_DEFINE(HAVE_STATIC_CAST,, [define if the compiler supports static_cast<>]) -fi -]) - dnl --------------------------------------------------------------------------- dnl Support macros for makefiles generated by BAKEFILE. dnl --------------------------------------------------------------------------- @@ -655,37 +202,7 @@ dnl --------------------------------------------------------------------------- dnl Lots of compiler & linker detection code contained here was taken from dnl wxWindows configure.in script (see http://www.wxwindows.org) -dnl Based on autoconf _AC_LANG_COMPILER_GNU -AC_DEFUN([_AC_BAKEFILE_LANG_COMPILER_MWERKS], -[AC_CACHE_CHECK([whether we are using the Metrowerks _AC_LANG compiler], - [bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks], - [AC_TRY_COMPILE([],[#ifndef __MWERKS__ - choke me -#endif -], - [bakefile_compiler_mwerks=yes], - [bakefile_compiler_mwerks=no]) - bakefile_cv_[]_AC_LANG_ABBREV[]_compiler_mwerks=$bakefile_compiler_mwerks - ]) -]) -dnl Loosely based on autoconf AC_PROG_CC -dnl TODO: Maybe this should wrap the call to AC_PROG_CC and be used instead. -AC_DEFUN([AC_BAKEFILE_PROG_MWCC], -[AC_LANG_PUSH(C) -_AC_BAKEFILE_LANG_COMPILER_MWERKS -MWCC=`test $bakefile_compiler_mwerks = yes && echo yes` -AC_LANG_POP(C) -]) - -dnl Loosely based on autoconf AC_PROG_CXX -dnl TODO: Maybe this should wrap the call to AC_PROG_CXX and be used instead. -AC_DEFUN([AC_BAKEFILE_PROG_MWCXX], -[AC_LANG_PUSH(C++) -_AC_BAKEFILE_LANG_COMPILER_MWERKS -MWCXX=`test $bakefile_compiler_mwerks = yes && echo yes` -AC_LANG_POP(C++) -]) dnl --------------------------------------------------------------------------- dnl AC_BAKEFILE_GNUMAKE @@ -733,7 +250,7 @@ AC_DEFUN([AC_BAKEFILE_PLATFORM], if test "x$BAKEFILE_FORCE_PLATFORM" = "x"; then case "${BAKEFILE_HOST}" in - *-*-cygwin* | *-*-mingw32* ) + *-*-mingw32* ) PLATFORM_WIN32=1 ;; *-pc-msdosdjgpp ) @@ -742,7 +259,7 @@ AC_DEFUN([AC_BAKEFILE_PLATFORM], *-pc-os2_emx | *-pc-os2-emx ) PLATFORM_OS2=1 ;; - powerpc-*-darwin* ) + *-*-darwin* ) PLATFORM_MAC=1 PLATFORM_MACOSX=1 ;; @@ -811,8 +328,14 @@ AC_DEFUN([AC_BAKEFILE_PLATFORM_SPECIFICS], *-*-darwin* ) dnl For Unix to MacOS X porting instructions, see: dnl http://fink.sourceforge.net/doc/porting/porting.html - CFLAGS="$CFLAGS -fno-common" - CXXFLAGS="$CXXFLAGS -fno-common" + if test "x$GCC" = "xyes"; then + CFLAGS="$CFLAGS -fno-common" + CXXFLAGS="$CXXFLAGS -fno-common" + fi + if test "x$XLCC" = "xyes"; then + CFLAGS="$CFLAGS -qnocommon" + CXXFLAGS="$CXXFLAGS -qnocommon" + fi ;; *-pc-os2_emx | *-pc-os2-emx ) @@ -851,6 +374,7 @@ AC_DEFUN([AC_BAKEFILE_SUFFIXES], DLLPREFIX="lib" DLLPREFIX_MODULE="" DLLIMP_SUFFIX="" + dlldir="$libdir" case "${BAKEFILE_HOST}" in *-hp-hpux* ) @@ -866,16 +390,26 @@ AC_DEFUN([AC_BAKEFILE_SUFFIXES], SO_SUFFIX="a" SO_SUFFIX_MODULE="a" ;; - *-*-cygwin* | *-*-mingw32* ) + *-*-cygwin* ) + SO_SUFFIX="dll" + SO_SUFFIX_MODULE="dll" + DLLIMP_SUFFIX="dll.a" + EXEEXT=".exe" + DLLPREFIX="cyg" + dlldir="$bindir" + ;; + *-*-mingw32* ) SO_SUFFIX="dll" SO_SUFFIX_MODULE="dll" DLLIMP_SUFFIX="dll.a" EXEEXT=".exe" DLLPREFIX="" + dlldir="$bindir" ;; *-pc-msdosdjgpp ) EXEEXT=".exe" DLLPREFIX="" + dlldir="$bindir" ;; *-pc-os2_emx | *-pc-os2-emx ) SO_SUFFIX="dll" @@ -885,8 +419,9 @@ AC_DEFUN([AC_BAKEFILE_SUFFIXES], DLLPREFIX="" LIBPREFIX="" LIBEXT=".$OS2_LIBEXT" + dlldir="$bindir" ;; - powerpc-*-darwin* ) + *-*-darwin* ) SO_SUFFIX="dylib" SO_SUFFIX_MODULE="bundle" ;; @@ -904,6 +439,7 @@ AC_DEFUN([AC_BAKEFILE_SUFFIXES], AC_SUBST(LIBEXT) AC_SUBST(DLLPREFIX) AC_SUBST(DLLPREFIX_MODULE) + AC_SUBST(dlldir) ]) @@ -926,6 +462,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD], dnl Defaults for GCC and ELF .so shared libs: SHARED_LD_CC="\$(CC) -shared ${PIC_FLAG} -o" SHARED_LD_CXX="\$(CXX) -shared ${PIC_FLAG} -o" + WINDOWS_IMPLIB=0 case "${BAKEFILE_HOST}" in *-hp-hpux* ) @@ -1011,7 +548,12 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD], SHARED_LD_MODULE_CXX="\${CXX} -bundle -single_module -headerpad_max_install_names -o" fi - PIC_FLAG="-dynamic -fPIC" + if test "x$GCC" == "xyes"; then + PIC_FLAG="-dynamic -fPIC" + fi + if test "x$XLCC" = "xyes"; then + PIC_FLAG="-dynamic -DPIC" + fi ;; *-*-aix* ) @@ -1045,6 +587,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD], PIC_FLAG="" SHARED_LD_CC="\$(CC) -shared -o" SHARED_LD_CXX="\$(CXX) -shared -o" + WINDOWS_IMPLIB=1 ;; *-pc-os2_emx | *-pc-os2-emx ) @@ -1060,7 +603,8 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD], *-*-sunos4* | \ *-*-osf* | \ *-*-dgux5* | \ - *-*-sysv5* ) + *-*-sysv5* | \ + *-pc-msdosdjgpp ) dnl defaults are ok ;; @@ -1084,6 +628,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_LD], AC_SUBST(SHARED_LD_MODULE_CC) AC_SUBST(SHARED_LD_MODULE_CXX) AC_SUBST(PIC_FLAG) + AC_SUBST(WINDOWS_IMPLIB) ]) @@ -1098,6 +643,7 @@ AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS], USE_SOVERSION=0 USE_SOVERLINUX=0 USE_SOVERSOLARIS=0 + USE_SOVERCYGWIN=0 USE_SOSYMLINKS=0 USE_MACVERSION=0 SONAME_FLAG= @@ -1121,12 +667,18 @@ AC_DEFUN([AC_BAKEFILE_SHARED_VERSIONS], USE_MACVERSION=1 USE_SOVERSION=1 USE_SOSYMLINKS=1 - ;; + ;; + + *-*-cygwin* ) + USE_SOVERSION=1 + USE_SOVERCYGWIN=1 + ;; esac AC_SUBST(USE_SOVERSION) AC_SUBST(USE_SOVERLINUX) AC_SUBST(USE_SOVERSOLARIS) + AC_SUBST(USE_SOVERCYGWIN) AC_SUBST(USE_MACVERSION) AC_SUBST(USE_SOSYMLINKS) AC_SUBST(SONAME_FLAG) @@ -1148,7 +700,7 @@ AC_DEFUN([AC_BAKEFILE_DEPS], DEPSMODE=gcc DEPS_TRACKING=1 case "${BAKEFILE_HOST}" in - powerpc-*-darwin* ) + *-*-darwin* ) dnl -cpp-precomp (the default) conflicts with -MMD option dnl used by bk-deps (see also http://developer.apple.com/documentation/Darwin/Conceptual/PortingUnix/compiling/chapter_4_section_3.html) DEPSFLAG_GCC="-no-cpp-precomp -MMD" @@ -1163,6 +715,11 @@ AC_DEFUN([AC_BAKEFILE_DEPS], DEPS_TRACKING=1 DEPSFLAG_MWCC="-MM" AC_MSG_RESULT([mwcc]) + elif test "x$SUNCC" = "xyes"; then + DEPSMODE=suncc + DEPS_TRACKING=1 + DEPSFLAG_SUNCC="-xM1" + AC_MSG_RESULT([suncc]) else AC_MSG_RESULT([none]) fi @@ -1340,11 +897,15 @@ AC_DEFUN([AC_BAKEFILE], AC_BAKEFILE_DEPS AC_BAKEFILE_RES_COMPILERS - BAKEFILE_BAKEFILE_M4_VERSION="0.1.7" + BAKEFILE_BAKEFILE_M4_VERSION="0.1.9" dnl includes autoconf_inc.m4: $1 + if test "$BAKEFILE_AUTOCONF_INC_M4_VERSION" = "" ; then + AC_MSG_ERROR([No version found in autoconf_inc.m4 - bakefile macro was changed to take additional argument, perhaps configure.in wasn't updated (see the documentation)?]) + fi + if test "$BAKEFILE_BAKEFILE_M4_VERSION" != "$BAKEFILE_AUTOCONF_INC_M4_VERSION" ; then AC_MSG_ERROR([Versions of Bakefile used to generate makefiles ($BAKEFILE_AUTOCONF_INC_M4_VERSION) and configure ($BAKEFILE_BAKEFILE_M4_VERSION) do not match.]) fi @@ -1857,6 +1418,7 @@ DEPSMODE=${DEPSMODE} DEPSDIR=.deps DEPSFLAG_GCC="${DEPSFLAG_GCC}" DEPSFLAG_MWCC="${DEPSFLAG_MWCC}" +DEPSFLAG_SUNCC="${DEPSFLAG_SUNCC}" mkdir -p ${D}DEPSDIR @@ -1919,6 +1481,28 @@ elif test ${D}DEPSMODE = mwcc ; then done ${D}* ${D}DEPSFLAG_MWCC >${D}{DEPSDIR}/${D}{objfile}.d exit 0 +elif test ${D}DEPSMODE = suncc; then + ${D}* || exit + # Run compiler again with deps flag and redirect into the dep file. + # It doesn't work if the '-o FILE' option is used, but without it the + # dependency file will contain the wrong name for the object. So it is + # removed from the command line, and the dep file is fixed with sed. + cmd="" + while test ${D}# -gt 0; do + case "${D}1" in + -o ) + shift + objfile=${D}1 + ;; + * ) + eval arg${D}#=\\${D}1 + cmd="${D}cmd \\${D}arg${D}#" + ;; + esac + shift + done + eval "${D}cmd ${D}DEPSFLAG_SUNCC" | sed "s|.*:|${D}objfile:|" >${D}{DEPSDIR}/${D}{objfile}.d + exit 0 else ${D}* exit ${D}? @@ -1947,6 +1531,7 @@ verbose=0 args="" objects="" linking_flag="-dynamiclib" +ldargs="-r -keep_private_externs -nostdlib" while test ${D}# -gt 0; do case ${D}1 in @@ -1960,6 +1545,11 @@ while test ${D}# -gt 0; do args="${D}{args} ${D}1 ${D}2" shift ;; + + -s|-Wl,*) + # collect these load args + ldargs="${D}{ldargs} ${D}1" + ;; -l*|-L*|-flat_namespace|-headerpad_max_install_names) # collect these options @@ -1989,28 +1579,27 @@ while test ${D}# -gt 0; do shift done +status=0 + # # Link one module containing all the others # if test ${D}{verbose} = 1; then - echo "c++ -r -keep_private_externs -nostdlib ${D}{objects} -o master.${D}${D}.o" + echo "c++ ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o" fi -c++ -r -keep_private_externs -nostdlib ${D}{objects} -o master.${D}${D}.o +c++ ${D}{ldargs} ${D}{objects} -o master.${D}${D}.o status=${D}? -if test ${D}{status} != 0; then - exit ${D}{status} -fi # -# Link the shared library from the single module created +# Link the shared library from the single module created, but only if the +# previous command didn't fail: # -if test ${D}{verbose} = 1; then - echo "cc ${D}{linking_flag} master.${D}${D}.o ${D}{args}" -fi -c++ ${D}{linking_flag} master.${D}${D}.o ${D}{args} -status=${D}? -if test ${D}{status} != 0; then - exit ${D}{status} +if test ${D}{status} = 0; then + if test ${D}{verbose} = 1; then + echo "c++ ${D}{linking_flag} master.${D}${D}.o ${D}{args}" + fi + c++ ${D}{linking_flag} master.${D}${D}.o ${D}{args} + status=${D}? fi # @@ -2018,7 +1607,7 @@ fi # rm -f master.${D}${D}.o -exit 0 +exit ${D}status EOF dnl ===================== shared-ld-sh ends here ===================== ]) @@ -2075,6 +1664,87 @@ EOF dnl ===================== bk-make-pch ends here ===================== ]) +dnl +dnl AM_PATH_CPPUNIT(MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) +dnl +AC_DEFUN(AM_PATH_CPPUNIT, +[ + +AC_ARG_WITH(cppunit-prefix,[ --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional)], + cppunit_config_prefix="$withval", cppunit_config_prefix="") +AC_ARG_WITH(cppunit-exec-prefix,[ --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional)], + cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="") + + if test x$cppunit_config_exec_prefix != x ; then + cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" + if test x${CPPUNIT_CONFIG+set} != xset ; then + CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config + fi + fi + if test x$cppunit_config_prefix != x ; then + cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" + if test x${CPPUNIT_CONFIG+set} != xset ; then + CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config + fi + fi + + AC_PATH_PROG(CPPUNIT_CONFIG, cppunit-config, no) + cppunit_version_min=$1 + + AC_MSG_CHECKING(for Cppunit - version >= $cppunit_version_min) + no_cppunit="" + if test "$CPPUNIT_CONFIG" = "no" ; then + no_cppunit=yes + else + CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` + CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` + cppunit_version=`$CPPUNIT_CONFIG --version` + + cppunit_major_version=`echo $cppunit_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + cppunit_minor_version=`echo $cppunit_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + cppunit_micro_version=`echo $cppunit_version | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + + cppunit_major_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` + cppunit_minor_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` + cppunit_micro_min=`echo $cppunit_version_min | \ + sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` + + cppunit_version_proper=`expr \ + $cppunit_major_version \> $cppunit_major_min \| \ + $cppunit_major_version \= $cppunit_major_min \& \ + $cppunit_minor_version \> $cppunit_minor_min \| \ + $cppunit_major_version \= $cppunit_major_min \& \ + $cppunit_minor_version \= $cppunit_minor_min \& \ + $cppunit_micro_version \>= $cppunit_micro_min ` + + if test "$cppunit_version_proper" = "1" ; then + AC_MSG_RESULT([$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version]) + else + AC_MSG_RESULT(no) + no_cppunit=yes + fi + fi + + if test "x$no_cppunit" = x ; then + ifelse([$2], , :, [$2]) + else + CPPUNIT_CFLAGS="" + CPPUNIT_LIBS="" + ifelse([$3], , :, [$3]) + fi + + AC_SUBST(CPPUNIT_CFLAGS) + AC_SUBST(CPPUNIT_LIBS) +]) + + + + # Configure paths for GTK+ # Owen Taylor 1997-2001 @@ -2579,8 +2249,10 @@ AC_ARG_ENABLE(sdltest, [ --disable-sdltest Do not try to compile and run sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` if test "x$enable_sdltest" = "xyes" ; then ac_save_CFLAGS="$CFLAGS" + ac_save_CXXFLAGS="$CXXFLAGS" ac_save_LIBS="$LIBS" CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" LIBS="$LIBS $SDL_LIBS" dnl dnl Now check if the installed SDL is sufficiently new. (Also sanity @@ -2646,6 +2318,7 @@ int main (int argc, char *argv[]) ],, no_sdl=yes,[echo $ac_n "cross compiling; assumed OK... $ac_c"]) CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" LIBS="$ac_save_LIBS" fi fi @@ -2665,6 +2338,7 @@ int main (int argc, char *argv[]) else echo "*** Could not run SDL test program, checking why..." CFLAGS="$CFLAGS $SDL_CFLAGS" + CXXFLAGS="$CXXFLAGS $SDL_CFLAGS" LIBS="$LIBS $SDL_LIBS" AC_TRY_LINK([ #include @@ -2689,6 +2363,7 @@ int main(int argc, char *argv[]) echo "*** or that you have moved SDL since it was installed. In the latter case, you" echo "*** may want to edit the sdl-config script: $SDL_CONFIG" ]) CFLAGS="$ac_save_CFLAGS" + CXXFLAGS="$ac_save_CXXFLAGS" LIBS="$ac_save_LIBS" fi fi @@ -2701,105 +2376,4 @@ int main(int argc, char *argv[]) rm -f conf.sdltest ]) -dnl Perform a check for a GStreamer element using gst-inspect -dnl Thomas Vander Stichele -dnl Last modification: 23/10/2002 - -dnl AM_GST_ELEMENT_CHECK(ELEMENT-NAME, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND) - -AC_DEFUN([AM_GST_ELEMENT_CHECK], -[ - AC_CHECK_PROG(GST_INSPECT, gst-inspect, gst-inspect, []) - if test "x$GST_INSPECT" != "x"; then - AC_MSG_CHECKING(GStreamer element $1) - if [ $GST_INSPECT $1 > /dev/null 2> /dev/null ]; then - AC_MSG_RESULT(found.) - $2 - else - AC_MSG_RESULT(not found.) - $3 - fi - fi -]) - -dnl -dnl AM_PATH_CPPUNIT(MINIMUM-VERSION, [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND]]) -dnl -AC_DEFUN(AM_PATH_CPPUNIT, -[ - -AC_ARG_WITH(cppunit-prefix,[ --with-cppunit-prefix=PFX Prefix where CppUnit is installed (optional)], - cppunit_config_prefix="$withval", cppunit_config_prefix="") -AC_ARG_WITH(cppunit-exec-prefix,[ --with-cppunit-exec-prefix=PFX Exec prefix where CppUnit is installed (optional)], - cppunit_config_exec_prefix="$withval", cppunit_config_exec_prefix="") - - if test x$cppunit_config_exec_prefix != x ; then - cppunit_config_args="$cppunit_config_args --exec-prefix=$cppunit_config_exec_prefix" - if test x${CPPUNIT_CONFIG+set} != xset ; then - CPPUNIT_CONFIG=$cppunit_config_exec_prefix/bin/cppunit-config - fi - fi - if test x$cppunit_config_prefix != x ; then - cppunit_config_args="$cppunit_config_args --prefix=$cppunit_config_prefix" - if test x${CPPUNIT_CONFIG+set} != xset ; then - CPPUNIT_CONFIG=$cppunit_config_prefix/bin/cppunit-config - fi - fi - - AC_PATH_PROG(CPPUNIT_CONFIG, cppunit-config, no) - cppunit_version_min=$1 - - AC_MSG_CHECKING(for Cppunit - version >= $cppunit_version_min) - no_cppunit="" - if test "$CPPUNIT_CONFIG" = "no" ; then - no_cppunit=yes - else - CPPUNIT_CFLAGS=`$CPPUNIT_CONFIG --cflags` - CPPUNIT_LIBS=`$CPPUNIT_CONFIG --libs` - cppunit_version=`$CPPUNIT_CONFIG --version` - - cppunit_major_version=`echo $cppunit_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - cppunit_minor_version=`echo $cppunit_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - cppunit_micro_version=`echo $cppunit_version | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - - cppunit_major_min=`echo $cppunit_version_min | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\1/'` - cppunit_minor_min=`echo $cppunit_version_min | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\2/'` - cppunit_micro_min=`echo $cppunit_version_min | \ - sed 's/\([[0-9]]*\).\([[0-9]]*\).\([[0-9]]*\)/\3/'` - - cppunit_version_proper=`expr \ - $cppunit_major_version \> $cppunit_major_min \| \ - $cppunit_major_version \= $cppunit_major_min \& \ - $cppunit_minor_version \> $cppunit_minor_min \| \ - $cppunit_major_version \= $cppunit_major_min \& \ - $cppunit_minor_version \= $cppunit_minor_min \& \ - $cppunit_micro_version \>= $cppunit_micro_min ` - - if test "$cppunit_version_proper" = "1" ; then - AC_MSG_RESULT([$cppunit_major_version.$cppunit_minor_version.$cppunit_micro_version]) - else - AC_MSG_RESULT(no) - no_cppunit=yes - fi - fi - - if test "x$no_cppunit" = x ; then - ifelse([$2], , :, [$2]) - else - CPPUNIT_CFLAGS="" - CPPUNIT_LIBS="" - ifelse([$3], , :, [$3]) - fi - - AC_SUBST(CPPUNIT_CFLAGS) - AC_SUBST(CPPUNIT_LIBS) -]) - - - - +m4_include([acinclude.m4])