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>
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')