diff options
| author | Paul Eggleton <paul.eggleton@linux.intel.com> | 2014-02-11 16:10:11 +0000 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2014-02-11 17:15:54 +0000 |
| commit | 4021080d8e80e5d476a81c79539f59903e35a97a (patch) | |
| tree | 29ee7399257ff3628f68a0b3d7acd7c9595b58c9 | |
| parent | 93a4de6a72d0a00628dd1bd3b93467e74ddff1e4 (diff) | |
| download | poky-4021080d8e80e5d476a81c79539f59903e35a97a.tar.gz | |
classes/buildhistory: avoid buildhistory triggering rebuilds (again)
Postfuncs are now incorporated into task signatures as of BitBake
rev b84d010144de687667cf855ddcb41c9b863c236e, so we need to exclude
the one we're adding to do_fetch. The change to the SSTATEPOSTINSTFUNCS
variable value was also entering the signatures of do_populate_sysroot
and probably other tasks, so we need to use a slightly hacky trick to
avoid that as well.
Apart from the final do_rootfs / do_populate_sysroot, this now means
that adding and removing INHERIT += "buildhistory" will not cause tasks
to be re-run.
Also update the copyright date, properly this time.
(From OE-Core rev: 953df67eb877a6d0fc68d122964440a9a47de3c3)
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/buildhistory.bbclass | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/meta/classes/buildhistory.bbclass b/meta/classes/buildhistory.bbclass index 6d1e74afe1..c048ca290e 100644 --- a/meta/classes/buildhistory.bbclass +++ b/meta/classes/buildhistory.bbclass | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | # | 3 | # |
| 4 | # Based in part on testlab.bbclass and packagehistory.bbclass | 4 | # Based in part on testlab.bbclass and packagehistory.bbclass |
| 5 | # | 5 | # |
| 6 | # Copyright (C) 2013 Intel Corporation | 6 | # Copyright (C) 2011-2014 Intel Corporation |
| 7 | # Copyright (C) 2007-2011 Koen Kooi <koen@openembedded.org> | 7 | # Copyright (C) 2007-2011 Koen Kooi <koen@openembedded.org> |
| 8 | # | 8 | # |
| 9 | 9 | ||
| @@ -18,6 +18,8 @@ BUILDHISTORY_COMMIT_AUTHOR ?= "buildhistory <buildhistory@${DISTRO}>" | |||
| 18 | BUILDHISTORY_PUSH_REPO ?= "" | 18 | BUILDHISTORY_PUSH_REPO ?= "" |
| 19 | 19 | ||
| 20 | SSTATEPOSTINSTFUNCS += "buildhistory_emit_pkghistory" | 20 | SSTATEPOSTINSTFUNCS += "buildhistory_emit_pkghistory" |
| 21 | # We want to avoid influence the signatures of sstate tasks | ||
| 22 | SSTATEPOSTINSTFUNCS[vardepvalue] := "${@d.getVar('SSTATEPOSTINSTFUNCS', False).replace(' buildhistory_emit_pkghistory', '')}" | ||
| 21 | 23 | ||
| 22 | # | 24 | # |
| 23 | # Write out metadata about this package for comparision when writing future packages | 25 | # Write out metadata about this package for comparision when writing future packages |
| @@ -595,6 +597,7 @@ def _get_srcrev_values(d): | |||
| 595 | return (dict_srcrevs, dict_tag_srcrevs) | 597 | return (dict_srcrevs, dict_tag_srcrevs) |
| 596 | 598 | ||
| 597 | do_fetch[postfuncs] += "write_srcrev" | 599 | do_fetch[postfuncs] += "write_srcrev" |
| 600 | do_fetch[vardepsexclude] += "write_srcrev" | ||
| 598 | python write_srcrev() { | 601 | python write_srcrev() { |
| 599 | pkghistdir = d.getVar('BUILDHISTORY_DIR_PACKAGE', True) | 602 | pkghistdir = d.getVar('BUILDHISTORY_DIR_PACKAGE', True) |
| 600 | srcrevfile = os.path.join(pkghistdir, 'latest_srcrev') | 603 | srcrevfile = os.path.join(pkghistdir, 'latest_srcrev') |
