root = config.root
targets = root.targets
if ('X86' in targets) | ('AArch64' in targets) | ('ARM' in targets) | \
('Mips' in targets) | ('PowerPC' in targets) | ('SystemZ' in targets):
config.unsupported = False
else:
config.unsupported = True
# FIXME: autoconf and cmake produce different arch names. We should normalize
# them before getting here.
if root.host_arch not in ['i386', 'x86', 'x86_64', 'AMD64',
'AArch64', 'ARM', 'Mips', 'PowerPC', 'ppc64', 'SystemZ']:
config.unsupported = True
if 'armv7' in root.host_arch:
config.unsupported = False
if 'i386-apple-darwin' in root.target_triple:
config.unsupported = True
if 'powerpc' in root.target_triple and not 'powerpc64' in root.target_triple:
config.unsupported = True
# ExecutionEngine tests are not expected to pass in a cross-compilation setup.
if 'native' not in config.available_features:
config.unsupported = True