@@ -2076,9 +2076,13 @@ def _register_metadata(self):
2076
2076
"""
2077
2077
for l in self.libs:
2078
2078
existing = _libs.get(l.name)
2079
- # Check that suites that define same library are consistent
2080
- if existing is not None and existing != l and _check_global_structures:
2081
- abort('inconsistent library redefinition of ' + l.name + ' in ' + existing.suite.dir + ' and ' + l.suite.dir, context=l)
2079
+ # Check that suites that define the same library are consistent wrt digests
2080
+ if existing is not None and _check_global_structures:
2081
+ digest1 = existing.digest
2082
+ digest2 = l.digest
2083
+ # Can only compare digests with the same name
2084
+ if digest1.name == digest2.name and digest1.value != digest2.value:
2085
+ abort(f'definition of {l} in {existing.suite.dir} and {l.suite.dir} have conflicting {digest1.name} values: {digest1} != {digest2}', context=l)
2082
2086
_libs[l.name] = l
2083
2087
for l in self.jreLibs:
2084
2088
existing = _jreLibs.get(l.name)
@@ -8737,7 +8741,7 @@ def _check_download_needed(self):
8737
8741
return not _check_file_with_digest(self.path, self.digest)
8738
8742
8739
8743
def _comparison_key(self):
8740
- return ( self.digest, self. name)
8744
+ return self.name
8741
8745
8742
8746
8743
8747
class PackedResourceLibrary(ResourceLibrary):
@@ -9042,7 +9046,7 @@ def _walk_deps_visit_edges(self, visited, in_edge, preVisit=None, visit=None, ig
9042
9046
self._walk_deps_visit_edges_helper(deps, visited, in_edge, preVisit, visit, ignoredEdges, visitEdge)
9043
9047
9044
9048
def _comparison_key(self):
9045
- return ( self.digest, self. name)
9049
+ return self.name
9046
9050
9047
9051
def get_urls(self):
9048
9052
return self.urls
@@ -18328,7 +18332,7 @@ def alarm_handler(signum, frame):
18328
18332
abort(1, killsig=signal.SIGINT)
18329
18333
18330
18334
# The version must be updated for every PR (checked in CI)
18331
- version = VersionSpec("6.12.3 ") # GR-41905 - fix building with pypy
18335
+ version = VersionSpec("6.12.4 ") # GR-42429 comparing Libraries should only consider name
18332
18336
18333
18337
currentUmask = None
18334
18338
_mx_start_datetime = datetime.utcnow()
0 commit comments