xref: /aosp_15_r20/external/clang/utils/perf-training/order-files.lit.cfg (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li# -*- Python -*-
2*67e74705SXin Li
3*67e74705SXin Lifrom lit import Test
4*67e74705SXin Liimport lit.formats
5*67e74705SXin Liimport lit.util
6*67e74705SXin Liimport os
7*67e74705SXin Li
8*67e74705SXin Lidef getSysrootFlagsOnDarwin(config, lit_config):
9*67e74705SXin Li    # On Darwin, support relocatable SDKs by providing Clang with a
10*67e74705SXin Li    # default system root path.
11*67e74705SXin Li    if 'darwin' in config.target_triple:
12*67e74705SXin Li        try:
13*67e74705SXin Li            out = lit.util.capture(['xcrun', '--show-sdk-path']).strip()
14*67e74705SXin Li            res = 0
15*67e74705SXin Li        except OSError:
16*67e74705SXin Li            res = -1
17*67e74705SXin Li        if res == 0 and out:
18*67e74705SXin Li            sdk_path = out
19*67e74705SXin Li            lit_config.note('using SDKROOT: %r' % sdk_path)
20*67e74705SXin Li            return '-isysroot %s' % sdk_path
21*67e74705SXin Li    return ''
22*67e74705SXin Li
23*67e74705SXin Lisysroot_flags = getSysrootFlagsOnDarwin(config, lit_config)
24*67e74705SXin Li
25*67e74705SXin Liconfig.clang = os.path.realpath(lit.util.which('clang', config.clang_tools_dir)).replace('\\', '/')
26*67e74705SXin Li
27*67e74705SXin Liconfig.name = 'Clang Perf Training'
28*67e74705SXin Liconfig.suffixes = ['.c', '.cpp', '.m', '.mm', '.cu', '.ll', '.cl', '.s', '.S', '.modulemap']
29*67e74705SXin Li
30*67e74705SXin Lidtrace_wrapper = '%s %s/perf-helper.py dtrace' % (config.python_exe, config.test_source_root)
31*67e74705SXin Lidtrace_wrapper_cc1 = '%s %s/perf-helper.py dtrace --cc1' % (config.python_exe, config.test_source_root)
32*67e74705SXin Li
33*67e74705SXin Liuse_lit_shell = os.environ.get("LIT_USE_INTERNAL_SHELL")
34*67e74705SXin Liconfig.test_format = lit.formats.ShTest(use_lit_shell == "0")
35*67e74705SXin Liconfig.substitutions.append( ('%clang_cpp_skip_driver', ' %s %s --driver-mode=cpp %s ' % (dtrace_wrapper_cc1, config.clang, sysroot_flags)))
36*67e74705SXin Liconfig.substitutions.append( ('%clang_cpp', ' %s %s --driver-mode=cpp %s ' % (dtrace_wrapper, config.clang, sysroot_flags)))
37*67e74705SXin Liconfig.substitutions.append( ('%clang_skip_driver', ' %s %s %s ' % (dtrace_wrapper_cc1, config.clang, sysroot_flags)))
38*67e74705SXin Liconfig.substitutions.append( ('%clang', ' %s %s %s ' % (dtrace_wrapper, config.clang, sysroot_flags) ) )
39*67e74705SXin Liconfig.substitutions.append( ('%test_root', config.test_exec_root ) )
40*67e74705SXin Li
41*67e74705SXin Li
42