git: 8667a82724a9 - main - lang/php83: Update version 8.3.0RC6=>8.3.0

From: Muhammad Moinur Rahman <bofh_at_FreeBSD.org>
Date: Thu, 23 Nov 2023 22:03:08 UTC
The branch main has been updated by bofh:

URL: https://cgit.FreeBSD.org/ports/commit/?id=8667a82724a9c7d2560c438d98f23990d08a08eb

commit 8667a82724a9c7d2560c438d98f23990d08a08eb
Author:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
AuthorDate: 2023-11-22 23:52:22 +0000
Commit:     Muhammad Moinur Rahman <bofh@FreeBSD.org>
CommitDate: 2023-11-23 22:02:57 +0000

    lang/php83: Update version 8.3.0RC6=>8.3.0
    
    - Switch to system pcre
    - Switch to libenchant-2 for enchant extension
    - Switch to panda-cclient for imap extension and remove cclient OPTION
      as this has been marked DEPRECATED
    - Remove option for mysqli as mysqli no longer supports external mysql
    - Switch to libedit for readline extension
    
    Changelog: https://www.php.net/ChangeLog-8.php#8.3.0
---
 archivers/php83-phar/files/patch-config.m4         | 41 ------------
 databases/php83-dba/files/patch-config.m4          | 36 ++---------
 databases/php83-mysqli/files/patch-mysqli__api.c   | 12 ----
 databases/php83-odbc/files/patch-config.m4         | 35 ++++-------
 devel/php83-readline/files/patch-config.m4         | 33 ----------
 devel/php83-readline/files/patch-readline__cli.c   | 13 ----
 graphics/php83-gd/files/patch-gd.c                 | 11 ----
 lang/php83/Makefile                                | 73 +++++++++-------------
 lang/php83/distinfo                                |  6 +-
 lang/php83/files/patch-ext_mysqli_mysqli__api.c    | 12 ----
 lang/php83/files/patch-ext_mysqli_mysqli__nonapi.c | 12 ----
 lang/php83/files/patch-ext_mysqli_mysqli__prop.c   | 12 ----
 lang/php83/pkg-plist                               |  7 ---
 mail/php83-imap/files/patch-config.m4              | 47 --------------
 net/php83-sockets/files/patch-conversions.c        | 14 -----
 sysutils/php83-fileinfo/files/patch-config.m4      | 21 -------
 sysutils/php83-posix/files/patch-posix.c           | 38 -----------
 textproc/php83-enchant/Makefile                    |  5 ++
 textproc/php83-enchant/files/patch-enchant.c       | 11 ----
 textproc/php83-simplexml/files/patch-config.m4     | 41 ------------
 textproc/php83-xsl/Makefile                        |  5 ++
 textproc/php83-xsl/files/patch-php__xsl.h          | 11 ----
 22 files changed, 62 insertions(+), 434 deletions(-)

