[Buildroot] [PATCH v3] package/php-lua: fix build with PHP8/GCC14

Baruch Siach baruch at tkos.co.il
Mon Sep 8 13:32:26 UTC 2025


Hi Thomas,

On Mon, Sep 08 2025, Thomas Perale wrote:
> In reply of:
>> On Mon, Sep 08 2025, Thomas Perale via buildroot wrote:
>> > In reply of:
>> >> On both Buildroot 2025.02.x and master branch, php-lua build fails on
>> >> the following error:
>> >> 
>> >> lua.c:862:44: error: assignment to 'zend_object_write_property_t' {aka
>> >> 'struct _zval_struct * (*)(struct _zend_object *, struct _zend_string *,
>> >> struct _zval_struct *, void **)'} from incompatible pointer type 'void
>> >> (*)(zval *, zval *, zval *, void **)' {aka 'void (*)(struct _zval_struct
>> >> *, struct _zval_struct *, struct _zval_struct *, void **)'}
>> >> [-Wincompatible-pointer-types]
>> >>   862 |         lua_object_handlers.write_property =
>> >> php_lua_write_property;
>> >>       |                                            ^
>> >> lua.c:863:44: error: assignment to 'zend_object_read_property_t' {aka
>> >> 'struct _zval_struct * (*)(struct _zend_object *, struct _zend_string *,
>> >> int,  void **, struct _zval_struct *)'} from incompatible pointer type
>> >> 'zval * (*)(zval *, zval *, int,  void **, zval *)' {aka 'struct
>> >> _zval_struct * (*)(struct _zval_struct *, struct _zval_struct *, int,
>> >> void **, struct _zval_struct *)'} [-Wincompatible-pointer-types]
>> >>   863 |         lua_object_handlers.read_property  =
>> >> php_lua_read_property;
>> >>       |                                            ^
>> >> make[2]: *** [Makefile:214: lua.lo] Error 1
>> >> 
>> >> The error can be reproduced with the following minimal defconfig:
>> >> 
>> >> BR2_arm=y
>> >> BR2_cortex_a9=y
>> >> BR2_ARM_ENABLE_NEON=y
>> >> BR2_ARM_ENABLE_VFP=y
>> >> BR2_ARM_FPU_NEON=y
>> >> BR2_TOOLCHAIN_EXTERNAL=y
>> >> BR2_TOOLCHAIN_EXTERNAL_BOOTLIN=y
>> >> BR2_PACKAGE_LUA=y
>> >> BR2_PACKAGE_PHP=y
>> >> BR2_PACKAGE_PHP_LUA=y
>> >> 
>> >> This build failure is the result of two events/conditions:
>> >> - the update to PHP8 has changed the prototype for
>> >>   zend_object_read_property_t (see [1]). But at this time, php-lua just
>> >>   generated a new warning (-Wincompatible-pointer-types)
>> >> - using bootlin bleeding-edge toolchain brings in GCC14, which now turns
>> >>   this warning into a systematic error (see [2])
>> >> 
>> >> This issue is still present on the upstream repository, but it has been
>> >> fixed on one of its forks. Bring the relevant patch from the fork to
>> >> allow building php-lua.
>> >> 
>> >> [1] https://github.com/php/php-src/commit/91ef4124e56
>> >> [2] https://gcc.gnu.org/gcc-14/porting_to.html#incompatible-pointer-types
>> >> 
>> >> Signed-off-by: Alexis Lothoré <alexis.lothore at bootlin.com>
>> >
>> > Applied to 2025.02.x & 2025.05.x. Thanks
>> 
>> Not in 2025.02.x as of commit 2d5c298d5a35 ("package/iperf3: add patch
>> to fix CVE-2025-54350").
>> 
>> Also not in 2025.05.x as of commit 6f191b4dcc80 ("package/cpp-httplib:
>> add patch for CVE-2025-46728").
>
> Indeed, thanks for the message. It was decided to not include this patch in the
> end because it was suspected to be the reason of the following build error
> https://gitlab.com/buildroot.org/buildroot/-/jobs/11176774941
>
> I already had my email reply prepared and forgot to remove this entry before
> sending them to the list when we synced.

Thanks for the clarification.

What about the TestXvisor patch:

  https://lore.kernel.org/all/20250908105600.682136-1-thomas.perale@mind.be/

It's not in 2025.02.x/2025.05.x either.

baruch

-- 
                                                     ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.52.368.4656, http://www.tkos.co.il -


More information about the buildroot mailing list