git: 63b6120db0b8 - main - */*php86*: Sunrise
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 04 Jul 2026 18:18:03 UTC
The branch main has been updated by bofh:
URL: https://cgit.FreeBSD.org/ports/commit/?id=63b6120db0b8290c6b7d0b91d16c94bfe617ebfe
commit 63b6120db0b8290c6b7d0b91d16c94bfe617ebfe
Author: Muhammad Moinur Rahman <bofh@FreeBSD.org>
AuthorDate: 2026-07-03 23:20:29 +0000
Commit: Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2026-07-04 18:17:34 +0000
*/*php86*: Sunrise
Please DO NOT use this version in production, it is an early test version.
For upgrade notes please visit:
https://github.com/php/php-src/blob/php-8.6.0alpha1/UPGRADING
Changelog: https://github.com/php/php-src/blob/php-8.6.0alpha1/NEWS
---
Mk/Uses/nextcloud.mk | 2 +-
Mk/Uses/php.mk | 21 +-
Mk/bsd.default-versions.mk | 2 +-
archivers/Makefile | 4 +
archivers/pecl-lzf/Makefile | 1 +
archivers/pecl-rar/Makefile | 1 +
archivers/pecl-zstd/Makefile | 1 +
archivers/php-brotli/Makefile | 1 +
archivers/php-lz4/Makefile | 1 +
archivers/php-zstd/Makefile | 1 +
archivers/php86-bz2/Makefile | 7 +
archivers/php86-phar/Makefile | 7 +
archivers/php86-phar/files/patch-config.m4 | 11 +
archivers/php86-phar/files/patch-phar__internal.h | 18 +
archivers/php86-phar/files/patch-pharzip.h | 19 +
archivers/php86-zip/Makefile | 7 +
archivers/php86-zlib/Makefile | 7 +
archivers/php86-zlib/files/patch-zlib.c | 10 +
converters/Makefile | 2 +
converters/php-bsdconv/Makefile | 1 +
converters/php86-iconv/Makefile | 7 +
converters/php86-mbstring/Makefile | 7 +
databases/Makefile | 12 +
databases/dalmp/Makefile | 1 +
databases/pear-Horde_Memcache/Makefile | 1 +
databases/pecl-couchbase/Makefile | 1 +
databases/pecl-leveldb/Makefile | 1 +
databases/pecl-memcache/Makefile | 1 +
databases/pecl-memcached/Makefile | 1 +
databases/pecl-mongodb/Makefile | 1 +
databases/pecl-redis/Makefile | 1 +
databases/pecl-rrd/Makefile | 1 +
databases/php-tarantool/Makefile | 1 +
databases/php-xapian/Makefile | 1 +
databases/php86-dba/Makefile | 7 +
databases/php86-dba/files/patch-config.m4 | 25 +
databases/php86-mysqli/Makefile | 7 +
databases/php86-odbc/Makefile | 7 +
databases/php86-odbc/files/patch-config.m4 | 29 +
databases/php86-pdo/Makefile | 7 +
databases/php86-pdo_dblib/Makefile | 7 +
databases/php86-pdo_firebird/Makefile | 9 +
databases/php86-pdo_mysql/Makefile | 7 +
databases/php86-pdo_odbc/Makefile | 7 +
databases/php86-pdo_pgsql/Makefile | 7 +
databases/php86-pdo_sqlite/Makefile | 7 +
databases/php86-pgsql/Makefile | 7 +
databases/php86-sqlite3/Makefile | 7 +
databases/xapian-bindings/Makefile | 1 +
devel/Makefile | 10 +
devel/arcanist-lib/Makefile | 2 +-
devel/ioncube/Makefile | 1 +
devel/pecl-APCu/Makefile | 1 +
devel/pecl-ast/Makefile | 1 +
devel/pecl-ds/Makefile | 1 +
devel/pecl-ev/Makefile | 1 +
devel/pecl-event/Makefile | 1 +
devel/pecl-excimer/Makefile | 1 +
devel/pecl-expect/Makefile | 1 +
devel/pecl-grpc/Makefile | 1 +
devel/pecl-json_post/Makefile | 1 +
devel/pecl-msgpack/Makefile | 1 +
devel/pecl-mustache/Makefile | 1 +
devel/pecl-opentelemetry/Makefile | 1 +
devel/pecl-pcov/Makefile | 1 +
devel/pecl-raphf2/Makefile | 1 +
devel/pecl-runkit7/Makefile | 2 +-
devel/pecl-swoole/Makefile | 1 +
devel/pecl-sync/Makefile | 1 +
devel/pecl-uploadprogress/Makefile | 1 +
devel/pecl-uv/Makefile | 1 +
devel/pecl-xdebug/Makefile | 1 +
devel/pecl-yac/Makefile | 1 +
devel/pecl-zookeeper/Makefile | 1 +
devel/phabricator/Makefile | 2 +-
devel/phorgeit-arcanist-lib/Makefile | 2 +-
devel/phorgeit-phorge/Makefile | 2 +-
devel/php-ice37/Makefile | 1 +
devel/php-maxminddb/Makefile | 1 +
devel/php86-ffi/Makefile | 7 +
devel/php86-gettext/Makefile | 7 +
devel/php86-intl/Makefile | 7 +
devel/php86-pcntl/Makefile | 7 +
devel/php86-readline/Makefile | 7 +
devel/php86-shmop/Makefile | 7 +
devel/php86-sysvmsg/Makefile | 7 +
devel/php86-sysvsem/Makefile | 7 +
devel/php86-sysvshm/Makefile | 7 +
devel/php86-tokenizer/Makefile | 7 +
finance/prestashop/Makefile | 1 +
ftp/Makefile | 2 +
ftp/php86-curl/Makefile | 7 +
ftp/php86-ftp/Makefile | 7 +
graphics/Makefile | 2 +
graphics/pecl-imagick/Makefile | 1 +
graphics/pecl-vips/Makefile | 1 +
graphics/php-geos/Makefile | 1 +
graphics/php86-exif/Makefile | 7 +
graphics/php86-gd/Makefile | 7 +
lang/Makefile | 2 +
lang/php82-extensions/Makefile | 2 +-
lang/php82/Makefile | 2 +-
lang/php83-extensions/Makefile | 2 +-
lang/php83/Makefile | 2 +-
lang/php84-extensions/Makefile | 2 +-
lang/php84/Makefile | 2 +-
lang/php85-extensions/Makefile | 2 +-
lang/php85/Makefile | 2 +-
lang/php86-extensions/Makefile | 88 +++
lang/php86-extensions/pkg-descr | 5 +
lang/php86/Makefile | 610 +++++++++++++++++++++
lang/php86/distinfo | 3 +
lang/php86/files/patch-TSRM_TSRM.c | 11 +
lang/php86/files/patch-build_Makefile.global | 19 +
lang/php86/files/patch-configure.ac | 27 +
lang/php86/files/patch-ext_pcre_php__pcre.h | 11 +
lang/php86/files/patch-sapi_fpm_www.conf.in | 17 +
lang/php86/files/php_fpm.in | 102 ++++
lang/php86/files/php_session.h | 328 +++++++++++
lang/php86/pkg-descr | 6 +
lang/php86/pkg-message.mod | 24 +
lang/php86/pkg-plist | 566 +++++++++++++++++++
lang/php86/pkg-plist.mod | 3 +
mail/nocc/Makefile | 1 +
mail/pear-Horde_Imap_Client/Makefile | 1 +
mail/pear-Horde_Kolab_Storage/Makefile | 2 +
mail/pear-Horde_Mail_Autoconfig/Makefile | 1 +
mail/pecl-imap/Makefile | 2 +-
mail/phplist/Makefile | 1 +
mail/postfixadmin/Makefile | 1 +
mail/postfixadmin33/Makefile | 1 +
mail/snappymail/Makefile | 1 +
math/Makefile | 2 +
math/pecl-bitset/Makefile | 1 +
math/php86-bcmath/Makefile | 7 +
math/php86-gmp/Makefile | 7 +
misc/Makefile | 1 +
misc/php86-calendar/Makefile | 7 +
multimedia/zoneminder/Makefile | 1 +
net-im/pecl-stomp2/Makefile | 1 +
net-mgmt/Makefile | 1 +
.../icingaweb2-module-businessprocess/Makefile | 1 +
net-mgmt/icingaweb2-module-cube/Makefile | 1 +
net-mgmt/icingaweb2-module-director/Makefile | 1 +
net-mgmt/icingaweb2-module-elasticsearch/Makefile | 1 +
net-mgmt/icingaweb2-module-fileshipper/Makefile | 1 +
net-mgmt/icingaweb2-module-generictts/Makefile | 1 +
net-mgmt/icingaweb2-module-grafana/Makefile | 1 +
net-mgmt/icingaweb2-module-graphite/Makefile | 1 +
net-mgmt/icingaweb2-module-icingadb/Makefile | 2 +
net-mgmt/icingaweb2-module-idoreports/Makefile | 1 +
net-mgmt/icingaweb2-module-jira/Makefile | 1 +
net-mgmt/icingaweb2-module-map/Makefile | 1 +
net-mgmt/icingaweb2-module-pdfexport/Makefile | 1 +
net-mgmt/icingaweb2-module-reactbundle/Makefile | 1 +
net-mgmt/icingaweb2-module-reporting/Makefile | 1 +
net-mgmt/icingaweb2-module-vsphere/Makefile | 1 +
net-mgmt/icingaweb2-module-vspheredb/Makefile | 1 +
net-mgmt/icingaweb2-module-x509/Makefile | 1 +
net-mgmt/icingaweb2/Makefile | 1 +
net-mgmt/php86-snmp/Makefile | 7 +
net-mgmt/phpipam/Makefile | 1 +
net/Makefile | 3 +
net/pecl-amqp/Makefile | 2 +-
net/pecl-xmlrpc/Makefile | 1 +
net/php86-ldap/Makefile | 7 +
net/php86-soap/Makefile | 7 +
net/php86-sockets/Makefile | 7 +
security/Makefile | 2 +
security/pear-Crypt_CHAP/Makefile | 1 +
security/pear-File_SMBPasswd/Makefile | 1 +
security/pecl-crypto/Makefile | 1 +
security/pecl-gnupg/Makefile | 1 +
security/pecl-krb5/Makefile | 1 +
security/pecl-mcrypt/Makefile | 1 +
security/pecl-pkcs11/Makefile | 1 +
security/php86-filter/Makefile | 7 +
security/php86-sodium/Makefile | 7 +
security/snuffleupagus/Makefile | 2 +-
sysutils/Makefile | 2 +
sysutils/php86-fileinfo/Makefile | 7 +
sysutils/php86-posix/Makefile | 7 +
textproc/Makefile | 8 +
textproc/pecl-pspell/Makefile | 2 +-
textproc/pecl-xlswriter/Makefile | 1 +
textproc/php86-ctype/Makefile | 7 +
textproc/php86-dom/Makefile | 7 +
.../files/patch-parentnode_css__selectors.c | 11 +
textproc/php86-enchant/Makefile | 12 +
textproc/php86-simplexml/Makefile | 7 +
textproc/php86-xml/Makefile | 7 +
textproc/php86-xml/files/patch-compat.c | 13 +
textproc/php86-xmlreader/Makefile | 7 +
textproc/php86-xmlwriter/Makefile | 7 +
textproc/php86-xsl/Makefile | 7 +
www/Makefile | 3 +
www/baikal/Makefile | 1 +
www/codeigniter/Makefile | 1 +
www/elgg/Makefile | 1 +
www/fusionpbx/Makefile | 1 +
www/glpi/Makefile | 1 +
www/groupoffice/Makefile | 1 +
www/ilias/Makefile | 1 +
www/kanboard/Makefile | 1 +
www/lycheeorg/Makefile | 1 +
www/matomo/Makefile | 1 +
www/mediawiki143/Makefile | 1 +
www/mediawiki144/Makefile | 1 +
www/mediawiki146/Makefile | 1 +
www/mod_php86/Makefile | 18 +
www/moodle45/Makefile | 1 +
www/moodle50/Makefile | 1 +
www/moodle51/Makefile | 1 +
www/moodle52/Makefile | 1 +
www/nextcloud/Makefile | 2 +
www/opencart/Makefile | 1 +
www/openemr/Makefile | 1 +
www/osticket/Makefile | 1 +
www/pecl-http/Makefile | 1 +
www/pecl-solr/Makefile | 1 +
www/pecl-yaf/Makefile | 1 +
www/pecl-yar/Makefile | 1 +
www/phalcon/Makefile | 1 +
www/php86-session/Makefile | 7 +
www/php86-tidy/Makefile | 7 +
www/phpmyfaq/Makefile | 2 +-
www/piwigo/Makefile | 1 +
www/suitecrm/Makefile | 2 +
www/thirtybees/Makefile | 1 +
www/tikiwiki/Makefile | 1 +
www/webtrees21/Makefile | 2 +-
www/wordpress/Makefile | 1 +
232 files changed, 2564 insertions(+), 29 deletions(-)
diff --git a/Mk/Uses/nextcloud.mk b/Mk/Uses/nextcloud.mk
index 436345c98539..aac1747681ef 100644
--- a/Mk/Uses/nextcloud.mk
+++ b/Mk/Uses/nextcloud.mk
@@ -30,7 +30,7 @@ LICENSE?= AGPLv3
RUN_DEPENDS= nextcloud${PHP_PKGNAMESUFFIX}>=${NEXTCLOUD_RUN_DEPENDS}:www/nextcloud@${PHP_FLAVOR}
USES+= php:flavors
-IGNORE_WITH_PHP= 82
+IGNORE_WITH_PHP= 82 86
NO_BUILD= yes
NO_ARCH= yes
diff --git a/Mk/Uses/php.mk b/Mk/Uses/php.mk
index 9c6ffe6ea701..0c13662946fb 100644
--- a/Mk/Uses/php.mk
+++ b/Mk/Uses/php.mk
@@ -110,7 +110,7 @@ DIST_SUBDIR= PECL
PHPBASE?= ${LOCALBASE}
-_ALL_PHP_VERSIONS= 82 83 84 85
+_ALL_PHP_VERSIONS= 82 83 84 85 86
# Make the already installed PHP the default one.
. if exists(${PHPBASE}/etc/php.conf)
@@ -179,7 +179,10 @@ PHP_VER= ${FLAVOR:S/^php//}
(${FLAVOR:Mphp[0-9][0-9]} && ${FLAVOR} != ${FLAVORS:[1]})
# When adding a version, please keep the comment in
# Mk/bsd.default-versions.mk in sync.
-. if ${PHP_VER} == 85
+. if ${PHP_VER} == 86
+PHP_EXT_DIR= 20250926
+PHP_EXT_INC= hash json opcache openssl pcre random spl
+. elif ${PHP_VER} == 85
PHP_EXT_DIR= 20250925
PHP_EXT_INC= hash json opcache openssl pcre random spl
. elif ${PHP_VER} == 84
@@ -372,21 +375,22 @@ add-plist-phpext:
# Extensions
. if defined(USE_PHP) && ${USE_PHP:tl} != "yes"
# non-version specific components
-_USE_PHP_ALL= bcmath bitset bz2 calendar ctype curl dba dom \
+_USE_PHP_ALL= bcmath bz2 calendar ctype curl dba dom \
enchant exif ffi fileinfo filter ftp gd gettext gmp \
hash iconv igbinary imap intl json ldap mbstring mcrypt \
memcache memcached mysqli odbc \
openssl pcntl pcre pdo pdo_dblib pdo_firebird pdo_mysql \
pdo_odbc pdo_pgsql pdo_sqlite phar pgsql posix \
- pspell radius random readline redis session shmop simplexml snmp \
+ pspell radius random readline session shmop simplexml snmp \
soap sockets sodium spl sqlite3 sysvmsg sysvsem sysvshm \
tidy tokenizer xml xmlreader xmlrpc xmlwriter xsl zephir_parser \
zip zlib
# version specific components
-_USE_PHP_VER82= ${_USE_PHP_ALL} opcache
-_USE_PHP_VER83= ${_USE_PHP_ALL} opcache
-_USE_PHP_VER84= ${_USE_PHP_ALL} opcache
-_USE_PHP_VER85= ${_USE_PHP_ALL}
+_USE_PHP_VER82= ${_USE_PHP_ALL} bitset imagick opcache redis
+_USE_PHP_VER83= ${_USE_PHP_ALL} bitset imagick opcache redis
+_USE_PHP_VER84= ${_USE_PHP_ALL} bitset imagick opcache redis
+_USE_PHP_VER85= ${_USE_PHP_ALL} bitset imagick redis
+_USE_PHP_VER86= ${_USE_PHP_ALL}
bcmath_DEPENDS= math/php${PHP_VER}-bcmath
bitset_DEPENDS= math/pecl-bitset@${PHP_FLAVOR}
@@ -407,6 +411,7 @@ gettext_DEPENDS=devel/php${PHP_VER}-gettext
gmp_DEPENDS= math/php${PHP_VER}-gmp
iconv_DEPENDS= converters/php${PHP_VER}-iconv
igbinary_DEPENDS= converters/pecl-igbinary@${PHP_FLAVOR}
+imagick_DEPENDS= graphics/pecl-imagick@${PHP_FLAVOR}
. if ${PHP_VER} <= 83
imap_DEPENDS= mail/php${PHP_VER}-imap
. else
diff --git a/Mk/bsd.default-versions.mk b/Mk/bsd.default-versions.mk
index 39edc5ec1929..146663b0d696 100644
--- a/Mk/bsd.default-versions.mk
+++ b/Mk/bsd.default-versions.mk
@@ -142,7 +142,7 @@ PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R}
. endif
# Possible values: 13, 14, 15, 16, 17, 18
PGSQL_DEFAULT?= 18
-# Possible values: 8.2, 8.3, 8.4, 8.5
+# Possible values: 8.2, 8.3, 8.4, 8.5, 8.6
PHP_DEFAULT?= 8.4
# Possible values: rust, legacy
. if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64)
diff --git a/archivers/Makefile b/archivers/Makefile
index 05d6ea0918bc..90eee16989af 100644
--- a/archivers/Makefile
+++ b/archivers/Makefile
@@ -180,6 +180,10 @@
SUBDIR += php85-phar
SUBDIR += php85-zip
SUBDIR += php85-zlib
+ SUBDIR += php86-bz2
+ SUBDIR += php86-phar
+ SUBDIR += php86-zip
+ SUBDIR += php86-zlib
SUBDIR += pigz
SUBDIR += pixz
SUBDIR += plakar
diff --git a/archivers/pecl-lzf/Makefile b/archivers/pecl-lzf/Makefile
index 5f7e3ba436df..b25dd2fbcc00 100644
--- a/archivers/pecl-lzf/Makefile
+++ b/archivers/pecl-lzf/Makefile
@@ -12,6 +12,7 @@ LICENSE= PHP301
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= php:pecl
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --enable-lzf
diff --git a/archivers/pecl-rar/Makefile b/archivers/pecl-rar/Makefile
index 0a4adcaf0e27..96d7542ac23c 100644
--- a/archivers/pecl-rar/Makefile
+++ b/archivers/pecl-rar/Makefile
@@ -18,6 +18,7 @@ WWW= https://pecl.php.net/package/rar
LICENSE= PHP301
USES= compiler:c11 php:build,pecl
+IGNORE_WITH_PHP= 86
CFLAGS+= -Wno-error=incompatible-function-pointer-types
diff --git a/archivers/pecl-zstd/Makefile b/archivers/pecl-zstd/Makefile
index 62bf4db6baff..ef319b4247cb 100644
--- a/archivers/pecl-zstd/Makefile
+++ b/archivers/pecl-zstd/Makefile
@@ -13,6 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libzstd.so:archivers/zstd
USES= php:pecl pkgconfig
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --with-libzstd
diff --git a/archivers/php-brotli/Makefile b/archivers/php-brotli/Makefile
index 489eac6b0351..7fa6d19b57d2 100644
--- a/archivers/php-brotli/Makefile
+++ b/archivers/php-brotli/Makefile
@@ -13,6 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libbrotlienc.so:archivers/brotli
USES= php:ext pkgconfig
+IGNORE_WITH_PHP= 86
USE_GITHUB= yes
GH_ACCOUNT= kjdev
diff --git a/archivers/php-lz4/Makefile b/archivers/php-lz4/Makefile
index 37e133c8a8cb..d01018794410 100644
--- a/archivers/php-lz4/Makefile
+++ b/archivers/php-lz4/Makefile
@@ -14,6 +14,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= liblz4.so:archivers/liblz4
USES= php:ext
+IGNORE_WITH_PHP= 86
USE_GITHUB= yes
GH_ACCOUNT= kjdev
diff --git a/archivers/php-zstd/Makefile b/archivers/php-zstd/Makefile
index 017b59e8ecfc..8fe965477c1a 100644
--- a/archivers/php-zstd/Makefile
+++ b/archivers/php-zstd/Makefile
@@ -13,6 +13,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
LIB_DEPENDS= libzstd.so:archivers/zstd
USES= php:ext pkgconfig
+IGNORE_WITH_PHP= 86
USE_GITHUB= yes
GH_ACCOUNT= kjdev
diff --git a/archivers/php86-bz2/Makefile b/archivers/php86-bz2/Makefile
new file mode 100644
index 000000000000..4d428be63999
--- /dev/null
+++ b/archivers/php86-bz2/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= archivers
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -bz2
+
+.include "${MASTERDIR}/Makefile"
diff --git a/archivers/php86-phar/Makefile b/archivers/php86-phar/Makefile
new file mode 100644
index 000000000000..9d5750b8a501
--- /dev/null
+++ b/archivers/php86-phar/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= archivers
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -phar
+
+.include "${MASTERDIR}/Makefile"
diff --git a/archivers/php86-phar/files/patch-config.m4 b/archivers/php86-phar/files/patch-config.m4
new file mode 100644
index 000000000000..13ba9cf818b4
--- /dev/null
+++ b/archivers/php86-phar/files/patch-config.m4
@@ -0,0 +1,11 @@
+--- config.m4.orig 2025-07-01 21:58:05 UTC
++++ config.m4
+@@ -32,8 +32,4 @@ if test "$PHP_PHAR" != "no"; then
+ PHP_ADD_EXTENSION_DEP(phar, spl)
+ PHP_ADD_MAKEFILE_FRAGMENT
+
+- AC_CONFIG_FILES([
+- $ext_dir/phar.1
+- $ext_dir/phar.phar.1
+- ])
+ fi
diff --git a/archivers/php86-phar/files/patch-phar__internal.h b/archivers/php86-phar/files/patch-phar__internal.h
new file mode 100644
index 000000000000..8e78b1e703f8
--- /dev/null
+++ b/archivers/php86-phar/files/patch-phar__internal.h
@@ -0,0 +1,18 @@
+--- phar_internal.h.orig 2025-08-19 05:47:26 UTC
++++ phar_internal.h
+@@ -17,6 +17,9 @@
+ +----------------------------------------------------------------------+
+ */
+
++#ifndef PHAR_PHAR_INTERNAL_H
++#define PHAR_PHAR_INTERNAL_H
++
+ #ifdef HAVE_CONFIG_H
+ #include <config.h>
+ #endif
+@@ -487,3 +490,5 @@ END_EXTERN_C()
+ phar_path_check_result phar_path_check(char **p, size_t *len, const char **error);
+
+ END_EXTERN_C()
++
++#endif /* PHAR_PHAR_INTERNAL_H */
diff --git a/archivers/php86-phar/files/patch-pharzip.h b/archivers/php86-phar/files/patch-pharzip.h
new file mode 100644
index 000000000000..5e0e89f2a844
--- /dev/null
+++ b/archivers/php86-phar/files/patch-pharzip.h
@@ -0,0 +1,19 @@
+--- pharzip.h.orig 2025-08-19 05:41:37 UTC
++++ pharzip.h
+@@ -17,6 +17,10 @@
+ +----------------------------------------------------------------------+
+ */
+
++/* Add missing include guard to avoid multiple inclusion */
++#ifndef PHAR_PHARZIP_H
++#define PHAR_PHARZIP_H
++
+ typedef struct _phar_zip_file_header {
+ char signature[4]; /* local file header signature 4 bytes (0x04034b50) */
+ char zipversion[2]; /* version needed to extract 2 bytes */
+@@ -238,3 +242,5 @@ typedef struct _phar_zip_dir_end {
+ char comment_len[2]; /* .ZIP file comment length 2 bytes */
+ /* .ZIP file comment (variable size) */
+ } phar_zip_dir_end;
++
++#endif /* PHAR_PHARZIP_H */
diff --git a/archivers/php86-zip/Makefile b/archivers/php86-zip/Makefile
new file mode 100644
index 000000000000..6c8680b591b6
--- /dev/null
+++ b/archivers/php86-zip/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= archivers
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -zip
+
+.include "${MASTERDIR}/Makefile"
diff --git a/archivers/php86-zlib/Makefile b/archivers/php86-zlib/Makefile
new file mode 100644
index 000000000000..5c4c52a42954
--- /dev/null
+++ b/archivers/php86-zlib/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= archivers
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -zlib
+
+.include "${MASTERDIR}/Makefile"
diff --git a/archivers/php86-zlib/files/patch-zlib.c b/archivers/php86-zlib/files/patch-zlib.c
new file mode 100644
index 000000000000..fb0e9e44311a
--- /dev/null
+++ b/archivers/php86-zlib/files/patch-zlib.c
@@ -0,0 +1,10 @@
+--- zlib.c.orig 2023-06-06 15:54:29 UTC
++++ zlib.c
+@@ -1380,6 +1380,7 @@ static PHP_MSHUTDOWN_FUNCTION(zlib)
+ /* {{{ PHP_RINIT_FUNCTION */
+ static PHP_RINIT_FUNCTION(zlib)
+ {
++ ZLIBG(output_compression) = 0;
+ ZLIBG(compression_coding) = 0;
+ if (!ZLIBG(handler_registered)) {
+ ZLIBG(output_compression) = ZLIBG(output_compression_default);
diff --git a/converters/Makefile b/converters/Makefile
index 67f72414690a..7c92c2e35959 100644
--- a/converters/Makefile
+++ b/converters/Makefile
@@ -147,6 +147,8 @@
SUBDIR += php84-mbstring
SUBDIR += php85-iconv
SUBDIR += php85-mbstring
+ SUBDIR += php86-iconv
+ SUBDIR += php86-mbstring
SUBDIR += psiconv
SUBDIR += py-bencode.py
SUBDIR += py-bencoder
diff --git a/converters/php-bsdconv/Makefile b/converters/php-bsdconv/Makefile
index 61c13c1f4558..fb2e81227a56 100644
--- a/converters/php-bsdconv/Makefile
+++ b/converters/php-bsdconv/Makefile
@@ -16,6 +16,7 @@ GH_ACCOUNT= buganini
GH_PROJECT= php-${PORTNAME}
USES= php:ext
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --with-bsdconv=${LOCALBASE}
.include <bsd.port.mk>
diff --git a/converters/php86-iconv/Makefile b/converters/php86-iconv/Makefile
new file mode 100644
index 000000000000..0c57261af00f
--- /dev/null
+++ b/converters/php86-iconv/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= converters
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -iconv
+
+.include "${MASTERDIR}/Makefile"
diff --git a/converters/php86-mbstring/Makefile b/converters/php86-mbstring/Makefile
new file mode 100644
index 000000000000..76db950bd332
--- /dev/null
+++ b/converters/php86-mbstring/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= converters
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -mbstring
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/Makefile b/databases/Makefile
index ef726a69c7ff..c4372454de55 100644
--- a/databases/Makefile
+++ b/databases/Makefile
@@ -645,6 +645,18 @@
SUBDIR += php85-pdo_sqlite
SUBDIR += php85-pgsql
SUBDIR += php85-sqlite3
+ SUBDIR += php86-dba
+ SUBDIR += php86-mysqli
+ SUBDIR += php86-odbc
+ SUBDIR += php86-pdo
+ SUBDIR += php86-pdo_dblib
+ SUBDIR += php86-pdo_firebird
+ SUBDIR += php86-pdo_mysql
+ SUBDIR += php86-pdo_odbc
+ SUBDIR += php86-pdo_pgsql
+ SUBDIR += php86-pdo_sqlite
+ SUBDIR += php86-pgsql
+ SUBDIR += php86-sqlite3
SUBDIR += phpliteadmin
SUBDIR += phpminiadmin
SUBDIR += phpmyadmin
diff --git a/databases/dalmp/Makefile b/databases/dalmp/Makefile
index b73a5e3237d1..52095f912270 100644
--- a/databases/dalmp/Makefile
+++ b/databases/dalmp/Makefile
@@ -14,6 +14,7 @@ GH_ACCOUNT= nbari
GH_PROJECT= ${PORTNAME:tu}
USES= php
+IGNORE_WITH_PHP= 86
NO_BUILD= yes
NO_ARCH= yes
diff --git a/databases/pear-Horde_Memcache/Makefile b/databases/pear-Horde_Memcache/Makefile
index 44b886b9a6ad..626d0656f58d 100644
--- a/databases/pear-Horde_Memcache/Makefile
+++ b/databases/pear-Horde_Memcache/Makefile
@@ -8,6 +8,7 @@ WWW= https://pear.horde.org
USES= horde php
USE_PHP= memcache
+IGNORE_WITH_PHP= 86
USE_HORDE_RUN= Horde_Exception
.include <bsd.port.mk>
diff --git a/databases/pecl-couchbase/Makefile b/databases/pecl-couchbase/Makefile
index 2ffe6a665cbc..ff093e91c663 100644
--- a/databases/pecl-couchbase/Makefile
+++ b/databases/pecl-couchbase/Makefile
@@ -13,6 +13,7 @@ LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= cmake:indirect compiler:c++17-lang php:build,pecl
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= COUCHBASE_CMAKE_EXTRA="-DCOUCHBASE_CXX_CLIENT_EMBED_MOZILLA_CA_BUNDLE=OFF"
NO_SHLIB_REQUIRES_GLOB= libcouchbase_php_wrapper.so
diff --git a/databases/pecl-leveldb/Makefile b/databases/pecl-leveldb/Makefile
index df7488161922..9916e5a5bf78 100644
--- a/databases/pecl-leveldb/Makefile
+++ b/databases/pecl-leveldb/Makefile
@@ -12,5 +12,6 @@ LICENSE= PHP301
LIB_DEPENDS= libleveldb.so:databases/leveldb
USES= php:pecl
+IGNORE_WITH_PHP= 86
.include <bsd.port.mk>
diff --git a/databases/pecl-memcache/Makefile b/databases/pecl-memcache/Makefile
index 4e9a9a40171c..0f7bdad8e9c8 100644
--- a/databases/pecl-memcache/Makefile
+++ b/databases/pecl-memcache/Makefile
@@ -12,6 +12,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
USES= dos2unix php:pecl
USE_PHP= session:build zlib:build
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --with-zlib-dir=/usr
USE_CSTD= gnu89
diff --git a/databases/pecl-memcached/Makefile b/databases/pecl-memcached/Makefile
index ae814f7c91e5..1b5fd999986e 100644
--- a/databases/pecl-memcached/Makefile
+++ b/databases/pecl-memcached/Makefile
@@ -15,6 +15,7 @@ LIB_DEPENDS= libmemcached.so:databases/libmemcached
USES= cpe php:build,pecl pkgconfig
USE_PHP= session:build
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --enable-memcached-json \
--enable-memcached-protocol \
diff --git a/databases/pecl-mongodb/Makefile b/databases/pecl-mongodb/Makefile
index b48c277834ad..a0d415ab7423 100644
--- a/databases/pecl-mongodb/Makefile
+++ b/databases/pecl-mongodb/Makefile
@@ -9,5 +9,6 @@ WWW= https://docs.mongodb.org/ecosystem/drivers/php/
LICENSE= APACHE20
USES= gmake localbase php:build,pecl ssl
+IGNORE_WITH_PHP= 86
.include <bsd.port.mk>
diff --git a/databases/pecl-redis/Makefile b/databases/pecl-redis/Makefile
index 2bba2b8a1a2b..a0b7dcea9f26 100644
--- a/databases/pecl-redis/Makefile
+++ b/databases/pecl-redis/Makefile
@@ -11,6 +11,7 @@ LICENSE_FILE= ${WRKSRC}/LICENSE
USES= php:build,pecl
USE_PHP= session:build
+IGNORE_WITH_PHP= 86
OPTIONS_DEFINE= IGBINARY LZ4 ZSTD
OPTIONS_DEFAULT= LZ4 ZSTD
diff --git a/databases/pecl-rrd/Makefile b/databases/pecl-rrd/Makefile
index e813d1476e59..e49d09ef9000 100644
--- a/databases/pecl-rrd/Makefile
+++ b/databases/pecl-rrd/Makefile
@@ -11,6 +11,7 @@ LICENSE= PHP301
LIB_DEPENDS= librrd.so:databases/rrdtool
USES= php:pecl localbase pkgconfig
+IGNORE_WITH_PHP= 86
.include <bsd.port.pre.mk>
diff --git a/databases/php-tarantool/Makefile b/databases/php-tarantool/Makefile
index 32c968b9f9c2..4c42759d2e6b 100644
--- a/databases/php-tarantool/Makefile
+++ b/databases/php-tarantool/Makefile
@@ -11,6 +11,7 @@ LICENSE= BSD2CLAUSE
LICENSE_FILE= ${WRKSRC}/LICENSE
USES= php:ext
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --with-tarantool
diff --git a/databases/php-xapian/Makefile b/databases/php-xapian/Makefile
index 5169352542d4..dc854d037c96 100644
--- a/databases/php-xapian/Makefile
+++ b/databases/php-xapian/Makefile
@@ -17,6 +17,7 @@ BUILD_DEPENDS= xapian-core>=${PORTVERSION}:databases/xapian-core
LIB_DEPENDS= libxapian.so:databases/xapian-core
USES= compiler:c++17-lang libtool php:build,flavors tar:xz
+IGNORE_WITH_PHP= 86
CONFIGURE_ARGS= --datarootdir=${DATADIR} \
--docdir=${DOCSDIR} \
diff --git a/databases/php86-dba/Makefile b/databases/php86-dba/Makefile
new file mode 100644
index 000000000000..e362a2eaa31a
--- /dev/null
+++ b/databases/php86-dba/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -dba
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-dba/files/patch-config.m4 b/databases/php86-dba/files/patch-config.m4
new file mode 100644
index 000000000000..7449b1a88029
--- /dev/null
+++ b/databases/php86-dba/files/patch-config.m4
@@ -0,0 +1,25 @@
+--- config.m4.orig 2024-09-10 16:10:06 UTC
++++ config.m4
+@@ -433,6 +433,14 @@ if test "$PHP_DB4" != "no"; then
+ THIS_PREFIX=$i
+ THIS_INCLUDE=$i/include/db5.3/db.h
+ break
++ elif test -f "$i/include/db5/db.h"; then
++ THIS_PREFIX=$i
++ THIS_INCLUDE=$i/include/db5/db.h
++ break
++ elif test -f "$i/include/db18/db.h"; then
++ THIS_PREFIX=$i
++ THIS_INCLUDE=$i/include/db18/db.h
++ break
+ elif test -f "$i/include/db5.1/db.h"; then
+ THIS_PREFIX=$i
+ THIS_INCLUDE=$i/include/db5.1/db.h
+@@ -480,6 +488,7 @@ if test "$PHP_DB4" != "no"; then
+ db-5.3
+ db-5.1
+ db-5.0
++ db-5
+ db-4.8
+ db-4.7
+ db-4.6
diff --git a/databases/php86-mysqli/Makefile b/databases/php86-mysqli/Makefile
new file mode 100644
index 000000000000..09fa9e16849f
--- /dev/null
+++ b/databases/php86-mysqli/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -mysqli
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-odbc/Makefile b/databases/php86-odbc/Makefile
new file mode 100644
index 000000000000..5b2edda988fe
--- /dev/null
+++ b/databases/php86-odbc/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -odbc
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-odbc/files/patch-config.m4 b/databases/php86-odbc/files/patch-config.m4
new file mode 100644
index 000000000000..82855f945656
--- /dev/null
+++ b/databases/php86-odbc/files/patch-config.m4
@@ -0,0 +1,29 @@
+--- config.m4.orig 2025-09-09 11:09:59 UTC
++++ config.m4
+@@ -15,7 +15,7 @@ PHP_ARG_WITH([ibm-db2],
+ PHP_ARG_WITH([ibm-db2],
+ [for IBM DB2 support],
+ [AS_HELP_STRING([[--with-ibm-db2[=DIR]]],
+- [Include IBM DB2 support [/home/db2inst1/sqllib]])])
++ [Include IBM DB2 support [/home/db2inst1/sqllib]])], [no], [no])
+
+ AS_VAR_IF([PHP_IBM_DB2], [no], [], [
+ AS_VAR_IF([PHP_IBM_DB2], [yes], [
+@@ -57,7 +57,7 @@ PHP_ARG_WITH([custom-odbc],
+ your include dirs. For example, you should define following for Sybase SQL
+ Anywhere 5.5.00 on QNX, prior to running this configure script:
+ CPPFLAGS="-DODBC_QNX -DSQLANY_BUG" LDFLAGS=-lunix
+- CUSTOM_ODBC_LIBS="-ldblib -lodbc"])])
++ CUSTOM_ODBC_LIBS="-ldblib -lodbc"])], [no], [no])
+
+ AS_VAR_IF([PHP_CUSTOM_ODBC], [no], [], [
+ AS_VAR_IF([PHP_CUSTOM_ODBC], [yes], [PHP_CUSTOM_ODBC=/usr/local])
+@@ -76,7 +76,7 @@ PHP_ARG_WITH([iodbc],
+ PHP_ARG_WITH([iodbc],
+ [whether to build with iODBC support],
+ [AS_HELP_STRING([--with-iodbc],
+- [Include iODBC support])])
++ [Include iODBC support])], [no], [no])
+
+ AS_VAR_IF([PHP_IODBC], [no], [], [
+ PKG_CHECK_MODULES([ODBC], [libiodbc])
diff --git a/databases/php86-pdo/Makefile b/databases/php86-pdo/Makefile
new file mode 100644
index 000000000000..b313df4329f8
--- /dev/null
+++ b/databases/php86-pdo/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_dblib/Makefile b/databases/php86-pdo_dblib/Makefile
new file mode 100644
index 000000000000..6b7510a52d63
--- /dev/null
+++ b/databases/php86-pdo_dblib/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_dblib
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_firebird/Makefile b/databases/php86-pdo_firebird/Makefile
new file mode 100644
index 000000000000..b478a344a088
--- /dev/null
+++ b/databases/php86-pdo_firebird/Makefile
@@ -0,0 +1,9 @@
+CATEGORIES= databases
+
+PORTREVISION= 0
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_firebird
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_mysql/Makefile b/databases/php86-pdo_mysql/Makefile
new file mode 100644
index 000000000000..1ec4d7d97c35
--- /dev/null
+++ b/databases/php86-pdo_mysql/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_mysql
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_odbc/Makefile b/databases/php86-pdo_odbc/Makefile
new file mode 100644
index 000000000000..6d06a94b9f8c
--- /dev/null
+++ b/databases/php86-pdo_odbc/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_odbc
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_pgsql/Makefile b/databases/php86-pdo_pgsql/Makefile
new file mode 100644
index 000000000000..cd5a1ecbabc6
--- /dev/null
+++ b/databases/php86-pdo_pgsql/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_pgsql
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pdo_sqlite/Makefile b/databases/php86-pdo_sqlite/Makefile
new file mode 100644
index 000000000000..a3df6c1f5ff5
--- /dev/null
+++ b/databases/php86-pdo_sqlite/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pdo_sqlite
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-pgsql/Makefile b/databases/php86-pgsql/Makefile
new file mode 100644
index 000000000000..20e4530c7d80
--- /dev/null
+++ b/databases/php86-pgsql/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
+PKGNAMESUFFIX= -pgsql
+
+.include "${MASTERDIR}/Makefile"
diff --git a/databases/php86-sqlite3/Makefile b/databases/php86-sqlite3/Makefile
new file mode 100644
index 000000000000..15b5ec191ba8
--- /dev/null
+++ b/databases/php86-sqlite3/Makefile
@@ -0,0 +1,7 @@
+CATEGORIES= databases
+
+MASTERDIR= ${.CURDIR}/../../lang/php86
+
*** 4059 LINES SKIPPED ***