php8: link PCRE2 JIT usage to actual library configuration

libpcre2's JIT support is controlled with a compile-time flag.
When PHP is compiled against it (external libpcre2 - not PHP's bundled
version) as in our use-case, then it tries to auto-detect whether
JIT support is enalbed or not - but this is done based on a guess
when cross-compiling.

So instead of guessing, we need to tell the actual OpenWrt configuration
of libpcre2 to PHP.

Signed-off-by: Michael Heimpold <mhei@heimpold.de>
This commit is contained in:
Michael Heimpold
2025-07-21 23:37:56 +02:00
parent 0a0f2e884c
commit 331c6bc7ca

View File

@@ -7,7 +7,7 @@ include $(TOPDIR)/rules.mk
PKG_NAME:=php
PKG_VERSION:=8.4.10
PKG_RELEASE:=1
PKG_RELEASE:=2
PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
PKG_LICENSE:=PHP-3.01
@@ -190,6 +190,7 @@ CONFIGURE_ARGS+= \
\
--without-valgrind \
--with-external-pcre \
--$(if $(CONFIG_PCRE2_JIT_ENABLED),with,without)-pcre-jit \
--with-zlib="$(STAGING_DIR)/usr"
ifeq ($(CONFIG_LIBC_USE_GLIBC),y)
@@ -499,7 +500,7 @@ CONFIGURE_VARS+= \
php_cv_cc_rpath="no" \
ac_cv_php_xml2_config_path="$(STAGING_DIR)/host/bin/xml2-config" \
ac_cv_u8t_decompose=yes \
ac_cv_have_pcre2_jit=no
php_cv_have_pcre2_jit=$(if $(CONFIG_PCRE2_JIT_ENABLED),yes,no)
define Package/php8/conffiles
/etc/php.ini