From fae504bb3cddd7cf8f812fcb1103843963951719 Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sun, 19 Jul 2026 16:36:50 +0100 Subject: [PATCH 1/2] ext/gd: conflicting iconv_t typedef breaking the Solaris build. The gd 2.4 sync guarded gdkanji.c's 'typedef void *iconv_t' fallback with HAVE_ICONV_T_DEF, which the bundled build never defined. On Solaris declares iconv_t as a struct pointer, so it clashed. Define HAVE_ICONV_T_DEF when already provides iconv_t. --- ext/gd/config.m4 | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/ext/gd/config.m4 b/ext/gd/config.m4 index b32735bc4a69..17f508be2a9a 100644 --- a/ext/gd/config.m4 +++ b/ext/gd/config.m4 @@ -394,6 +394,14 @@ if test "$PHP_GD" != "no"; then AC_DEFINE([HAVE_GD_PNG_GET_VERSION_STRING], [1], [Define to 1 if GD library has the 'gdPngGetVersionString' function.]) + dnl Some systems (e.g. Solaris) declare iconv_t in as something + dnl other than 'void *'. The bundled libgd/gdkanji.c only falls back to its + dnl own 'typedef void *iconv_t' when HAVE_ICONV_T_DEF is undefined, so detect + dnl the system definition to avoid a conflicting typedef. + AC_EGREP_HEADER([typedef.*iconv_t], [iconv.h], + [AC_DEFINE([HAVE_ICONV_T_DEF], [1], + [Define to 1 if defines iconv_t.])]) + dnl Various checks for GD features PHP_SETUP_ZLIB([GD_SHARED_LIBADD]) PHP_GD_PNG From 1efae0dc32dc32e1038a65df0ed88127be41ed9a Mon Sep 17 00:00:00 2001 From: David Carlier Date: Sun, 19 Jul 2026 16:40:45 +0100 Subject: [PATCH 2/2] ci: retrigger build.