use AM_ICONV for iconv configure checks
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@13749 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
337
configure.in
337
configure.in
@@ -11,323 +11,6 @@ dnl
|
||||
dnl Version: $Id$
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl macros to find the a file in the list of include/lib paths
|
||||
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;
|
||||
do
|
||||
if test -f "$ac_dir/$2"; then
|
||||
ac_find_includes=$ac_dir
|
||||
break
|
||||
fi
|
||||
done
|
||||
])
|
||||
|
||||
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;
|
||||
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 ---------------------------------------------------------------------------
|
||||
dnl Path to include, already defined
|
||||
dnl ---------------------------------------------------------------------------
|
||||
AC_DEFUN([WX_INCLUDE_PATH_EXIST],
|
||||
[
|
||||
ac_path_to_include=$1
|
||||
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
|
||||
])
|
||||
|
||||
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 ===========================================================================
|
||||
dnl C++ features test
|
||||
dnl ===========================================================================
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl WX_CPP_NEW_HEADERS checks whether the compiler has "new" <iostream> header
|
||||
dnl or only the old <iostream.h> one - it may be generally assumed that if
|
||||
dnl <iostream> exists, the other "new" headers (without .h) exist too.
|
||||
dnl
|
||||
dnl call WX_CPP_NEW_HEADERS(actiof-if-true, action-if-false-or-cross-compiling)
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
||||
AC_DEFUN([WX_CPP_NEW_HEADERS],
|
||||
[
|
||||
if test "$cross_compiling" = "yes"; then
|
||||
ifelse([$2], , :, [$2])
|
||||
else
|
||||
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
|
||||
fi
|
||||
])
|
||||
|
||||
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 ---------------------------------------------------------------------------
|
||||
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 <sys/types.h>
|
||||
#include <sys/param.h>], [
|
||||
#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 <sys/types.h>
|
||||
#include <sys/param.h>], [
|
||||
#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 ---------------------------------------------------------------------------
|
||||
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)
|
||||
AC_DEFUN([WX_ARG_ENABLE],
|
||||
[
|
||||
AC_MSG_CHECKING([for --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 initialization
|
||||
dnl ---------------------------------------------------------------------------
|
||||
@@ -2759,8 +2442,6 @@ dnl defined HAVE_WCTYPE_H
|
||||
AC_CHECK_HEADERS(wctype.h)
|
||||
dnl defines HAVE_FNMATCH_H
|
||||
AC_CHECK_HEADERS(fnmatch.h)
|
||||
dnl defines HAVE_ICONV_H (Unix98 encoding conversion routines)
|
||||
AC_CHECK_HEADERS(iconv.h)
|
||||
dnl defines HAVE_LANGINFO_H (GNU libc locale parameters)
|
||||
AC_CHECK_HEADERS(langinfo.h)
|
||||
|
||||
@@ -3096,23 +2777,9 @@ dnl check for available version of iconv()
|
||||
|
||||
AC_LANG_SAVE
|
||||
AC_LANG_CPLUSPLUS
|
||||
AC_CACHE_CHECK([if iconv() takes char**], wx_cv_iconv_takes_char,
|
||||
[
|
||||
AC_TRY_COMPILE([#include <iconv.h>],
|
||||
[
|
||||
char **inbuf, **outbuf;
|
||||
iconv_t cd;
|
||||
size_t insz, outsz;
|
||||
iconv(cd, inbuf, &insz, outbuf, &outsz);
|
||||
],
|
||||
wx_cv_iconv_takes_char=yes,
|
||||
wx_cv_iconv_takes_char=no)
|
||||
])
|
||||
AM_ICONV
|
||||
LIBS="$LIBICONV $LIBS"
|
||||
AC_LANG_RESTORE
|
||||
if test "$wx_cv_iconv_takes_char" = yes ; then
|
||||
AC_DEFINE(WX_ICONV_TAKES_CHAR)
|
||||
fi
|
||||
|
||||
|
||||
dnl check for POSIX signals if we need them
|
||||
if test "$wxUSE_ON_FATAL_EXCEPTION" = "yes" -a "$wxUSE_UNIX" = "yes"; then
|
||||
|
Reference in New Issue
Block a user