]> git.ipfire.org Git - thirdparty/openembedded/openembedded-core-contrib.git/commitdiff
icecc: don't use KERNEL_CC during set_icecc_env
authorMarco Felsch <m.felsch@pengutronix.de>
Wed, 11 Dec 2024 18:03:47 +0000 (19:03 +0100)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Fri, 13 Dec 2024 11:19:55 +0000 (11:19 +0000)
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 <m.felsch@pengutronix.de>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/classes/icecc.bbclass

index 8fe9739f870db760b065bd96d22a4cd8a4316d7b..8a48f2ad63dc58d77dd5f00e09a257bcaa5388a6 100644 (file)
@@ -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')