generic-poky/meta/recipes-core/tasks/task-core-tools-profile.bb

72 lines
1.6 KiB
BlitzBasic

#
# Copyright (C) 2008 OpenedHand Ltd.
#
DESCRIPTION = "Profile tools tasks for OE-Core"
LICENSE = "MIT"
LIC_FILES_CHKSUM = "file://${COREBASE}/LICENSE;md5=3f40d7994397109285ec7b81fdeb3b58 \
file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
PACKAGES = "\
${PN} \
${PN}-dbg \
${PN}-dev \
"
PACKAGE_ARCH = "${MACHINE_ARCH}"
ALLOW_EMPTY = "1"
RRECOMMENDS_${PN} = "\
perf \
trace-cmd \
kernel-module-oprofile \
blktrace \
sysprof \
"
PROFILETOOLS = "\
oprofile \
oprofileui-server \
powertop \
latencytop \
lttng-control \
lttng-viewer"
# systemtap needs elfutils which is not fully buildable on uclibc
# hence we exclude it from uclibc based builds
SYSTEMTAP = "systemtap"
SYSTEMTAP_libc-uclibc = ""
SYSTEMTAP_mips = ""
# lttng-ust uses sched_getcpu() which is not there on uclibc
# for some of the architectures it can be patched to call the
# syscall directly but for x86_64 __NR_getcpu is a vsyscall
# which means we can not use syscall() to call it. So we ignore
# it for x86_64/uclibc
LTTNGUST = "lttng-ust"
LTTNGUST_libc-uclibc = ""
LTTNGUST_mips = ""
# valgrind does not work on mips
VALGRIND = "valgrind"
VALGRIND_libc-uclibc = ""
VALGRIND_mips = ""
VALGRIND_arm = ""
# exmap-console
# exmap-server
# At present we only build lttng-ust on
# qemux86/qemux86-64/qemuppc/qemuarm/emenlow/atom-pc since upstream liburcu
# (which is required by lttng-ust) may not build on other platforms, like
# MIPS.
RDEPENDS_${PN} = "\
${PROFILETOOLS} \
${LTTNGUST} \
${SYSTEMTAP} \
${VALGRIND} \
"