1# 2# Copyright (C) 2008 OpenedHand Ltd. 3# 4 5SUMMARY = "Profiling tools" 6 7PR = "r3" 8 9PACKAGE_ARCH = "${MACHINE_ARCH}" 10 11inherit packagegroup 12 13PROFILE_TOOLS_X = "${@bb.utils.contains('DISTRO_FEATURES', 'x11', 'sysprof', '', d)}" 14# sysprof doesn't support aarch64 and nios2 15PROFILE_TOOLS_X_aarch64 = "" 16PROFILE_TOOLS_X_nios2 = "" 17PROFILE_TOOLS_SYSTEMD = "${@bb.utils.contains('DISTRO_FEATURES', 'systemd', 'systemd-analyze', '', d)}" 18 19RRECOMMENDS_${PN} = "\ 20 ${PERF} \ 21 blktrace \ 22 ${PROFILE_TOOLS_X} \ 23 ${PROFILE_TOOLS_SYSTEMD} \ 24 " 25 26PROFILETOOLS = "\ 27 powertop \ 28 " 29PERF = "perf" 30PERF_libc-musl = "" 31 32# systemtap needs elfutils which is not fully buildable on some arches/libcs 33SYSTEMTAP = "systemtap" 34SYSTEMTAP_libc-musl = "" 35SYSTEMTAP_nios2 = "" 36SYSTEMTAP_riscv64 = "" 37 38# lttng-ust uses sched_getcpu() which is not there on for some platforms. 39LTTNGUST = "lttng-ust" 40LTTNGUST_arc = "" 41 42LTTNGTOOLS = "lttng-tools" 43LTTNGTOOLS_arc = "" 44 45LTTNGMODULES = "lttng-modules" 46LTTNGMODULES_arc = "" 47 48BABELTRACE = "babeltrace" 49 50# valgrind does not work on the following configurations/architectures 51 52VALGRIND = "valgrind" 53VALGRIND_libc-musl = "" 54VALGRIND_mipsarch = "" 55VALGRIND_nios2 = "" 56VALGRIND_arc = "" 57VALGRIND_armv4 = "" 58VALGRIND_armv5 = "" 59VALGRIND_armv6 = "" 60VALGRIND_armeb = "" 61VALGRIND_aarch64 = "" 62VALGRIND_riscv64 = "" 63VALGRIND_linux-gnux32 = "" 64VALGRIND_linux-gnun32 = "" 65 66RDEPENDS_${PN} = "\ 67 ${PROFILETOOLS} \ 68 ${LTTNGUST} \ 69 ${LTTNGTOOLS} \ 70 ${LTTNGMODULES} \ 71 ${BABELTRACE} \ 72 ${SYSTEMTAP} \ 73 ${VALGRIND} \ 74 " 75