1root = config.root
2targets = root.targets
3if ('X86' in targets) | ('AArch64' in targets) | ('ARM' in targets) | \
4   ('Mips' in targets) | ('PowerPC' in targets) | ('SystemZ' in targets):
5    config.unsupported = False
6else:
7    config.unsupported = True
8
9# FIXME: autoconf and cmake produce different arch names. We should normalize
10# them before getting here.
11if root.host_arch not in ['i386', 'x86', 'x86_64', 'AMD64',
12                          'AArch64', 'ARM', 'Mips', 'PowerPC', 'ppc64', 'SystemZ']:
13    config.unsupported = True
14
15if 'armv7' in root.host_arch:
16    config.unsupported = False
17
18if 'i386-apple-darwin' in root.target_triple:
19    config.unsupported = True
20
21if 'powerpc' in root.target_triple and not 'powerpc64' in root.target_triple:
22    config.unsupported = True
23
24# ExecutionEngine tests are not expected to pass in a cross-compilation setup.
25if 'native' not in config.available_features:
26    config.unsupported = True
27