summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--meta/conf/abi_version.conf8
-rw-r--r--meta/lib/oe/sstatesig.py3
2 files changed, 11 insertions, 0 deletions
diff --git a/meta/conf/abi_version.conf b/meta/conf/abi_version.conf
index 4964880108..2bdc55695b 100644
--- a/meta/conf/abi_version.conf
+++ b/meta/conf/abi_version.conf
@@ -5,3 +5,11 @@
5# with general agreement from the core team. 5# with general agreement from the core team.
6# 6#
7OELAYOUT_ABI = "12" 7OELAYOUT_ABI = "12"
8
9#
10# HASHEQUIV_HASH_VERSION is injected into the output hash calculation used by
11# hashequiv. Changing this means previous hashes will no longer match, allowing
12# a reset of the equivalence, for example when reproducibility issues break the
13# existing match data. Distros can also append to this value for the same effect.
14#
15HASHEQUIV_HASH_VERSION = "1"
diff --git a/meta/lib/oe/sstatesig.py b/meta/lib/oe/sstatesig.py
index 4325b66a9e..d24e3738ae 100644
--- a/meta/lib/oe/sstatesig.py
+++ b/meta/lib/oe/sstatesig.py
@@ -477,11 +477,14 @@ def OEOuthashBasic(path, sigfile, task, d):
477 h = hashlib.sha256() 477 h = hashlib.sha256()
478 prev_dir = os.getcwd() 478 prev_dir = os.getcwd()
479 include_owners = os.environ.get('PSEUDO_DISABLED') == '0' 479 include_owners = os.environ.get('PSEUDO_DISABLED') == '0'
480 extra_content = d.getVar('HASHEQUIV_HASH_VERSION')
480 481
481 try: 482 try:
482 os.chdir(path) 483 os.chdir(path)
483 484
484 update_hash("OEOuthashBasic\n") 485 update_hash("OEOuthashBasic\n")
486 if extra_content:
487 update_hash(extra_content + "\n")
485 488
486 # It is only currently useful to get equivalent hashes for things that 489 # It is only currently useful to get equivalent hashes for things that
487 # can be restored from sstate. Since the sstate object is named using 490 # can be restored from sstate. Since the sstate object is named using