modphp: add from OE-Classic, update to 5.3.14 and fix

* Use working SRC_URI
* Fix to use correct headers and apxs script for cross-compiling
* Enable threading
* Install headers and scripts for building extension modules
* Use proper variables instead of /etc, /usr/lib etc.
* Fix rpath QA issues
* Add LIC_FILES_CHKSUM
* Put apache config file into SRC_URI instead of referring to it using
  FILESDIR

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
This commit is contained in:
Paul Eggleton 2012-07-17 11:31:54 +01:00
parent 25ba859ab6
commit 418650c55d
5 changed files with 182 additions and 0 deletions

View File

@ -0,0 +1,12 @@
# vim: ft=apache sw=4 ts=4
<IfDefine PHP5>
# Load the module first
<IfModule !sapi_apache2.c>
LoadModule php5_module lib/apache2/modules/libphp5.so
</IfModule>
# Set it to handle the files
AddHandler php5-script .php .phtml .php3 .php4 .php5
AddType application/x-httpd-php-source .phps
DirectoryIndex index.html index.html.var index.php index.phtml
</IfDefine>

View File

@ -0,0 +1,11 @@
--- php-5.1.6/configure.old 2006-09-12 07:54:14.000000000 -0700
+++ php-5.1.6/configure 2006-09-12 07:54:37.000000000 -0700
@@ -14715,8 +14715,6 @@
- unset ac_cv_func_dlopen
- unset ac_cv_func___dlopen
unset found
echo $ac_n "checking for dlopen""... $ac_c" 1>&6

View File

@ -0,0 +1,64 @@
Hack configure script so it does not disable pthread support when cross-compiling
Upstream-Status: Inapproprate [config]
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
diff --git a/configure b/configure
index 03d8f95..6794d45 100755
--- a/configure
+++ b/configure
@@ -3506,7 +3506,7 @@ fi
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes
@@ -3566,7 +3566,7 @@ else
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes
@@ -3636,7 +3636,7 @@ if test "$pthreads_working" != "yes"; then
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes
@@ -106833,7 +106833,7 @@ fi
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes
@@ -106893,7 +106893,7 @@ else
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes
@@ -106963,7 +106963,7 @@ if test "$pthreads_working" != "yes"; then
if test "$cross_compiling" = yes; then
- pthreads_working=no
+ pthreads_working=yes
case $host_alias in
*netware*)
pthreads_working=yes

View File

@ -0,0 +1,90 @@
SECTION = "console/network"
DESCRIPTION = "A server-side, HTML-embedded scripting language. This package provides the apache php module."
LICENSE = "PHP"
DEPENDS = "apache2-native apache2 zlib"
SRC_URI = "http://www.php.net/distributions/php-${PV}.tar.bz2 \
file://configure.patch \
file://pthread-check.patch \
file://70_mod_php5.conf \
"
S = "${WORKDIR}/php-${PV}"
LIC_FILES_CHKSUM = "file://LICENSE;md5=cb564efdf78cce8ea6e4b5a4f7c05d97"
inherit autotools
CFLAGS += " -g -DPTYS_ARE_GETPT -DPTYS_ARE_SEARCHED -I${STAGING_INCDIR}/apache2"
EXTRA_OECONF = "--with-apxs2=${STAGING_BINDIR_CROSS}/apxs \
--enable-maintainer-zts \
--without-mysql \
--enable-force-cgi-redirect \
--disable-cgi \
--disable-cli \
--disable-pdo \
--without-pear \
--without-iconv \
--disable-ipv6 \
--disable-xml \
--disable-xmlreader \
--disable-xmlwriter \
--disable-simplexml \
--disable-libxml \
--disable-dom \
--disable-rpath \
--libdir=${libdir}/php5 \
--with-zlib --with-zlib-dir=${STAGING_DIR_TARGET}${exec_prefix} \
--with-config-file-path=${sysconfdir}/php/apache2-php5"
# to get postgres support, add it to the DEPENDS above
# and uncomment this line. similar for mysql
#EXTRA_OECONF += " --with-pgsql=${STAGING_DIR_HOST}${layout_exec_prefix}"
acpaths = ""
#
# override the autotools do_configure, which runs autoconf,
# which breaks everything...
#
do_configure() {
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_install () {
install -d ${D}${libdir}/apache2/modules
install -d ${D}${sysconfdir}/apache2/modules.d
install -d ${D}${sysconfdir}/php/apache2-php5
install -m 755 libs/libphp5.so ${D}${libdir}/apache2/modules
install -m 644 ${WORKDIR}/70_mod_php5.conf ${D}${sysconfdir}/apache2/modules.d
cat ${S}/php.ini-dist | \
sed -e 's,extension_dir = \"\./\",extension_dir = \"/usr/lib/extensions\",' \
> ${D}${sysconfdir}/php/apache2-php5/php.ini
install -d ${D}${bindir}
install -m 755 scripts/phpize ${D}${bindir}
install -m 755 scripts/php-config ${D}${bindir}
oe_runmake install-build install-headers INSTALL_ROOT=${D}
}
SYSROOT_PREPROCESS_FUNCS += "php_sysroot_preprocess"
php_sysroot_preprocess () {
install -d ${SYSROOT_DESTDIR}${bindir_crossscripts}/
install -m 755 ${D}${bindir}/phpize ${SYSROOT_DESTDIR}${bindir_crossscripts}/
install -m 755 ${D}${bindir}/php-config ${SYSROOT_DESTDIR}${bindir_crossscripts}/
sed -i 's!eval echo /!eval echo ${STAGING_DIR_HOST}/!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/phpize
sed -i 's!^include_dir=.*!include_dir=${STAGING_INCDIR}/php!' ${SYSROOT_DESTDIR}${bindir_crossscripts}/php-config
}
RDEPENDS_${PN} = "apache2"
FILES_${PN} = "${libdir}/apache2 ${sysconfdir}"
FILES_${PN}-dev += "${bindir}/phpize ${bindir}/php-config ${libdir}/php5"
FILES_${PN}-dbg += "${libdir}/apache2/modules/.debug"

View File

@ -0,0 +1,5 @@
include modphp5.inc
PR = "r0"
SRC_URI[md5sum] = "7caac4f71e2f21426c11ac153e538392"
SRC_URI[sha256sum] = "c8075b6e83c5db0d26cc8426a7456856421089a76c963813b1fcac3ced041cb3"