cvs: php4 /ext/iconv config.m4 php_iconv.h
| From: | Dan Kalowsky | Date: | Mon, 04 Mar 2002 23:28:17 +0000 |
| Subject: | cvs: php4 /ext/iconv config.m4 php_iconv.h | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-9669@lists.php.net to get a copy of this message | ||
kalowsky Mon Mar 4 18:28:17 2002 EDT
Modified files:
/php4/ext/iconv config.m4 php_iconv.h
Log:
Fix for Bug 14423. Enables FreeBSD to use iconv functionality.
Index: php4/ext/iconv/config.m4
diff -u php4/ext/iconv/config.m4:1.7 php4/ext/iconv/config.m4:1.8
--- php4/ext/iconv/config.m4:1.7 Fri Nov 30 13:59:38 2001
+++ php4/ext/iconv/config.m4 Mon Mar 4 18:28:17 2002
@@ -1,5 +1,5 @@
dnl
-dnl $Id: config.m4,v 1.7 2001/11/30 18:59:38 sniper Exp $
+dnl $Id: config.m4,v 1.8 2002/03/04 23:28:17 kalowsky Exp $
dnl
PHP_ARG_WITH(iconv, for iconv support,
@@ -7,15 +7,27 @@
if test "$PHP_ICONV" != "no"; then
+dnl This is a fix for why FreeBSD does not work with ICONV
+dnl It seems libtool checks for libiconv_open which only exists in
+dnl the giconv series of files under FreeBSD
+
+ ac_os_uname=
uname -s 2>/dev/null
+
+ if test "$ac_os_uname" = "FreeBSD"; then
+ lib_name=giconv
+ else
+ lib_name=iconv
+ fi
+
for i in /usr /usr/local $PHP_ICONV; do
- test -r $i/include/iconv.h && ICONV_DIR=$i
+ test -r $i/include/${lib_name}.h && ICONV_DIR=$i
done
if test -z "$ICONV_DIR"; then
AC_MSG_ERROR(Please reinstall the iconv library.)
fi
- if test -f $ICONV_DIR/lib/libconv.a -o -f $ICONV_DIR/lib/libiconv.$SHLIB_SUFFIX_NAME ; then
+ if test -f $ICONV_DIR/lib/libconv.a -o -f $ICONV_DIR/lib/lib${lib_name}.$SHLIB_SUFFIX_NAME ; then
PHP_ADD_LIBRARY_WITH_PATH(iconv, $ICONV_DIR/lib, ICONV_SHARED_LIBADD)
AC_CHECK_LIB(iconv, libiconv_open, [
AC_DEFINE(HAVE_ICONV, 1, [ ])
Index: php4/ext/iconv/php_iconv.h
diff -u php4/ext/iconv/php_iconv.h:1.9 php4/ext/iconv/php_iconv.h:1.10
--- php4/ext/iconv/php_iconv.h:1.9 Thu Dec 13 09:31:16 2001
+++ php4/ext/iconv/php_iconv.h Mon Mar 4 18:28:17 2002
@@ -26,8 +26,9 @@
#define PHP_ICONV_API
#endif
+#if HAVE_ICONV
extern zend_module_entry iconv_module_entry;
-#define phpext_iconv_ptr &iconv_module_entry
+#define iconv_module_ptr &iconv_module_entry
PHP_MINIT_FUNCTION(miconv);
PHP_MSHUTDOWN_FUNCTION(miconv);
@@ -53,6 +54,14 @@
#define ICONV_INPUT_ENCODING "ISO-8859-1"
#define ICONV_OUTPUT_ENCODING "ISO-8859-1"
#define ICONV_INTERNAL_ENCODING "ISO-8859-1"
+
+#else
+
+#define iconv_module_ptr NULL
+
+#endif /* HAVE_ICONV */
+
+#define phpext_iconv_ptr iconv_module_ptr
#endif /* PHP_ICONV_H */