--- embedaddon/php/acinclude.m4 2013/07/22 01:44:13 1.1.1.2.2.1 +++ embedaddon/php/acinclude.m4 2013/10/14 08:17:37 1.1.1.4.2.1 @@ -1,5 +1,5 @@ dnl -dnl $Id: acinclude.m4,v 1.1.1.2.2.1 2013/07/22 01:44:13 misho Exp $ +dnl $Id: acinclude.m4,v 1.1.1.4.2.1 2013/10/14 08:17:37 misho Exp $ dnl dnl This file contains local autoconf functions. dnl @@ -66,10 +66,10 @@ AC_DEFUN([PHP_EXPAND_PATH],[ $2=$1 else changequote({,}) - ep_dir="`echo $1|$SED 's%/*[^/][^/]*/*$%%'`" + ep_dir=`echo $1|$SED 's%/*[^/][^/]*/*$%%'` changequote([,]) - ep_realdir="`(cd \"$ep_dir\" && pwd)`" - $2="$ep_realdir/`basename \"$1\"`" + ep_realdir=`(cd "$ep_dir" && pwd)` + $2="$ep_realdir"/`basename "$1"` fi ]) @@ -984,15 +984,9 @@ dnl ---------------------------------------------- Sha if test "$3" != "shared" && test "$3" != "yes" && test "$4" = "cli"; then dnl ---------------------------------------------- CLI static module [PHP_]translit($1,a-z_-,A-Z__)[_SHARED]=no - case "$PHP_SAPI" in - cgi|embed[)] - PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,) - EXT_STATIC="$EXT_STATIC $1" - ;; - *[)] PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cli) - ;; - esac + PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,cgi) + PHP_ADD_SOURCES(PHP_EXT_DIR($1),$2,$ac_extra,fpm) EXT_CLI_STATIC="$EXT_CLI_STATIC $1" fi PHP_ADD_BUILD_DIR($ext_builddir) @@ -1042,12 +1036,6 @@ You either need to build $1 shared or build $2 statica build to be successful. ]) fi - if test "x$is_it_enabled" = "xno" && test "x$3" != "xtrue"; then - AC_MSG_ERROR([ -You've configured extension $1, which depends on extension $2, -but you've either not enabled $2, or have disabled it. -]) - fi dnl Some systems require that we link $2 to $1 when building ]) @@ -1832,7 +1820,7 @@ AC_TRY_COMPILE([ ]) dnl ------------------------------------------------------------------------- -dnl Library/function existance and build sanity checks +dnl Library/function existence and build sanity checks dnl ------------------------------------------------------------------------- dnl @@ -2320,9 +2308,9 @@ AC_DEFUN([PHP_SETUP_OPENSSL],[ test -z "$PHP_IMAP_SSL" && PHP_IMAP_SSL=no dnl Fallbacks for different configure options - if test "$PHP_OPENSSL" != "no"; then + if test -n "$PHP_OPENSSL" && test "$PHP_OPENSSL" != "no"; then PHP_OPENSSL_DIR=$PHP_OPENSSL - elif test "$PHP_IMAP_SSL" != "no"; then + elif test -n "$PHP_IMAP_SSL" && test "$PHP_IMAP_SSL" != "no"; then PHP_OPENSSL_DIR=$PHP_IMAP_SSL fi @@ -2342,8 +2330,10 @@ AC_DEFUN([PHP_SETUP_OPENSSL],[ AC_MSG_ERROR([OpenSSL version 0.9.6 or greater required.]) fi - if test -n "$OPENSSL_LIBS" && test -n "$OPENSSL_INCS"; then + if test -n "$OPENSSL_LIBS"; then PHP_EVAL_LIBLINE($OPENSSL_LIBS, $1) + fi + if test -n "$OPENSSL_INCS"; then PHP_EVAL_INCLINE($OPENSSL_INCS) fi fi @@ -2449,7 +2439,12 @@ AC_DEFUN([PHP_SETUP_ICONV], [ dnl dnl Check libc first if no path is provided in --with-iconv dnl + if test "$PHP_ICONV" = "yes"; then + dnl Reset LIBS temporarily as it may have already been included + dnl -liconv in. + LIBS_save="$LIBS" + LIBS= AC_CHECK_FUNC(iconv, [ found_iconv=yes ],[ @@ -2459,6 +2454,7 @@ AC_DEFUN([PHP_SETUP_ICONV], [ found_iconv=yes ]) ]) + LIBS="$LIBS_save" fi dnl @@ -2917,15 +2913,18 @@ dnl providerdesc dnl header-file ac_hdrobj=$2 -dnl Add providerdesc.o into global objects when needed +dnl Add providerdesc.o or .lo into global objects when needed case $host_alias in *freebsd*) PHP_GLOBAL_OBJS="[$]PHP_GLOBAL_OBJS [$]ac_bdir[$]ac_provsrc.o" PHP_LDFLAGS="$PHP_LDFLAGS -lelf" ;; *solaris*) - PHP_GLOBAL_OBJS="[$]PHP_GLOBAL_OBJS [$]ac_bdir[$]ac_provsrc.o" + PHP_GLOBAL_OBJS="[$]PHP_GLOBAL_OBJS [$]ac_bdir[$]ac_provsrc.lo" ;; + *linux*) + PHP_GLOBAL_OBJS="[$]PHP_GLOBAL_OBJS [$]ac_bdir[$]ac_provsrc.lo" + ;; esac dnl DTrace objects @@ -2951,15 +2950,53 @@ dnl DTrace objects esac dnl Generate Makefile.objects entries +dnl The empty $ac_provsrc command stops an implicit circular dependency +dnl in GNU Make which causes the .d file to be overwritten (Bug 61268) cat>>Makefile.objects< \$[]@ \$(PHP_DTRACE_OBJS): $ac_bdir[$]ac_hdrobj +EOF + + case $host_alias in + *solaris*|*linux*) + dtrace_prov_name="`echo $ac_provsrc | $SED -e 's#\(.*\)\/##'`.o" + dtrace_lib_dir="`echo $ac_bdir[$]ac_provsrc | $SED -e 's#\(.*\)/[^/]*#\1#'`/.libs" + dtrace_d_obj="`echo $ac_bdir[$]ac_provsrc | $SED -e 's#\(.*\)/\([^/]*\)#\1/.libs/\2#'`.o" + dtrace_nolib_objs='$(PHP_DTRACE_OBJS:.lo=.o)' + for ac_lo in $PHP_DTRACE_OBJS; do + dtrace_lib_objs="[$]dtrace_lib_objs `echo $ac_lo | $SED -e 's,\.lo$,.o,' -e 's#\(.*\)\/#\1\/.libs\/#'`" + done; +dnl Always attempt to create both PIC and non-PIC DTrace objects (Bug 63692) + cat>>Makefile.objects< \$[]@ + @test -d "$dtrace_lib_dir" || mkdir $dtrace_lib_dir + if CFLAGS="\$(CFLAGS_CLEAN)" dtrace -G -o $dtrace_d_obj -s $abs_srcdir/$ac_provsrc $dtrace_lib_objs 2> /dev/null && test -f "$dtrace_d_obj"; then [\\] + echo "pic_object=['].libs/$dtrace_prov_name[']" >> \$[]@ [;\\] + else [\\] + echo "pic_object='none'" >> \$[]@ [;\\] + fi + if CFLAGS="\$(CFLAGS_CLEAN)" dtrace -G -o $ac_bdir[$]ac_provsrc.o -s $abs_srcdir/$ac_provsrc $dtrace_nolib_objs 2> /dev/null && test -f "$ac_bdir[$]ac_provsrc.o"; then [\\] + echo "non_pic_object=[']$dtrace_prov_name[']" >> \$[]@ [;\\] + else [\\] + echo "non_pic_object='none'" >> \$[]@ [;\\] + fi + +EOF + + ;; + *) +cat>>Makefile.objects<