]> code.ossystems Code Review - openembedded-core.git/commitdiff
linux-yocto: warn when a generated BSP description is used
authorBruce Ashfield <bruce.ashfield@windriver.com>
Fri, 20 Feb 2015 18:38:03 +0000 (13:38 -0500)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 21 Feb 2015 22:04:23 +0000 (22:04 +0000)
The meta data (in tree or out of tree) that describes a BSP, its patches
and configuration is not always available when a new/default or manually
configured machine is built.

When this happens, the tools generate a skeleton BSP and use a
architecture defconfig for the build. If this is by design, the build
is typically sane and everything works fine. If an existing BSP
description was expected, chances are that the resulting kernel will not
be correct.

To avoid surprising the user when a default/skeleton BSP is used for the
build, we can make it obvious to the user by emitting a warning like
the following:

   WARNING: [kernel]: An auto generated BSP description was used, this normally indicates a misconfiguration.
            Check that your machine (myqemux86-64) has an associated kernel description.

[YOCTO: #3383]

Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/kernel-yocto.bbclass

index 0cbbb5f2d22ff77789c3aa65aaf37b903cd9319e..a5e2b180c49641935ed5f8e220cf6aa6053bb46b 100644 (file)
@@ -281,6 +281,15 @@ python do_kernel_configcheck() {
             with open (nonhw_file, "r") as myfile:
                 results = myfile.read()
                 bb.warn( "[kernel config]: BSP specified non-hw configuration:\n\n%s" % results)
+
+    bsp_desc = "${S}/" + kmeta + "/" + "top_tgt"
+    if os.path.exists(bsp_desc):
+        with open (bsp_desc, "r") as myfile:
+                bsp_tgt = myfile.read()
+                m = re.match("^(.*)scratch.obj(.*)$", bsp_tgt)
+                if not m is None:
+                    bb.warn( "[kernel]: An auto generated BSP description was used, this normally indicates a misconfiguration.\n" +
+                             "Check that your machine (%s) has an associated kernel description." % "${MACHINE}" )
 }
 
 # Ensure that the branches (BSP and meta) are on the locations specified by