summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOle Markus With <olemarkus@gentoo.org>2013-04-01 07:32:34 +0000
committerOle Markus With <olemarkus@gentoo.org>2013-04-01 07:32:34 +0000
commitca8c07aab7cebc3a72ab13f7e257338952558058 (patch)
tree32770c00441582dad0f51e3a13093f7d66913668
parentAdd USE="caps gles opengl sdl usb X" flags to control the now (optional) depe... (diff)
downloadgentoo-2-ca8c07aab7cebc3a72ab13f7e257338952558058.tar.gz
gentoo-2-ca8c07aab7cebc3a72ab13f7e257338952558058.tar.bz2
gentoo-2-ca8c07aab7cebc3a72ab13f7e257338952558058.zip
Fix ZTS build. Bug 435742
(Portage version: 2.1.11.52/cvs/Linux x86_64, signed Manifest commit with key C4A92BF5)
-rw-r--r--dev-php/igbinary/ChangeLog6
-rw-r--r--dev-php/igbinary/files/zts-fix.patch44
-rw-r--r--dev-php/igbinary/igbinary-1.1.1-r2.ebuild11
3 files changed, 59 insertions, 2 deletions
diff --git a/dev-php/igbinary/ChangeLog b/dev-php/igbinary/ChangeLog
index d79407ec1ca7..28b7c40b1816 100644
--- a/dev-php/igbinary/ChangeLog
+++ b/dev-php/igbinary/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for dev-php/igbinary
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/dev-php/igbinary/ChangeLog,v 1.6 2013/03/28 12:23:13 olemarkus Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-php/igbinary/ChangeLog,v 1.7 2013/04/01 07:32:33 olemarkus Exp $
+
+ 01 Apr 2013; Ole Markus With <olemarkus@gentoo.org> +files/zts-fix.patch,
+ igbinary-1.1.1-r2.ebuild:
+ Fix ZTS build. Bug 435742
*igbinary-1.1.1-r2 (28 Mar 2013)
diff --git a/dev-php/igbinary/files/zts-fix.patch b/dev-php/igbinary/files/zts-fix.patch
new file mode 100644
index 000000000000..3de9b49f441e
--- /dev/null
+++ b/dev-php/igbinary/files/zts-fix.patch
@@ -0,0 +1,44 @@
+--- a/apc_serializer.h
++++ b/apc_serializer.h
+@@ -32,29 +32,37 @@
+ typedef int (*apc_serialize_t)(APC_SERIALIZER_ARGS);
+ typedef int (*apc_unserialize_t)(APC_UNSERIALIZER_ARGS);
+
+-typedef int (*apc_register_serializer_t)(const char* name,
+- apc_serialize_t serialize,
++typedef int (*apc_register_serializer_t)(const char* name,
++ apc_serialize_t serialize,
+ apc_unserialize_t unserialize,
+ void *config TSRMLS_DC);
+
+ /*
+ * ABI version for constant hooks. Increment this any time you make any changes
+ * to any function in this file.
+ */
+ #define APC_SERIALIZER_ABI "0"
+ #define APC_SERIALIZER_CONSTANT "\000apc_register_serializer-" APC_SERIALIZER_ABI
+
+-static int apc_register_serializer(const char* name,
++#if !defined(APC_UNUSED)
++# if defined(__GNUC__)
++# define APC_UNUSED __attribute__((unused))
++# else
++# define APC_UNUSED
++# endif
++#endif
++
++static APC_UNUSED int apc_register_serializer(const char* name,
+ apc_serialize_t serialize,
+ apc_unserialize_t unserialize,
+ void *config TSRMLS_DC)
+ {
+ zval *apc_magic_constant = NULL;
+ (void)config;
+
+ ALLOC_INIT_ZVAL(apc_magic_constant);
+
+- if (zend_get_constant(APC_SERIALIZER_CONSTANT, sizeof(APC_SERIALIZER_CONSTANT)-1, apc_magic_constant)) {
++ if (zend_get_constant(APC_SERIALIZER_CONSTANT, sizeof(APC_SERIALIZER_CONSTANT)-1, apc_magic_constant TSRMLS_CC)) {
+ if(apc_magic_constant) {
+ apc_register_serializer_t register_func = (apc_register_serializer_t)(Z_LVAL_P(apc_magic_constant));
+ if(register_func) {
diff --git a/dev-php/igbinary/igbinary-1.1.1-r2.ebuild b/dev-php/igbinary/igbinary-1.1.1-r2.ebuild
index 53d6d11fe579..8a33c66dad76 100644
--- a/dev-php/igbinary/igbinary-1.1.1-r2.ebuild
+++ b/dev-php/igbinary/igbinary-1.1.1-r2.ebuild
@@ -1,6 +1,6 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/dev-php/igbinary/igbinary-1.1.1-r2.ebuild,v 1.1 2013/03/28 12:23:13 olemarkus Exp $
+# $Header: /var/cvsroot/gentoo-x86/dev-php/igbinary/igbinary-1.1.1-r2.ebuild,v 1.2 2013/04/01 07:32:33 olemarkus Exp $
EAPI="5"
PHP_EXT_NAME="igbinary"
@@ -25,6 +25,15 @@ IUSE=""
DEPEND=""
RDEPEND="${DEPEND}"
+src_prepare() {
+ local slot
+ for slot in $(php_get_slots); do
+ php_init_slot_env ${slot}
+ epatch "${FILESDIR}/zts-fix.patch"
+ done
+ php-ext-source-r2_src_prepare
+}
+
src_configure() {
my_conf="--enable-igbinary"
php-ext-source-r2_src_configure