summaryrefslogtreecommitdiffstats
path: root/bitbake/lib/bb/cookerdata.py
diff options
context:
space:
mode:
Diffstat (limited to 'bitbake/lib/bb/cookerdata.py')
-rw-r--r--bitbake/lib/bb/cookerdata.py16
1 files changed, 13 insertions, 3 deletions
diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py
index f8ae41093b..842275d530 100644
--- a/bitbake/lib/bb/cookerdata.py
+++ b/bitbake/lib/bb/cookerdata.py
@@ -342,14 +342,24 @@ class CookerDataBuilder(object):
342 data = parse_config_file(layerconf, data) 342 data = parse_config_file(layerconf, data)
343 343
344 layers = (data.getVar('BBLAYERS') or "").split() 344 layers = (data.getVar('BBLAYERS') or "").split()
345 broken_layers = []
345 346
346 data = bb.data.createCopy(data) 347 data = bb.data.createCopy(data)
347 approved = bb.utils.approved_variables() 348 approved = bb.utils.approved_variables()
349
350 # Check whether present layer directories exist
348 for layer in layers: 351 for layer in layers:
349 if not os.path.isdir(layer): 352 if not os.path.isdir(layer):
350 parselog.critical("Layer directory '%s' does not exist! " 353 broken_layers.append(layer)
351 "Please check BBLAYERS in %s" % (layer, layerconf)) 354
352 sys.exit(1) 355 if broken_layers:
356 parselog.critical("The following layer directories do not exist:")
357 for layer in broken_layers:
358 parselog.critical(" %s", layer)
359 parselog.critical("Please check BBLAYERS in %s" % (layerconf))
360 sys.exit(1)
361
362 for layer in layers:
353 parselog.debug(2, "Adding layer %s", layer) 363 parselog.debug(2, "Adding layer %s", layer)
354 if 'HOME' in approved and '~' in layer: 364 if 'HOME' in approved and '~' in layer:
355 layer = os.path.expanduser(layer) 365 layer = os.path.expanduser(layer)