This is how it'll look like: ERROR: Unable to start bitbake server (None) ERROR: Server log for this session (/home/sashko/projects/yocto/open-embedded/build/bitbake-cookerdaemon.log): --- Starting bitbake server pid 7414 at 2019-06-14 01:35:10.070371 --- ERROR: The following layer directories do not exist: ERROR: - /home/sashko/projects/yocto/open-embedded/sources/poky/meta-abc ERROR: - /home/sashko/projects/yocto/open-embedded/sources/poky/meta-xyz ERROR: Please check BBLAYERS in /home/sashko/projects/yocto/open-embedded/build/conf/bblayers.conf
Feel free to suggest better way to present this information to a user. On 14/06/2019 01:42, Oleksandr Kravchuk wrote: > Check existence of all the bblayer direcotories at once and print them > all, so if there are multiple nonexistent directories, user does not > have to correct bblayers.conf and restart bitbake multiple times. > > [YOCTO #11647] > > Signed-off-by: Oleksandr Kravchuk <[email protected]> > --- > bitbake/lib/bb/cookerdata.py | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/bitbake/lib/bb/cookerdata.py b/bitbake/lib/bb/cookerdata.py > index f8ae41093b..be1c332eb5 100644 > --- a/bitbake/lib/bb/cookerdata.py > +++ b/bitbake/lib/bb/cookerdata.py > @@ -342,14 +342,24 @@ class CookerDataBuilder(object): > data = parse_config_file(layerconf, data) > > layers = (data.getVar('BBLAYERS') or "").split() > + broken_layers = [] > > data = bb.data.createCopy(data) > approved = bb.utils.approved_variables() > + > + # Check whether present layer directories exist > for layer in layers: > if not os.path.isdir(layer): > - parselog.critical("Layer directory '%s' does not exist! " > - "Please check BBLAYERS in %s" % > (layer, layerconf)) > - sys.exit(1) > + broken_layers.append(layer) > + > + if broken_layers: > + parselog.critical("The following layer directories do not > exist:") > + for layer in broken_layers: > + parselog.critical("- %s", layer) > + parselog.critical("Please check BBLAYERS in %s" % > (layerconf)) > + sys.exit(1) > + > + for layer in layers: > parselog.debug(2, "Adding layer %s", layer) > if 'HOME' in approved and '~' in layer: > layer = os.path.expanduser(layer) -- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
