From: Khem Raj Date: Thu, 7 Aug 2025 04:14:00 +0000 (-0700) Subject: perl: Disable strict aliasing with clang X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d4af9e6a1c0090e4ee9b1199adf2144636997f03;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git perl: Disable strict aliasing with clang clang-21+ compiled perl ends up with segfults in various places if this optimization is enabled panic: del_backref, svp=0 at /usr/lib/perl5/5.40.2/warnings.pm line 622. Compilation failed in require at /usr/lib/perl5/5.40.2/Getopt/Std.pm line 4. The crash starts at frame #0 in Perl_sv_kill_backrefs() at sv.c:6420 called during magic cleanup (Perl_magic_killbackrefs) Signed-off-by: Khem Raj Signed-off-by: Mathieu Dubois-Briand --- diff --git a/meta/recipes-devtools/perl/perl_5.40.2.bb b/meta/recipes-devtools/perl/perl_5.40.2.bb index c3bcbf053d..1df1467d42 100644 --- a/meta/recipes-devtools/perl/perl_5.40.2.bb +++ b/meta/recipes-devtools/perl/perl_5.40.2.bb @@ -50,6 +50,10 @@ export ENC2XS_NO_COMMENTS = "1" CFLAGS += "-D_GNU_SOURCE -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64" +# Perl built with clang runs into sefaults with clang-21+ +# https://github.com/llvm/llvm-project/issues/152241 +CFLAGS:append:toolchain-clang = " -fno-strict-aliasing" + do_configure:prepend() { rm -rf ${B} cp -rfp ${S} ${B}