[gnome-continuous-yocto/gnomeostree-3.28-rocko: 1521/8267] siteinfo: Add mechanism to extend siteinfo information from BSP layer
- From: Emmanuele Bassi <ebassi src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-continuous-yocto/gnomeostree-3.28-rocko: 1521/8267] siteinfo: Add mechanism to extend siteinfo information from BSP layer
- Date: Sat, 16 Dec 2017 21:56:38 +0000 (UTC)
commit ebc80fa30a98484b7fd1d568bd0f3d701a6f68d5
Author: Richard Purdie <richard purdie linuxfoundation org>
Date: Fri Jul 22 15:25:43 2016 +0100
siteinfo: Add mechanism to extend siteinfo information from BSP layer
In order to add a new architecture or sub-architecture to OE, you currently
need to tweak the table in siteinfo.bbclass. This adds a mechanism so this
can be done from a BSP layer. It needs a function definition which needs
a class file but can then be done with something like:
def rp_testfunc2(archinfo, osinfo, targetinfo, d):
archinfo['testarch'] = "little-endian bit-32"
osinfo['testos'] = "common-linux"
targetinfo['mymach-linux'] = "mymach-linux-common"
return archinfo, osinfo, targetinfo
SITEINFO_EXTRA_DATAFUNCS = "rp_testfunc2"
[YOCTO #8554]
(From OE-Core rev: 2718bb9f2eabc15e3ef7cb5d67f4331de4f751d6)
Signed-off-by: Richard Purdie <richard purdie linuxfoundation org>
meta/classes/siteinfo.bbclass | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
---
diff --git a/meta/classes/siteinfo.bbclass b/meta/classes/siteinfo.bbclass
index 50141a3..03d4c4f 100644
--- a/meta/classes/siteinfo.bbclass
+++ b/meta/classes/siteinfo.bbclass
@@ -107,6 +107,14 @@ def siteinfo_data(d):
"x86_64-mingw32": "bit-64",
}
+ # Add in any extra user supplied data which may come from a BSP layer, removing the
+ # need to always change this class directly
+ extra_siteinfo = (d.getVar("SITEINFO_EXTRA_DATAFUNCS", True) or "").split()
+ for m in extra_siteinfo:
+ call = m + "(archinfo, osinfo, targetinfo, d)"
+ locs = { "archinfo" : archinfo, "osinfo" : osinfo, "targetinfo" : targetinfo, "d" : d}
+ archinfo, osinfo, targetinfo = bb.utils.better_eval(call, locs)
+
hostarch = d.getVar("HOST_ARCH", True)
hostos = d.getVar("HOST_OS", True)
target = "%s-%s" % (hostarch, hostos)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]