php: fix iconv related build failure

Fix a rare edge build failure when iconv is enabled, easily reproduced
in a debian chroot with an aarch64 external toolchain with iconv +
xmlrpc support enabled with a php cgi + cli target.
Should solve bug #6500.

Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
Gustavo Zacarias 2013-11-26 09:51:04 -03:00 committed by Peter Korsgaard
parent d893bde74e
commit f2a2c4cce6
2 changed files with 32 additions and 21 deletions

View File

@ -0,0 +1,32 @@
Just assume ICONV_DIR is fine since we pass the correct parameters
to configure.
Otherwise configure will try to guess on absolute directories and
sometimes messes up on some weird edge conditions.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
diff -Nura php-5.3.27.orig/configure php-5.3.27/configure
--- php-5.3.27.orig/configure 2013-11-26 09:33:30.874253800 -0300
+++ php-5.3.27/configure 2013-11-26 09:41:41.495363637 -0300
@@ -48212,20 +48212,7 @@
if test "$iconv_avail" != "no"; then
- if test -z "$ICONV_DIR"; then
- for i in /usr/local /usr; do
- if test -f "$i/include/iconv.h" || test -f "$i/include/giconv.h"; then
- PHP_ICONV_PREFIX="$i"
- break
- fi
- done
- if test -z "$PHP_ICONV_PREFIX"; then
- PHP_ICONV_PREFIX="/usr"
- fi
- else
- PHP_ICONV_PREFIX="$ICONV_DIR"
- fi
-
+ PHP_ICONV_PREFIX="$ICONV_DIR"
CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
LDFLAGS="-L$PHP_ICONV_PREFIX/$PHP_LIBDIR $LDFLAGS"

View File

@ -1,21 +0,0 @@
Don't push LDFLAGS/CFLAGS for iconv.
Just assume they're covered somewhere else.
Otherwise we get -L/usr/lib and -I/usr/include search paths with uClibc
internal iconv support, which breaks things.
Signed-off-by: Gustavo Zacarias <gustavo@zacarias.com.ar>
diff -Nura php-5.3.13/configure php-5.3.13-iconv/configure
--- php-5.3.13/configure 2012-05-08 06:41:23.000000000 -0300
+++ php-5.3.13-iconv/configure 2012-05-18 22:18:21.313975849 -0300
@@ -47885,8 +47885,8 @@
PHP_ICONV_PREFIX="$ICONV_DIR"
fi
- CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
- LDFLAGS="-L$PHP_ICONV_PREFIX/$PHP_LIBDIR $LDFLAGS"
+ #CFLAGS="-I$PHP_ICONV_PREFIX/include $CFLAGS"
+ #LDFLAGS="-L$PHP_ICONV_PREFIX/$PHP_LIBDIR $LDFLAGS"
if test -r "$PHP_ICONV_PREFIX/include/giconv.h"; then
PHP_ICONV_H_PATH="$PHP_ICONV_PREFIX/include/giconv.h"