2
dnl $Id: config.m4,v 1.27.2.2 2005/01/10 21:37:59 tony2001 Exp $
5
PHP_ARG_WITH(iconv, for iconv support,
6
[ --without-iconv[=DIR] Exclude iconv support], yes)
8
if test "$PHP_ICONV" != "no"; then
10
PHP_SETUP_ICONV(ICONV_SHARED_LIBADD, [
16
if test "$iconv_avail" != "no"; then
17
iconv_cflags_save="$CFLAGS"
18
iconv_ldflags_save="$LDFLAGS"
20
if test -z "$ICONV_DIR"; then
21
PHP_ICONV_PREFIX="/usr"
23
PHP_ICONV_PREFIX="$ICONV_DIR"
26
CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
27
LDFLAGS="-L$PHP_ICONV_PREFIX/lib $LDFLAGS"
29
if test -r $PHP_ICONV_PREFIX/include/giconv.h; then
30
PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h"
32
PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/iconv.h"
35
if test -z "$iconv_lib_name"; then
36
AC_MSG_CHECKING([if iconv is glibc's])
37
AC_TRY_LINK([#include <gnu/libc-version.h>],[gnu_get_libc_version();],
40
iconv_impl_name="glibc"
45
case "$iconv_lib_name" in
47
AC_MSG_CHECKING([if iconv is Konstantin Chuguev's])
48
AC_TRY_LINK([#include <iconv.h>],[iconv_ccs_init(NULL, NULL);],
54
iconv_impl_name="gnu_libiconv"
59
iconv_impl_name="gnu_libiconv"
68
echo > ext/iconv/php_have_bsd_iconv.h
69
echo > ext/iconv/php_have_glibc_iconv.h
71
case "$iconv_impl_name" in
73
PHP_DEFINE([PHP_ICONV_IMPL],[\"libiconv\"],[ext/iconv])
74
AC_DEFINE([PHP_ICONV_IMPL],["libiconv"],[Which iconv implementation to use])
78
PHP_DEFINE([HAVE_BSD_ICONV],1,[ext/iconv])
79
AC_DEFINE([HAVE_BSD_ICONV],1,[Konstantin Chuguev's iconv implementation])
80
PHP_DEFINE([PHP_ICONV_IMPL],[\"BSD iconv\"],[ext/iconv])
81
AC_DEFINE([PHP_ICONV_IMPL],["BSD iconv"],[Which iconv implementation to use])
85
PHP_DEFINE([HAVE_GLIBC_ICONV],1,[ext/iconv])
86
AC_DEFINE([HAVE_GLIBC_ICONV],1,[glibc's iconv implementation])
87
PHP_DEFINE([PHP_ICONV_IMPL],[\"glibc\"],[ext/iconv])
88
AC_DEFINE([PHP_ICONV_IMPL],["glibc"],[Which iconv implementation to use])
92
AC_MSG_CHECKING([if iconv supports errno])
94
#include <$PHP_ICONV_H_PATH>
99
cd = iconv_open( "*blahblah*", "*blahblah*" );
100
if (cd == (iconv_t)(-1)) {
101
if (errno == EINVAL) {
112
PHP_DEFINE([ICONV_SUPPORTS_ERRNO],1,[ext/iconv])
113
AC_DEFINE([ICONV_SUPPORTS_ERRNO],1,[Whether iconv supports error no or not])
116
PHP_DEFINE([ICONV_SUPPORTS_ERRNO],0,[ext/iconv])
117
AC_DEFINE([ICONV_SUPPORTS_ERRNO],0,[Whether iconv supports error no or not])
120
AC_MSG_CHECKING([if your cpp allows macro usage in include lines])
122
#define FOO <$PHP_ICONV_H_PATH>
126
PHP_DEFINE([PHP_ICONV_H_PATH], [<$PHP_ICONV_H_PATH>],[ext/iconv])
127
AC_DEFINE_UNQUOTED([PHP_ICONV_H_PATH], [<$PHP_ICONV_H_PATH>], [Path to iconv.h])
132
CFLAGS="$iconv_cflags_save"
133
LDFLAGS="$iconv_ldflags_save"
135
PHP_NEW_EXTENSION(iconv, iconv.c, $ext_shared,, [-I\"$PHP_ICONV_PREFIX/include\"])
136
PHP_SUBST(ICONV_SHARED_LIBADD)
138
AC_MSG_ERROR(Please reinstall the iconv library.)