perf: fix perl binding support

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.

(From OE-Core rev: a59e31c78b5468fac461067e5bacf263c2cf23ad)

Signed-off-by: Ross Burton <ross.burton@arm.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Ross Burton
2023-08-22 18:00:16 +01:00
committed by Richard Purdie
parent 0fa81bddd6
commit 8eb4223c22
2 changed files with 10 additions and 3 deletions

View 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"

View 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