From 6ca753cbe6cec8ac6d2ada133dd102dbbfa7d548 Mon Sep 17 00:00:00 2001 From: Chen Qi Date: Thu, 13 Mar 2025 18:58:09 -0700 Subject: [PATCH] php: upgrade from 8.2.26 to 8.4.4 0001-ext-opcache-config.m4-enable-opcache.patch is dropped. This patch could be dropped because the new version now uses AC_CACHE_CHECK, and we can just pass ac_cv_xxx to it instead of using a local patch. 0008-ext-imap-config.m4-fix-include-paths.patch is dropped. ext/imap has been removed from php in this new version. See https://github.com/php/php-src/pull/13190. As a result of this removal, the corresponding PACKAGECONFIG is removed from this new version. 0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch is dropped. It has been merged in this new version. Signed-off-by: Chen Qi Signed-off-by: Khem Raj --- ...o-inline-XXH3_hashLong_withSecret-to.patch | 93 ------- ...e.ac-don-t-include-build-libtool.m4.patch} | 6 +- ...ext-opcache-config.m4-enable-opcache.patch | 254 ------------------ ...ar-Makefile.frag-Fix-phar-packaging.patch} | 9 +- ...n.patch => 0003-iconv-fix-detection.patch} | 19 +- ...04-pear-fix-Makefile.frag-for-Yocto.patch} | 10 +- ...i-cli-config.m4-fix-build-directory.patch} | 17 +- ...ext-imap-config.m4-fix-include-paths.patch | 45 ---- .../php/{php_8.2.26.bb => php_8.4.4.bb} | 24 +- 9 files changed, 45 insertions(+), 432 deletions(-) delete mode 100644 meta-oe/recipes-devtools/php/php/0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch rename meta-oe/recipes-devtools/php/php/{0004-configure.ac-don-t-include-build-libtool.m4.patch => 0001-configure.ac-don-t-include-build-libtool.m4.patch} (83%) delete mode 100644 meta-oe/recipes-devtools/php/php/0001-ext-opcache-config.m4-enable-opcache.patch rename meta-oe/recipes-devtools/php/php/{0006-ext-phar-Makefile.frag-Fix-phar-packaging.patch => 0002-ext-phar-Makefile.frag-Fix-phar-packaging.patch} (91%) rename meta-oe/recipes-devtools/php/php/{0010-iconv-fix-detection.patch => 0003-iconv-fix-detection.patch} (64%) rename meta-oe/recipes-devtools/php/php/{0005-pear-fix-Makefile.frag-for-Yocto.patch => 0004-pear-fix-Makefile.frag-for-Yocto.patch} (86%) rename meta-oe/recipes-devtools/php/php/{0007-sapi-cli-config.m4-fix-build-directory.patch => 0005-sapi-cli-config.m4-fix-build-directory.patch} (63%) delete mode 100644 meta-oe/recipes-devtools/php/php/0008-ext-imap-config.m4-fix-include-paths.patch rename meta-oe/recipes-devtools/php/{php_8.2.26.bb => php_8.4.4.bb} (93%) diff --git a/meta-oe/recipes-devtools/php/php/0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch b/meta-oe/recipes-devtools/php/php/0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch deleted file mode 100644 index 5b8c76209a..0000000000 --- a/meta-oe/recipes-devtools/php/php/0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch +++ /dev/null @@ -1,93 +0,0 @@ -From 1eeb59366d6140a799f6051fb9f57d988b81fd5b Mon Sep 17 00:00:00 2001 -From: easyaspi314 -Date: Wed, 12 Apr 2023 13:33:07 +0800 -Subject: [PATCH] Change whether to inline XXH3_hashLong_withSecret to a config - option - -Change whether to inline XXH3_hashLong_withSecret to a config option to fix -GCC 12 -Og. - -Upstream-Status: Submitted [https://github.com/php/php-src/pull/11062] - -Signed-off-by: Mingli Yu ---- - ext/hash/xxhash/xxhash.h | 35 +++++++++++++++++++++++++++++++++-- - 1 file changed, 33 insertions(+), 2 deletions(-) - -diff --git a/ext/hash/xxhash/xxhash.h b/ext/hash/xxhash/xxhash.h -index b5bd2864..8e816c05 100644 ---- a/ext/hash/xxhash/xxhash.h -+++ b/ext/hash/xxhash/xxhash.h -@@ -1375,6 +1375,23 @@ XXH3_128bits_reset_withSecretandSeed(XXH3_state_t* statePtr, - */ - # define XXH_NO_INLINE_HINTS 0 - -+/*! -+ * @def XXH3_INLINE_SECRET -+ * @brief Determines whether to inline the XXH3 withSecret code. -+ * -+ * When the secret size is known, the compiler can improve the performance -+ * of XXH3_64bits_withSecret() and XXH3_128bits_withSecret(). -+ * -+ * However, if the secret size is not known, it doesn't have any benefit. This -+ * happens when xxHash is compiled into a global symbol. Therefore, if -+ * @ref XXH_INLINE_ALL is *not* defined, this will be defined to 0. -+ * -+ * Additionally, this defaults to 0 on GCC 12+, which has an issue with function pointers -+ * that are *sometimes* force inline on -Og, and it is impossible to automatically -+ * detect this optimization level. -+ */ -+# define XXH3_INLINE_SECRET 0 -+ - /*! - * @def XXH32_ENDJMP - * @brief Whether to use a jump for `XXH32_finalize`. -@@ -1439,6 +1456,15 @@ XXH3_128bits_reset_withSecretandSeed(XXH3_state_t* statePtr, - # endif - #endif - -+#ifndef XXH3_INLINE_SECRET -+# if (defined(__GNUC__) && !defined(__clang__) && __GNUC__ >= 12) \ -+ || !defined(XXH_INLINE_ALL) -+# define XXH3_INLINE_SECRET 0 -+# else -+# define XXH3_INLINE_SECRET 1 -+# endif -+#endif -+ - #ifndef XXH32_ENDJMP - /* generally preferable for performance */ - # define XXH32_ENDJMP 0 -@@ -1515,6 +1541,11 @@ static void* XXH_memcpy(void* dest, const void* src, size_t size) - # define XXH_NO_INLINE static - #endif - -+#if XXH3_INLINE_SECRET -+# define XXH3_WITH_SECRET_INLINE XXH_FORCE_INLINE -+#else -+# define XXH3_WITH_SECRET_INLINE XXH_NO_INLINE -+#endif - - - /* ************************************* -@@ -4465,7 +4496,7 @@ XXH3_hashLong_64b_internal(const void* XXH_RESTRICT input, size_t len, - * so that the compiler can properly optimize the vectorized loop. - * This makes a big performance difference for "medium" keys (<1 KB) when using AVX instruction set. - */ --XXH_FORCE_INLINE XXH64_hash_t -+XXH3_WITH_SECRET_INLINE XXH64_hash_t - XXH3_hashLong_64b_withSecret(const void* XXH_RESTRICT input, size_t len, - XXH64_hash_t seed64, const xxh_u8* XXH_RESTRICT secret, size_t secretLen) - { -@@ -5263,7 +5294,7 @@ XXH3_hashLong_128b_default(const void* XXH_RESTRICT input, size_t len, - * It's important for performance to pass @secretLen (when it's static) - * to the compiler, so that it can properly optimize the vectorized loop. - */ --XXH_FORCE_INLINE XXH128_hash_t -+XXH3_WITH_SECRET_INLINE XXH128_hash_t - XXH3_hashLong_128b_withSecret(const void* XXH_RESTRICT input, size_t len, - XXH64_hash_t seed64, - const void* XXH_RESTRICT secret, size_t secretLen) --- -2.25.1 - diff --git a/meta-oe/recipes-devtools/php/php/0004-configure.ac-don-t-include-build-libtool.m4.patch b/meta-oe/recipes-devtools/php/php/0001-configure.ac-don-t-include-build-libtool.m4.patch similarity index 83% rename from meta-oe/recipes-devtools/php/php/0004-configure.ac-don-t-include-build-libtool.m4.patch rename to meta-oe/recipes-devtools/php/php/0001-configure.ac-don-t-include-build-libtool.m4.patch index 19a8bf8e4f..fae8697fd4 100644 --- a/meta-oe/recipes-devtools/php/php/0004-configure.ac-don-t-include-build-libtool.m4.patch +++ b/meta-oe/recipes-devtools/php/php/0001-configure.ac-don-t-include-build-libtool.m4.patch @@ -1,7 +1,7 @@ -From 41ef1121682c245b10df7de4b78c45baf9114c04 Mon Sep 17 00:00:00 2001 +From 6da78888b934dc10720a6e0e520536077cc2aac2 Mon Sep 17 00:00:00 2001 From: Claude Bing Date: Tue, 9 Nov 2021 13:03:46 -0500 -Subject: [PATCH 04/11] configure.ac: don't include build/libtool.m4 +Subject: [PATCH 1/5] configure.ac: don't include build/libtool.m4 we delete build/libtool.m4 before do_configure, we will use libtool.m4 under ACLOCALDIR @@ -17,7 +17,7 @@ Signed-off-by: Claude Bing 1 file changed, 1 deletion(-) diff --git a/configure.ac b/configure.ac -index 90c94323aa..161e7c3f53 100644 +index 9d79720a2..9353e2f6e 100644 --- a/configure.ac +++ b/configure.ac @@ -6,7 +6,6 @@ dnl ---------------------------------------------------------------------------- diff --git a/meta-oe/recipes-devtools/php/php/0001-ext-opcache-config.m4-enable-opcache.patch b/meta-oe/recipes-devtools/php/php/0001-ext-opcache-config.m4-enable-opcache.patch deleted file mode 100644 index 009d4d650f..0000000000 --- a/meta-oe/recipes-devtools/php/php/0001-ext-opcache-config.m4-enable-opcache.patch +++ /dev/null @@ -1,254 +0,0 @@ -From 889583912ddd7abc628f2703892ec4884db6419a Mon Sep 17 00:00:00 2001 -From: Soumya Sambu -Date: Tue, 7 May 2024 08:39:16 +0000 -Subject: [PATCH 01/11] ext/opcache/config.m4: enable opcache - -We can't use AC_TRY_RUN to run programs in a cross compile -environment. Set the variables directly instead since we know -that we'd be running on latest enough linux kernel. - -Upstream-Status: Inappropriate [Configuration] - -Signed-off-by: Anuj Mittal - -update patch to version 7.4.4 -Signed-off-by: Changqing Li - -update patch to version 8.0.12 -fix issue linking with librt -Signed-off-by: Claude Bing - -update patch to version 8.1.0 -Signed-off-by: Mingli Yu - -update patch to version 8.2.18 -Signed-off-by: Soumya Sambu ---- - ext/opcache/config.m4 | 204 ++---------------------------------------- - 1 file changed, 8 insertions(+), 196 deletions(-) - -diff --git a/ext/opcache/config.m4 b/ext/opcache/config.m4 -index 6bf07ad3..5d645b86 100644 ---- a/ext/opcache/config.m4 -+++ b/ext/opcache/config.m4 -@@ -113,209 +113,21 @@ if test "$PHP_OPCACHE" != "no"; then - AC_CHECK_FUNCS([mprotect]) - - AC_MSG_CHECKING(for sysvipc shared memory support) -- AC_RUN_IFELSE([AC_LANG_SOURCE([[ --#include --#include --#include --#include --#include --#include -- --int main(void) { -- pid_t pid; -- int status; -- int ipc_id; -- char *shm; -- struct shmid_ds shmbuf; -- -- ipc_id = shmget(IPC_PRIVATE, 4096, (IPC_CREAT | SHM_R | SHM_W)); -- if (ipc_id == -1) { -- return 1; -- } -- -- shm = shmat(ipc_id, NULL, 0); -- if (shm == (void *)-1) { -- shmctl(ipc_id, IPC_RMID, NULL); -- return 2; -- } -- -- if (shmctl(ipc_id, IPC_STAT, &shmbuf) != 0) { -- shmdt(shm); -- shmctl(ipc_id, IPC_RMID, NULL); -- return 3; -- } -- -- shmbuf.shm_perm.uid = getuid(); -- shmbuf.shm_perm.gid = getgid(); -- shmbuf.shm_perm.mode = 0600; -- -- if (shmctl(ipc_id, IPC_SET, &shmbuf) != 0) { -- shmdt(shm); -- shmctl(ipc_id, IPC_RMID, NULL); -- return 4; -- } -- -- shmctl(ipc_id, IPC_RMID, NULL); -- -- strcpy(shm, "hello"); -- -- pid = fork(); -- if (pid < 0) { -- return 5; -- } else if (pid == 0) { -- strcpy(shm, "bye"); -- return 6; -- } -- if (wait(&status) != pid) { -- return 7; -- } -- if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) { -- return 8; -- } -- if (strcmp(shm, "bye") != 0) { -- return 9; -- } -- return 0; --} --]])],[have_shm_ipc=yes],[have_shm_ipc=no],[have_shm_ipc=no]) -- if test "$have_shm_ipc" = "yes"; then -- AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support]) -- fi -+ AC_DEFINE(HAVE_SHM_IPC, 1, [Define if you have SysV IPC SHM support]) -+ have_shm_ipc=yes - AC_MSG_RESULT([$have_shm_ipc]) - - AC_MSG_CHECKING(for mmap() using MAP_ANON shared memory support) -- AC_RUN_IFELSE([AC_LANG_SOURCE([[ --#include --#include --#include --#include --#include -- --#ifndef MAP_ANON --# ifdef MAP_ANONYMOUS --# define MAP_ANON MAP_ANONYMOUS --# endif --#endif --#ifndef MAP_FAILED --# define MAP_FAILED ((void*)-1) --#endif -- --int main(void) { -- pid_t pid; -- int status; -- char *shm; -- -- shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0); -- if (shm == MAP_FAILED) { -- return 1; -- } -- -- strcpy(shm, "hello"); -- -- pid = fork(); -- if (pid < 0) { -- return 5; -- } else if (pid == 0) { -- strcpy(shm, "bye"); -- return 6; -- } -- if (wait(&status) != pid) { -- return 7; -- } -- if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) { -- return 8; -- } -- if (strcmp(shm, "bye") != 0) { -- return 9; -- } -- return 0; --} --]])],[have_shm_mmap_anon=yes],[have_shm_mmap_anon=no],[ -- case $host_alias in -- *linux*) -- have_shm_mmap_anon=yes -- ;; -- *) -- have_shm_mmap_anon=no -- ;; -- esac --]) -- if test "$have_shm_mmap_anon" = "yes"; then -- AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support]) -- fi -+ AC_DEFINE(HAVE_SHM_MMAP_ANON, 1, [Define if you have mmap(MAP_ANON) SHM support]) -+ have_shm_mmap_anon=yes - AC_MSG_RESULT([$have_shm_mmap_anon]) - - PHP_CHECK_FUNC_LIB(shm_open, rt, root) - AC_MSG_CHECKING(for mmap() using shm_open() shared memory support) -- AC_RUN_IFELSE([AC_LANG_SOURCE([[ --#include --#include --#include --#include --#include --#include --#include --#include --#include -- --#ifndef MAP_FAILED --# define MAP_FAILED ((void*)-1) --#endif -- --int main(void) { -- pid_t pid; -- int status; -- int fd; -- char *shm; -- char tmpname[4096]; -- -- sprintf(tmpname,"/opcache.test.shm.%dXXXXXX", getpid()); -- if (mktemp(tmpname) == NULL) { -- return 1; -- } -- fd = shm_open(tmpname, O_RDWR | O_CREAT, S_IRUSR | S_IWUSR); -- if (fd == -1) { -- return 2; -- } -- if (ftruncate(fd, 4096) < 0) { -- close(fd); -- shm_unlink(tmpname); -- return 3; -- } -- -- shm = mmap(NULL, 4096, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); -- if (shm == MAP_FAILED) { -- return 4; -- } -- shm_unlink(tmpname); -- close(fd); -- -- strcpy(shm, "hello"); -- -- pid = fork(); -- if (pid < 0) { -- return 5; -- } else if (pid == 0) { -- strcpy(shm, "bye"); -- return 6; -- } -- if (wait(&status) != pid) { -- return 7; -- } -- if (!WIFEXITED(status) || WEXITSTATUS(status) != 6) { -- return 8; -- } -- if (strcmp(shm, "bye") != 0) { -- return 9; -- } -- return 0; --} --]])],[have_shm_mmap_posix=yes],[have_shm_mmap_posix=no],[have_shm_mmap_posix=no]) -- if test "$have_shm_mmap_posix" = "yes"; then -- AC_DEFINE(HAVE_SHM_MMAP_POSIX, 1, [Define if you have POSIX mmap() SHM support]) -- PHP_CHECK_LIBRARY(rt, shm_unlink, [PHP_ADD_LIBRARY(rt,1,OPCACHE_SHARED_LIBADD)]) -- fi -- AC_MSG_RESULT([$have_shm_mmap_posix]) -+ AC_DEFINE(HAVE_SHM_MMAP_POSIX, 1, [Define if you have POSIX mmap() SHM support]) -+ AC_MSG_RESULT([yes]) -+ have_shm_mmap_posix=yes -+ PHP_CHECK_LIBRARY(rt, shm_unlink, [PHP_ADD_LIBRARY(rt,1,OPCACHE_SHARED_LIBADD)]) - - AX_CHECK_COMPILE_FLAG([-Wno-implicit-fallthrough], - [PHP_OPCACHE_CFLAGS="$PHP_OPCACHE_CFLAGS -Wno-implicit-fallthrough"],, --- -2.40.0 - diff --git a/meta-oe/recipes-devtools/php/php/0006-ext-phar-Makefile.frag-Fix-phar-packaging.patch b/meta-oe/recipes-devtools/php/php/0002-ext-phar-Makefile.frag-Fix-phar-packaging.patch similarity index 91% rename from meta-oe/recipes-devtools/php/php/0006-ext-phar-Makefile.frag-Fix-phar-packaging.patch rename to meta-oe/recipes-devtools/php/php/0002-ext-phar-Makefile.frag-Fix-phar-packaging.patch index 04bd40f4ff..b2c4f8840f 100644 --- a/meta-oe/recipes-devtools/php/php/0006-ext-phar-Makefile.frag-Fix-phar-packaging.patch +++ b/meta-oe/recipes-devtools/php/php/0002-ext-phar-Makefile.frag-Fix-phar-packaging.patch @@ -1,7 +1,7 @@ -From eab5babdadea487bbbef025068c553f5ba741774 Mon Sep 17 00:00:00 2001 +From f7724d7ccd157058630e6a887798ab6d3e34c6b7 Mon Sep 17 00:00:00 2001 From: Claude Bing Date: Tue, 9 Nov 2021 13:07:25 -0500 -Subject: [PATCH 06/11] ext/phar/Makefile.frag: Fix phar packaging +Subject: [PATCH 2/5] ext/phar/Makefile.frag: Fix phar packaging Inherited from OE-Classic, with some additions to fix host paths leaking into the target package. @@ -19,7 +19,7 @@ Signed-off-by: Claude Bing 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/ext/phar/Makefile.frag b/ext/phar/Makefile.frag -index 7a867dd7..4dbcafd4 100644 +index cedde76df..09d577d73 100644 --- a/ext/phar/Makefile.frag +++ b/ext/phar/Makefile.frag @@ -10,20 +10,9 @@ pharcmd: $(builddir)/phar.php $(builddir)/phar.phar @@ -46,3 +46,6 @@ index 7a867dd7..4dbcafd4 100644 $(builddir)/phar/phar.inc: $(srcdir)/phar/phar.inc -@test -d $(builddir)/phar || mkdir $(builddir)/phar +-- +2.25.1 + diff --git a/meta-oe/recipes-devtools/php/php/0010-iconv-fix-detection.patch b/meta-oe/recipes-devtools/php/php/0003-iconv-fix-detection.patch similarity index 64% rename from meta-oe/recipes-devtools/php/php/0010-iconv-fix-detection.patch rename to meta-oe/recipes-devtools/php/php/0003-iconv-fix-detection.patch index 49fb3a5886..46505cd329 100644 --- a/meta-oe/recipes-devtools/php/php/0010-iconv-fix-detection.patch +++ b/meta-oe/recipes-devtools/php/php/0003-iconv-fix-detection.patch @@ -1,7 +1,7 @@ -From a04aabc5b80371e579fbaffdd417627390d22722 Mon Sep 17 00:00:00 2001 +From 35ac74fce1a60025f8d126783b8aa7014eefdf53 Mon Sep 17 00:00:00 2001 From: Claude Bing Date: Tue, 9 Nov 2021 13:10:33 -0500 -Subject: [PATCH 10/11] iconv: fix detection +Subject: [PATCH 3/5] iconv: fix detection Upstream-Status: Pending @@ -12,23 +12,26 @@ Signed-off-by: Changqing Li update patch to version 8.0.12 Signed-off-by: Claude Bing + +update patch to version 8.4.4 +Signed-off-by: Chen Qi --- build/php.m4 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build/php.m4 b/build/php.m4 -index 93551d9ca7..dba50825fb 100644 +index e45b22b76..1bd3ccceb 100644 --- a/build/php.m4 +++ b/build/php.m4 -@@ -1945,7 +1945,8 @@ AC_DEFUN([PHP_SETUP_ICONV], [ - unset ICONV_DIR +@@ -1820,7 +1820,8 @@ AC_DEFUN([PHP_SETUP_ICONV], [ + [Define to 1 if you have the 'libiconv' function.]) dnl Check libc first if no path is provided in --with-iconv. -- if test "$PHP_ICONV" = "yes"; then +- AS_VAR_IF([PHP_ICONV], [yes], [ + dnl must check against no, not against yes as PHP_ICONV can also include a path, which implies yes -+ if test "$PHP_ICONV" != "no"; then ++ AS_VAR_IF([PHP_ICONV], [no], [], [ dnl Reset LIBS temporarily as it may have already been included -liconv in. - LIBS_save="$LIBS" + LIBS_save=$LIBS LIBS= -- 2.25.1 diff --git a/meta-oe/recipes-devtools/php/php/0005-pear-fix-Makefile.frag-for-Yocto.patch b/meta-oe/recipes-devtools/php/php/0004-pear-fix-Makefile.frag-for-Yocto.patch similarity index 86% rename from meta-oe/recipes-devtools/php/php/0005-pear-fix-Makefile.frag-for-Yocto.patch rename to meta-oe/recipes-devtools/php/php/0004-pear-fix-Makefile.frag-for-Yocto.patch index 37752ef949..23641be2c6 100644 --- a/meta-oe/recipes-devtools/php/php/0005-pear-fix-Makefile.frag-for-Yocto.patch +++ b/meta-oe/recipes-devtools/php/php/0004-pear-fix-Makefile.frag-for-Yocto.patch @@ -1,20 +1,20 @@ -From f22958b4c1348eec3bb4c0f2cbe2d22676e0ad23 Mon Sep 17 00:00:00 2001 +From 35d7d40ac49c96b7a9a19b2f6593abb9f18ade2b Mon Sep 17 00:00:00 2001 From: Claude Bing Date: Tue, 9 Nov 2021 13:04:29 -0500 -Subject: [PATCH 05/11] pear: fix Makefile.frag for Yocto +Subject: [PATCH 4/5] pear: fix Makefile.frag for Yocto + +Upstream-Status: Pending Signed-off-by: Koen Kooi update patch to 8.0.12 Signed-off-by: Claude Bing --- -Upstream-Status: Pending - pear/Makefile.frag | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pear/Makefile.frag b/pear/Makefile.frag -index 9408757a3a..69072f39e0 100644 +index 9408757a3..69072f39e 100644 --- a/pear/Makefile.frag +++ b/pear/Makefile.frag @@ -10,7 +10,7 @@ PEAR_SUFFIX = -ds a$(program_suffix) diff --git a/meta-oe/recipes-devtools/php/php/0007-sapi-cli-config.m4-fix-build-directory.patch b/meta-oe/recipes-devtools/php/php/0005-sapi-cli-config.m4-fix-build-directory.patch similarity index 63% rename from meta-oe/recipes-devtools/php/php/0007-sapi-cli-config.m4-fix-build-directory.patch rename to meta-oe/recipes-devtools/php/php/0005-sapi-cli-config.m4-fix-build-directory.patch index 9776e7f6db..e551f19a48 100644 --- a/meta-oe/recipes-devtools/php/php/0007-sapi-cli-config.m4-fix-build-directory.patch +++ b/meta-oe/recipes-devtools/php/php/0005-sapi-cli-config.m4-fix-build-directory.patch @@ -1,7 +1,7 @@ -From 03aa51625e0d1aa156c2f7cd71503b1f435d35a4 Mon Sep 17 00:00:00 2001 +From 581751f8b612c381a4a7914a33bfc4130853d305 Mon Sep 17 00:00:00 2001 From: Claude Bing Date: Tue, 9 Nov 2021 13:08:06 -0500 -Subject: [PATCH 07/11] sapi/cli/config.m4: fix build directory +Subject: [PATCH 5/5] sapi/cli/config.m4: fix build directory Upstream-Status: Inappropriate @@ -10,23 +10,26 @@ Signed-off-by: Changqing Li update patch to version 8.0.12 Signed-off-by: Claude Bing + +update patch for version 8.4.4 +Signed-off-by: Chen Qi --- sapi/cli/config.m4 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sapi/cli/config.m4 b/sapi/cli/config.m4 -index d17d531683..f2f87f9164 100644 +index 76c2d64e8..0c7436fd9 100644 --- a/sapi/cli/config.m4 +++ b/sapi/cli/config.m4 -@@ -47,7 +47,7 @@ if test "$PHP_CLI" != "no"; then - esac +@@ -50,7 +50,7 @@ if test "$PHP_CLI" != "no"; then + ]) dnl Set executable for tests. - PHP_EXECUTABLE="\$(top_builddir)/\$(SAPI_CLI_PATH)" + PHP_EXECUTABLE="${PHP_NATIVE_DIR}/php" - PHP_SUBST(PHP_EXECUTABLE) - dnl Expose to Makefile. + PHP_SUBST([PHP_EXECUTABLE]) + PHP_SUBST([SAPI_CLI_PATH]) -- 2.25.1 diff --git a/meta-oe/recipes-devtools/php/php/0008-ext-imap-config.m4-fix-include-paths.patch b/meta-oe/recipes-devtools/php/php/0008-ext-imap-config.m4-fix-include-paths.patch deleted file mode 100644 index a1b93a2369..0000000000 --- a/meta-oe/recipes-devtools/php/php/0008-ext-imap-config.m4-fix-include-paths.patch +++ /dev/null @@ -1,45 +0,0 @@ -From c3c20db4415e0f6c4a601d6f9da1f3746a96b301 Mon Sep 17 00:00:00 2001 -From: Claude Bing -Date: Tue, 9 Nov 2021 13:08:58 -0500 -Subject: [PATCH 08/11] ext/imap/config.m4: fix include paths - -Upstream-Status: Pending -Signed-off-by: Koen Kooi - -update patch to version 8.0.12 -Signed-off-by: Claude Bing ---- - ext/imap/config.m4 | 10 ++-------- - 1 file changed, 2 insertions(+), 8 deletions(-) - -diff --git a/ext/imap/config.m4 b/ext/imap/config.m4 -index 5086a312d0..0e938bd544 100644 ---- a/ext/imap/config.m4 -+++ b/ext/imap/config.m4 -@@ -122,7 +122,7 @@ if test "$PHP_IMAP" != "no"; then - PHP_NEW_EXTENSION(imap, php_imap.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) - AC_DEFINE(HAVE_IMAP,1,[ ]) - -- for i in $PHP_IMAP /usr/local /usr; do -+ for i in $PHP_IMAP $PHP_IMAP/usr /usr/local /usr; do - IMAP_INC_CHK() - el[]IMAP_INC_CHK(/include/c-client) - el[]IMAP_INC_CHK(/include/imap) -@@ -211,13 +211,7 @@ if test "$PHP_IMAP" != "no"; then - AC_MSG_ERROR(Cannot find rfc822.h. Please check your c-client installation.) - fi - -- if test ! -r "$IMAP_DIR/c-client/libc-client.a" && test -r "$IMAP_DIR/c-client/c-client.a" ; then -- ln -s "$IMAP_DIR/c-client/c-client.a" "$IMAP_DIR/c-client/libc-client.a" >/dev/null 2>&1 -- elif test ! -r "$IMAP_DIR/$PHP_LIBDIR/libc-client.a" && test -r "$IMAP_DIR/$PHP_LIBDIR/c-client.a"; then -- ln -s "$IMAP_DIR/$PHP_LIBDIR/c-client.a" "$IMAP_DIR/$PHP_LIBDIR/libc-client.a" >/dev/null 2>&1 -- fi -- -- for lib in c-client4 c-client imap; do -+ for lib in /usr/lib c-client4 c-client imap; do - IMAP_LIB=$lib - IMAP_LIB_CHK($PHP_LIBDIR) - IMAP_LIB_CHK(c-client) --- -2.25.1 - diff --git a/meta-oe/recipes-devtools/php/php_8.2.26.bb b/meta-oe/recipes-devtools/php/php_8.4.4.bb similarity index 93% rename from meta-oe/recipes-devtools/php/php_8.2.26.bb rename to meta-oe/recipes-devtools/php/php_8.4.4.bb index 1f1b91b22f..c49780a2a4 100644 --- a/meta-oe/recipes-devtools/php/php_8.2.26.bb +++ b/meta-oe/recipes-devtools/php/php_8.4.4.bb @@ -13,17 +13,14 @@ DEPENDS:class-native = "zlib-native libxml2-native" PHP_MAJOR_VERSION = "${@d.getVar('PV').split('.')[0]}" SRC_URI = "http://php.net/distributions/php-${PV}.tar.bz2 \ - file://0004-configure.ac-don-t-include-build-libtool.m4.patch \ - file://0006-ext-phar-Makefile.frag-Fix-phar-packaging.patch \ - file://0010-iconv-fix-detection.patch \ - file://0001-Change-whether-to-inline-XXH3_hashLong_withSecret-to.patch \ + file://0001-configure.ac-don-t-include-build-libtool.m4.patch \ + file://0002-ext-phar-Makefile.frag-Fix-phar-packaging.patch \ " SRC_URI:append:class-target = " \ - file://0001-ext-opcache-config.m4-enable-opcache.patch \ - file://0005-pear-fix-Makefile.frag-for-Yocto.patch \ - file://0007-sapi-cli-config.m4-fix-build-directory.patch \ - file://0008-ext-imap-config.m4-fix-include-paths.patch \ + file://0003-iconv-fix-detection.patch \ + file://0004-pear-fix-Makefile.frag-for-Yocto.patch \ + file://0005-sapi-cli-config.m4-fix-build-directory.patch \ file://php-fpm.conf \ file://php-fpm-apache.conf \ file://70_mod_php${PHP_MAJOR_VERSION}.conf \ @@ -32,7 +29,7 @@ SRC_URI:append:class-target = " \ S = "${WORKDIR}/php-${PV}" -SRC_URI[sha256sum] = "be57c347d451c905bcb4336832a864d9928dd0e20989b872705fea0ba6476c6b" +SRC_URI[sha256sum] = "192a325fd3ca09b6c528dd6014ee07d803c3162514d4bb0d3e0981d00ac700ec" CVE_STATUS_GROUPS += "CVE_STATUS_PHP" CVE_STATUS_PHP[status] = "fixed-version: The name of this product is exactly the same as github.com/emlog/emlog. CVE can be safely ignored." @@ -74,6 +71,9 @@ EXTRA_OECONF = "--enable-mbstring \ ${COMMON_EXTRA_OECONF} \ " +# Set these values directly to avoid AC_RUN_IFELSE which does not work in cross compilation environment +CACHED_CONFIGUREVARS += "ac_cv_php_cv_shm_ipc=yes ac_cv_php_cv_shm_mmap_anon=yes ac_cv_php_cv_shm_mmap_posix=yes" + EXTRA_OECONF:append:riscv64 = " --with-pcre-jit=no" EXTRA_OECONF:append:riscv32 = " --with-pcre-jit=no" # Needs fibers assembly implemented for rv32 @@ -87,7 +87,7 @@ EXTRA_OECONF:class-native = " \ ${COMMON_EXTRA_OECONF} \ " -PACKAGECONFIG ??= "mysql sqlite3 imap opcache openssl \ +PACKAGECONFIG ??= "mysql sqlite3 opcache openssl \ ${@bb.utils.filter('DISTRO_FEATURES', 'ipv6 pam', d)} \ " PACKAGECONFIG:class-native = "" @@ -107,10 +107,6 @@ PACKAGECONFIG[pgsql] = "--with-pgsql=${STAGING_DIR_TARGET}${exec_prefix},--witho PACKAGECONFIG[soap] = "--enable-soap, --disable-soap, libxml2" PACKAGECONFIG[apache2] = "--with-apxs2=${STAGING_BINDIR_CROSS}/apxs,,apache2-native apache2" PACKAGECONFIG[pam] = ",,libpam" -PACKAGECONFIG[imap] = "--with-imap=${STAGING_DIR_HOST} \ - --with-imap-ssl=${STAGING_DIR_HOST} \ - ,--without-imap --without-imap-ssl \ - ,uw-imap" PACKAGECONFIG[ipv6] = "--enable-ipv6,--disable-ipv6," PACKAGECONFIG[opcache] = "--enable-opcache,--disable-opcache" PACKAGECONFIG[openssl] = "--with-openssl,--without-openssl,openssl"