aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChong Lu <Chong.Lu@windriver.com>2014-09-08 12:58:25 +0100
committerRichard Purdie <richard.purdie@linuxfoundation.org>2014-09-10 11:28:13 +0100
commit10dfa4ee4e05841be3d3caaa28778aa40b782f97 (patch)
treecd651374917967c0968513a302faf6872af15a04
parentaefddc23eeda9b46c1bb3ac776c8bff15f89707c (diff)
downloadopenembedded-core-contrib-10dfa4ee4e05841be3d3caaa28778aa40b782f97.tar.gz
openembedded-core-contrib-10dfa4ee4e05841be3d3caaa28778aa40b782f97.tar.bz2
openembedded-core-contrib-10dfa4ee4e05841be3d3caaa28778aa40b782f97.zip
perf: add libunwind support
Add a new feature named 'perf-libunwind'. Adding this support to perf allows it to do stack traces on ARM - thumb2 and MIPS targets. PERF_FEATURES variable in perf-features.inc will enable the perf-libunwind. Signed-off-by: Chong Lu <Chong.Lu@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--meta/recipes-kernel/perf/perf-features.inc2
-rw-r--r--meta/recipes-kernel/perf/perf.bb5
2 files changed, 5 insertions, 2 deletions
diff --git a/meta/recipes-kernel/perf/perf-features.inc b/meta/recipes-kernel/perf/perf-features.inc
index b8859ab7d5e..2dbbb47761e 100644
--- a/meta/recipes-kernel/perf/perf-features.inc
+++ b/meta/recipes-kernel/perf/perf-features.inc
@@ -1,4 +1,4 @@
-PERF_FEATURES_ENABLE ?= "perf-scripting perf-tui"
+PERF_FEATURES_ENABLE ?= "perf-scripting perf-tui perf-libunwind"
def perf_feature_enabled(feature, trueval, falseval, d):
"""
diff --git a/meta/recipes-kernel/perf/perf.bb b/meta/recipes-kernel/perf/perf.bb
index ebfedb91d71..cbd03f27ba5 100644
--- a/meta/recipes-kernel/perf/perf.bb
+++ b/meta/recipes-kernel/perf/perf.bb
@@ -20,6 +20,7 @@ BUILDPERF_libc-uclibc = "no"
# to cover a wide range of kernel we add both dependencies
TUI_DEPENDS = "${@perf_feature_enabled('perf-tui', 'libnewt slang', '',d)}"
SCRIPTING_DEPENDS = "${@perf_feature_enabled('perf-scripting', 'perl python', '',d)}"
+LIBUNWIND_DEPENDS = "${@perf_feature_enabled('perf-libunwind', 'libunwind', '',d)}"
DEPENDS = "virtual/kernel \
virtual/${MLPREFIX}libc \
@@ -27,6 +28,7 @@ DEPENDS = "virtual/kernel \
${MLPREFIX}binutils \
${TUI_DEPENDS} \
${SCRIPTING_DEPENDS} \
+ ${LIBUNWIND_DEPENDS} \
bison flex \
"
@@ -62,6 +64,7 @@ B = "${WORKDIR}/${BPN}-${PV}"
SCRIPTING_DEFINES = "${@perf_feature_enabled('perf-scripting', '', 'NO_LIBPERL=1 NO_LIBPYTHON=1',d)}"
TUI_DEFINES = "${@perf_feature_enabled('perf-tui', '', 'NO_NEWT=1',d)}"
+LIBUNWIND_DEFINES = "${@perf_feature_enabled('perf-libunwind', '', 'NO_LIBUNWIND=1',d)}"
# The LDFLAGS is required or some old kernels fails due missing
# symbols and this is preferred than requiring patches to every old
@@ -76,7 +79,7 @@ EXTRA_OEMAKE = '\
CC="${CC}" \
AR="${AR}" \
perfexecdir=${libexecdir} \
- NO_GTK2=1 ${TUI_DEFINES} NO_DWARF=1 NO_LIBUNWIND=1 ${SCRIPTING_DEFINES} \
+ NO_GTK2=1 ${TUI_DEFINES} NO_DWARF=1 ${LIBUNWIND_DEFINES} ${SCRIPTING_DEFINES} \
'
EXTRA_OEMAKE += "\