| # memory barrier function implemented only for some architectures |
| config BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS |
| bool |
| default y |
| depends on BR2_arceb || BR2_arcle || BR2_arm || BR2_armeb || \ |
| BR2_aarch64 || BR2_aarch64_be || BR2_i386 || BR2_mips || \ |
| BR2_mipsel || BR2_mips64 || BR2_mips64el || BR2_powerpc || \ |
| BR2_powerpc64 || BR2_powerpc64le || BR2_sh || \ |
| BR2_sparc || BR2_sparc64 || BR2_x86_64 |
| |
| config BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 |
| bool |
| default y if BR2_powerpc || BR2_powerpc64 || BR2_powerpc64le |
| |
| config BR2_PACKAGE_OPROFILE |
| bool "oprofile" |
| depends on BR2_USE_MMU # fork() |
| depends on BR2_INSTALL_LIBSTDCPP |
| depends on BR2_USE_WCHAR # binutils |
| depends on BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS |
| # libpfm4 is needed on PowerPC, and requires thread support |
| depends on BR2_TOOLCHAIN_HAS_THREADS_NPTL || !BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 |
| select BR2_PACKAGE_POPT |
| select BR2_PACKAGE_BINUTILS |
| select BR2_PACKAGE_LIBPFM4 if BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 |
| help |
| OProfile is a system-wide profiler for Linux systems, |
| capable of profiling all running code at low overhead. |
| OProfile is released under the GNU GPL. |
| |
| It consists of a kernel driver and a daemon for collecting |
| sample data, and several post-profiling tools for turning |
| data into information. |
| |
| OProfile leverages the hardware performance counters of the |
| CPU to enable profiling of a wide variety of interesting |
| statistics, which can also be used for basic time-spent |
| profiling. All code is profiled: hardware and software |
| interrupt handlers, kernel modules, the kernel, shared |
| libraries, and applications. |
| |
| https://sourceforge.net/projects/oprofile/ |
| |
| comment "oprofile needs a toolchain w/ C++, wchar" |
| depends on BR2_USE_MMU |
| depends on BR2_PACKAGE_OPROFILE_ARCH_SUPPORTS |
| depends on !BR2_INSTALL_LIBSTDCPP || !BR2_USE_WCHAR |
| |
| comment "oprofile needs a toolchain w/ NPTL on PowerPC(64)" |
| depends on BR2_USE_MMU && BR2_PACKAGE_OPROFILE_NEEDS_LIBPFM4 |
| depends on !BR2_TOOLCHAIN_HAS_THREADS_NPTL |