diff options
-rw-r--r-- | bitbake/lib/bb/siggen.py | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/bitbake/lib/bb/siggen.py b/bitbake/lib/bb/siggen.py index fa8a6b1623..b20b9cf771 100644 --- a/bitbake/lib/bb/siggen.py +++ b/bitbake/lib/bb/siggen.py | |||
@@ -101,6 +101,7 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
101 | 101 | ||
102 | def _build_data(self, fn, d): | 102 | def _build_data(self, fn, d): |
103 | 103 | ||
104 | ignore_mismatch = ((d.getVar("BB_HASH_IGNORE_MISMATCH", True) or '') == '1') | ||
104 | tasklist, gendeps, lookupcache = bb.data.generate_dependencies(d) | 105 | tasklist, gendeps, lookupcache = bb.data.generate_dependencies(d) |
105 | 106 | ||
106 | taskdeps = {} | 107 | taskdeps = {} |
@@ -135,7 +136,7 @@ class SignatureGeneratorBasic(SignatureGenerator): | |||
135 | data = data + str(var) | 136 | data = data + str(var) |
136 | datahash = hashlib.md5(data.encode("utf-8")).hexdigest() | 137 | datahash = hashlib.md5(data.encode("utf-8")).hexdigest() |
137 | k = fn + "." + task | 138 | k = fn + "." + task |
138 | if k in self.basehash and self.basehash[k] != datahash: | 139 | if not ignore_mismatch and k in self.basehash and self.basehash[k] != datahash: |
139 | bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (k, self.basehash[k], datahash)) | 140 | bb.error("When reparsing %s, the basehash value changed from %s to %s. The metadata is not deterministic and this needs to be fixed." % (k, self.basehash[k], datahash)) |
140 | self.basehash[k] = datahash | 141 | self.basehash[k] = datahash |
141 | taskdeps[task] = alldeps | 142 | taskdeps[task] = alldeps |