From nobody Fri Dec 22 01:24:50 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Sx8jb5whMz54XBQ; Fri, 22 Dec 2023 01:24:51 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Sx8jb0NJdz3HCL; Fri, 22 Dec 2023 01:24:51 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1703208291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5FGLnM2XEDMqtq46k3sMmtubD9lGB/By/riORYj0N7Y=; b=HQyx6UrV6pHsG+ScPjIXGR5QgvXj/To1yduwk5NbhFF349F+8uMLUgCE2auP8BK3CGFD58 RMJFYOkHW5dcEaQ7A5HWI6UZUuSzqFVvvd3FRwYL4A9H+yGhjtd8RiKhIUnYP5r7a20QEK +NHJbuNuJQhEiEWmUl/l81TstnZsRT6EaNcCqOBC3Q+vku2COhpA0T+nANLwY5apz/ak1f rZjnVqsZFM/Elgdh9ZI5uSO+snkNbQUu5NdWx1stpxHqTJk58VsZhUXyJfSHci44K3M0cM yrgIqt8Q35dTk5zmSOgrj1TA5R9r+f2KEC9dZWWGENiTQic/Zfp9pe98BoQ4lg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1703208291; a=rsa-sha256; cv=none; b=wfEtAsycQ2TBaBaHSnIq1/lm8UKvokKmC/KRCcOLFemGNfHypRHgi24aKvmlNRLSXRTke7 NPnpyPusbbhjatsGwiadQVfPTac/q2oSLG4sIa1C0zXsJGwdn1sQjPEOXK3qPhi/W+2kAc +pgQ9OBEQdYaeGQEnXXDV1H/Z0w+cqHLbeAWOC6AIy+U5ko8Drle1j2+YSqXS6bbkvA17e Nl+rd2ditC02/w+GCiSUJDX9dCrdostbWZ1BNDAnSvaN9U5OTmBQiMK04spY2G1ACJFOKC Nc8B1qi+ykSlOuWsMyPsslAdsbtpBcSw+kBssQlWaYSttGOptxVuckfqXaTIkw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1703208291; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=5FGLnM2XEDMqtq46k3sMmtubD9lGB/By/riORYj0N7Y=; b=K7SVIRUUdntrUuMq0coD3/6w6NeAyBaI8O7ms0lnC3IvjZdiJ7vc98l3dVKVs0L8m8HWnr 4TURW9Cq5padug5iRM4+8w/erucDlEW2VvnXHGY+g407Kh1riF7DeSs6vBDDdMf2Mdx8Y9 SkqIOZN5P+ZK0oNP6sZxqZQ33NFWG0M3nuzNu7I9uIYJ3EoMGZPLVyXrHd98ZkY240pni0 LeOUTfYGWpHL+VLGJ7gPkweqx+IGm8500ucya/eyiKJ8kB27iK1RLeETW0W3EbqhkmHPhF GYLFy9Io9Z0xWw/Jz7Jje+Ws3m4YeP0qcbuyhTCkPJYYEz31jBZWToSrF0F0Xw== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4Sx8jZ6bnpzwLL; Fri, 22 Dec 2023 01:24:50 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 3BM1OoVp053162; Fri, 22 Dec 2023 01:24:50 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 3BM1Oogt053159; Fri, 22 Dec 2023 01:24:50 GMT (envelope-from git) Date: Fri, 22 Dec 2023 01:24:50 GMT Message-Id: <202312220124.3BM1Oogt053159@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Muhammad Moinur Rahman Subject: git: 58de78405733 - main - lang/php83: Update version 8.3.0=>8.3.1 List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: bofh X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 58de78405733ce66390af3d1db0e40e35a0d4355 Auto-Submitted: auto-generated The branch main has been updated by bofh: URL: https://cgit.FreeBSD.org/ports/commit/?id=58de78405733ce66390af3d1db0e40e35a0d4355 commit 58de78405733ce66390af3d1db0e40e35a0d4355 Author: Muhammad Moinur Rahman AuthorDate: 2023-12-21 23:46:58 +0000 Commit: Muhammad Moinur Rahman CommitDate: 2023-12-22 01:24:35 +0000 lang/php83: Update version 8.3.0=>8.3.1 - php modules while build with system pcre fails to run when using apache httpd and mod_php. So OPTIONIZE and add as a non-DEFAULT option. However to my knowledge and experience I haven't faced this with nginx and php-fpm yet. [1] - There is another corner case with apache httpd and mod_php when run on 13.2-RELEASE or newer specially on versions where ASLR is by default turned on. All modules specialy opcache crashes httpd. So add a warning message to advise users to move into php-fpm. [2] Thanks to brnrd@ for the patch. [2] Changelog: https://www.php.net/ChangeLog-8.php#8.3.1 PR: 275522 [1], 268318 [2] Reported by: majo-bugs.freebsd.org@cerny.sk [1], zarychtam@plan-b.pwste.edu.pl [2] --- lang/php83/Makefile | 17 +++++++++++------ lang/php83/distinfo | 6 +++--- lang/php83/files/patch-configure.ac | 12 ++++++------ ...tch-ext_pcre_pcre2lib_sljit_sljitConfigInternal.h | 10 +++++----- lang/php83/pkg-message.mod | 15 ++++++++++----- lang/php83/pkg-plist | 7 +++++++ www/php83-opcache/files/patch-config.m4 | 20 -------------------- 7 files changed, 42 insertions(+), 45 deletions(-) diff --git a/lang/php83/Makefile b/lang/php83/Makefile index 060b7c772f72..f606bdd67a01 100644 --- a/lang/php83/Makefile +++ b/lang/php83/Makefile @@ -1,5 +1,6 @@ PORTNAME= php83 -DISTVERSION= 8.3.0 +DISTVERSION= 8.3.1 +PORTREVISION?= 0 CATEGORIES?= lang devel www MASTER_SITES= PHP/distributions DISTNAME= php-${DISTVERSION} @@ -17,7 +18,6 @@ PHP_VER= 83 CONFLICTS_INSTALL?= php[0-9][0-9]${PKGNAMESUFFIX} .if !defined(PKGNAMESUFFIX) -BUILD_DEPENDS= re2c>0:devel/re2c LIB_DEPENDS= libargon2.so:security/libargon2 \ libpcre2-8.so:devel/pcre2 @@ -29,8 +29,7 @@ CONFIGURE_ARGS+= \ --with-layout=GNU \ --with-libxml \ --with-openssl \ - --with-password-argon2=${LOCALBASE} \ - --with-external-pcre=${LOCALBASE} + --with-password-argon2=${LOCALBASE} USES+= autoreconf:build ssl USE_GNOME= libxml2 @@ -40,8 +39,8 @@ LDFLAGS+= -L${OPENSSLLIB} -lcrypto -lssl LDFLAGS_i386= -Wl,-z,notext OPTIONS_DEFINE+=CGI CLI DEBUG DTRACE EMBED FPM IPV6 LINKTHR \ - MYSQLND NOASLR PHPDBG ZTS -OPTIONS_DEFAULT= CGI CLI DTRACE EMBED FPM LINKTHR MYSQLND + MYSQLND NOASLR PCRE PHPDBG ZTS +OPTIONS_DEFAULT= CGI CLI DTRACE EMBED FPM LINKTHR MYSQLND PCRE OPTIONS_EXCLUDE_DragonFly= DTRACE # ld(1) fails to link probes: Relocations in generic ELF (EM: 0) OPTIONS_EXCLUDE_aarch64= DTRACE @@ -64,6 +63,7 @@ EMBED_DESC= Build embedded library FPM_DESC= Build FPM version LINKTHR_DESC= Link thread lib (for threaded extensions) MYSQLND_DESC= Build with MySQL Native Driver +PCRE_DESC= Use system pcre instead of bundled one PHPDBG_DESC= Interactive PHP debugger ZTS_DESC= Force Zend Thread Safety (ZTS) build @@ -84,6 +84,10 @@ IPV6_CONFIGURE_OFF= --disable-ipv6 LINKTHR_LIBS= -lpthread NOASLR_USES= elfctl MYSQLND_CONFIGURE_ON= --enable-mysqlnd +PCRE_BUILD_DEPENDS= re2c>0:devel/re2c +PCRE_CONFIGURE_ON= --with-external-pcre=${LOCALBASE} +PCRE_PLIST_SUB= BUNDLED_PCRE="@comment " +PCRE_PLIST_SUB_OFF= BUNDLED_PCRE="" PHPDBG_CONFIGURE_ON= --enable-phpdbg PHPDBG_VARS= PHP_SAPI+=phpdbg ZTS_CONFIGURE_ON= --enable-zts @@ -98,6 +102,7 @@ PKGMESSAGE= ${PKGDIR}/pkg-message.mod MODULENAME= libphp SHORTMODNAME= php WARNING= "!!! If you have a threaded Apache, you must build ${PHP_PORT} with ZTS support to enable thread-safety in extensions !!!" +WARNING+= "!!! Consider switching to php-fpm and mod_proxy_fcgi as per Apache httpd recommendations !!!" .endif .include diff --git a/lang/php83/distinfo b/lang/php83/distinfo index d6c31a4c1d21..53ca8a45b507 100644 --- a/lang/php83/distinfo +++ b/lang/php83/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1700688940 -SHA256 (php-8.3.0.tar.xz) = 1db84fec57125aa93638b51bb2b15103e12ac196e2f960f0d124275b2687ea54 -SIZE (php-8.3.0.tar.xz) = 12431612 +TIMESTAMP = 1703155183 +SHA256 (php-8.3.1.tar.xz) = 56445b1771b2ba5b7573453f9e8a9451e2d810b1741a352fa05259733b1e9758 +SIZE (php-8.3.1.tar.xz) = 12444232 diff --git a/lang/php83/files/patch-configure.ac b/lang/php83/files/patch-configure.ac index d2468ec18e55..a616256a55df 100644 --- a/lang/php83/files/patch-configure.ac +++ b/lang/php83/files/patch-configure.ac @@ -1,4 +1,4 @@ ---- configure.ac.orig 2023-09-12 11:29:39 UTC +--- configure.ac.orig 2023-12-20 12:44:38 UTC +++ configure.ac @@ -55,6 +55,7 @@ AH_BOTTOM([ @@ -8,7 +8,7 @@ #endif /* PHP_CONFIG_H */ ]) -@@ -283,7 +284,6 @@ sinclude(Zend/Zend.m4) +@@ -283,7 +284,6 @@ dnl -------------------------------------------------- dnl ---------------------------------------------------------------------------- @@ -16,7 +16,7 @@ PHP_HELP_SEPARATOR([SAPI modules:]) PHP_SHLIB_SUFFIX_NAMES PHP_BUILD_PROGRAM -@@ -567,7 +567,7 @@ dnl Fix for these systems is already included in GCC 7 +@@ -567,7 +567,7 @@ dnl bug #77284. Conservatively don't use ifuncs on Fre dnl dnl At least some versions of FreeBSD seem to have buggy ifunc support, see dnl bug #77284. Conservatively don't use ifuncs on FreeBSD. @@ -25,7 +25,7 @@ AX_GCC_FUNC_ATTRIBUTE([ifunc]) AX_GCC_FUNC_ATTRIBUTE([target]) ]) -@@ -652,7 +652,7 @@ AC_FUNC_STRERROR_R +@@ -652,7 +652,7 @@ dnl Some systems (like OpenSolaris) do not have nanosl AX_FUNC_WHICH_GETHOSTBYNAME_R dnl Some systems (like OpenSolaris) do not have nanosleep in libc. @@ -34,7 +34,7 @@ dnl Haiku does not have network api in libc. PHP_CHECK_FUNC_LIB(setsockopt, network) -@@ -1463,7 +1463,7 @@ EXPANDED_SYSCONFDIR=`eval echo $sysconfdir` +@@ -1463,7 +1463,7 @@ EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CON EXPANDED_DATADIR=$datadir EXPANDED_PHP_CONFIG_FILE_PATH=`eval echo "$PHP_CONFIG_FILE_PATH"` EXPANDED_PHP_CONFIG_FILE_SCAN_DIR=`eval echo "$PHP_CONFIG_FILE_SCAN_DIR"` @@ -43,7 +43,7 @@ exec_prefix=$old_exec_prefix libdir=$old_libdir -@@ -1688,7 +1688,7 @@ PHP_SUBST(all_targets) +@@ -1705,7 +1705,7 @@ PHP_SUBST(install_binary_targets) PHP_SUBST(install_targets) PHP_SUBST(install_binary_targets) diff --git a/lang/php83/files/patch-ext_pcre_pcre2lib_sljit_sljitConfigInternal.h b/lang/php83/files/patch-ext_pcre_pcre2lib_sljit_sljitConfigInternal.h index 12705b62543e..3c39908b647d 100644 --- a/lang/php83/files/patch-ext_pcre_pcre2lib_sljit_sljitConfigInternal.h +++ b/lang/php83/files/patch-ext_pcre_pcre2lib_sljit_sljitConfigInternal.h @@ -1,6 +1,6 @@ ---- ext/pcre/pcre2lib/sljit/sljitConfigInternal.h.orig 2022-08-02 13:57:03 UTC +--- ext/pcre/pcre2lib/sljit/sljitConfigInternal.h.orig 2023-12-20 12:44:38 UTC +++ ext/pcre/pcre2lib/sljit/sljitConfigInternal.h -@@ -303,7 +303,7 @@ extern "C" { +@@ -308,7 +308,7 @@ extern "C" { /* Type of public API functions. */ /*********************************/ @@ -9,9 +9,9 @@ #if (defined SLJIT_CONFIG_STATIC && SLJIT_CONFIG_STATIC) /* Static ABI functions. For all-in-one programs. */ -@@ -333,7 +333,7 @@ extern "C" { - * beware APPLE is known to have removed the code in iOS so - * it will need to be excempted or result in broken builds +@@ -344,7 +344,7 @@ extern "C" { + * system provided method that should be defined below is used + * instead. */ -#if (!defined SLJIT_CACHE_FLUSH && defined __has_builtin) +#if (!defined SLJIT_CACHE_FLUSH && defined __has_builtin && !defined SLJIT_CONFIG_PPC_32) diff --git a/lang/php83/pkg-message.mod b/lang/php83/pkg-message.mod index a0c2c87889a7..8ad98d25b4e6 100644 --- a/lang/php83/pkg-message.mod +++ b/lang/php83/pkg-message.mod @@ -1,5 +1,15 @@ ****************************************************************************** +Consider switching to php-fpm and mod_fast_cgi as per Apache httpd project +recommendation. See https://cwiki.apache.org/confluence/display/HTTPD/PHP-FPM + +****************************************************************************** + +If you are building PHP-based ports in poudriere(8) or Synth with ZTS enabled, +add WITH_MPM=event to /etc/make.conf to prevent build failures. + +****************************************************************************** + Make sure index.php is part of your DirectoryIndex. You should add the following to your Apache configuration file: @@ -12,8 +22,3 @@ You should add the following to your Apache configuration file: ****************************************************************************** - -If you are building PHP-based ports in poudriere(8) or Synth with ZTS enabled, -add WITH_MPM=event to /etc/make.conf to prevent build failures. - -****************************************************************************** diff --git a/lang/php83/pkg-plist b/lang/php83/pkg-plist index 148b08bab605..cac3796b458a 100644 --- a/lang/php83/pkg-plist +++ b/lang/php83/pkg-plist @@ -167,6 +167,13 @@ include/php/ext/libxml/php_libxml.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_vio.h %%MYSQLND%%include/php/ext/mysqlnd/mysqlnd_wireprotocol.h %%MYSQLND%%include/php/ext/mysqlnd/php_mysqlnd.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/config.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_internal.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h +%%BUNDLED_PCRE%%include/php/ext/pcre/pcre2lib/pcre2_ucp.h include/php/ext/pcre/php_pcre.h include/php/ext/random/php_random.h include/php/ext/spl/php_spl.h diff --git a/www/php83-opcache/files/patch-config.m4 b/www/php83-opcache/files/patch-config.m4 deleted file mode 100644 index ac1219142024..000000000000 --- a/www/php83-opcache/files/patch-config.m4 +++ /dev/null @@ -1,20 +0,0 @@ ---- config.m4.orig 2023-06-06 15:54:29 UTC -+++ config.m4 -@@ -35,7 +35,7 @@ if test "$PHP_OPCACHE" != "no"; then - - if test "$PHP_OPCACHE_JIT" = "yes"; then - case $host_cpu in -- i[[34567]]86*|x86*|aarch64) -+ i[[34567]]86*|x86*|aarch64|amd64) - ;; - *) - AC_MSG_WARN([JIT not supported by host architecture]) -@@ -54,7 +54,7 @@ if test "$PHP_OPCACHE" != "no"; then - DASM_FLAGS="-D X64APPLE=1 -D X64=1" - DASM_ARCH="x86" - ;; -- x86_64*) -+ *x86_64*|amd64-*-freebsd*) - DASM_FLAGS="-D X64=1" - DASM_ARCH="x86" - ;;