diff --git a/archivers/php83-phar/files/patch-config.m4 b/archivers/php83-phar/files/patch-config.m4
deleted file mode 100644
index b17f5099072c..000000000000
--- a/archivers/php83-phar/files/patch-config.m4
+++ /dev/null
@@ -1,41 +0,0 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
-+++ config.m4
-@@ -4,8 +4,38 @@ PHP_ARG_ENABLE([phar],
-     [Disable phar support])],
-   [yes])
- 
-+PHP_ARG_WITH(pcre-dir, pcre install prefix,
-+[  --with-pcre-dir           PHAR: pcre install prefix], no, no)
-+
-+
- if test "$PHP_PHAR" != "no"; then
-+
-+  dnl This is PECL build, check if bundled PCRE library is used
-+  old_CPPFLAGS=$CPPFLAGS
-+  CPPFLAGS=$INCLUDES
-+  AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_BUNDLED_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+  ],[
-+    PHP_PCRE_REGEX=yes
-+  ],[
-+    AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+    ],[
-+      PHP_PCRE_REGEX=pecl
-+      PHP_ADD_INCLUDE($PHP_PCRE_DIR/include)
-+    ],[
-+      PHP_PCRE_REGEX=no
-+    ])
-+  ])
-+
-   PHP_NEW_EXTENSION(phar, util.c tar.c zip.c stream.c func_interceptors.c dirstream.c phar.c phar_object.c phar_path_check.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
-+  PHP_HASH=yes
-   AC_MSG_CHECKING([for phar openssl support])
-   if test "$PHP_OPENSSL_SHARED" = "yes"; then
-     AC_MSG_RESULT([no (shared openssl)])
diff --git a/databases/php83-dba/files/patch-config.m4 b/databases/php83-dba/files/patch-config.m4
index f93406046ff3..52274722f660 100644
--- a/databases/php83-dba/files/patch-config.m4
+++ b/databases/php83-dba/files/patch-config.m4
@@ -1,6 +1,6 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
+--- config.m4.orig	2023-11-07 20:02:05 UTC
 +++ config.m4
-@@ -387,6 +387,38 @@ if test "$PHP_DB4" != "no"; then
+@@ -387,6 +387,14 @@ if test "$PHP_DB4" != "no"; then
        THIS_PREFIX=$i
        THIS_INCLUDE=$i/include/db5.3/db.h
        break
@@ -8,43 +8,19 @@
 +      THIS_PREFIX=$i
 +      THIS_INCLUDE=$i/include/db5/db.h
 +      break
-+    elif test -f "$i/include/db48/db.h"; then
++    elif test -f "$i/include/db18/db.h"; then
 +      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db48/db.h
-+      break
-+    elif test -f "$i/include/db47/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db47/db.h
-+      break
-+    elif test -f "$i/include/db46/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db46/db.h
-+      break
-+    elif test -f "$i/include/db44/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db44/db.h
-+      break
-+    elif test -f "$i/include/db43/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db43/db.h
-+      break
-+    elif test -f "$i/include/db42/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db42/db.h
-+      break
-+    elif test -f "$i/include/db41/db.h"; then
-+      THIS_PREFIX=$i
-+      THIS_INCLUDE=$i/include/db41/db.h
++      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
-@@ -429,7 +461,7 @@ if test "$PHP_DB4" != "no"; then
+@@ -429,7 +437,7 @@ if test "$PHP_DB4" != "no"; then
        break
      fi
    done
 -  PHP_DBA_DB_CHECK(4, db-5.3 db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 db-4.2 db-4.1 db-4.0 db-4 db4 db, [(void)db_create((DB**)0, (DB_ENV*)0, 0)])
-+  PHP_DBA_DB_CHECK(4, db-5 db-5.3 db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 db-4.2 db-4.1 db-4.0 db-4 db4 db, [(void)db_create((DB**)0, (DB_ENV*)0, 0)])
++  PHP_DBA_DB_CHECK(4, db-5 db-5.3 db-5.1 db-5.0 db-4.8 db-4.7 db-4.6 db-4.5 db-4.4 db-4.3 db-4.2 db-4.1 db-4.0 db-4 db-18 db4 db, [(void)db_create((DB**)0, (DB_ENV*)0, 0)])
  fi
  PHP_DBA_STD_RESULT(db4,Berkeley DB4)
  
diff --git a/databases/php83-mysqli/files/patch-mysqli__api.c b/databases/php83-mysqli/files/patch-mysqli__api.c
deleted file mode 100644
index a100e8205fb6..000000000000
--- a/databases/php83-mysqli/files/patch-mysqli__api.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- mysqli_api.c.orig	2020-09-29 22:36:51 UTC
-+++ mysqli_api.c
-@@ -29,7 +29,9 @@
- #include "zend_smart_str.h"
- #include "php_mysqli_structs.h"
- #include "mysqli_priv.h"
-+#if defined(MYSQLI_USE_MYSQLND)
- #include "ext/mysqlnd/mysql_float_to_double.h"
-+#endif
- 
- #define ERROR_ARG_POS(arg_num) (getThis() ? (arg_num-1) : (arg_num))
- 
diff --git a/databases/php83-odbc/files/patch-config.m4 b/databases/php83-odbc/files/patch-config.m4
index 1b28c64c9d69..7cb9492b32f9 100644
--- a/databases/php83-odbc/files/patch-config.m4
+++ b/databases/php83-odbc/files/patch-config.m4
@@ -1,17 +1,6 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
+--- config.m4.orig	2023-11-07 20:02:05 UTC
 +++ config.m4
-@@ -91,7 +91,10 @@ AC_DEFUN([PHP_ODBC_FIND_EMPRESS_BCS_LIBS],[
- dnl
- dnl configure options
- dnl
-+PHP_ARG_ENABLE(odbc,,
-+[  --enable-odbc             Enable ODBC support with selected driver])
- 
-+
- PHP_ARG_WITH([odbcver],,
-   [AS_HELP_STRING([[--with-odbcver[=HEX]]],
-     [Force support for the passed ODBC version. A hex number is expected,
-@@ -102,7 +105,7 @@ PHP_ARG_WITH([odbcver],,
+@@ -102,7 +102,7 @@ PHP_ARG_WITH([adabas],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([adabas],,
    [AS_HELP_STRING([[--with-adabas[=DIR]]],
@@ -20,7 +9,7 @@
  
    AC_MSG_CHECKING([for Adabas support])
    if test "$PHP_ADABAS" != "no"; then
-@@ -132,7 +135,7 @@ fi
+@@ -132,7 +132,7 @@ PHP_ARG_WITH([sapdb],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([sapdb],,
    [AS_HELP_STRING([[--with-sapdb[=DIR]]],
@@ -29,7 +18,7 @@
  
    AC_MSG_CHECKING([for SAP DB support])
    if test "$PHP_SAPDB" != "no"; then
-@@ -153,7 +156,7 @@ fi
+@@ -153,7 +153,7 @@ PHP_ARG_WITH([solid],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([solid],,
    [AS_HELP_STRING([[--with-solid[=DIR]]],
@@ -38,7 +27,7 @@
  
    AC_MSG_CHECKING(for Solid support)
    if test "$PHP_SOLID" != "no"; then
-@@ -181,7 +184,7 @@ fi
+@@ -181,7 +181,7 @@ PHP_ARG_WITH([ibm-db2],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([ibm-db2],,
    [AS_HELP_STRING([[--with-ibm-db2[=DIR]]],
@@ -47,7 +36,7 @@
  
    AC_MSG_CHECKING(for IBM DB2 support)
    if test "$PHP_IBM_DB2" != "no"; then
-@@ -222,7 +225,7 @@ if test -z "$ODBC_TYPE"; then
+@@ -222,7 +222,7 @@ PHP_ARG_WITH([empress],,
  PHP_ARG_WITH([empress],,
    [AS_HELP_STRING([[--with-empress[=DIR]]],
      [Include Empress support $EMPRESSPATH (Empress Version >= 8.60
@@ -56,7 +45,7 @@
  
    AC_MSG_CHECKING(for Empress support)
    if test "$PHP_EMPRESS" != "no"; then
-@@ -248,7 +251,7 @@ if test -z "$ODBC_TYPE"; then
+@@ -248,7 +248,7 @@ PHP_ARG_WITH([empress-bcs],,
  PHP_ARG_WITH([empress-bcs],,
    [AS_HELP_STRING([[--with-empress-bcs[=DIR]]],
      [Include Empress Local Access support $EMPRESSPATH (Empress Version >=
@@ -65,7 +54,7 @@
  
    AC_MSG_CHECKING(for Empress local access support)
    if test "$PHP_EMPRESS_BCS" != "no"; then
-@@ -294,7 +297,7 @@ PHP_ARG_WITH([custom-odbc],,
+@@ -294,7 +294,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
@@ -74,7 +63,7 @@
  
    AC_MSG_CHECKING(for a custom ODBC support)
    if test "$PHP_CUSTOM_ODBC" != "no"; then
-@@ -317,7 +320,7 @@ fi
+@@ -317,7 +317,7 @@ PHP_ARG_WITH([iodbc],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([iodbc],,
    [AS_HELP_STRING([--with-iodbc],
@@ -83,7 +72,7 @@
  
    AC_MSG_CHECKING(whether to build with iODBC support)
    if test "$PHP_IODBC" != "no"; then
-@@ -335,7 +338,7 @@ fi
+@@ -335,7 +335,7 @@ PHP_ARG_WITH([esoob],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([esoob],,
    [AS_HELP_STRING([[--with-esoob[=DIR]]],
@@ -92,7 +81,7 @@
  
    AC_MSG_CHECKING(for Easysoft ODBC-ODBC Bridge support)
    if test "$PHP_ESOOB" != "no"; then
-@@ -358,7 +361,7 @@ fi
+@@ -358,7 +358,7 @@ PHP_ARG_WITH([unixODBC],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([unixODBC],,
    [AS_HELP_STRING([--with-unixODBC],
@@ -101,7 +90,7 @@
  
    AC_MSG_CHECKING(whether to build with unixODBC support)
    if test "$PHP_UNIXODBC" != "no"; then
-@@ -386,7 +389,7 @@ fi
+@@ -386,7 +386,7 @@ PHP_ARG_WITH([dbmaker],,
  if test -z "$ODBC_TYPE"; then
  PHP_ARG_WITH([dbmaker],,
    [AS_HELP_STRING([[--with-dbmaker[=DIR]]],
diff --git a/devel/php83-readline/files/patch-config.m4 b/devel/php83-readline/files/patch-config.m4
deleted file mode 100644
index 1031a78360b1..000000000000
--- a/devel/php83-readline/files/patch-config.m4
+++ /dev/null
@@ -1,33 +0,0 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
-+++ config.m4
-@@ -3,16 +3,10 @@ PHP_ARG_WITH([libedit],
-   [AS_HELP_STRING([--with-libedit],
-     [Include libedit readline replacement (CLI/CGI only)])])
- 
--if test "$PHP_LIBEDIT" = "no"; then
-   PHP_ARG_WITH([readline],
-     [for readline support],
-     [AS_HELP_STRING([[--with-readline[=DIR]]],
-       [Include readline support (CLI/CGI only)])])
--else
--  dnl "register" the --with-readline option to prevent invalid "unknown
--  dnl configure option" warning
--  php_with_readline=no
--fi
- 
- if test "$PHP_READLINE" && test "$PHP_READLINE" != "no"; then
-   for i in $PHP_READLINE /usr/local /usr; do
-@@ -77,6 +71,13 @@ if test "$PHP_READLINE" && test "$PHP_READLINE" != "no
- 
-   AC_DEFINE(HAVE_HISTORY_LIST, 1, [ ])
-   AC_DEFINE(HAVE_LIBREADLINE, 1, [ ])
-+
-+  PHP_CHECK_LIBRARY(readline, rl_completion_matches,
-+  [
-+    AC_DEFINE(HAVE_RL_COMPLETION_MATCHES, 1, [ ])
-+  ],[],[
-+    -L$READLINE_DIR/$PHP_LIBDIR $PHP_READLINE_LIBS
-+  ])
- 
- elif test "$PHP_LIBEDIT" != "no"; then
-   if test "$PHP_LIBEDIT" != "yes"; then
diff --git a/devel/php83-readline/files/patch-readline__cli.c b/devel/php83-readline/files/patch-readline__cli.c
deleted file mode 100644
index 650523302696..000000000000
--- a/devel/php83-readline/files/patch-readline__cli.c
+++ /dev/null
@@ -1,13 +0,0 @@
---- readline_cli.c.orig	2023-06-06 15:54:29 UTC
-+++ readline_cli.c
-@@ -19,6 +19,10 @@
- #include "config.h"
- #endif
- 
-+#ifdef HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
- #include "php.h"
- 
- #ifndef HAVE_RL_COMPLETION_MATCHES
diff --git a/graphics/php83-gd/files/patch-gd.c b/graphics/php83-gd/files/patch-gd.c
deleted file mode 100644
index c5c0fe89f9d4..000000000000
--- a/graphics/php83-gd/files/patch-gd.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- gd.c.orig	2023-06-06 15:54:29 UTC
-+++ gd.c
-@@ -80,7 +80,7 @@
- # include FT_FREETYPE_H
- #endif
- 
--#if defined(HAVE_GD_XPM) && defined(HAVE_GD_BUNDLED)
-+#if defined(HAVE_XPM) && defined(HAVE_GD_XPM) && defined(HAVE_GD_BUNDLED)
- # include "X11/xpm.h"
- #endif
- 
diff --git a/lang/php83/Makefile b/lang/php83/Makefile
index d3f8f7f65a0b..060b7c772f72 100644
--- a/lang/php83/Makefile
+++ b/lang/php83/Makefile
@@ -1,8 +1,7 @@
 PORTNAME=	php83
-DISTVERSION=	8.3.0RC6
+DISTVERSION=	8.3.0
 CATEGORIES?=	lang devel www
-MASTER_SITES=	https://downloads.php.net/~jakub/ \
-	https://downloads.php.net/~eric/
+MASTER_SITES=	PHP/distributions
 DISTNAME=	php-${DISTVERSION}
 
 MAINTAINER=	bofh@FreeBSD.org
@@ -11,36 +10,38 @@ WWW=		https://www.php.net/
 
 LICENSE=	PHP301
 
-USES+=		compiler:c11 cpe gnome pkgconfig tar:xz
+USES+=		compiler:c11 cpe gnome localbase pkgconfig tar:xz
 CPE_PRODUCT=	php
 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
 
-GNU_CONFIGURE=		yes
-CONFIGURE_ARGS+=	--disable-all \
-			--program-prefix="" \
-			--with-config-file-scan-dir=${PREFIX}/etc/php \
-			--with-layout=GNU \
-			--with-libxml \
-			--with-openssl \
-			--with-password-argon2=${LOCALBASE}
-DESTDIRNAME=		INSTALL_ROOT
-
-USES+=		autoreconf:build localbase ssl
+GNU_CONFIGURE=	yes
+CONFIGURE_ARGS+=	\
+		--disable-all \
+		--program-prefix="" \
+		--with-config-file-scan-dir=${PREFIX}/etc/php \
+		--with-layout=GNU \
+		--with-libxml \
+		--with-openssl \
+		--with-password-argon2=${LOCALBASE} \
+		--with-external-pcre=${LOCALBASE}
+
+USES+=		autoreconf:build ssl
 USE_GNOME=	libxml2
 
 LDFLAGS+=	-L${OPENSSLLIB} -lcrypto -lssl
 # PR230207 Allow relocations against read-only segments (override lld default)
 LDFLAGS_i386=	-Wl,-z,notext
 
-OPTIONS_DEFINE+=		CGI CLI DEBUG DTRACE EMBED FPM IPV6 LINKTHR \
+OPTIONS_DEFINE+=CGI CLI DEBUG DTRACE EMBED FPM IPV6 LINKTHR \
 				MYSQLND NOASLR PHPDBG ZTS
-OPTIONS_DEFAULT=		CGI CLI DTRACE EMBED FPM LINKTHR MYSQLND
+OPTIONS_DEFAULT=	CGI CLI DTRACE EMBED FPM LINKTHR MYSQLND
 OPTIONS_EXCLUDE_DragonFly=	DTRACE
 # ld(1) fails to link probes: Relocations in generic ELF (EM: 0)
 OPTIONS_EXCLUDE_aarch64=	DTRACE
@@ -88,6 +89,8 @@ PHPDBG_VARS=		PHP_SAPI+=phpdbg
 ZTS_CONFIGURE_ON=	--enable-zts
 ZTS_CONFIGURE_ENV=	pthreads_working="yes"
 
+DESTDIRNAME=	INSTALL_ROOT
+
 .if defined(PKGNAMEPREFIX)
 USES+=			apache
 PLIST=			${PKGDIR}/pkg-plist.mod
@@ -267,9 +270,9 @@ USE_GNOME=	libxml2
 .endif
 
 .if ${PHP_MODNAME} == "enchant"
-LIB_DEPENDS+=		libenchant.so:textproc/enchant
-CONFIGURE_ARGS+=	--with-enchant=${LOCALBASE}
-USES+=			pkgconfig
+LIB_DEPENDS+=   libenchant-2.so:textproc/enchant2
+CONFIGURE_ARGS+=--with-enchant=${LOCALBASE}
+USES+=		pkgconfig
 .endif
 
 .if ${PHP_MODNAME} == "exif"
@@ -347,13 +350,7 @@ USES+=		iconv:translit
 
 .if ${PHP_MODNAME} == "imap"
 PHP_MOD_PRIO=		30
-OPTIONS_RADIO=		CLIENT
-OPTIONS_RADIO_CLIENT=	CCLIENT PANDA
-OPTIONS_DEFAULT=	PANDA
-CCLIENT_DESC=		Uses the original but unmaintained cclient
-PANDA_DESC=		Uses the forked panda-cclient instead of the original cclient
-PANDA_LIB_DEPENDS=	libc-client.so.2010:mail/panda-cclient
-PANDA_LIB_DEPENDS_OFF=	libc-client4.so.9:mail/cclient
+LIB_DEPENDS+=	libc-client.so.2010:mail/panda-cclient
 
 CONFIGURE_ARGS+=	--with-imap-ssl=${OPENSSLBASE} \
 			--with-imap=${LOCALBASE}
@@ -378,8 +375,8 @@ BUILD_DEPENDS=		re2c:devel/re2c
 .endif
 
 .if ${PHP_MODNAME} == "ldap"
-CONFIGURE_ARGS+=	--with-ldap-sasl=${LOCALBASE} \
-			--with-ldap=${LOCALBASE}
+LIB_DEPENDS+=libsasl2.so:security/cyrus-sasl2
+CONFIGURE_ARGS+=--with-ldap=${LOCALBASE} --with-ldap-sasl=${LOCALBASE}
 USES+=	ldap
 .endif
 
@@ -398,20 +395,13 @@ PHP_HEADER_DIRS=	libmbfl libmbfl/filters libmbfl/mbfl libmbfl/nls
 .endif
 
 .if ${PHP_MODNAME} == "mysqli"
-OPTIONS_DEFINE=		MYSQLND
-OPTIONS_DEFAULT=	MYSQLND
-
-MYSQLND_DESC=		Use MySQL Native Driver
-MYSQLND_CONFIGURE_ON=	--with-mysqli=mysqlnd
-MYSQLND_CONFIGURE_OFF=	--with-mysqli=${LOCALBASE}/bin/mysql_config
-MYSQLND_USES_OFF=	mysql
+CONFIGURE_ARGS+=	--with-mysqli
 .endif
 
 .if ${PHP_MODNAME} == "odbc"
 LIB_DEPENDS+=	libodbc.so:databases/unixODBC
 
-CONFIGURE_ARGS+=	--enable-odbc \
-			--with-unixODBC=${LOCALBASE}
+CONFIGURE_ARGS+= --with-unixODBC=${LOCALBASE}
 .endif
 
 .if ${PHP_MODNAME} == "opcache"
@@ -504,8 +494,8 @@ CONFIGURE_ARGS+=	--with-pspell=${LOCALBASE}
 .endif
 
 .if ${PHP_MODNAME} == "readline"
-CONFIGURE_ARGS+=	--with-readline=/usr
-USES+=			readline
+CONFIGURE_ARGS+=--with-libedit
+USES+=		libedit
 .endif
 
 .if ${PHP_MODNAME} == "session"
@@ -622,8 +612,7 @@ USE_PHP=	dom:build xml:build
 .if ${PHP_MODNAME} == "zip"
 LIB_DEPENDS+=	libzip.so:archivers/libzip
 
-CONFIGURE_ARGS+=	--with-zip \
-			--with-zlib-dir=/usr
+CONFIGURE_ARGS+=	--with-zip
 USES+=			pkgconfig
 .endif
 
diff --git a/lang/php83/distinfo b/lang/php83/distinfo
index 85b807cbb228..d6c31a4c1d21 100644
--- a/lang/php83/distinfo
+++ b/lang/php83/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1699700741
-SHA256 (php-8.3.0RC6.tar.xz) = 1e7b5dcfebc4921ec44209c1e08ae71b6b10e5b1b6b895bb4f76b44486c705ed
-SIZE (php-8.3.0RC6.tar.xz) = 12438800
+TIMESTAMP = 1700688940
+SHA256 (php-8.3.0.tar.xz) = 1db84fec57125aa93638b51bb2b15103e12ac196e2f960f0d124275b2687ea54
+SIZE (php-8.3.0.tar.xz) = 12431612
diff --git a/lang/php83/files/patch-ext_mysqli_mysqli__api.c b/lang/php83/files/patch-ext_mysqli_mysqli__api.c
deleted file mode 100644
index 535503954e3d..000000000000
--- a/lang/php83/files/patch-ext_mysqli_mysqli__api.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- ext/mysqli/mysqli_api.c.orig	2020-09-29 22:36:51 UTC
-+++ ext/mysqli/mysqli_api.c
-@@ -29,7 +29,9 @@
- #include "zend_smart_str.h"
- #include "php_mysqli_structs.h"
- #include "mysqli_priv.h"
-+#if defined(MYSQLI_USE_MYSQLND)
- #include "ext/mysqlnd/mysql_float_to_double.h"
-+#endif
- 
- #define ERROR_ARG_POS(arg_num) (getThis() ? (arg_num-1) : (arg_num))
- 
diff --git a/lang/php83/files/patch-ext_mysqli_mysqli__nonapi.c b/lang/php83/files/patch-ext_mysqli_mysqli__nonapi.c
deleted file mode 100644
index 83d0d8dfc8cb..000000000000
--- a/lang/php83/files/patch-ext_mysqli_mysqli__nonapi.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- ext/mysqli/mysqli_nonapi.c.orig	2022-08-02 13:57:03 UTC
-+++ ext/mysqli/mysqli_nonapi.c
-@@ -26,7 +26,9 @@
- #include "php_ini.h"
- #include "ext/standard/info.h"
- #include "zend_smart_str.h"
-+#if defined(MYSQLI_USE_MYSQLND)
- #include "php_mysqli_structs.h"
-+#endif
- #include "mysqli_priv.h"
- #define ERROR_ARG_POS(arg_num) (getThis() ? (arg_num-1) : (arg_num))
- 
diff --git a/lang/php83/files/patch-ext_mysqli_mysqli__prop.c b/lang/php83/files/patch-ext_mysqli_mysqli__prop.c
deleted file mode 100644
index bc201d57981e..000000000000
--- a/lang/php83/files/patch-ext_mysqli_mysqli__prop.c
+++ /dev/null
@@ -1,12 +0,0 @@
---- ext/mysqli/mysqli_prop.c.orig	2022-08-02 13:57:03 UTC
-+++ ext/mysqli/mysqli_prop.c
-@@ -24,7 +24,9 @@
- #include "php.h"
- #include "php_ini.h"
- #include "ext/standard/info.h"
-+#if defined(MYSQLI_USE_MYSQLND)
- #include "php_mysqli_structs.h"
-+#endif
- #include "mysqli_priv.h"
- 
- #define CHECK_STATUS(value, quiet) \
diff --git a/lang/php83/pkg-plist b/lang/php83/pkg-plist
index a01d7361c7c7..148b08bab605 100644
--- a/lang/php83/pkg-plist
+++ b/lang/php83/pkg-plist
@@ -167,13 +167,6 @@ 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
-include/php/ext/pcre/pcre2lib/config.h
-include/php/ext/pcre/pcre2lib/pcre2.h
-include/php/ext/pcre/pcre2lib/pcre2_internal.h
-include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h
-include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h
-include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h
-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/mail/php83-imap/files/patch-config.m4 b/mail/php83-imap/files/patch-config.m4
deleted file mode 100644
index 18c6da8e6e00..000000000000
--- a/mail/php83-imap/files/patch-config.m4
+++ /dev/null
@@ -1,47 +0,0 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
-+++ config.m4
-@@ -117,6 +117,13 @@ PHP_ARG_WITH([imap-ssl],
-   [no],
-   [no])
- 
-+PHP_ARG_WITH([pcre-dir],
-+  [pcre install prefix],
-+  [AS_HELP_STRING([[--with-pcre-dir]],
-+    [IMAP: pcre install prefix])],
-+  [no],
-+  [no])
-+
- if test "$PHP_IMAP" != "no"; then
-     PHP_SUBST(IMAP_SHARED_LIBADD)
-     PHP_NEW_EXTENSION(imap, php_imap.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
-@@ -131,6 +138,30 @@ if test "$PHP_IMAP" != "no"; then
-       el[]IMAP_INC_CHK(/c-client)
-       fi
-     done
-+
-+  dnl This is PECL build, check if bundled PCRE library is used
-+  old_CPPFLAGS=$CPPFLAGS
-+  CPPFLAGS=$INCLUDES
-+  AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_BUNDLED_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+  ],[
-+    PHP_PCRE_REGEX=yes
-+  ],[
-+    AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+    ],[
-+      PHP_PCRE_REGEX=pecl
-+      PHP_ADD_INCLUDE($PHP_PCRE_DIR/include)
-+    ],[
-+      PHP_PCRE_REGEX=no
-+    ])
-+  ])
- 
-     dnl Check for c-client version 2004
-     AC_EGREP_HEADER(mail_fetch_overview_sequence, $IMAP_INC_DIR/mail.h, [
diff --git a/net/php83-sockets/files/patch-conversions.c b/net/php83-sockets/files/patch-conversions.c
deleted file mode 100644
index 999e26343986..000000000000
--- a/net/php83-sockets/files/patch-conversions.c
+++ /dev/null
@@ -1,14 +0,0 @@
---- conversions.c.orig	2023-06-06 15:54:29 UTC
-+++ conversions.c
-@@ -1325,11 +1325,6 @@ static const field_descriptor descriptors_ucred[] = {
- 		{"uid", sizeof("uid"), 1, offsetof(struct sockcred2, sc_euid), from_zval_write_uid_t, to_zval_read_uid_t},
- 		/* the type gid_t is the same as uid_t: */
- 		{"gid", sizeof("gid"), 1, offsetof(struct sockcred2, sc_egid), from_zval_write_uid_t, to_zval_read_uid_t},
--#elif defined(LOCAL_CREDS)
--		{"pid", sizeof("pid"), 1, offsetof(struct sockcred, sc_pid), from_zval_write_pid_t, to_zval_read_pid_t},
--		{"uid", sizeof("uid"), 1, offsetof(struct sockcred, sc_euid), from_zval_write_uid_t, to_zval_read_uid_t},
--		/* the type gid_t is the same as uid_t: */
--		{"gid", sizeof("gid"), 1, offsetof(struct sockcred, sc_egid), from_zval_write_uid_t, to_zval_read_uid_t},
- #elif defined(ANC_CREDS_CMSGCRED)
- 		{"pid", sizeof("pid"), 1, offsetof(struct cmsgcred, cmcred_pid), from_zval_write_pid_t, to_zval_read_pid_t},
- 		{"uid", sizeof("uid"), 1, offsetof(struct cmsgcred, cmcred_uid), from_zval_write_uid_t, to_zval_read_uid_t},
diff --git a/sysutils/php83-fileinfo/files/patch-config.m4 b/sysutils/php83-fileinfo/files/patch-config.m4
deleted file mode 100644
index 042170100462..000000000000
--- a/sysutils/php83-fileinfo/files/patch-config.m4
+++ /dev/null
@@ -1,21 +0,0 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
-+++ config.m4
-@@ -4,6 +4,9 @@ PHP_ARG_ENABLE([fileinfo],
-     [Disable fileinfo support])],
-   [yes])
- 
-+PHP_ARG_WITH(pcre-dir, pcre install prefix,
-+[  --with-pcre-dir           FILEINFO: pcre install prefix], no, no)
-+
- if test "$PHP_FILEINFO" != "no"; then
- 
-   libmagic_sources=" \
-@@ -48,6 +51,8 @@ int main(void)
-     AC_MSG_NOTICE(using libmagic strcasestr implementation)
-     libmagic_sources="$libmagic_sources libmagic/strcasestr.c"
-   ],[AC_MSG_RESULT([skipped, cross-compiling])])
-+
-+  PHP_ADD_INCLUDE($PHP_PCRE_DIR/include)
- 
-   PHP_NEW_EXTENSION(fileinfo, fileinfo.c php_libmagic.c $libmagic_sources, $ext_shared,,-I@ext_srcdir@/libmagic)
-   PHP_ADD_BUILD_DIR($ext_builddir/libmagic)
diff --git a/sysutils/php83-posix/files/patch-posix.c b/sysutils/php83-posix/files/patch-posix.c
deleted file mode 100644
index bf034ba887b4..000000000000
--- a/sysutils/php83-posix/files/patch-posix.c
+++ /dev/null
@@ -1,38 +0,0 @@
---- posix.c.orig	2023-06-06 15:54:29 UTC
-+++ posix.c
-@@ -779,7 +779,7 @@ PHP_FUNCTION(posix_getgrnam)
- #if defined(ZTS) && defined(HAVE_GETGRNAM_R) && defined(_SC_GETGR_R_SIZE_MAX)
- 	buflen = sysconf(_SC_GETGR_R_SIZE_MAX);
- 	if (buflen < 1) {
--		RETURN_FALSE;
-+		buflen = 1024;
- 	}
- 	buf = emalloc(buflen);
- try_again:
-@@ -835,7 +835,7 @@ PHP_FUNCTION(posix_getgrgid)
- 
- 	grbuflen = sysconf(_SC_GETGR_R_SIZE_MAX);
- 	if (grbuflen < 1) {
--		RETURN_FALSE;
-+		grbuflen = 1024;
- 	}
- 
- 	grbuf = emalloc(grbuflen);
-@@ -909,7 +909,7 @@ PHP_FUNCTION(posix_getpwnam)
- #if defined(ZTS) && defined(_SC_GETPW_R_SIZE_MAX) && defined(HAVE_GETPWNAM_R)
- 	buflen = sysconf(_SC_GETPW_R_SIZE_MAX);
- 	if (buflen < 1) {
--		RETURN_FALSE;
-+		buflen = 1024;
- 	}
- 	buf = emalloc(buflen);
- 	pw = &pwbuf;
-@@ -964,7 +964,7 @@ PHP_FUNCTION(posix_getpwuid)
- #if defined(ZTS) && defined(_SC_GETPW_R_SIZE_MAX) && defined(HAVE_GETPWUID_R)
- 	pwbuflen = sysconf(_SC_GETPW_R_SIZE_MAX);
- 	if (pwbuflen < 1) {
--		RETURN_FALSE;
-+		pwbuflen = 1024;
- 	}
- 	pwbuf = emalloc(pwbuflen);
- 
diff --git a/textproc/php83-enchant/Makefile b/textproc/php83-enchant/Makefile
index 1cd5744b4173..3788e2909afd 100644
--- a/textproc/php83-enchant/Makefile
+++ b/textproc/php83-enchant/Makefile
@@ -4,4 +4,9 @@ MASTERDIR=	${.CURDIR}/../../lang/php83
 
 PKGNAMESUFFIX=	-enchant
 
+post-patch:
+	${REINPLACE_CMD} -e \
+		's|#include "../spl/spl_exceptions.h"|#include "ext/spl/spl_exceptions.h"|g' \
+		${WRKSRC}/enchant.c
+
 .include "${MASTERDIR}/Makefile"
diff --git a/textproc/php83-enchant/files/patch-enchant.c b/textproc/php83-enchant/files/patch-enchant.c
deleted file mode 100644
index b43d7930efde..000000000000
--- a/textproc/php83-enchant/files/patch-enchant.c
+++ /dev/null
@@ -1,11 +0,0 @@
---- enchant.c.orig	2023-06-06 15:54:29 UTC
-+++ enchant.c
-@@ -23,7 +23,7 @@
- #include "php_ini.h"
- #include "ext/standard/info.h"
- #include "Zend/zend_exceptions.h"
--#include "../spl/spl_exceptions.h"
-+#include "ext/spl/spl_exceptions.h"
- #include <enchant.h>
- #include "php_enchant.h"
- 
diff --git a/textproc/php83-simplexml/files/patch-config.m4 b/textproc/php83-simplexml/files/patch-config.m4
deleted file mode 100644
index 710e56e7b57c..000000000000
--- a/textproc/php83-simplexml/files/patch-config.m4
+++ /dev/null
@@ -1,41 +0,0 @@
---- config.m4.orig	2023-06-06 15:54:29 UTC
-+++ config.m4
-@@ -4,7 +4,38 @@ PHP_ARG_ENABLE([simplexml],
-     [Disable SimpleXML support])],
-   [yes])
- 
-+PHP_ARG_ENABLE([pcre-dir],
-+  [pcre install prefix],
-+  [AS_HELP_STRING([--with-pcre-dir],
-+    [SimpleXML: pcre install dir])],
-+  [no],
-+  [no])
-+
- if test "$PHP_SIMPLEXML" != "no"; then
-+
-+  dnl This is PECL build, check if bundled PCRE library is used
-+  old_CPPFLAGS=$CPPFLAGS
-+  CPPFLAGS=$INCLUDES
-+  AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_BUNDLED_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+  ],[
-+    PHP_PCRE_REGEX=yes
-+  ],[
-+    AC_EGREP_CPP(yes,[
-+#include <main/php_config.h>
-+#if defined(HAVE_PCRE) && !defined(COMPILE_DL_PCRE)
-+yes
-+#endif
-+    ],[
-+      PHP_PCRE_REGEX=pecl
-+      PHP_ADD_INCLUDE($PHP_PCRE_DIR/include)
-+    ],[
-+      PHP_PCRE_REGEX=no
-+    ])
-+  ])
- 
-   if test "$PHP_LIBXML" = "no"; then
-     AC_MSG_ERROR([SimpleXML extension requires LIBXML extension, add --with-libxml])
diff --git a/textproc/php83-xsl/Makefile b/textproc/php83-xsl/Makefile
index f96e320bf41d..13cf30a12fa5 100644
--- a/textproc/php83-xsl/Makefile
+++ b/textproc/php83-xsl/Makefile
@@ -4,4 +4,9 @@ MASTERDIR=	${.CURDIR}/../../lang/php83
 
 PKGNAMESUFFIX=	-xsl
 
+post-patch:
+	${REINPLACE_CMD} -e \
+		's|#include "../dom/xml_common.h"|#include "ext/dom/xml_common.h"|g' \
+		${WRKSRC}/php_xsl.h
+
 .include "${MASTERDIR}/Makefile"
diff --git a/textproc/php83-xsl/files/patch-php__xsl.h b/textproc/php83-xsl/files/patch-php__xsl.h
deleted file mode 100644
index 69f1140af49d..000000000000
--- a/textproc/php83-xsl/files/patch-php__xsl.h
+++ /dev/null
@@ -1,11 +0,0 @@
---- php_xsl.h.orig	2020-10-16 22:10:29 UTC
-+++ php_xsl.h
-@@ -37,7 +37,7 @@ extern zend_module_entry xsl_module_entr
- #include <libexslt/exsltconfig.h>
- #endif
- 
--#include "../dom/xml_common.h"
-+#include "ext/dom/xml_common.h"
- 
- #include <libxslt/extensions.h>
- #include <libxml/xpathInternals.h>