]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
perf: fix perl binding support
authorRoss Burton <ross.burton@arm.com>
Tue, 22 Aug 2023 17:00:16 +0000 (18:00 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Thu, 24 Aug 2023 15:50:21 +0000 (16:50 +0100)
The build of the perl integration has been broken for some time.

Update the PERL_* variables so that it can find libperl in the new
location.

This then fails because the Perl headers cause warnings and the feature
checks run with -Werror, so disable the errors.

The perf-dbg package then has target build paths, so set INSANE_SKIP for
now until this is resolved.

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/recipes-kernel/perf/perf-perl.inc
meta/recipes-kernel/perf/perf.bb

index ae77319b203c8e776d1a3f46c523acb8a67d6bbc..491f54c328071bd0436ec7aa08196bef139283a0 100644 (file)
@@ -2,6 +2,10 @@ inherit perlnative cpan-base
 
 # Env var which tells perl if it should use host (no) or target (yes) settings
 export PERLCONFIGTARGET = "${@is_target(d)}"
-export PERL_INC = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}/CORE"
-export PERL_LIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}"
-export PERL_ARCHLIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl/${@get_perl_version(d)}"
+export PERL_INC = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}/CORE"
+export PERL_LIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}"
+export PERL_ARCHLIB = "${STAGING_LIBDIR}${PERL_OWN_DIR}/perl5/${@get_perl_version(d)}/${@get_perl_arch(d)}"
+
+# The perl symbols CPPSTDIN and CPPRUN embed the sysroot into the
+# binaries, work needed to remove this
+INSANE_SKIP:${PN}-dbg += "buildpaths"
index 9eeb1003f3a1e959d155b98edda6a30c739f4e43..327934b72a79fd6aa5d426c0e87fc03b2bfd6c56 100644 (file)
@@ -323,6 +323,9 @@ do_configure:prepend () {
     if [ -e "${S}/tools/build/Makefile.feature" ]; then
         sed -i 's,CFLAGS=,CC="\$(CC)" CFLAGS=,' ${S}/tools/build/Makefile.feature
     fi
+    # The libperl feature check produces fatal warnings due to -Werror being
+    # used, silence enough errors that the check passes.
+    sed -i 's/\(FLAGS_PERL_EMBED=.*\)/\1 -Wno-error=unused-function -Wno-error=attributes/' ${S}/tools/build/feature/Makefile
 
     # 3.17-rc1+ has a include issue for arm/powerpc. Temporarily sed in the appropriate include
     if [ -e "${S}/tools/perf/arch/$ARCH/util/skip-callchain-idx.c" ]; then