[v2,3/3] linux-kernel: Fix recipe provides for linux-libc-dev targets

Message ID 18fbe1e49afde716f730a612c84aded573b71299.1766154791.git.jan.kiszka@siemens.com
State Accepted, archived
Headers show
Series linux-kernel cross fixes and cleanups | expand

Commit Message

Jan Kiszka Dec. 19, 2025, 2:33 p.m. UTC
From: Jan Kiszka <jan.kiszka@siemens.com>

Avoid the the kbuildtarget also provides linux-libc-dev*. Furthermore,
only provide the cross variant when it is actually built.

While at it, drop the unused :nolibcdev override to avoid confusion.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
---
 meta/classes-recipe/linux-kernel.bbclass | 11 +++++++----
 1 file changed, 7 insertions(+), 4 deletions(-)

Patch

diff --git a/meta/classes-recipe/linux-kernel.bbclass b/meta/classes-recipe/linux-kernel.bbclass
index c8e6773f..6e383408 100644
--- a/meta/classes-recipe/linux-kernel.bbclass
+++ b/meta/classes-recipe/linux-kernel.bbclass
@@ -145,6 +145,9 @@  BUILD_PROFILES:class-kbuildtarget = "pkg.${BPN}.kbuild"
 RECIPE_PROVIDES:class-kbuildtarget = " \
     linux-headers-${KERNEL_NAME_PROVIDED} \
     linux-kbuild-${KERNEL_NAME_PROVIDED}"
+RECIPE_PROVIDES:remove:class-kbuildtarget = " \
+    linux-libc-dev \
+    linux-libc-dev-${DISTRO_ARCH}-cross"
 # Using DEPENDS instead of RDEPENDS to ensure creation of kernel including
 # pregenerated kernel config before target specific linux-kbuild package build
 DEPENDS:class-kbuildtarget = "${BPN}"
@@ -161,12 +164,12 @@  RECIPE_PROVIDES = " \
 "
 
 # Provide linux-libc-dev packages unless nolibcdev profile used
-OVERRIDES:append = ":${@ bb.utils.contains('DEB_BUILD_PROFILES', 'pkg.{}.nolibcdev'.format(d.getVar('BPN')), 'nolibcdev', 'libcdev', d)}"
+OVERRIDES:append = ":${@ bb.utils.contains('DEB_BUILD_PROFILES', 'pkg.{}.nolibcdev'.format(d.getVar('BPN')), '', 'libcdev', d)}"
 
 RECIPE_PROVIDES:append:libcdev = " \
-    linux-libc-dev \
-    linux-libc-dev-${DISTRO_ARCH}-cross \
-"
+    linux-libc-dev"
+RECIPE_PROVIDES:append:libcdev:cross-profile = " \
+    linux-libc-dev-${DISTRO_ARCH}-cross"
 
 # When cross-profile is active:
 # kbuild package is provided by -native or -kbuildtarget variant. Also headers