[oe] [PATCH 8/9] php: add 5.3.5
Khem Raj
raj.khem at gmail.com
Sun Mar 13 20:30:34 UTC 2011
On 3/13/2011 11:58 AM, Eric Bénard wrote:
> which is the latest version
>
> Signed-off-by: Eric Bénard<eric at eukrea.com>
Acked-by: Khem Raj <raj.khem at gmail.com>
> ---
> recipes/php/php-5.3.5/acinclude-xml2-config.patch | 18 ++++
> recipes/php/php-5.3.5/iconv.patch | 27 +++++
> recipes/php/php-5.3.5/imap-fix-autofoo.patch | 41 ++++++++
> recipes/php/php-5.3.5/pear-makefile.patch | 13 +++
> recipes/php/php-5.3.5/phar-makefile.patch | 26 +++++
> recipes/php/php-5.3.5/php-m4-divert.patch | 83 ++++++++++++++++
> recipes/php/php-5.3.5/php_exec_native.patch | 11 ++
> recipes/php/php-native_5.3.5.bb | 11 ++
> recipes/php/php_5.3.5.bb | 108 +++++++++++++++++++++
> 9 files changed, 338 insertions(+), 0 deletions(-)
> create mode 100644 recipes/php/php-5.3.5/acinclude-xml2-config.patch
> create mode 100644 recipes/php/php-5.3.5/iconv.patch
> create mode 100644 recipes/php/php-5.3.5/imap-fix-autofoo.patch
> create mode 100644 recipes/php/php-5.3.5/pear-makefile.patch
> create mode 100644 recipes/php/php-5.3.5/phar-makefile.patch
> create mode 100644 recipes/php/php-5.3.5/php-m4-divert.patch
> create mode 100644 recipes/php/php-5.3.5/php_exec_native.patch
> create mode 100644 recipes/php/php-native_5.3.5.bb
> create mode 100644 recipes/php/php_5.3.5.bb
>
> diff --git a/recipes/php/php-5.3.5/acinclude-xml2-config.patch b/recipes/php/php-5.3.5/acinclude-xml2-config.patch
> new file mode 100644
> index 0000000..bf519d2
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/acinclude-xml2-config.patch
> @@ -0,0 +1,18 @@
> +--- /orig-acinclude.m4 2007-02-20 15:03:25.000000000 +0200
> ++++ /acinclude.m4 2007-02-20 15:03:24.000000000 +0200
> +@@ -2359,12 +2359,9 @@
> + AC_DEFUN([PHP_SETUP_LIBXML], [
> + AC_CACHE_CHECK([for xml2-config path], ac_cv_php_xml2_config_path,
> + [
> +- for i in $PHP_LIBXML_DIR /usr/local /usr; do
> +- if test -x "$i/bin/xml2-config"; then
> +- ac_cv_php_xml2_config_path="$i/bin/xml2-config"
> +- break
> +- fi
> +- done
> ++
> ++ ac_cv_php_xml2_config_path="$PHP_LIBXML_DIR/xml2-config"
> ++
> + ])
> +
> + if test -x "$ac_cv_php_xml2_config_path"; then
> diff --git a/recipes/php/php-5.3.5/iconv.patch b/recipes/php/php-5.3.5/iconv.patch
> new file mode 100644
> index 0000000..66b39cc
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/iconv.patch
> @@ -0,0 +1,27 @@
> +Index: php-5.2.13/acinclude.m4
> +===================================================================
> +--- php-5.2.13.orig/acinclude.m4
> ++++ php-5.2.13/acinclude.m4
> +@@ -2430,7 +2430,8 @@ 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 must check against no, not against yes as PHP_ICONV can also include a path, which implies yes
> ++ if test "$PHP_ICONV" != "no"; then
> + AC_CHECK_FUNC(iconv, [
> + found_iconv=yes
> + ],[
> +Index: php-5.2.13/ext/iconv/config.m4
> +===================================================================
> +--- php-5.2.13.orig/ext/iconv/config.m4
> ++++ php-5.2.13/ext/iconv/config.m4
> +@@ -15,7 +15,7 @@ if test "$PHP_ICONV" != "no"; then
> +
> + if test "$iconv_avail" != "no"; then
> + if test -z "$ICONV_DIR"; then
> +- for i in /usr/local /usr; do
> ++ for i in $PHP_ICONV /usr/local /usr; do
> + if test -f "$i/include/iconv.h" || test -f "$i/include/giconv.h"; then
> + PHP_ICONV_PREFIX="$i"
> + break
> diff --git a/recipes/php/php-5.3.5/imap-fix-autofoo.patch b/recipes/php/php-5.3.5/imap-fix-autofoo.patch
> new file mode 100644
> index 0000000..3695b7b
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/imap-fix-autofoo.patch
> @@ -0,0 +1,41 @@
> +Index: php-5.2.11/ext/imap/config.m4
> +===================================================================
> +--- php-5.2.11.orig/ext/imap/config.m4 2009-12-10 12:27:52.800974533 -0700
> ++++ php-5.2.11/ext/imap/config.m4 2009-12-10 12:28:33.720976583 -0700
> +@@ -103,7 +103,7 @@
> + PHP_NEW_EXTENSION(imap, php_imap.c, $ext_shared)
> + AC_DEFINE(HAVE_IMAP,1,[ ])
> +
> +- for i in $PHP_IMAP /usr/local /usr; do
> ++ for i in $PHP_IMAP $PHP_IMAP/usr /usr/local /usr; do
> + IMAP_INC_CHK()
> + el[]IMAP_INC_CHK(/include/c-client)
> + el[]IMAP_INC_CHK(/include/imap)
> +@@ -192,13 +192,7 @@
> + AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.)
> + fi
> +
> +- if test -r "$IMAP_DIR/c-client/c-client.a"; then
> +- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a">/dev/null 2>&1
> +- elif test -r "$IMAP_DIR/$PHP_LIBDIR/c-client.a"; then
> +- ln -s "$IMAP_DIR/$PHP_LIBDIR/c-client.a" "$IMAP_DIR/$PHP_LIBDIR/libc-client.a">/dev/null 2>&1
> +- fi
> +-
> +- for lib in c-client4 c-client imap; do
> ++ for lib in /usr/lib c-client4 c-client imap; do
> + IMAP_LIB=$lib
> + IMAP_LIB_CHK($PHP_LIBDIR)
> + IMAP_LIB_CHK(c-client)
> +Index: php-5.2.11/acinclude.m4
> +===================================================================
> +--- php-5.2.11.orig/acinclude.m4 2009-12-10 12:37:13.134722881 -0700
> ++++ php-5.2.11/acinclude.m4 2009-12-10 12:37:39.342007053 -0700
> +@@ -2338,7 +2338,7 @@
> + PHP_OPENSSL_DIR="/usr/local/ssl /usr/local /usr /usr/local/openssl"
> + fi
> +
> +- for i in $PHP_OPENSSL_DIR; do
> ++ for i in $PHP_OPENSSL_DIR $PHP_OPENSSL_DIR/usr; do
> + if test -r $i/include/openssl/evp.h; then
> + OPENSSL_INCDIR=$i/include
> + fi
> diff --git a/recipes/php/php-5.3.5/pear-makefile.patch b/recipes/php/php-5.3.5/pear-makefile.patch
> new file mode 100644
> index 0000000..1928b98
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/pear-makefile.patch
> @@ -0,0 +1,13 @@
> +diff --git a/pear/Makefile.frag b/pear/Makefile.frag
> +index 1f6f70e..b19a77c 100644
> +--- a/pear/Makefile.frag
> ++++ b/pear/Makefile.frag
> +@@ -11,7 +11,7 @@ PEAR_PREFIX = -dp a${program_prefix}
> + PEAR_SUFFIX = -ds a$(program_suffix)
> +
> + install-pear-installer: $(SAPI_CLI_PATH)
> +- @$(top_builddir)/sapi/cli/php $(PEAR_INSTALL_FLAGS) pear/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
> ++ @$(PHP_NATIVE_DIR)/php $(PEAR_INSTALL_FLAGS) $(builddir)/install-pear-nozlib.phar -d "$(peardir)" -b "$(bindir)" ${PEAR_PREFIX} ${PEAR_SUFFIX}
> +
> + install-pear:
> + @echo "Installing PEAR environment: $(INSTALL_ROOT)$(peardir)/"
> diff --git a/recipes/php/php-5.3.5/phar-makefile.patch b/recipes/php/php-5.3.5/phar-makefile.patch
> new file mode 100644
> index 0000000..6fde251
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/phar-makefile.patch
> @@ -0,0 +1,26 @@
> +diff --git a/ext/phar/Makefile.frag b/ext/phar/Makefile.frag
> +index fc93d1d..9a8cd65 100755
> +--- a/ext/phar/Makefile.frag
> ++++ b/ext/phar/Makefile.frag
> +@@ -6,19 +6,8 @@ pharcmd: $(builddir)/phar.php $(builddir)/phar.phar
> +
> + PHP_PHARCMD_SETTINGS = -d 'open_basedir=' -d 'output_buffering=0' -d 'memory_limit=-1' -d phar.readonly=0 -d 'safe_mode=0'
> + PHP_PHARCMD_EXECUTABLE = ` \
> +- if test -x "$(top_builddir)/$(SAPI_CLI_PATH)"; then \
> +- $(top_srcdir)/build/shtool echo -n -- "$(top_builddir)/$(SAPI_CLI_PATH) -n"; \
> +- if test "x$(PHP_MODULES)" != "x"; then \
> +- $(top_srcdir)/build/shtool echo -n -- " -d extension_dir=$(top_builddir)/modules"; \
> +- for i in bz2 zlib phar; do \
> +- if test -f "$(top_builddir)/modules/$$i.la"; then \
> +- . $(top_builddir)/modules/$$i.la; $(top_srcdir)/build/shtool echo -n -- " -d extension=$$dlname"; \
> +- fi; \
> +- done; \
> +- fi; \
> +- else \
> +- $(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; \
> +- fi;`
> ++ $(top_srcdir)/build/shtool echo -n -- "$(PHP_EXECUTABLE)"; `
> ++
> + PHP_PHARCMD_BANG = `$(top_srcdir)/build/shtool echo -n -- "$(INSTALL_ROOT)$(bindir)/$(program_prefix)php$(program_suffix)$(EXEEXT)";`
> +
> + $(builddir)/phar/phar.inc: $(srcdir)/phar/phar.inc
> diff --git a/recipes/php/php-5.3.5/php-m4-divert.patch b/recipes/php/php-5.3.5/php-m4-divert.patch
> new file mode 100644
> index 0000000..dfc7b64
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/php-m4-divert.patch
> @@ -0,0 +1,83 @@
> +Patch taken from
> +
> +http://cvs.pld-linux.org/cgi-bin/cvsweb/packages/php/php-m4-divert.patch?rev=1.1
> +
> +diff -ur php-5.2.10.org/configure.in php-5.2.10/configure.in
> +--- php-5.2.10.org/configure.in 2009-06-17 14:22:41.000000000 +0200
> ++++ php-5.2.10/configure.in 2009-08-18 12:16:25.317640253 +0200
> +@@ -1,7 +1,7 @@
> + ## $Id: configure.in,v 1.579.2.52.2.139 2009/06/17 12:22:41 iliaa Exp $ -*- autoconf -*-
> + dnl ## Process this file with autoconf to produce a configure script.
> +
> +-divert(1)
> ++divert(1001)
> +
> + dnl ## Diversion 1 is the autoconf + automake setup phase. We also
> + dnl ## set the PHP version, deal with platform-specific compile
> +@@ -263,7 +263,7 @@
> + sinclude(TSRM/tsrm.m4)
> +
> +
> +-divert(2)
> ++divert(1002)
> +
> + dnl ## Diversion 2 is where we set PHP-specific options and come up
> + dnl ## with reasonable default values for them. We check for pthreads here
> +@@ -302,7 +302,7 @@
> + PTHREADS_FLAGS
> + fi
> +
> +-divert(3)
> ++divert(1003)
> +
> + dnl ## In diversion 3 we check for compile-time options to the PHP
> + dnl ## core and how to deal with different system dependencies.
> +@@ -661,7 +661,7 @@
> + PHP_CRYPT_R_STYLE
> + fi
> +
> +-divert(4)
> ++divert(1004)
> +
> + dnl ## In diversion 4 we check user-configurable general settings.
> +
> +@@ -902,7 +902,7 @@
> + AC_MSG_RESULT([using system default])
> + fi
> +
> +-divert(5)
> ++divert(1005)
> +
> + dnl ## In diversion 5 we check which extensions should be compiled.
> + dnl ## All of these are normally in the extension directories.
> +diff -ur php-5.2.10.org/ext/standard/config.m4 php-5.2.10/ext/standard/config.m4
> +--- php-5.2.10.org/ext/standard/config.m4 2007-07-11 13:56:03.000000000 +0200
> ++++ php-5.2.10/ext/standard/config.m4 2009-08-18 12:16:25.317640253 +0200
> +@@ -1,6 +1,6 @@
> + dnl $Id: config.m4,v 1.80.2.3.2.3 2007/07/11 11:56:03 jani Exp $ -*- autoconf -*-
> +
> +-divert(3)dnl
> ++divert(1003)dnl
> +
> + dnl
> + dnl Check if flush should be called explicitly after buffered io
> +@@ -205,7 +205,7 @@
> + AC_CHECK_FUNCS(getcwd getwd asinh acosh atanh log1p hypot glob strfmon nice fpclass isinf isnan)
> + AC_FUNC_FNMATCH
> +
> +-divert(5)dnl
> ++divert(1005)dnl
> +
> + dnl
> + dnl Check for regex library type
> +diff -ur php-5.2.10.org/scripts/phpize.m4 php-5.2.10/scripts/phpize.m4
> +--- php-5.2.10.org/scripts/phpize.m4 2009-06-02 21:54:22.000000000 +0200
> ++++ php-5.2.10/scripts/phpize.m4 2009-08-18 12:16:25.317640253 +0200
> +@@ -1,6 +1,6 @@
> + dnl This file becomes configure.in for self-contained extensions.
> +
> +-divert(1)
> ++divert(1001)
> +
> + AC_PREREQ(2.13)
> + AC_INIT(config.m4)
> diff --git a/recipes/php/php-5.3.5/php_exec_native.patch b/recipes/php/php-5.3.5/php_exec_native.patch
> new file mode 100644
> index 0000000..a563c9a
> --- /dev/null
> +++ b/recipes/php/php-5.3.5/php_exec_native.patch
> @@ -0,0 +1,11 @@
> +--- php/configure.in.orig 2011-03-12 02:13:19.000000000 +0100
> ++++ php/configure.in 2011-03-12 02:14:05.000000000 +0100
> +@@ -1216,7 +1216,7 @@
> + PHP_INSTALL_CLI_TARGET="install-cli"
> + PHP_ADD_SOURCES(sapi/cli, php_cli.c php_cli_readline.c,, cli)
> + PHP_INSTALLED_SAPIS="cli $PHP_SAPI"
> +- PHP_EXECUTABLE="\$(top_builddir)/\$(SAPI_CLI_PATH)"
> ++ PHP_EXECUTABLE="${PHP_NATIVE_DIR}/php"
> + else
> + PHP_INSTALLED_SAPIS="$PHP_SAPI"
> + fi
> diff --git a/recipes/php/php-native_5.3.5.bb b/recipes/php/php-native_5.3.5.bb
> new file mode 100644
> index 0000000..3d4f2be
> --- /dev/null
> +++ b/recipes/php/php-native_5.3.5.bb
> @@ -0,0 +1,11 @@
> +require php-native.inc
> +
> +PR = "${INC_PR}.0"
> +
> +SRC_URI = "http://downloads.php.net/johannes/php-${PV}.tar.gz;name=src \
> + file://acinclude-xml2-config.patch \
> + file://php-m4-divert.patch \
> + "
> +
> +SRC_URI[src.md5sum] = "fb727a3ac72bf0ce37e1a20468a7bb81"
> +SRC_URI[src.sha256sum] = "95474df979efbf2b1a298998fe9954200f59048681817a97eb18415346fb6ca4"
> diff --git a/recipes/php/php_5.3.5.bb b/recipes/php/php_5.3.5.bb
> new file mode 100644
> index 0000000..23be66c
> --- /dev/null
> +++ b/recipes/php/php_5.3.5.bb
> @@ -0,0 +1,108 @@
> +require php.inc
> +
> +DEPENDS = "zlib libxml2 virtual/libiconv php-native lemon-native mysql5 \
> + libc-client openssl"
> +
> +PR = "${INC_PR}.0"
> +
> +SRC_URI = "http://downloads.php.net/johannes/php-${PV}.tar.gz;name=src \
> + file://acinclude-xml2-config.patch \
> + file://php-m4-divert.patch \
> + file://iconv.patch \
> + file://imap-fix-autofoo.patch \
> + file://pear-makefile.patch \
> + file://phar-makefile.patch \
> + file://php_exec_native.patch \
> + "
> +
> +SRC_URI[src.md5sum] = "fb727a3ac72bf0ce37e1a20468a7bb81"
> +SRC_URI[src.sha256sum] = "95474df979efbf2b1a298998fe9954200f59048681817a97eb18415346fb6ca4"
> +
> +export THREADS="pthread"
> +export LIBS=" -lpthread "
> +
> +EXTRA_OECONF = " --enable-mbstring \
> + --enable-discard-path \
> + --enable-sockets \
> + --enable-shared \
> + --enable-pcntl \
> + --enable-wddx \
> + --disable-embedded-mysqli \
> + --disable-rpath \
> + --enable-magic-quotes \
> + --enable-fastcgi \
> + --with-imap=${STAGING_DIR_HOST} \
> + --with-imap-ssl=${STAGING_DIR_HOST} \
> + --with-zlib --with-zlib-dir=${STAGING_LIBDIR}/.. \
> + --with-iconv=${STAGING_LIBDIR}/.. \
> + --with-libxml-dir=${STAGING_BINDIR_CROSS} \
> + --with-mysql="${STAGING_DIR_TARGET}${layout_exec_prefix}" \
> + --with-mysqli="${STAGING_BINDIR_CROSS}/mysql_config" \
> + --with-pdo-mysql="${STAGING_BINDIR_CROSS}/mysql_config" \
> + --without-pdo-sqlite \
> + "
> +
> +export LD_LIBRARY_PATH = "${STAGING_LIBDIR}"
> +export PHP_NATIVE_DIR = "${STAGING_BINDIR_NATIVE}"
> +export PHP_PEAR_PHP_BIN = "${bindir}/php"
> +
> +#LDFLAGS += "-lstdc++"
> +
> +do_configure_append() {
> + find ${S} -type f -readable -writable | xargs sed -i 's:I/usr/include:I${STAGING_INCDIR}:g'
> + # use same fix as libiconv
> + sed -i -e s/^hardcode_libdir_flag_spec/#hardcode_libdir_flag_spec/ \
> + -e s/^runpath_var/#runpath_var/ ${S}/*-libtool
> +}
> +
> +# fixme
> +do_install_append() {
> + mv ${D}/${STAGING_DIR_NATIVE}/${sysconfdir} ${D}/${sysconfdir}
> + rm -rf ${D}/${STAGING_DIR_NATIVE}
> + rm -rf ${D}/.registry
> + rm -rf ${D}/.channels
> + rm -rf ${D}/.[a-z]*
> + sed -i 's:${STAGING_DIR_NATIVE}::g' ${D}/${sysconfdir}/pear.conf
> +}
> +
> +PACKAGES = "${PN}-dbg \
> + ${PN}-cli \
> + ${PN}-cgi \
> + ${PN}-pear \
> + ${PN}-dev \
> + ${PN}-doc \
> + ${PN} \
> +"
> +
> +
> +FILES_${PN}-dbg =+ "${bindir}/.debug"
> +
> +FILES_${PN}-doc += "${libdir}/php/doc"
> +
> +FILES_${PN}-cli = "${bindir}/php"
> +FILES_${PN}-cgi = "${bindir}/php-cgi"
> +
> +FILES_${PN}-pear = "${bindir}/pear* ${bindir}/pecl \
> + ${libdir}/php/PEAR \
> + ${libdir}/php/PEAR.php \
> + ${libdir}/php/System.php ${libdir}php/peclcmd.php ${libdir}/php/pearcmd.php \
> + ${libdir}/php/.channels ${libdir}/php/.channels/.alias \
> + ${libdir}/php/.channels\__uri.reg \
> + ${libdir}/php/.channels\pear.php.net.reg ${libdir}/php/.channels/pecl.php.net.reg \
> + ${libdir}/php/.registry \
> + ${libdir}/php/Archive/Tar.php \
> + ${libdir}/php/Console/Getopt.php ${libdir}/php/OS/Guess.php \
> + ${sysconfdir}/pear.conf"
> +
> +
> +FILES_${PN}-dev = "${includedir}/php ${libdir}/build \
> + ${bindir}/phpize ${bindir}/php-config \
> + ${libdir}/php/.depdb ${libdir}/php/.depdblock ${libdir}/php/.filemap ${libdir}/php/.lock \
> + ${libdir}/php/test "
> +
> +FILES_${PN} = "${libdir}/php"
> +FILES_${PN} += "${bindir}"
> +
> +RDEPENDS_${PN}-pear = ${PN}
> +RDEPENDS_${PN}-cli = ${PN}
> +RDEPENDS_${PN}-dev = ${PN}
More information about the Openembedded-devel
mailing list