Latest igbinary update breaks support for igbibary protocol in other pecl/php ports.
pecl-memcached, pecl-redis and maybe some other ports are unable to find "src/php7/igbinary.h" and fails to build properly.
The following error is being displayed during pecl-memcached build with enabled igbinary support:
--- php_memcached.lo ---
In file included from /construction/xports/databases/pecl-memcached/work-php72/memcached-3.1.3/php_memcached.c:50:
/usr/local/include/php/ext/igbinary/igbinary.h:5:10: fatal error: 'src/php7/igbinary.h' file not found
1 error generated.
*** [php_memcached.lo] Error code 1
Created attachment 202171 [details]
proposed patch for the Makefile
This patch will bring back post-patch activity needed to compile other ports with igbinary support, that were removed in the previous commit.
* CC pecl-redis maintainer
* pecl-memcache is deprecated (due to php 5.6 eol)
(In reply to Kubilay Kocak from comment #2)
Please take a note that there are two ports - one is pecl-memcache and it is deprecated, and another one is pecl-memcached that is fully supported with php7.
Also igbinary support is not enabled by default in pecl-redis and pecl-memcached ports. But they will need some header files from pecl-igbinary port to successfully compile when such support is enabled.
A commit references this bug:
Date: Wed Feb 20 20:48:02 UTC 2019
New revision: 493460
Fix build of the dependent ports
- Bump PORTREVISION for package change
Restore the hack (replacement of igbinary.h and php_igbinary.h) in previous versions.
Submitted by: Artyom Davidov <email@example.com>
(In reply to Sunpoet Po-Chuan Hsieh from comment #5)
Thank you, Sunpoet!
But I guess I should mention that it is not really a hack - those files aren't being replaced - they are being copied to the PHP build tree. And these files are being referenced in the files installed by this port in "include/php/ext/igbinary" directory. So we just following the upstream logic of placing these files in the directory structure.