summaryrefslogtreecommitdiffstats
path: root/meta/packages/linux/linux-wrs_git.bb
diff options
context:
space:
mode:
authorBruce Ashfield <bruce.ashfield@windriver.com>2010-08-05 16:38:23 -0400
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-09 17:20:36 +0100
commita924ea57ffd876dabc76d7bfb424b634c022063f (patch)
tree99389bc3b919021c2bd2bb8e4c66291891542440 /meta/packages/linux/linux-wrs_git.bb
parent55011c1f4b4c20fa5b91f0b38a2910c3f7a01383 (diff)
downloadpoky-a924ea57ffd876dabc76d7bfb424b634c022063f.tar.gz
perf: performance analysis tools for Linux
Performance counters for Linux are a new kernel-based subsystem that provide a framework for all things performance analysis. It covers hardware level (CPU/PMU, Performance Monitoring Unit) features and software features (software counters, tracepoints) as well. To enforce the coupling between userspace and kernel, this commit introduces perf as a subpackage of the linux-wrs tree. perf is built directly inside the kernel tree (and hence picks up all appropriate patches), but is packaged as a separate utility that can be added to the rootfs and used to analyze the kernel. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Diffstat (limited to 'meta/packages/linux/linux-wrs_git.bb')
-rw-r--r--meta/packages/linux/linux-wrs_git.bb25
1 files changed, 25 insertions, 0 deletions
diff --git a/meta/packages/linux/linux-wrs_git.bb b/meta/packages/linux/linux-wrs_git.bb
index ddd387743b..4f1808930e 100644
--- a/meta/packages/linux/linux-wrs_git.bb
+++ b/meta/packages/linux/linux-wrs_git.bb
@@ -95,6 +95,14 @@ do_wrlinux_link_vmlinux() {
95 ln -sf ../../../vmlinux 95 ln -sf ../../../vmlinux
96} 96}
97 97
98do_compile_perf() {
99 oe_runmake -C ${S}/tools/perf CC="${KERNEL_CC}" LD="${KERNEL_LD}" prefix=${prefix}
100}
101
102do_install_perf() {
103 oe_runmake -C ${S}/tools/perf CC="${KERNEL_CC}" LD="${KERNEL_LD}" prefix=${prefix} DESTDIR=${D} install
104}
105
98do_wrlinux_configme[depends] = "kern-tools-native:do_populate_sysroot" 106do_wrlinux_configme[depends] = "kern-tools-native:do_populate_sysroot"
99addtask wrlinux_configme before do_configure after do_patch 107addtask wrlinux_configme before do_configure after do_patch
100addtask wrlinux_link_vmlinux after do_compile before do_install 108addtask wrlinux_link_vmlinux after do_compile before do_install
@@ -104,3 +112,20 @@ inherit kernel
104 112
105# object files are in B, not S, so we need to override this 113# object files are in B, not S, so we need to override this
106do_deploy[dirs] = "${B}" 114do_deploy[dirs] = "${B}"
115
116# perf subpackage variables
117PROVIDES += perf
118
119PACKAGES =+ "perf"
120FILES_perf = "${bindir}/* \
121 ${libexecdir}"
122
123
124# perf tasks
125addtask compile_perf after do_compile before do_install
126addtask install_perf after do_install before do_deploy
127
128do_compile_perf[depends] = "glibc:do_populate_sysroot"
129do_compile_perf[depends] =+ "elfutils:do_populate_sysroot"
130do_compile_perf[depends] =+ "perl:do_populate_sysroot"
131do_compile_perf[depends] =+ "python:do_populate_sysroot"