package/hawktracer: new package

HawkTracer is a highly portable, low-overhead, configurable profiling
tool

Signed-off-by: Gilles Talis <gilles.talis@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Gilles Talis 2021-10-24 13:36:26 +02:00 committed by Thomas Petazzoni
parent 257881e6e9
commit 94d8764ef9
5 changed files with 74 additions and 0 deletions

View File

@ -1094,6 +1094,7 @@ F: configs/friendlyarm_nanopi_r2s_defconfig
F: package/cctz/
F: package/faad2/
F: package/fdk-aac/
F: package/hawktracer/
F: package/httping/
F: package/iozone/
F: package/leptonica/

View File

@ -1734,6 +1734,7 @@ endmenu
menu "Logging"
source "package/glog/Config.in"
source "package/hawktracer/Config.in"
source "package/liblog4c-localtime/Config.in"
source "package/liblogging/Config.in"
source "package/log4cplus/Config.in"

View File

@ -0,0 +1,25 @@
config BR2_PACKAGE_HAWKTRACER
bool "hawktracer"
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # C++11
help
HawkTracer is a highly portable, low-overhead, configurable
profiling tool built in Amazon Video for getting performance
metrics from low-end devices.
https://www.hawktracer.org/
if BR2_PACKAGE_HAWKTRACER
config BR2_PACKAGE_HAWKTRACER_TCP_LISTENER
bool "TCP listener"
default y
depends on BR2_TOOLCHAIN_HAS_THREADS
comment "TCP listener needs a toolchain w/ threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS
endif
comment "hawktracer needs a toolchain w/ C++, gcc >= 4.8"
depends on !BR2_INSTALL_LIBSTDCPP || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8

View File

@ -0,0 +1,3 @@
# Computed locally
sha256 b6c7fdfbe8178bc7ba49ef840ec18a92d1488ad73ac9f64d2a09042410ad3ef4 hawktracer-e53b07bc812c4cfe8f6253ddb48ac43de8fa74a8.tar.gz
sha256 2f377333e64ad08ad3afec8ed6c2c96ced2a6d7d67443eb2784a931bb7b3fd59 LICENSE

View File

@ -0,0 +1,44 @@
################################################################################
#
# hawktracer
#
################################################################################
HAWKTRACER_VERSION = e53b07bc812c4cfe8f6253ddb48ac43de8fa74a8
HAWKTRACER_SITE = $(call github,amzn,hawktracer,$(HAWKTRACER_VERSION))
HAWKTRACER_LICENSE = MIT
HAWKTRACER_LICENSE_FILES = LICENSE
HAWKTRACER_INSTALL_STAGING = YES
HAWKTRACER_CONF_OPTS = \
-DENABLE_ASAN=OFF \
-DENABLE_TESTS=OFF \
-DENABLE_CODE_COVERAGE=OFF \
-DENABLE_BENCHMARKS=OFF \
-DENABLE_DOC=OFF \
-DENABLE_PYTHON_BINDINGS=OFF \
-DENABLE_MAINTAINER_MODE=OFF \
-DENABLE_RELEASE_MODE=OFF \
-DENABLE_CLIENT=OFF \
-DENABLE_EXAMPLES=OFF
ifeq ($(BR2_STATIC_LIBS),y)
HAWKTRACER_CONF_OPTS += -DBUILD_STATIC_LIB=ON
else
HAWKTRACER_CONF_OPTS += -DBUILD_STATIC_LIB=OFF
endif
ifeq ($(BR2_PACKAGE_HAWKTRACER_TCP_LISTENER),y)
HAWKTRACER_CONF_OPTS += -DENABLE_TCP_LISTENER=ON
else
HAWKTRACER_CONF_OPTS += -DENABLE_TCP_LISTENER=OFF
endif
# Enable threads support if supported by toolchain
ifeq ($(BR2_TOOLCHAIN_HAS_THREADS),y)
HAWKTRACER_CONF_OPTS += -DENABLE_THREADS=ON
else
HAWKTRACER_CONF_OPTS += -DENABLE_THREADS=OFF
endif
$(eval $(cmake-package))