summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarkus Ullmann <jokey@gentoo.org>2007-08-20 21:02:53 +0000
committerMarkus Ullmann <jokey@gentoo.org>2007-08-20 21:02:53 +0000
commitfd52f4ee184159e39e40f03dcf788d2dfa802943 (patch)
treeaab170af46a2289fadc126902b2849cb30341027 /dev-php5
parentPorting from project overlay (diff)
downloadgentoo-2-fd52f4ee184159e39e40f03dcf788d2dfa802943.tar.gz
gentoo-2-fd52f4ee184159e39e40f03dcf788d2dfa802943.tar.bz2
gentoo-2-fd52f4ee184159e39e40f03dcf788d2dfa802943.zip
Porting from project overlay
(Portage version: 2.1.3.5)
Diffstat (limited to 'dev-php5')
-rw-r--r--dev-php5/eaccelerator/ChangeLog16
-rw-r--r--dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild32
-rw-r--r--dev-php5/eaccelerator/files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch30
3 files changed, 72 insertions, 6 deletions
diff --git a/dev-php5/eaccelerator/ChangeLog b/dev-php5/eaccelerator/ChangeLog
index 327efef34ec1..5b81503a7048 100644
--- a/dev-php5/eaccelerator/ChangeLog
+++ b/dev-php5/eaccelerator/ChangeLog
@@ -1,6 +1,20 @@
# ChangeLog for dev-php5/eaccelerator
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-php5/eaccelerator/ChangeLog,v 1.16 2007/05/12 14:28:32 chtekk Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-php5/eaccelerator/ChangeLog,v 1.17 2007/08/20 21:02:53 jokey Exp $
+
+ 20 Aug 2007; Markus Ullmann <jokey@gentoo.org>
+ +files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch,
+ eaccelerator-0.9.5.1.ebuild:
+ Porting from project overlay
+
+ 20 Aug 2007; Jakub Moc <jakub@gentoo.org> eaccelerator-0.9.5.1.ebuild:
+ This ebuild mistakenly assumed that apache user and group exist. Make
+ HTTPD_{USER,GROUP} configurable and fix pkg_setup accordingly.
+
+ 20 Aug 2007; Jakub Moc <jakub@gentoo.org>
+ +files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch,
+ +metadata.xml, +eaccelerator-0.9.5.1.ebuild:
+ Add patch for Bug 184439
*eaccelerator-0.9.5.1 (12 May 2007)
diff --git a/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild b/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild
index c58503d46523..a1934ee1d3fa 100644
--- a/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild
+++ b/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild,v 1.1 2007/05/12 14:28:32 chtekk Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-php5/eaccelerator/eaccelerator-0.9.5.1.ebuild,v 1.2 2007/08/20 21:02:53 jokey Exp $
PHP_EXT_NAME="eaccelerator"
PHP_EXT_INI="yes"
@@ -8,7 +8,7 @@ PHP_EXT_ZENDEXT="yes"
[[ -z "${EACCELERATOR_CACHEDIR}" ]] && EACCELERATOR_CACHEDIR="/var/cache/eaccelerator-php5/"
-inherit php-ext-source-r1
+inherit php-ext-source-r1 eutils depend.apache
KEYWORDS="~amd64 ~sparc ~x86"
@@ -22,11 +22,12 @@ IUSE="contentcache debug disassembler inode session sharedmem"
DEPEND="!dev-php5/pecl-apc !dev-php5/xcache"
RDEPEND="${DEPEND}"
-# Webserver user and group, here for Apache.
-HTTPD_USER="apache"
-HTTPD_GROUP="apache"
+# Webserver user and group, here for Apache by default
+HTTPD_USER="${HTTPD_USER:-apache}"
+HTTPD_GROUP="${HTTPD_GROUP:-apache}"
need_php_by_category
+want_apache
pkg_setup() {
has_php
@@ -38,6 +39,27 @@ pkg_setup() {
else
require_php_with_use zlib
fi
+
+ if ! use apache2 ; then
+ if [[ ${HTTPD_USER} == "apache" ]] || [[ ${HTTPD_GROUP} == "apache" ]] ; then
+ eerror "You did not enable apache2 USE flag, so you need to define"
+ eerror "the user and group that will be used for ${PN} yourself."
+ eerror
+ eerror "This should (generally) match the user and group that your webserver uses, e.g.:"
+ eerror "HTTPD_USER=\"lighttpd\" HTTPD_GROUP=\"lighttpd\" if using www-servers/lighttpd"
+ eerror
+ die "Either enable USE=\"apache2\" or re-emerge this with HTTPD_USER and HTTPD_GROUP set"
+ else
+ enewgroup ${HTTPD_GROUP}
+ enewuser ${HTTPD_USER} -1 -1 /var/www ${HTTPD_GROUP}
+ fi
+ fi
+}
+
+src_unpack() {
+ unpack ${A}
+ cd "${S}"
+ epatch "${FILESDIR}"/${P}-optimize-catch-exceptions.patch
}
src_compile() {
diff --git a/dev-php5/eaccelerator/files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch b/dev-php5/eaccelerator/files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch
new file mode 100644
index 000000000000..2add432d630c
--- /dev/null
+++ b/dev-php5/eaccelerator/files/eaccelerator-0.9.5.1-optimize-catch-exceptions.patch
@@ -0,0 +1,30 @@
+Index: eaccelerator/trunk/ChangeLog
+===================================================================
+--- eaccelerator/trunk/ChangeLog (revision 308)
++++ eaccelerator/trunk/ChangeLog (revision 323)
+@@ -1,2 +1,8 @@
++2007-08-14 Hans Rakers <hans at react.nl>
++
++ * Optimizer fix for #242. PHP-5.2.1 introduces a ZEND_JMP before a
++ ZEND_FETCH_CLASS/ZEND_CATCH which the optimizer did not handle
++ correctly, resulting in uncaught exceptions. (Thanks to warwickshaw)
++
+ 2007-05-09 Bart Vanbrabant <bart.vanbrabant at zoeloelip.be>
+
+Index: eaccelerator/trunk/optimize.c
+===================================================================
+--- eaccelerator/trunk/optimize.c (revision 322)
++++ eaccelerator/trunk/optimize.c (revision 323)
+@@ -2976,4 +2976,11 @@
+ op->extended_value = 0;
+ }
++# if (PHP_MAJOR_VERSION == 5 && PHP_MINOR_VERSION >= 2 && PHP_RELEASE_VERSION >= 1) || PHP_MAJOR_VERSION >= 6
++ /* php > 5.2.1 introduces a ZEND_JMP before a ZEND_FETCH_CLASS and ZEND_CATCH
++ this leaves those blocks intact */
++ else if ((op+1)->opcode == ZEND_FETCH_CLASS && (op+2)->opcode == ZEND_CATCH) { /* fix for #242 */
++ p->follow = &bb[line_num];
++ }
++# endif
+ #endif
+ break;
+