aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMuhammad Moinur Rahman <bofh@FreeBSD.org>2021-12-28 02:26:09 +0000
committerMuhammad Moinur Rahman <bofh@FreeBSD.org>2021-12-28 02:32:09 +0000
commitb68b5084aa6927409730c87cbd618be7b62a74fd (patch)
tree6e3c7cb627434ac89e2debf29e78bd1e4d95c5b0
parent29c87c781a97279355e2cf1b25f088c35d0c7887 (diff)
downloadports-b68b5084aa6927409730c87cbd618be7b62a74fd.tar.gz
ports-b68b5084aa6927409730c87cbd618be7b62a74fd.zip
lang/php80: Update version 8.0.13=>8.0.14
- Refactor with OPTIONSNG Changelog: Core: Fixed bug #81582 (Stringable not implicitly declared if __toString() came from a trait). Fixed bug #81591 (Fatal Error not properly logged in particular cases). Fixed bug #81626 (Error on use static:: in __—ĀallStatic() wrapped to Closure::fromCallable()). Fixed bug #81631 (::class with dynamic class name may yield wrong line number). FPM: Fixed bug #81513 (Future possibility for heap overflow in FPM zlog). GD: Fixed bug #71316 (libpng warning from imagecreatefromstring). IMAP: Fixed bug #81649 (imap_(un)delete accept sequences, not single numbers). OpenSSL: Fixed bug #75725 (./configure: detecting RAND_egd). PCRE: Fixed bug #74604 (Out of bounds in php_pcre_replace_impl). SPL: Fixed bug #81587 (MultipleIterator Segmentation fault w/ SimpleXMLElement attached). Standard: Fixed bug #81618 (dns_get_record fails on FreeBSD for missing type). Fixed bug #81659 (stream_get_contents() may unnecessarily overallocate). Approved by: tz (private email) Relnotes: https://www.php.net/ChangeLog-8.php#8.0.14 Sponsored by: Bounce Experts
-rw-r--r--lang/php80/Makefile104
-rw-r--r--lang/php80/distinfo6
-rw-r--r--lang/php80/files/patch-ext_standard_dns.c21
-rw-r--r--lang/php80/files/patch-ext_standard_php__dns.h24
4 files changed, 36 insertions, 119 deletions
diff --git a/lang/php80/Makefile b/lang/php80/Makefile
index 5991c9b1339d..db8b8cb0e41a 100644
--- a/lang/php80/Makefile
+++ b/lang/php80/Makefile
@@ -1,5 +1,5 @@
PORTNAME= php80
-DISTVERSION= 8.0.13
+DISTVERSION= 8.0.14
PORTREVISION?= 0
CATEGORIES?= lang devel www
MASTER_SITES= PHP
@@ -13,7 +13,6 @@ LICENSE= PHP301
USES+= compiler:c11 tar:xz cpe gnome pkgconfig
CPE_PRODUCT= php
-NO_OPTIONS_SORT=yes
.if !defined(PKGNAMESUFFIX)
LIB_DEPENDS= libpcre2-8.so:devel/pcre2 \
@@ -26,13 +25,15 @@ CONFIGURE_ARGS+=--with-layout=GNU \
--with-libxml \
--with-password-argon2=${LOCALBASE} \
--program-prefix=""
-CPPFLAGS= -I${LOCALBASE}/include
USES+= autoreconf:build
USE_GNOME= libxml2
+CPPFLAGS= -I${LOCALBASE}/include
# PR230207 Allow relocations against read-only segments (override lld default)
LDFLAGS_i386= -Wl,-z,notext
+CONFLICTS= php73 php74
+
OPTIONS_DEFINE+=CLI CGI FPM EMBED PHPDBG DEBUG DTRACE IPV6 MYSQLND MYSQL80 LINKTHR ZTS
OPTIONS_DEFAULT=CLI CGI FPM EMBED MYSQLND LINKTHR DTRACE
OPTIONS_EXCLUDE_DragonFly= DTRACE
@@ -49,26 +50,44 @@ OPTIONS_EXCLUDE_powerpc64_11= DTRACE
OPTIONS_EXCLUDE_powerpc64_12= DTRACE
OPTIONS_EXCLUDE_riscv64= DTRACE
OPTIONS_EXCLUDE_sparc64= DTRACE
+NO_OPTIONS_SORT=yes
OPTIONS_SUB= yes
-CLI_DESC= Build CLI version
CGI_DESC= Build CGI version
-FPM_DESC= Build FPM version
+CLI_DESC= Build CLI version
EMBED_DESC= Build embedded library
-PHPDBG_DESC= Interactive PHP debugger
-MYSQLND_DESC= Build with MySQL Native Driver
-MYSQL80_DESC= Build with MySQL caching password mechanism
+FPM_DESC= Build FPM version
LINKTHR_DESC= Link thread lib (for threaded extensions)
+MYSQL80_DESC= Build with MySQL caching password mechanism
+MYSQLND_DESC= Build with MySQL Native Driver
+PHPDBG_DESC= Interactive PHP debugger
ZTS_DESC= Force Zend Thread Safety (ZTS) build
+CGI_CONFIGURE_OFF=--disable-cgi
+CGI_VARS= PHP_SAPI+=cgi
+CLI_CONFIGURE_OFF=--disable-cli
+CLI_VARS= PHP_SAPI+=cli
+DEBUG_CONFIGURE_ON=--enable-debug
+DTRACE_CONFIGURE_ON=--enable-dtrace
+EMBED_CONFIGURE_ON=--enable-embed
+EMBED_VARS= PHP_SAPI+=embed
+FPM_CONFIGURE_ON=--enable-fpm \
+ --with-fpm-user=${WWWOWN} \
+ --with-fpm-group=${WWWGRP}
+FPM_VARS= PHP_SAPI+=fpm USE_RC_SUBR+=php-fpm
+IPV6_CONFIGURE_OFF=--disable-ipv6
+LINKTHR_LIBS= -lpthread
+MYSQL80_USES= ssl
MYSQL80_CONFIGURE_ON= --with-openssl
MYSQL80_CONFIGURE_ENV= OPENSSL_CFLAGS="-I${OPENSSLINC}" \
OPENSSL_LIBS="-L${OPENSSLLIB} -lssl -lcrypto" \
PHP_OPENSSL=no
MYSQL80_LDFLAGS= -L${OPENSSLLIB} -lcrypto -lssl
-MYSQL80_USES= ssl
-
-CONFLICTS= php73 php74
+MYSQLND_CONFIGURE_ON=--enable-mysqlnd
+PHPDBG_CONFIGURE_ON=--enable-phpdbg
+PHPDBG_VARS= PHP_SAPI+=phpdbg
+ZTS_CONFIGURE_ON=--enable-zts
+ZTS_CONFIGURE_ENV= pthreads_working="yes"
DESTDIRNAME= INSTALL_ROOT
@@ -78,30 +97,6 @@ DESTDIRNAME= INSTALL_ROOT
CONFIGURE_ARGS+=--without-pcre-jit
.endif
-.if ${PORT_OPTIONS:MMYSQLND}
-CONFIGURE_ARGS+=--enable-mysqlnd
-.endif
-
-.if ${PORT_OPTIONS:MCLI}
-PHP_SAPI+= cli
-.else
-CONFIGURE_ARGS+=--disable-cli
-.endif
-
-.if ${PORT_OPTIONS:MCGI}
-PHP_SAPI+= cgi
-.else
-CONFIGURE_ARGS+=--disable-cgi
-.endif
-
-.if ${PORT_OPTIONS:MFPM}
-PHP_SAPI+= fpm
-USE_RC_SUBR+= php-fpm
-CONFIGURE_ARGS+=--enable-fpm \
- --with-fpm-user=${WWWOWN} \
- --with-fpm-group=${WWWGRP}
-.endif
-
.if defined(PKGNAMEPREFIX)
USES+= apache:2.2+
.include "${PORTSDIR}/Mk/Uses/apache.mk"
@@ -117,18 +112,9 @@ SHORTMODNAME= php
WARNING= "!!! If you have a threaded Apache, you must build ${PHP_PORT} with ZTS support to enable thread-safety in extensions !!!"
.endif
-.if ${PORT_OPTIONS:MEMBED}
-PHP_SAPI+= embed
-CONFIGURE_ARGS+=--enable-embed
-.endif
-
-.if ${PORT_OPTIONS:MPHPDBG}
-PHP_SAPI+= phpdbg
-CONFIGURE_ARGS+=--enable-phpdbg
-.if ${PORT_OPTIONS:MDEBUG}
+.if ${PORT_OPTIONS:MPHPDBG} && ${PORT_OPTIONS:MDEBUG}
CONFIGURE_ARGS+=--enable-phpdbg-debug
.endif
-.endif
.if ${PORT_OPTIONS:MCLI} || ${PORT_OPTIONS:MEMBED}
PLIST_SUB+= SAPI_INC=""
@@ -139,30 +125,6 @@ PLIST_SUB+= SAPI_INC="@comment "
CONFIGURE_ENV+= ac_cv_decimal_fp_supported="no" \
lt_cv_path_SED="sed"
-.if ${PORT_OPTIONS:MLINKTHR}
-LIBS+= -lpthread
-.endif
-
-.if ${PORT_OPTIONS:MDEBUG}
-CONFIGURE_ARGS+=--enable-debug
-.endif
-
-.if ${PORT_OPTIONS:MZTS}
-CONFIGURE_ARGS+=--enable-zts
-CONFIGURE_ENV+= pthreads_working="yes"
-.endif
-
-.if ${PORT_OPTIONS:MDTRACE}
-CONFIGURE_ARGS+=--enable-dtrace
-PLIST_SUB+= DTRACE=""
-.else
-PLIST_SUB+= DTRACE="@comment "
-.endif
-
-.if empty(PORT_OPTIONS:MIPV6)
-CONFIGURE_ARGS+=--disable-ipv6
-.endif
-
.if ${PORT_OPTIONS:MMYSQL80}
WARNING= "PHP is now built with MySQL 8.0 support which has caching password mechanism. \
This implies php80-openssl module. Hence php80-openssl can no longer be \
@@ -174,10 +136,10 @@ WARNING= "PHP is now built with MySQL 8.0 support which has caching password mec
post-patch:
@${TOUCH} ${WRKSRC}/ext/php_config.h
@${REINPLACE_CMD} "s|^\(extension_dir\)|; \1|" ${WRKSRC}/php.ini-*
-.if ${PORT_OPTIONS:MFPM}
+
+post-patch-FPM-on:
@${REINPLACE_CMD} -e "s|^;\(pid\)|\1|;s|^;\(pm\.[a-z_]*_servers\)|\1|" \
${WRKSRC}/sapi/fpm/php-fpm.conf.in
-.endif
pre-configure:
@(cd ${WRKSRC} && ${SETENV} MAKE=${MAKE_CMD} ./buildconf --force)
diff --git a/lang/php80/distinfo b/lang/php80/distinfo
index 82e50ea21c8f..2ea5bafd563d 100644
--- a/lang/php80/distinfo
+++ b/lang/php80/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1640541762
-SHA256 (php/php-8.0.13.tar.xz) = cd976805ec2e9198417651027dfe16854ba2c2c388151ab9d4d268513d52ed52
-SIZE (php/php-8.0.13.tar.xz) = 10854284
+TIMESTAMP = 1640270144
+SHA256 (php/php-8.0.14.tar.xz) = fbde8247ac200e4de73449d9fefc8b495d323b5be9c10cdb645fb431c91156e3
+SIZE (php/php-8.0.14.tar.xz) = 10860176
diff --git a/lang/php80/files/patch-ext_standard_dns.c b/lang/php80/files/patch-ext_standard_dns.c
deleted file mode 100644
index 58acda6824e1..000000000000
--- a/lang/php80/files/patch-ext_standard_dns.c
+++ /dev/null
@@ -1,21 +0,0 @@
---- ext/standard/dns.c.orig 2021-10-19 10:34:32 UTC
-+++ ext/standard/dns.c
-@@ -798,6 +798,7 @@ PHP_FUNCTION(dns_get_record)
- zend_long type_param = PHP_DNS_ANY;
- zval *authns = NULL, *addtl = NULL;
- int type_to_fetch;
-+ int dns_errno;
- #if defined(HAVE_DNS_SEARCH)
- struct sockaddr_storage from;
- uint32_t fromsize = sizeof(from);
-@@ -946,8 +947,9 @@ PHP_FUNCTION(dns_get_record)
- n = php_dns_search(handle, hostname, C_IN, type_to_fetch, answer.qb2, sizeof answer);
-
- if (n < 0) {
-+ dns_errno = php_dns_errno(handle);
- php_dns_free_handle(handle);
-- switch (h_errno) {
-+ switch (dns_errno) {
- case NO_DATA:
- case HOST_NOT_FOUND:
- continue;
diff --git a/lang/php80/files/patch-ext_standard_php__dns.h b/lang/php80/files/patch-ext_standard_php__dns.h
deleted file mode 100644
index 11ebd188624e..000000000000
--- a/lang/php80/files/patch-ext_standard_php__dns.h
+++ /dev/null
@@ -1,24 +0,0 @@
---- ext/standard/php_dns.h.orig 2021-10-19 10:34:32 UTC
-+++ ext/standard/php_dns.h
-@@ -24,6 +24,7 @@
- ((int)dns_search(res, dname, class, type, (char *) answer, anslen, (struct sockaddr *)&from, &fromsize))
- #define php_dns_free_handle(res) \
- dns_free(res)
-+#define php_dns_errno(handle) h_errno
-
- #elif defined(HAVE_RES_NSEARCH)
- #define php_dns_search(res, dname, class, type, answer, anslen) \
-@@ -37,11 +38,13 @@
- res_nclose(res); \
- php_dns_free_res(res)
- #endif
-+#define php_dns_errno(handle) handle->res_h_errno
-
- #elif defined(HAVE_RES_SEARCH)
- #define php_dns_search(res, dname, class, type, answer, anslen) \
- res_search(dname, class, type, answer, anslen)
- #define php_dns_free_handle(res) /* noop */
-+#define php_dns_errno(handle) h_errno
-
- #endif
-