commit e746e0d2a57d52548906d28490daea21894397d4
parent 4020ee4fb6580d36edaf9b5503bb71ad8b4a1b80
Author: Michael Heimpold <mhei@heimpold.de>
Date: Mon, 1 Jun 2015 00:08:57 +0200
php5-pecl-libevent: add a patch to force usage of libevent2 headers (refs #1322)
Builtbots currently fail to compile this package with (example message):
... /libevent-0.1.0/libevent.c:1403:42: error: 'EVBUFFER_READ' undeclared (first use in this function)
REGISTER_LONG_CONSTANT("EVBUFFER_READ", EVBUFFER_READ, CONST_CS | CONST_PERSISTENT);
With libevent2, the main include file event.h is deprecated, but includes
enough stuff and other compat includes that it _should work_. I could not figure
out why it fails (all locally builds work out-of-the-box), so this is a trial to
circumvent this compat header file and include the libevent2 headers directly.
While at, add a missing dependency to the sockets extension.
Signed-off-by: Michael Heimpold <mhei@heimpold.de>
Diffstat:
2 files changed, 18 insertions(+), 2 deletions(-)
diff --git a/lang/php5-pecl-libevent/Makefile b/lang/php5-pecl-libevent/Makefile
@@ -11,7 +11,7 @@ PECL_NAME:=libevent
PECL_LONGNAME:=Libevent - event notification
PKG_VERSION:=0.1.0
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_MD5SUM:=e091371a9e714098a4c04a6e3daeb56a
PKG_NAME:=php5-pecl-$(PECL_NAME)
@@ -34,5 +34,5 @@ include ../php5/pecl.mk
CONFIGURE_ARGS+= --with-libevent=shared,"$(STAGING_DIR)/usr"
-$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME),+libevent2))
+$(eval $(call PECLPackage,$(PECL_NAME),$(PECL_LONGNAME),+libevent2 +php5-mod-sockets))
$(eval $(call BuildPackage,$(PKG_NAME)))
diff --git a/lang/php5-pecl-libevent/patches/010-libevent2.patch b/lang/php5-pecl-libevent/patches/010-libevent2.patch
@@ -0,0 +1,16 @@
+--- a/libevent.c
++++ b/libevent.c
+@@ -42,10 +42,12 @@
+ (rsrc = (rsrc_type) zend_fetch_resource(passed_id TSRMLS_CC, default_id, resource_type_name, NULL, 1, resource_type))
+ #endif
+
+-#ifdef PHP_WIN32
++//#ifdef PHP_WIN32
+ /* XXX compiling with 2.x on Windows. Luckily the ext code works thanks to the
+ compat exports from the libevent. However it might need to be adapted to the
+ never version, so this ifdefs would go away. */
++#if 1
++/* force use of libevent2 on OpenWrt and by-pass compat event.h */
+ # include <event2/event.h>
+ # include <event2/event_compat.h>
+ # include <event2/event_struct.h>