Patchwork [5/9] perf: enable Perl binding

login
register
mail settings
Submitter Tom Zanussi
Date July 3, 2012, 6:10 p.m.
Message ID <1bba3963df77d4de0479ed85d87122be6342b87a.1341338051.git.tom.zanussi@intel.com>
Download mbox | patch
Permalink /patch/31121/
State Accepted
Commit 73a8eed010a821fc4f5c0e71ef749938ed780b44
Headers show

Comments

Tom Zanussi - July 3, 2012, 6:10 p.m.
From: Tom Zanussi <tom.zanussi@intel.com>

Add support to enable the perf Perl binding.

The build depends on perl-native to retrieve the configuration
settings needed for the binding.  cpan-base adds some useful functions
like is_target() and get_perl_version() that we need for
PERLCONFIGTARGET and related settings, which allow us to use the
target's Config_heavy.pl settings for ExtUtils:Embed when building for
the target.

Also adds the perl-modules dependency to give the target the perl
modules that scripts using the binding need.

Signed-off-by: Tom Zanussi <tom.zanussi@intel.com>
---
 meta/recipes-kernel/perf/perf_3.4.bb |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

Patch

diff --git a/meta/recipes-kernel/perf/perf_3.4.bb b/meta/recipes-kernel/perf/perf_3.4.bb
index 9f36484..514876b 100644
--- a/meta/recipes-kernel/perf/perf_3.4.bb
+++ b/meta/recipes-kernel/perf/perf_3.4.bb
@@ -18,7 +18,8 @@  DEPENDS = "virtual/kernel \
            ${MLPREFIX}elfutils \
            ${MLPREFIX}binutils \
           "
-RDEPENDS_${PN} += "elfutils perl python"
+
+RDEPENDS_${PN} += "elfutils perl perl-modules python"
 
 PROVIDES = "virtual/perf"
 
@@ -31,6 +32,14 @@  export STAGING_LIBDIR
 export BUILD_SYS
 export HOST_SYS
 
+# needed for building the tools/perf Perl binding
+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)}"
+
 S = "${STAGING_KERNEL_DIR}"
 B = "${WORKDIR}/${BPN}-${PV}"