summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Elio Pettenò <flameeyes@gentoo.org>2010-10-11 23:23:06 +0000
committerDiego Elio Pettenò <flameeyes@gentoo.org>2010-10-11 23:23:06 +0000
commit05fe72d97f911ab98183b122b80bd71adf5ece91 (patch)
tree92be915800a8c81563134d55330600b302c868b0 /dev-php5/suhosin
parentPolish around some of the problems found while trying to run this in production. (diff)
downloadgentoo-2-05fe72d97f911ab98183b122b80bd71adf5ece91.tar.gz
gentoo-2-05fe72d97f911ab98183b122b80bd71adf5ece91.tar.bz2
gentoo-2-05fe72d97f911ab98183b122b80bd71adf5ece91.zip
QA: ensure that libcrypt is linked in the extension, or it'll abort at runtime, or fail to load depending on binding settings. Closes bug #332161 by Hanno Boeck, thanks to klondike for the diagnosis.
(Portage version: 2.2_rc92/cvs/Linux x86_64)
Diffstat (limited to 'dev-php5/suhosin')
-rw-r--r--dev-php5/suhosin/ChangeLog10
-rw-r--r--dev-php5/suhosin/files/suhosin-0.9.32.1-libcrypt.patch12
-rw-r--r--dev-php5/suhosin/suhosin-0.9.32.1-r1.ebuild51
3 files changed, 72 insertions, 1 deletions
diff --git a/dev-php5/suhosin/ChangeLog b/dev-php5/suhosin/ChangeLog
index f4c0462bb93b..0d9613a2d53c 100644
--- a/dev-php5/suhosin/ChangeLog
+++ b/dev-php5/suhosin/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for dev-php5/suhosin
# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-php5/suhosin/ChangeLog,v 1.53 2010/09/19 17:36:20 mabi Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-php5/suhosin/ChangeLog,v 1.54 2010/10/11 23:23:06 flameeyes Exp $
+
+*suhosin-0.9.32.1-r1 (11 Oct 2010)
+
+ 11 Oct 2010; Diego E. Pettenò <flameeyes@gentoo.org>
+ +suhosin-0.9.32.1-r1.ebuild, +files/suhosin-0.9.32.1-libcrypt.patch:
+ QA: ensure that libcrypt is linked in the extension, or it'll abort at
+ runtime, or fail to load depending on binding settings. Closes bug #332161
+ by Hanno Boeck, thanks to klondike for the diagnosis.
19 Sep 2010; Matti Bickel <mabi@gentoo.org> suhosin-0.9.32.1.ebuild:
use php-ext-pecl-r1_src_test-like src_test method to make tests actually
diff --git a/dev-php5/suhosin/files/suhosin-0.9.32.1-libcrypt.patch b/dev-php5/suhosin/files/suhosin-0.9.32.1-libcrypt.patch
new file mode 100644
index 000000000000..bf0d1a45f76f
--- /dev/null
+++ b/dev-php5/suhosin/files/suhosin-0.9.32.1-libcrypt.patch
@@ -0,0 +1,12 @@
+Index: suhosin-0.9.32.1/config.m4
+===================================================================
+--- suhosin-0.9.32.1.orig/config.m4
++++ suhosin-0.9.32.1/config.m4
+@@ -6,4 +6,7 @@ PHP_ARG_ENABLE(suhosin, whether to enabl
+
+ if test "$PHP_SUHOSIN" != "no"; then
+ PHP_NEW_EXTENSION(suhosin, suhosin.c crypt.c crypt_blowfish.c sha256.c memory_limit.c treat_data.c ifilter.c post_handler.c ufilter.c rfc1867.c log.c header.c execute.c ex_imp.c session.c aes.c compat_snprintf.c, $ext_shared)
++ PHP_CHECK_LIBRARY(crypt, crypt,
++ [PHP_ADD_LIBRARY(crypt,, SUHOSIN_SHARED_LIBADD)])
++ PHP_SUBST(SUHOSIN_SHARED_LIBADD)
+ fi
diff --git a/dev-php5/suhosin/suhosin-0.9.32.1-r1.ebuild b/dev-php5/suhosin/suhosin-0.9.32.1-r1.ebuild
new file mode 100644
index 000000000000..2c6244da7ee6
--- /dev/null
+++ b/dev-php5/suhosin/suhosin-0.9.32.1-r1.ebuild
@@ -0,0 +1,51 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-php5/suhosin/suhosin-0.9.32.1-r1.ebuild,v 1.1 2010/10/11 23:23:06 flameeyes Exp $
+
+EAPI="2"
+
+PHP_EXT_NAME="suhosin"
+PHP_EXT_INI="yes"
+PHP_EXT_ZENDEXT="no"
+
+inherit php-ext-source-r1 eutils
+
+KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
+
+DESCRIPTION="Suhosin is an advanced protection system for PHP installations."
+HOMEPAGE="http://www.suhosin.org/"
+SRC_URI="http://download.suhosin.org/${P}.tar.gz"
+LICENSE="PHP-3"
+SLOT="0"
+IUSE=""
+
+DEPEND="dev-lang/php[unicode]"
+RDEPEND="${DEPEND}"
+
+need_php_by_category
+
+src_unpack() {
+ PHP_EXT_SKIP_PHPIZE=yes php-ext-source-r1_src_unpack
+ epatch "${FILESDIR}"/${P}-libcrypt.patch
+ php-ext-source-r1_phpize
+}
+
+src_install() {
+ php-ext-source-r1_src_install
+ dodoc-php CREDITS
+
+ for inifile in ${PHPINIFILELIST} ; do
+ insinto "${inifile/${PHP_EXT_NAME}.ini/}"
+ insopts -m644
+ doins "suhosin.ini"
+ done
+}
+
+src_test() {
+ # Makefile passes a hard-coded -d extension_dir=./modules, we move the lib
+ # away from there in src_compile
+ ln -s "${WORKDIR}/${PHP_EXT_NAME}-default.so" "${S}/modules/${PHP_EXT_NAME}.so"
+
+ NO_INTERACTION="yes" emake test
+
+}