[OE-core] [PATCH v2] kernel-yocto: relax BSP definition test

Bruce Ashfield bruce.ashfield at windriver.com
Wed Aug 23 19:20:20 UTC 2017


commit 44aea7b873 [kernel-yocto: ensure that only valid BSPs are built]
introduced a new check to ensure that a valid BSP definition was found,
rather than building something that 'closely' matched the current
MACHINE.

This check breaks valid configurations which do not have a bsp
definition but are otherwise completely configured machines.

To allow both elements to co-exist (and not add warnings or errors
to otherwise valid builds), we first check to see if an empty bsp
definition was found, but then check to see if a defconfig was
provided.

If a defconfig has been provided, that is a sign that the board
configuration is complete and we should continue the build without
otherwise bothering the user.

Tested on meta-raspberrypi and linux-yocto*

Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
---

v2: fixed the badly placed -q

 meta/classes/kernel-yocto.bbclass | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass
index 3c6df92131bc..20b4942320d6 100644
--- a/meta/classes/kernel-yocto.bbclass
+++ b/meta/classes/kernel-yocto.bbclass
@@ -143,8 +143,11 @@ do_kernel_metadata() {
 
 	# expand kernel features into their full path equivalents
 	bsp_definition=$(spp ${includes} --find -DKMACHINE=${KMACHINE} -DKTYPE=${LINUX_KERNEL_TYPE})
-	if [ $? -ne 0 ] || [ -z "${bsp_definition}" ]; then
-		bbfatal_log "Could not locate BSP definiton for ${KMACHINE}/${LINUX_KERNEL_TYPE}."
+	if [ -z "$bsp_definition" ]; then
+		echo "$sccs" | grep -q defconfig
+		if [ $? -ne 0 ]; then
+			bberror "Could not locate BSP definition for ${KMACHINE}/${LINUX_KERNEL_TYPE} and no defconfig was provided"
+		fi
 	fi
 	meta_dir=$(kgit --meta)
 
-- 
2.5.0




More information about the Openembedded-core mailing list