mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-27 12:30:34 -09:00
Add heaptrack, a memory allocation tracer toolkit. This implementation builds all the command line components, not the heaptrack_gui graphical visualization program. Signed-off-by: Luca Ceresoli <luca.ceresoli@bootlin.com> Signed-off-by: Julien Olivain <ju.o@free.fr>
40 lines
1.6 KiB
Plaintext
40 lines
1.6 KiB
Plaintext
config BR2_PACKAGE_HEAPTRACK
|
|
bool "heaptrack"
|
|
depends on BR2_INSTALL_LIBSTDCPP
|
|
depends on BR2_TOOLCHAIN_HAS_THREADS # boost, libunwind, elfutils
|
|
depends on BR2_USE_WCHAR # boost, elfutils
|
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS # boost-filesystem
|
|
depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS # libunwind
|
|
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_8 # C++17 filesystem
|
|
depends on !BR2_STATIC_LIBS # libunwind, elfutils
|
|
depends on !BR2_TOOLCHAIN_USES_UCLIBC # no dlmopen() support
|
|
select BR2_PACKAGE_BOOST
|
|
select BR2_PACKAGE_BOOST_IOSTREAMS
|
|
select BR2_PACKAGE_BOOST_PROGRAM_OPTIONS
|
|
# For heaptrack_print
|
|
select BR2_PACKAGE_BOOST_FILESYSTEM
|
|
select BR2_PACKAGE_ELFUTILS
|
|
select BR2_PACKAGE_LIBUNWIND
|
|
select BR2_PACKAGE_ZLIB
|
|
help
|
|
Heaptrack traces all memory allocations and annotates these
|
|
events with stack traces. Dedicated analysis tools then allow
|
|
you to interpret the heap memory profile to find hotspots,
|
|
memory leaks, allocation hotspots and temporary allocations.
|
|
|
|
Zstandard offers better (de)compression performance compared
|
|
with gzip/zlib, making heaptrack faster and datafiles smaller,
|
|
so enabling BR2_PACKAGE_ZSTD is recommended.
|
|
|
|
https://apps.kde.org/heaptrack/
|
|
|
|
comment "heaptrack needs a glibc or musl toolchain w/ C++, threads, wchar, gcc >= 8, dynamic library"
|
|
depends on BR2_TOOLCHAIN_SUPPORTS_ALWAYS_LOCKFREE_ATOMIC_INTS
|
|
depends on BR2_PACKAGE_LIBUNWIND_ARCH_SUPPORTS
|
|
depends on !BR2_INSTALL_LIBSTDCPP \
|
|
|| !BR2_TOOLCHAIN_HAS_THREADS \
|
|
|| !BR2_USE_WCHAR \
|
|
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_8 \
|
|
|| BR2_STATIC_LIBS \
|
|
|| BR2_TOOLCHAIN_USES_UCLIBC
|