base.bbclass: allow specifying an lsb distro hook via the metadata

This is useful when you have a rather large set of compatible distros. For
example: Centos 5.4, 5.5, 5.6, etc, RHEL server 5.x, RHEL workstation 5.x.

(From OE-Core rev: 0e9932b2dba8573736c92bd07e59bad21b9fda2d)

Signed-off-by: Christopher Larson <chris_larson@mentor.com>
Signed-off-by: Saul Wold <sgw@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Christopher Larson 2012-08-02 15:10:50 -07:00 committed by Richard Purdie
parent 5ec61a7b49
commit 096306ecd1
1 changed files with 11 additions and 1 deletions

View File

@ -34,11 +34,21 @@ def oe_import(d):
python oe_import_eh () {
if isinstance(e, bb.event.ConfigParsed):
oe_import(e.data)
e.data.setVar("NATIVELSBSTRING", oe.lsb.distro_identifier())
e.data.setVar("NATIVELSBSTRING", lsb_distro_identifier(e.data))
}
addhandler oe_import_eh
def lsb_distro_identifier(d):
adjust = d.getVar('LSB_DISTRO_ADJUST', True)
adjust_func = None
if adjust:
try:
adjust_func = globals()[adjust]
except KeyError:
pass
return oe.lsb.distro_identifier(adjust_func)
die() {
bbfatal "$*"
}