Currently running a full ports tree build with DEFAULT_VERSIONS=php=71 and I see many PECL ports failing. Errors are similar for many of these, I think there's 3 errors: > error: unknown type name 'zend_object_value' and > error: too many arguments to function call, expected 3, have 5 and > fatal error: 'ext/standard/php_smart_str.h' file not found
List not caused by php_smart_str.h (5.x only) include databases/pecl-chdb databases/pecl-drizzle databases/pecl-leveldb databases/pecl-tokyo_tyrant devel/pecl-expect devel/pecl-jsonnet devel/pecl-propro devel/pecl-qb devel/pecl-raphf devel/pecl-runkit devel/pecl-strict devel/pecl-trace devel/pecl-uopz devel/pecl-weakref graphics/pecl-imlib2 math/pecl-trader net/pecl-apn net/pecl-ip2location net/pecl-mosquitto net/pecl-yp print/pecl-ps security/pecl-crack textproc/pecl-xslcache www/pecl-http1
Yeah, after some short tests the ports fall into two categories: 1) the are undated/unmaintained and just did not work with PHP 7 (like databases/pecl-drizzle) 2) there is a new version supporting PHP 7, but the old version is not marked as "ignore with PHP 7". For example devel/pecl-raphf and devel/pecl-raphf2 I'm currently working on PHP 7.2 and changing the default of PHP from 5.6 to 7.1. I will add this to my TODO list!
A commit references this bug: Author: tz Date: Thu Dec 14 13:57:37 UTC 2017 New revision: 456296 URL: https://svnweb.freebsd.org/changeset/ports/456296 Log: Add missing IGNORE_WITH_PHP for various pecl-ports. After testing every pecl-* port with PHP 5.6, 7.0, 7.1 and 7.2 i set the IGNORE_WITH_PHP accordingly to the fallout. PR: 222165 Reported by: brnd Approved by: portmgr (blanket) Differential Revision: https://reviews.freebsd.org/D13476 Changes: head/archivers/pecl-phk/Makefile head/converters/pecl-fribidi/Makefile head/databases/pecl-chdb/Makefile head/databases/pecl-drizzle/Makefile head/databases/pecl-leveldb/Makefile head/databases/pecl-mongo/Makefile head/databases/pecl-pdo_user/Makefile head/databases/pecl-rrd1/Makefile head/databases/pecl-tokyo_tyrant/Makefile head/devel/pecl-APCu4/Makefile head/devel/pecl-dio/Makefile head/devel/pecl-expect/Makefile head/devel/pecl-gearman/Makefile head/devel/pecl-htscanner/Makefile head/devel/pecl-inotify/Makefile head/devel/pecl-jsmin/Makefile head/devel/pecl-jsonc/Makefile head/devel/pecl-jsond/Makefile head/devel/pecl-jsonnet/Makefile head/devel/pecl-judy/Makefile head/devel/pecl-libevent/Makefile head/devel/pecl-memoize/Makefile head/devel/pecl-msgpack0/Makefile head/devel/pecl-ncurses/Makefile head/devel/pecl-newt/Makefile head/devel/pecl-params/Makefile head/devel/pecl-propro/Makefile head/devel/pecl-qb/Makefile head/devel/pecl-raphf/Makefile head/devel/pecl-request/Makefile head/devel/pecl-runkit/Makefile head/devel/pecl-scream/Makefile head/devel/pecl-spl_types/Makefile head/devel/pecl-statgrab/Makefile head/devel/pecl-strict/Makefile head/devel/pecl-svn/Makefile head/devel/pecl-test_helpers/Makefile head/devel/pecl-trace/Makefile head/devel/pecl-uopz/Makefile head/devel/pecl-uploadprogress/Makefile head/devel/pecl-uri_template/Makefile head/devel/pecl-weakref/Makefile head/devel/pecl-xhprof/Makefile head/devel/pecl-yac/Makefile head/devel/pecl-yaconf/Makefile head/graphics/pecl-gmagick/Makefile head/graphics/pecl-imlib2/Makefile head/lang/pecl-perl/Makefile head/mail/pecl-mailparse2/Makefile head/mail/pecl-pop3/Makefile head/math/pecl-big_int/Makefile head/math/pecl-stats/Makefile head/math/pecl-trader/Makefile head/net/pecl-apn/Makefile head/net/pecl-ip2location/Makefile head/net/pecl-mosquitto/Makefile head/net/pecl-oauth/Makefile head/net/pecl-yp/Makefile head/net-im/pecl-stomp/Makefile head/print/pecl-haru/Makefile head/print/pecl-ps/Makefile head/security/pecl-crack/Makefile head/security/pecl-pam/Makefile head/security/pecl-ssh2-0/Makefile head/sysutils/pecl-mogilefs/Makefile head/textproc/pecl-ctemplate/Makefile head/textproc/pecl-doublemetaphone/Makefile head/textproc/pecl-stem/Makefile head/textproc/pecl-syck/Makefile head/textproc/pecl-wbxml/Makefile head/textproc/pecl-xdiff/Makefile head/textproc/pecl-xslcache/Makefile head/textproc/pecl-yaml1/Makefile head/www/pecl-amfext/Makefile head/www/pecl-http1/Makefile head/www/pecl-solr/Makefile head/www/pecl-sphinx/Makefile head/www/pecl-swish/Makefile head/www/pecl-twig/Makefile head/www/pecl-yaf2/Makefile head/www/pecl-yar/Makefile head/www/pecl-yar1/Makefile
I set the IGNORE_WITH_PHP now for every pecl-* port. This will make clear, that the ports are not supposed to work.