1#!@Python3_EXECUTABLE@ 2import os 3import subprocess 4import sys 5 6dotest_path = '@LLDB_SOURCE_DIR_CONFIGURED@/test/API/dotest.py' 7dotest_common_args_str = '@LLDB_TEST_COMMON_ARGS_CONFIGURED@' 8dotest_user_args_str = '@LLDB_TEST_USER_ARGS_CONFIGURED@' 9arch = '@LLDB_TEST_ARCH@' 10executable = '@LLDB_TEST_EXECUTABLE_CONFIGURED@' 11compiler = '@LLDB_TEST_COMPILER_CONFIGURED@' 12dsymutil = '@LLDB_TEST_DSYMUTIL_CONFIGURED@' 13make = '@LLDB_TEST_MAKE_CONFIGURED@' 14lldb_build_dir = '@LLDB_TEST_BUILD_DIRECTORY_CONFIGURED@' 15lldb_build_intel_pt = "@LLDB_BUILD_INTEL_PT@" 16lldb_framework_dir = "@LLDB_FRAMEWORK_DIR_CONFIGURED@" 17lldb_libs_dir = "@LLDB_LIBS_DIR_CONFIGURED@" 18llvm_tools_dir = "@LLVM_TOOLS_DIR_CONFIGURED@" 19lldb_obj_root = "@LLDB_BINARY_DIR@" 20has_libcxx = @LLDB_HAS_LIBCXX@ 21libcxx_libs_dir = "@LIBCXX_LIBRARY_DIR@" 22libcxx_include_dir = "@LIBCXX_GENERATED_INCLUDE_DIR@" 23libcxx_include_target_dir = "@LIBCXX_GENERATED_INCLUDE_TARGET_DIR@" 24 25if __name__ == '__main__': 26 wrapper_args = sys.argv[1:] 27 dotest_args = [] 28 # split on an empty string will produce [''] and if you 29 # add that to the command, it will be treated as a directory... 30 if dotest_common_args_str: 31 dotest_args.extend(dotest_common_args_str.split(';')) 32 if dotest_user_args_str: 33 dotest_args.extend(dotest_user_args_str.split(';')) 34 # Build dotest.py command. 35 cmd = [sys.executable, dotest_path] 36 cmd.extend(['--arch', arch]) 37 cmd.extend(dotest_args) 38 cmd.extend(['--build-dir', lldb_build_dir]) 39 cmd.extend(['--executable', executable]) 40 cmd.extend(['--compiler', compiler]) 41 cmd.extend(['--dsymutil', dsymutil]) 42 cmd.extend(['--make', make]) 43 cmd.extend(['--lldb-libs-dir', lldb_libs_dir]) 44 cmd.extend(['--llvm-tools-dir', llvm_tools_dir]) 45 if has_libcxx: 46 cmd.extend(['--libcxx-include-dir', libcxx_include_dir]) 47 if libcxx_include_target_dir: 48 cmd.extend(['--libcxx-include-target-dir', libcxx_include_target_dir]) 49 cmd.extend(['--libcxx-library-dir', libcxx_libs_dir]) 50 if lldb_framework_dir: 51 cmd.extend(['--framework', lldb_framework_dir]) 52 if lldb_build_intel_pt == "1": 53 cmd.extend(['--enable-plugin', 'intel-pt']) 54 cmd.extend(['--lldb-obj-root', lldb_obj_root]) 55 cmd.extend(wrapper_args) 56 # Invoke dotest.py and return exit code. 57 print(' '.join(cmd)) 58 sys.exit(subprocess.call(cmd)) 59