data_smart: Ensure all possible overrides are cached including those with '_' in the name

Unfortunately we've been neglecting to pay the correct tributes to the
cookie monster and hence the datastore is malfunctioning.

Currently tributes are only paid on the last part of a variable after
the last "_" character. We need to split by *all* "_" characters since
an override may contain the character.

This fixes the code so the correct number of tributes are made. Paradoxically
parsing appears to be faster after this change.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
setup.py: fix documentation build

setup.py currently aborts when building the documentation:

> ./setup.py build
[..]
error: [Errno 2] No such file or directory:
'/home/jab/src/x/bitbake/doc/manual'

because the doc/manual directory has been renamed to
doc/bitbake-user-manual since commit 452a62a ("doc: Rename user-manual
-> bitbake-user-manual") and its Makefile has been removed as of commit
d419907 ("user-manual: Import YP Docs templates for usermanual
improvements").

Update setup.py to reflect the new name and usage.

Signed-off-by: Andreas Bofjall <andreas@gazonk.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
world-image: add extra target

* similar to world target, but collects all PACKAGES
* recipes marked with EXCLUDE_FROM_WORLD are excluded from world as well
  as world-image
* recipes marked with EXCLUDE_FROM_WORLD_IMAGE are excluded completely
  from world-image, sometimes you can build 2 recipes in same sysroot,
  but cannot install them in the same image
* PACKAGES listed in EXCLUDE_PACKAGES_FROM_WORLD_IMAGE are also
  excluded. You can remove e.g. ${PN}-dbg, but keep all other PACKAGES.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>