diff options
author | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-30 14:22:21 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-31 19:38:30 +0100 |
commit | c7869b4d4cade8e87e9aab9e27c07bbc6fed39fe (patch) | |
tree | 896484f170b020235f902de84b369aa913d9ac07 /meta/classes/package.bbclass | |
parent | 9958a579e7486a245680094dd43a1bffa8dfb02c (diff) | |
download | poky-c7869b4d4cade8e87e9aab9e27c07bbc6fed39fe.tar.gz |
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>
Diffstat (limited to 'meta/classes/package.bbclass')
-rw-r--r-- | meta/classes/package.bbclass | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/meta/classes/package.bbclass b/meta/classes/package.bbclass index 15c414274f..73e8f6365f 100644 --- a/meta/classes/package.bbclass +++ b/meta/classes/package.bbclass | |||
@@ -1620,6 +1620,19 @@ python package_depchains() { | |||
1620 | pkg_addrrecs(pkg, base, suffix, func, rdeps, d) | 1620 | pkg_addrrecs(pkg, base, suffix, func, rdeps, d) |
1621 | } | 1621 | } |
1622 | 1622 | ||
1623 | # Since bitbake can't determine which variables are accessed during package | ||
1624 | # iteration, we need to list them here: | ||
1625 | PACKAGEVARS = "FILES RDEPENDS RRECOMMENDS SUMMARY DESCRIPTION RSUGGESTS RPROVIDES RCONFLICTS PKG ALLOW_EMPTY pkg_postinst pkg_postrm INITSCRIPT_NAME INITSCRIPT_PARAMS" | ||
1626 | |||
1627 | def gen_packagevar(d): | ||
1628 | ret = [] | ||
1629 | pkgs = (d.getVar("PACKAGES", True) or "").split() | ||
1630 | vars = (d.getVar("PACKAGEVARS", True) or "").split() | ||
1631 | for p in pkgs: | ||
1632 | for v in vars: | ||
1633 | ret.append(v + "_" + p) | ||
1634 | return " ".join(ret) | ||
1635 | |||
1623 | PACKAGE_PREPROCESS_FUNCS ?= "" | 1636 | PACKAGE_PREPROCESS_FUNCS ?= "" |
1624 | PACKAGEFUNCS ?= "package_get_auto_pr \ | 1637 | PACKAGEFUNCS ?= "package_get_auto_pr \ |
1625 | perform_packagecopy \ | 1638 | perform_packagecopy \ |
@@ -1656,6 +1669,7 @@ python do_package () { | |||
1656 | } | 1669 | } |
1657 | 1670 | ||
1658 | do_package[dirs] = "${SHLIBSWORKDIR} ${PKGDESTWORK} ${D}" | 1671 | do_package[dirs] = "${SHLIBSWORKDIR} ${PKGDESTWORK} ${D}" |
1672 | do_package[vardeps] += "${PACKAGEFUNCS} ${@gen_packagevar(d)}" | ||
1659 | addtask package before do_build after do_install | 1673 | addtask package before do_build after do_install |
1660 | 1674 | ||
1661 | PACKAGELOCK = "${STAGING_DIR}/package-output.lock" | 1675 | PACKAGELOCK = "${STAGING_DIR}/package-output.lock" |