From f4a460afc4e2676cbf1daaa1d6723da9e6146526 Mon Sep 17 00:00:00 2001 From: Bruce Ashfield Date: Fri, 20 Feb 2015 13:38:03 -0500 Subject: linux-yocto: warn when a generated BSP description is used 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 Signed-off-by: Ross Burton --- meta/classes/kernel-yocto.bbclass | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'meta/classes') diff --git a/meta/classes/kernel-yocto.bbclass b/meta/classes/kernel-yocto.bbclass index 0cbbb5f2d2..a5e2b180c4 100644 --- a/meta/classes/kernel-yocto.bbclass +++ b/meta/classes/kernel-yocto.bbclass @@ -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 -- cgit v1.2.3