staging: Save out provider information into the sysroot
This patch saves out provider information into the sysroot for all providers except those in MULTI_PROVIDER_WHITELIST. This means that we will start seeing warnings when two providers for the same thing are installed into the sysroot. In the future those warnings can be turned into errors. Partially addresses [YOCTO #4102] (From OE-Core rev: 9e696b9d32e33ba37dc09ff312328e540fc25de2) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
21169c3042
commit
bdbc158b47
|
@ -93,6 +93,16 @@ python do_populate_sysroot () {
|
|||
bb.build.exec_func("sysroot_stage_all", d)
|
||||
for f in (d.getVar('SYSROOT_PREPROCESS_FUNCS', True) or '').split():
|
||||
bb.build.exec_func(f, d)
|
||||
pn = d.getVar("PN", True)
|
||||
multiprov = d.getVar("MULTI_PROVIDER_WHITELIST", True).split()
|
||||
provdir = d.expand("${SYSROOT_DESTDIR}${base_prefix}/sysroot-providers/")
|
||||
bb.utils.mkdirhier(provdir)
|
||||
for p in d.getVar("PROVIDES", True).split():
|
||||
if p in multiprov:
|
||||
continue
|
||||
p = p.replace("/", "_")
|
||||
with open(provdir + p, "w") as f:
|
||||
f.write(pn)
|
||||
}
|
||||
|
||||
SSTATETASKS += "do_populate_sysroot"
|
||||
|
|
Loading…
Reference in New Issue