devtool: finish: warn if moving recipe to unconfigured destination layer
If you run devtool finish to move a recipe created in the workspace by devtool add or devtool upgrade to a layer, and that layer is not currently included in bblayers.conf (perhaps unintentionally), then the recipe will no longer be visible to bitbake. In this scenario, show a warning so that the user isn't surprised by the recipe "going missing". (From OE-Core rev: 4da8a58e2997db4f24ae0cac0ba27259d7857a05) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
09754b4119
commit
e0944011e6
|
@ -1517,6 +1517,11 @@ def finish(args, config, basepath, workspace):
|
|||
destpath = oe.recipeutils.get_bbfile_path(rd, destlayerdir, origrelpath)
|
||||
if not destpath:
|
||||
raise DevtoolError("Unable to determine destination layer path - check that %s specifies an actual layer and %s/conf/layer.conf specifies BBFILES. You may also need to specify a more complete path." % (args.destination, destlayerdir))
|
||||
# Warn if the layer isn't in bblayers.conf (the code to create a bbappend will do this in other cases)
|
||||
layerdirs = [os.path.abspath(layerdir) for layerdir in rd.getVar('BBLAYERS', True).split()]
|
||||
if not os.path.abspath(destlayerdir) in layerdirs:
|
||||
bb.warn('Specified destination layer is not currently enabled in bblayers.conf, so the %s recipe will now be unavailable in your current configuration until you add the layer there' % args.recipename)
|
||||
|
||||
elif destlayerdir == origlayerdir:
|
||||
# Same layer, update the original recipe
|
||||
appendlayerdir = None
|
||||
|
|
Loading…
Reference in New Issue