From b264f5629b4c9399c6e8e298121c6dba424b95fe Mon Sep 17 00:00:00 2001 From: Paul Eggleton Date: Mon, 29 Dec 2014 11:14:26 +0000 Subject: bitbake: bitbake-layers: fix error handling in add-layer / remove-layer * Fix add-layer error message when a layer is already in BBLAYERS * Ensure we show an error message if we can't find BBLAYERS at all (Bitbake rev: 1c743fd2103730e27699dd55efc6914d3b0c3702) Signed-off-by: Paul Eggleton Signed-off-by: Richard Purdie --- bitbake/lib/bb/utils.py | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'bitbake/lib/bb/utils.py') diff --git a/bitbake/lib/bb/utils.py b/bitbake/lib/bb/utils.py index f26349f4a9..ef8cd4d624 100644 --- a/bitbake/lib/bb/utils.py +++ b/bitbake/lib/bb/utils.py @@ -1012,7 +1012,11 @@ def edit_bblayers_conf(bblayers_conf, add, remove): addlayers = layerlist_param(add) removelayers = layerlist_param(remove) + # Need to use a list here because we can't set non-local variables from a callback in python 2.x + bblayercalls = [] + def handle_bblayers(varname, origvalue): + bblayercalls.append(varname) updated = False bblayers = [remove_trailing_sep(x) for x in origvalue.split()] if removelayers: @@ -1040,5 +1044,9 @@ def edit_bblayers_conf(bblayers_conf, add, remove): return (origvalue, 2, False) edit_metadata_file(bblayers_conf, ['BBLAYERS'], handle_bblayers) + + if not bblayercalls: + raise Exception('Unable to find BBLAYERS in %s' % bblayers_conf) + return (notadded, notremoved) -- cgit v1.2.3-54-g00ecf