package.bbclass: Ensure task's variable dependencies are correctly caputred in the sstate checksum
[YOCTO #1388] This change is needed to correctly add the dependencies for the do_package task which bitbake is unable to automatically detect itself. (From OE-Core rev: 0614b9aa62a46f81d334ca4230080cc707347f3c) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
parent
9958a579e7
commit
c7869b4d4c
|
@ -72,8 +72,9 @@ python __anonymous () {
|
|||
|
||||
d.setVar("PACKAGES", " ".join([row[1] for row in pkgs_mapping]))
|
||||
|
||||
vars = (d.getVar("PACKAGEVARS", True) or "").split()
|
||||
for pkg_mapping in pkgs_mapping:
|
||||
for subs in ["FILES", "RDEPENDS", "RRECOMMENDS", "SUMMARY", "DESCRIPTION", "RSUGGESTS", "RPROVIDES", "RCONFLICTS", "PKG", "ALLOW_EMPTY", "pkg_postinst", "pkg_postrm", "INITSCRIPT_NAME", "INITSCRIPT_PARAMS"]:
|
||||
for subs in vars:
|
||||
d.renameVar("%s_%s" % (subs, pkg_mapping[0]), "%s_%s" % (subs, pkg_mapping[1]))
|
||||
|
||||
map_dependencies("DEPENDS", d)
|
||||
|
|
|
@ -1620,6 +1620,19 @@ python package_depchains() {
|
|||
pkg_addrrecs(pkg, base, suffix, func, rdeps, d)
|
||||
}
|
||||
|
||||
# Since bitbake can't determine which variables are accessed during package
|
||||
# iteration, we need to list them here:
|
||||
PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm INITSCRIPT_NAME INITSCRIPT_PARAMS"
|
||||
|
||||
def gen_packagevar(d):
|
||||
ret = []
|
||||
pkgs = (d.getVar("PACKAGES", True) or "").split()
|
||||
vars = (d.getVar("PACKAGEVARS", True) or "").split()
|
||||
for p in pkgs:
|
||||
for v in vars:
|
||||
ret.append(v + "_" + p)
|
||||
return " ".join(ret)
|
||||
|
||||
PACKAGE_PREPROCESS_FUNCS ?= ""
|
||||
PACKAGEFUNCS ?= "package_get_auto_pr \
|
||||
perform_packagecopy \
|
||||
|
@ -1656,6 +1669,7 @@ python do_package () {
|
|||
}
|
||||
|
||||
do_package[dirs] = "${SHLIBSWORKDIR} ${PKGDESTWORK} ${D}"
|
||||
do_package[vardeps] += "${PACKAGEFUNCS} ${@gen_packagevar(d)}"
|
||||
addtask package before do_build after do_install
|
||||
|
||||
PACKAGELOCK = "${STAGING_DIR}/package-output.lock"
|
||||
|
|
Loading…
Reference in New Issue