Changed target checking to architecture checking for abi compatible

This commit is contained in:
Mario Melara 2016-02-16 15:17:57 -08:00
parent c799301011
commit 35a602baaf

View file

@ -34,9 +34,10 @@ class ABI(object):
"""This class provides methods to test ABI compatibility between specs. """This class provides methods to test ABI compatibility between specs.
The current implementation is rather rough and could be improved.""" The current implementation is rather rough and could be improved."""
def target_compatible(self, parent, child): def architecture_compatible(self, parent, child):
"""Returns true iff the parent and child specs have ABI compatible targets.""" """Returns true iff the parent and child specs have ABI compatible targets."""
return not parent.target or not child.target or parent.target == child.target return not parent.architecture or not \
child.achitecture or parent.architecture == child.architecture
@memoized @memoized
@ -123,6 +124,6 @@ def compiler_compatible(self, parent, child, **kwargs):
def compatible(self, parent, child, **kwargs): def compatible(self, parent, child, **kwargs):
"""Returns true iff a parent and child spec are ABI compatible""" """Returns true iff a parent and child spec are ABI compatible"""
loosematch = kwargs.get('loose', False) loosematch = kwargs.get('loose', False)
return self.target_compatible(parent, child) and \ return self.architecture_compatible(parent, child) and \
self.compiler_compatible(parent, child, loose=loosematch) self.compiler_compatible(parent, child, loose=loosematch)