Patchwork [8/9] php: add 5.3.5

login
register
mail settings
Submitter Eric BENARD
Date March 13, 2011, 6:58 p.m.
Message ID <1300042739-17381-8-git-send-email-eric@eukrea.com>
Download mbox | patch
Permalink /patch/1371/
State Accepted
Headers show

Comments

Eric BENARD - March 13, 2011, 6:58 p.m.
which is the latest version

Signed-off-by: Eric Bénard <eric@eukrea.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
Khem Raj - March 13, 2011, 8:30 p.m.
On 3/13/2011 11:58 AM, Eric Bénard wrote:
> which is the latest version
>
> Signed-off-by: Eric Bénard<eric@eukrea.com>

Acked-by: Khem Raj <raj.khem@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}

Patch

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}