aboutsummaryrefslogtreecommitdiffstats
path: root/meta-webserver/recipes-php/modphp
diff options
context:
space:
mode:
authorJackie Huang <jackie.huang@windriver.com>2013-04-09 15:11:05 +0800
committerPaul Eggleton <paul.eggleton@linux.intel.com>2013-04-15 10:56:19 +0100
commit29fa7f9ea7dd545c1c8e72e703f30cce9076832d (patch)
tree4869f76d55c50f0761bc1797ea4f38bab5fa3349 /meta-webserver/recipes-php/modphp
parent12b72e1eaf552843bbd12a22075efa5f44c01d34 (diff)
downloadmeta-openembedded-contrib-29fa7f9ea7dd545c1c8e72e703f30cce9076832d.tar.gz
modphp: enable mysql option in PACKAGECONFIG
* enable mysql option in PACKAGECONFIG * add patch to support autoconf 2.59+ so we can use autotools do_configure to fix a libtool cross-compile issue Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Diffstat (limited to 'meta-webserver/recipes-php/modphp')
-rw-r--r--meta-webserver/recipes-php/modphp/files/php-5.3.14-aconf259.patch209
-rw-r--r--meta-webserver/recipes-php/modphp/modphp5.inc24
2 files changed, 221 insertions, 12 deletions
diff --git a/meta-webserver/recipes-php/modphp/files/php-5.3.14-aconf259.patch b/meta-webserver/recipes-php/modphp/files/php-5.3.14-aconf259.patch
new file mode 100644
index 0000000000..bda0aefdf9
--- /dev/null
+++ b/meta-webserver/recipes-php/modphp/files/php-5.3.14-aconf259.patch
@@ -0,0 +1,209 @@
+Patch from fedora to support autoconf 2.59+
+
+referrence to:
+https://bugs.php.net/bug.php?id=50291
+http://lists.fedoraproject.org/pipermail/scm-commits/2012-June/807312.html
+
+Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
+---
+diff --git a/build/buildcheck.sh b/build/buildcheck.sh
+index de16264..4b05c28 100755
+--- a/build/buildcheck.sh
++++ b/build/buildcheck.sh
+@@ -28,33 +28,23 @@ if test -z "$PHP_AUTOCONF"; then
+ PHP_AUTOCONF='autoconf'
+ fi
+
+-# autoconf 2.13 or newer
++# autoconf 2.59 or newer
+ ac_version=`$PHP_AUTOCONF --version 2>/dev/null|head -n 1|sed -e 's/^[^0-9]*//' -e 's/[a-z]* *$//'`
+ if test -z "$ac_version"; then
+ echo "buildconf: autoconf not found."
+-echo " You need autoconf version 2.13 or newer installed"
++echo " You need autoconf version 2.59 or newer installed"
+ echo " to build PHP from SVN."
+ exit 1
+ fi
+ IFS=.; set $ac_version; IFS=' '
+-if test "$1" = "2" -a "$2" -lt "13" || test "$1" -lt "2"; then
++if test "$1" = "2" -a "$2" -lt "59" || test "$1" -lt "2"; then
+ echo "buildconf: autoconf version $ac_version found."
+-echo " You need autoconf version 2.13 or newer installed"
++echo " You need autoconf version 2.59 or newer installed"
+ echo " to build PHP from SVN."
+ exit 1
+ fi
+
+-if test "$1" = "2" -a "$2" -gt "59"; then
+- echo "buildconf: You need autoconf 2.59 or lower to build this version of PHP."
+- echo " You are currently trying to use $ac_version"
+- echo " Most distros have separate autoconf 2.13 or 2.59 packages."
+- echo " On Debian/Ubuntu both autoconf2.13 and autoconf2.59 packages exist."
+- echo " Install autoconf2.13 and set the PHP_AUTOCONF env var to "
+- echo " autoconf2.13 and try again."
+- exit 1
+-else
+- echo "buildconf: autoconf version $ac_version (ok)"
+-fi
++echo "buildconf: autoconf version $ac_version (ok)"
+
+ if test "$1" = "2" -a "$2" -ge "50"; then
+ ./vcsclean
+diff --git a/configure.in b/configure.in
+index f48ce4f..6851512 100644
+--- a/configure.in
++++ b/configure.in
+@@ -1,28 +1,6 @@
+ ## $Id$ -*- autoconf -*-
+ dnl ## Process this file with autoconf to produce a configure script.
+
+-divert(1)
+-
+-dnl ## Diversion 1 is the autoconf + automake setup phase. We also
+-dnl ## set the PHP version, deal with platform-specific compile
+-dnl ## options and check for the basic compile tools.
+-
+-dnl ## Diversion 2 is the initial checking of OS features, programs,
+-dnl ## libraries and so on.
+-
+-dnl ## In diversion 3 we check for compile-time options to the PHP
+-dnl ## core and how to deal with different system dependencies.
+-dnl ## This includes whether debugging or short tags are enabled
+-dnl ## and the default behaviour of php.ini options.
+-dnl ## This is also where an SAPI interface is selected (choosing between
+-dnl ## Apache module, CGI etc.)
+-
+-dnl ## In diversion 4 we check user-configurable general settings.
+-
+-dnl ## In diversion 5 we check which extensions should be compiled.
+-dnl ## All of these are normally in the extension directories.
+-dnl ## Diversion 5 is the last one. Here we generate files and clean up.
+-
+ dnl include Zend specific macro definitions first
+ dnl -------------------------------------------------------------------------
+ sinclude(Zend/acinclude.m4)
+@@ -30,8 +8,10 @@ sinclude(Zend/acinclude.m4)
+ dnl Basic autoconf + automake initialization, generation of config.nice.
+ dnl -------------------------------------------------------------------------
+
+-AC_PREREQ(2.13)
++AC_PREREQ(2.59)
+ AC_INIT(README.GIT-RULES)
++ifdef([AC_PRESERVE_HELP_ORDER], [AC_PRESERVE_HELP_ORDER], [])
++
+
+ PHP_CONFIG_NICE(config.nice)
+
+@@ -290,14 +270,6 @@ sinclude(TSRM/threads.m4)
+ sinclude(TSRM/tsrm.m4)
+
+
+-divert(2)
+-
+-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
+-dnl ## because the information is needed by the SAPI configuration.
+-dnl ## This is also where an SAPI interface is selected (choosing between
+-dnl ## Apache module, CGI etc.)
+-
+ dnl .
+ dnl -------------------------------------------------------------------------
+
+@@ -329,13 +301,6 @@ if test "$enable_maintainer_zts" = "yes"; then
+ PTHREADS_FLAGS
+ fi
+
+-divert(3)
+-
+-dnl ## In diversion 3 we check for compile-time options to the PHP
+-dnl ## core and how to deal with different system dependencies.
+-dnl ## This includes whether debugging or short tags are enabled
+-dnl ## and the default behaviour of php.ini options.
+-
+ dnl Starting system checks.
+ dnl -------------------------------------------------------------------------
+
+@@ -683,10 +648,6 @@ if test "x$php_crypt_r" = "x1"; then
+ PHP_CRYPT_R_STYLE
+ fi
+
+-divert(4)
+-
+-dnl ## In diversion 4 we check user-configurable general settings.
+-
+ dnl General settings.
+ dnl -------------------------------------------------------------------------
+ PHP_CONFIGURE_PART(General settings)
+@@ -924,11 +885,6 @@ else
+ AC_MSG_RESULT([using system default])
+ fi
+
+-divert(5)
+-
+-dnl ## In diversion 5 we check which extensions should be compiled.
+-dnl ## All of these are normally in the extension directories.
+-
+ dnl Extension configuration.
+ dnl -------------------------------------------------------------------------
+
+diff --git a/ext/standard/config.m4 b/ext/standard/config.m4
+index e28c351..c33ae1e 100644
+--- a/ext/standard/config.m4
++++ b/ext/standard/config.m4
+@@ -1,7 +1,5 @@
+ dnl $Id$ -*- autoconf -*-
+
+-divert(3)dnl
+-
+ dnl
+ dnl Check if flush should be called explicitly after buffered io
+ dnl
+@@ -342,8 +340,6 @@ dnl
+ AC_CHECK_FUNCS(getcwd getwd asinh acosh atanh log1p hypot glob strfmon nice fpclass isinf isnan mempcpy strpncpy)
+ AC_FUNC_FNMATCH
+
+-divert(5)dnl
+-
+ dnl
+ dnl Check if there is a support means of creating a new process
+ dnl and defining which handles it receives
+diff --git a/scripts/php-config.in b/scripts/php-config.in
+index 13c25f2..d6c62cc 100644
+--- a/scripts/php-config.in
++++ b/scripts/php-config.in
+@@ -2,6 +2,7 @@
+
+ SED="@SED@"
+ prefix="@prefix@"
++datarootdir="@datarootdir@"
+ exec_prefix="@exec_prefix@"
+ version="@PHP_VERSION@"
+ vernum="@PHP_VERSION_ID@"
+diff --git a/scripts/phpize.in b/scripts/phpize.in
+index 40ccc77..43cd8d3 100644
+--- a/scripts/phpize.in
++++ b/scripts/phpize.in
+@@ -2,6 +2,7 @@
+
+ # Variable declaration
+ prefix='@prefix@'
++datarootdir='@datarootdir@'
+ exec_prefix="`eval echo @exec_prefix@`"
+ phpdir="`eval echo @libdir@`/build"
+ includedir="`eval echo @includedir@`/php"
+diff --git a/scripts/phpize.m4 b/scripts/phpize.m4
+index e3a30a5..d745ca7 100644
+--- a/scripts/phpize.m4
++++ b/scripts/phpize.m4
+@@ -1,9 +1,8 @@
+ dnl This file becomes configure.in for self-contained extensions.
+
+-divert(1)
+-
+-AC_PREREQ(2.13)
++AC_PREREQ(2.59)
+ AC_INIT(config.m4)
++ifdef([AC_PRESERVE_HELP_ORDER], [AC_PRESERVE_HELP_ORDER], [])
+
+ PHP_CONFIG_NICE(config.nice)
+
diff --git a/meta-webserver/recipes-php/modphp/modphp5.inc b/meta-webserver/recipes-php/modphp/modphp5.inc
index 0d84ba4413..fdf7b18576 100644
--- a/meta-webserver/recipes-php/modphp/modphp5.inc
+++ b/meta-webserver/recipes-php/modphp/modphp5.inc
@@ -2,11 +2,13 @@ SECTION = "console/network"
DESCRIPTION = "A server-side, HTML-embedded scripting language. This package provides the apache php module."
LICENSE = "PHP-3.0"
DEPENDS = "apache2-native apache2 zlib bzip2"
+INC_PR = "r1"
SRC_URI = "http://www.php.net/distributions/php-${PV}.tar.bz2 \
file://configure.patch \
file://pthread-check-threads-m4.patch \
file://70_mod_php5.conf \
+ file://php-5.3.14-aconf259.patch \
"
S = "${WORKDIR}/php-${PV}"
@@ -41,25 +43,21 @@ EXTRA_OECONF = "--with-apxs2=${STAGING_BINDIR_CROSS}/apxs \
--enable-mbstring \
--with-config-file-path=${sysconfdir}/php/apache2-php5"
-PACKAGECONFIG ??= ""
+PACKAGECONFIG ??= "mysql"
PACKAGECONFIG[mysql] = "--with-mysqli=${STAGING_BINDIR_CROSS}/mysql_config,--without-mysqli,mysql5"
PACKAGECONFIG[pgsql] = "--with-pgsql=${STAGING_DIR_TARGET}${exec_prefix},--without-pgsql,mysql5"
acpaths = ""
-#
-# override the autotools do_configure, which runs autoconf,
-# which breaks everything...
-#
-do_configure() {
- gnu-configize --force
- find . -name config.m4 -o -name configure | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_BINDIR_NATIVE}/httpd!'
- export PHP_LIBXML_DIR=${STAGING_DIR_NATIVE}${layout_exec_prefix}
- oe_runconf
+do_configure_prepend () {
+ rm -f build/libtool.m4 ltmain.sh aclocal.m4
+ find . -name config.m4 | xargs -n1 sed -i 's!APXS_HTTPD=.*!APXS_HTTPD=${STAGING_BINDIR_NATIVE}/httpd!'
+}
+do_configure_append() {
# No libtool, we really don't want rpath set...
- sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool
- sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool
+ sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' ${HOST_SYS}-libtool
+ sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' ${HOST_SYS}-libtool
}
do_install () {
@@ -76,6 +74,8 @@ do_install () {
install -d ${D}${bindir}
install -m 755 scripts/phpize ${D}${bindir}
install -m 755 scripts/php-config ${D}${bindir}
+ cat aclocal-copy/libtool.m4 aclocal-copy/lt~obsolete.m4 aclocal-copy/ltoptions.m4 \
+ aclocal-copy/ltsugar.m4 aclocal-copy/ltversion.m4 > build/libtool.m4
oe_runmake install-build install-headers INSTALL_ROOT=${D}
}