[1/3] linux-custom: add linux-tools package

Message ID 20251126090202.3091051-6-itrue@emlix.com
State Superseded
Headers show
Series linux-custom: add linux-tools package and perf | expand

Commit Message

Isaac True Nov. 26, 2025, 8:59 a.m. UTC
Add an additional package to the linux-custom recipe which can be used
to deliver tools built from the kernel sources, such as perf.

Signed-off-by: Isaac True <itrue@emlix.com>
---
 meta/recipes-kernel/linux/files/debian/control.tmpl    | 10 ++++++++++
 .../recipes-kernel/linux/files/debian/isar/common.tmpl |  2 ++
 meta/recipes-kernel/linux/linux-custom.inc             |  1 +
 3 files changed, 13 insertions(+)

Patch

diff --git a/meta/recipes-kernel/linux/files/debian/control.tmpl b/meta/recipes-kernel/linux/files/debian/control.tmpl
index ee87cf92..1c253530 100644
--- a/meta/recipes-kernel/linux/files/debian/control.tmpl
+++ b/meta/recipes-kernel/linux/files/debian/control.tmpl
@@ -69,3 +69,13 @@  Conflicts: linux-kbuild-${KERNEL_NAME_PROVIDED}
 Description: ${KERNEL_NAME_PROVIDED} Linux kbuild scripts and tools for @KR@
  This package provides kernel kbuild scripts and tools for @KR@
  This is useful for people who need to build external modules
+
+Package: linux-tools-${KERNEL_NAME_PROVIDED}
+Build-Profiles: <kernel>
+Architecture: any
+Multi-Arch: foreign
+Depends: ${perl:Depends}, ${shlib:Depends}
+Description: ${KERNEL_NAME_PROVIDED} Linux tools for @KR@
+ This package provides kernel tools for @KR@.
+ .
+ This is useful for people who want to run things like perf.
diff --git a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl b/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
index f9cc2f02..a104784a 100644
--- a/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
+++ b/meta/recipes-kernel/linux/files/debian/isar/common.tmpl
@@ -12,6 +12,7 @@  KERNEL_PKG_LIBC_HEADERS=linux-libc-dev
 KERNEL_PKG_LIBC_HEADERS_CROSS=linux-libc-dev-${DISTRO_ARCH}-cross
 KERNEL_PKG_KERN_KBUILD=linux-kbuild-${KERNEL_NAME_PROVIDED}
 KERNEL_PKG_KERN_KBUILD_CROSS=${KERNEL_PKG_KERN_KBUILD}-${DISTRO_ARCH}-cross
+KERNEL_PKG_TOOLS=linux-tools-${KERNEL_NAME_PROVIDED}
 
 # Force creating debian package with valid host arch for -native build
 # Use a cross build to comply with arch specific kernel defconfigs
@@ -38,6 +39,7 @@  deb_libc_hdr_dir=${deb_top_dir}/${KERNEL_PKG_LIBC_HEADERS}
 deb_libc_hdr_cross_dir=${deb_top_dir}/${KERNEL_PKG_LIBC_HEADERS_CROSS}
 deb_kern_kbuild_dir=${deb_top_dir}/${KERNEL_PKG_KERN_KBUILD}
 deb_kern_kbuild_cross_dir=${deb_top_dir}/${KERNEL_PKG_KERN_KBUILD_CROSS}
+deb_tools_dir=${deb_top_dir}/${KERNEL_PKG_TOOLS}
 
 # Array of packages to be generated
 declare -A kern_pkgs
diff --git a/meta/recipes-kernel/linux/linux-custom.inc b/meta/recipes-kernel/linux/linux-custom.inc
index 391bd6fa..cd0a6f6a 100644
--- a/meta/recipes-kernel/linux/linux-custom.inc
+++ b/meta/recipes-kernel/linux/linux-custom.inc
@@ -160,6 +160,7 @@  RECIPE_PROVIDES = " \
     linux-libc-dev-${DISTRO_ARCH}-cross \
     linux-image-${KERNEL_NAME_PROVIDED}-dbg \
     linux-kbuild-${KERNEL_NAME_PROVIDED} \
+    linux-tools-${KERNEL_NAME_PROVIDED} \
     ${BPN}-pseudo-native \
 "
 # When cross-profile is active: