From ddba0ef6b1e8e407c44bb1036a75aecaeb89da92 Mon Sep 17 00:00:00 2001 From: Francis Laniel Date: Wed, 22 Dec 2021 18:49:04 +0100 Subject: [PATCH] package/pahole: new host package pahole is a tool used to show data structure embedded in debugging information formats like DWARF. It is notably needed by the Linux kernel to generate BPF Type Format (BTF) information used by Compile Once - Run Everywhere (CO-RE) BPF tools. To be built, pahole needs __LIB to be set to lib at stated in its README. Signed-off-by: Francis Laniel Signed-off-by: Thomas Petazzoni --- DEVELOPERS | 3 +++ package/Config.in.host | 1 + package/pahole/Config.in.host | 6 ++++++ package/pahole/pahole.hash | 3 +++ package/pahole/pahole.mk | 18 ++++++++++++++++++ 5 files changed, 31 insertions(+) create mode 100644 package/pahole/Config.in.host create mode 100644 package/pahole/pahole.hash create mode 100644 package/pahole/pahole.mk diff --git a/DEVELOPERS b/DEVELOPERS index a17e828aa5..a91e2dfcde 100644 --- a/DEVELOPERS +++ b/DEVELOPERS @@ -971,6 +971,9 @@ N: Floris Bos F: package/ipmitool/ F: package/odhcploc/ +N: Francis Laniel +F: package/pahole/ + N: Francisco Gonzalez F: package/ser2net/ diff --git a/package/Config.in.host b/package/Config.in.host index c390ae3e7d..20034f6ee0 100644 --- a/package/Config.in.host +++ b/package/Config.in.host @@ -61,6 +61,7 @@ menu "Host utilities" source "package/omap-u-boot-utils/Config.in.host" source "package/openocd/Config.in.host" source "package/opkg-utils/Config.in.host" + source "package/pahole/Config.in.host" source "package/parted/Config.in.host" source "package/patchelf/Config.in.host" source "package/pigz/Config.in.host" diff --git a/package/pahole/Config.in.host b/package/pahole/Config.in.host new file mode 100644 index 0000000000..e427629632 --- /dev/null +++ b/package/pahole/Config.in.host @@ -0,0 +1,6 @@ +config BR2_PACKAGE_HOST_PAHOLE + bool "host pahole" + help + Pahole and other DWARF utils. + + https://git.kernel.org/pub/scm/devel/pahole/pahole.git diff --git a/package/pahole/pahole.hash b/package/pahole/pahole.hash new file mode 100644 index 0000000000..420db15e75 --- /dev/null +++ b/package/pahole/pahole.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 cde85af68b368f50a913be387f94f6b43612a04af6c92387b4dcabb712a668fe pahole-v1.23-br1.tar.gz +sha256 ab15fd526bd8dd18a9e77ebc139656bf4d33e97fc7238cd11bf60e2b9b8666c6 COPYING diff --git a/package/pahole/pahole.mk b/package/pahole/pahole.mk new file mode 100644 index 0000000000..1ad937062d --- /dev/null +++ b/package/pahole/pahole.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# pahole +# +################################################################################ + +PAHOLE_VERSION = v1.23 +PAHOLE_SITE = git://git.kernel.org/pub/scm/devel/pahole/pahole.git +PAHOLE_SITE_METHOD = git +# pahole contains git submodule and relies on them to be built. +PAHOLE_GIT_SUBMODULES = YES +HOST_PAHOLE_DEPENDENCIES = host-elfutils +# Defining __LIB is needed to build pahole. +HOST_PAHOLE_CONF_OPTS = -D__LIB=lib +PAHOLE_LICENSE = GPL-2.0 +PAHOLE_LICENSE_FILES = COPYING + +$(eval $(host-cmake-package))