xref: /aosp_15_r20/external/swiftshader/third_party/subzero/crosstest/lit.cfg (revision 03ce13f70fcc45d86ee91b7ee4cab1936a95046e)
1*03ce13f7SAndroid Build Coastguard Workerimport os
2*03ce13f7SAndroid Build Coastguard Workerimport re
3*03ce13f7SAndroid Build Coastguard Workerimport lit.formats
4*03ce13f7SAndroid Build Coastguard Worker
5*03ce13f7SAndroid Build Coastguard Workerconfig.name = 'subzero_crosstests'
6*03ce13f7SAndroid Build Coastguard Workerconfig.test_format = lit.formats.ShTest()
7*03ce13f7SAndroid Build Coastguard Workerconfig.suffixes = ['.xtest']
8*03ce13f7SAndroid Build Coastguard Workerconfig.test_source_root = os.path.dirname(__file__)
9*03ce13f7SAndroid Build Coastguard Workerconfig.test_exec_root = config.test_source_root
10*03ce13f7SAndroid Build Coastguard Worker
11*03ce13f7SAndroid Build Coastguard Workerpnaclbintools = [r"\bFileCheck\b"]
12*03ce13f7SAndroid Build Coastguard Workerpnaclbinpath = os.path.abspath(os.environ.get('PNACL_BIN_PATH'))
13*03ce13f7SAndroid Build Coastguard Worker
14*03ce13f7SAndroid Build Coastguard Workerfor tool in pnaclbintools:
15*03ce13f7SAndroid Build Coastguard Worker  # The re.sub() line is adapted from one of LLVM's lit.cfg files.
16*03ce13f7SAndroid Build Coastguard Worker  # Extract the tool name from the pattern.  This relies on the tool
17*03ce13f7SAndroid Build Coastguard Worker  # name being surrounded by \b word match operators.  If the
18*03ce13f7SAndroid Build Coastguard Worker  # pattern starts with "| ", include it in the string to be
19*03ce13f7SAndroid Build Coastguard Worker  # substituted.
20*03ce13f7SAndroid Build Coastguard Worker  substitution = re.sub(r"^(\\)?((\| )?)\W+b([0-9A-Za-z-_]+)\\b\W*$",
21*03ce13f7SAndroid Build Coastguard Worker                        r"\2" + pnaclbinpath + "/" + r"\4",
22*03ce13f7SAndroid Build Coastguard Worker                        tool)
23*03ce13f7SAndroid Build Coastguard Worker  config.substitutions.append((tool, substitution))
24