diff mbox series

[meta-oe] uutils-coreutils: make selinux PACKAGECONFIG dependend on clang-layer

Message ID 20260416185748.3908706-1-hfranco@baylibre.com
State Under Review
Headers show
Series [meta-oe] uutils-coreutils: make selinux PACKAGECONFIG dependend on clang-layer | expand

Commit Message

Hiago De Franco April 16, 2026, 6:57 p.m. UTC
SELinux layer build fails if 'meta-clang' is not present, which
shouldn't happen, since 'meta-clang' isn't a dependency.

If 'selinux' is on DISTRO_FEATURES, PACKAGECONFIG calls
'clang-native' even if uutils-coreutils is not being used (this is
enough to make the recipe fails on parsing time if meta-clang is not
present).

Make 'selinux' PACKAGECONFIG dependend on clang-layer, and print a
warning if the user wants selinux support o uutils-coreutils but haven't
add clang-layer.

Signed-off-by: Hiago De Franco <hfranco@baylibre.com>
---
 .../uutils-coreutils/uutils-coreutils_0.8.0.bb       | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)
diff mbox series

Patch

diff --git a/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.8.0.bb b/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.8.0.bb
index 8b9b4dc199..99beb70104 100644
--- a/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.8.0.bb
+++ b/meta-oe/recipes-core/uutils-coreutils/uutils-coreutils_0.8.0.bb
@@ -18,7 +18,17 @@  require ${BPN}-crates.inc
 PROVIDES = "coreutils"
 RPROVIDES:${PN} = "coreutils"
 
-PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'selinux systemd', d)}"
+PACKAGECONFIG ?= "${@bb.utils.filter('DISTRO_FEATURES', 'systemd', d)}"
+# This is required since uutils-coreutils uses selinux features that require clang-layer
+python __anonymous() {
+    if bb.utils.contains('DISTRO_FEATURES', 'selinux', True, False, d):
+        if bb.utils.contains('BBFILE_COLLECTIONS', 'clang-layer', True, False, d):
+            d.appendVar('PACKAGECONFIG', ' selinux')
+        else:
+            bb.warn("selinux is enabled but clang-layer is not in BBFILE_COLLECTIONS, "
+                "selinux support will be disabled. Add meta-clang to your bblayers.conf "
+                "if selinux support on uutils-coreutils is required.")
+}
 PACKAGECONFIG[selinux] = "--features feat_selinux,,clang-native libselinux-native libselinux"
 PACKAGECONFIG[systemd] = "--features feat_systemd_logind,,systemd"