From 5e3c6a6384fcdc4a2269172012caae14e5f327ca Mon Sep 17 00:00:00 2001 From: Marco Felsch Date: Wed, 11 Dec 2024 19:03:47 +0100 Subject: [PATCH] icecc: don't use KERNEL_CC during set_icecc_env The KERNEL_CC variable usage was introduced by commit d2fcaeb153fd ("icecc: Don't generate recipe-sysroot symlinks at recipe-parsing time, 2018-12-20") and is set once a recipe pulls the kernel-arch.bbclass. There are a few packages, e.g. u-boot, barebox, devicetree, perf which pull this class and for such packages the get_cross_kernel_cc() return None because icecc_is_kernel() fail. Fix this for now by replacing the KERNEL_CC check with the icecc_is_kernel() helper, which is also used by the get_cross_kernel_cc(). That said it's still not very robust to determine a compiler based on a variable or inherited class but at least it fixes the issue for now. Signed-off-by: Marco Felsch Signed-off-by: Mathieu Dubois-Briand Signed-off-by: Richard Purdie --- meta/classes/icecc.bbclass | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass index 8fe9739f870..8a48f2ad63d 100644 --- a/meta/classes/icecc.bbclass +++ b/meta/classes/icecc.bbclass @@ -358,7 +358,7 @@ python set_icecc_env() { symlink_path = os.path.join(ICE_PATH, "symlinks") bb.utils.mkdirhier(symlink_path) compilers = [] - if d.getVar('KERNEL_CC'): + if icecc_is_kernel(bb, d): compilers.append(get_cross_kernel_cc(bb,d)) else: host_prefix = d.getVar('HOST_PREFIX') -- 2.47.3