1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 00:20:08 +00:00

native/nativesdk: Clean up the depends ordering after bitbake override handling updates

This massively cleans up the dependency handling in the two classes
when interacting with BBCLASSEXTEND.

This change has a dependency on the bitbake override handling change
and also the existence of the RecipePreFinalise event.

(From OE-Core rev: f183c7cfe377fa6ed2777605c3590a9dda2060df)

Signed-off-by: Richard  Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Richard Purdie
2011-06-09 17:56:23 +01:00
parent 69c87c5ebb
commit 1b53eef276
6 changed files with 56 additions and 47 deletions
+14 -9
View File
@@ -54,12 +54,15 @@ FILES_${PN}-dbg += "${prefix}/.debug \
export PKG_CONFIG_DIR = "${STAGING_DIR_HOST}${libdir}/pkgconfig"
export PKG_CONFIG_SYSROOT_DIR = "${STAGING_DIR_HOST}"
ORIG_DEPENDS := "${DEPENDS}"
DEPENDS_virtclass-nativesdk ?= "${ORIG_DEPENDS}"
python nativesdk_virtclass_handler () {
if not isinstance(e, bb.event.RecipePreFinalise):
return
python __anonymous () {
pn = bb.data.getVar("PN", d, True)
depends = bb.data.getVar("DEPENDS_virtclass-nativesdk", d, True)
pn = bb.data.getVar("PN", e.data, True)
if not pn.endswith("-nativesdk"):
return
depends = bb.data.getVar("DEPENDS", e.data, True)
deps = bb.utils.explode_deps(depends)
newdeps = []
for dep in deps:
@@ -71,16 +74,18 @@ python __anonymous () {
newdeps.append(dep + "-nativesdk")
else:
newdeps.append(dep)
bb.data.setVar("DEPENDS_virtclass-nativesdk", " ".join(newdeps), d)
provides = bb.data.getVar("PROVIDES", d, True)
bb.data.setVar("DEPENDS", " ".join(newdeps), e.data)
provides = bb.data.getVar("PROVIDES", e.data, True)
for prov in provides.split():
if prov.find(pn) != -1:
continue
if not prov.endswith("-nativesdk"):
provides = provides.replace(prov, prov + "-nativesdk")
bb.data.setVar("PROVIDES", provides, d)
bb.data.setVar("OVERRIDES", bb.data.getVar("OVERRIDES", d, False) + ":virtclass-nativesdk", d)
bb.data.setVar("PROVIDES", provides, e.data)
bb.data.setVar("OVERRIDES", bb.data.getVar("OVERRIDES", e.data, False) + ":virtclass-nativesdk", e.data)
}
addhandler nativesdk_virtclass_handler
do_populate_sysroot[stamp-extra-info] = ""
do_package[stamp-extra-info] = ""