| #------------------------------------------------------------------------------- | 
 | # The MPACT Compiler LIT Configuration | 
 | #------------------------------------------------------------------------------- | 
 |  | 
 | import os | 
 | import platform | 
 | import re | 
 | import subprocess | 
 | import tempfile | 
 |  | 
 | import lit.formats | 
 | import lit.util | 
 |  | 
 | from lit.llvm import llvm_config | 
 | from lit.llvm.subst import ToolSubst | 
 | from lit.llvm.subst import FindTool | 
 |  | 
 | # The name of this test suite. | 
 | config.name = "MPACT" | 
 |  | 
 | # The test format. | 
 | config.test_format = lit.formats.ShTest(not llvm_config.use_lit_shell) | 
 |  | 
 | # A list of file extensions to treat as test files. | 
 | config.suffixes = [".py"] | 
 |  | 
 | # A list of files to exclude from the test suite. | 
 | config.excludes = [ | 
 |     "CMakeLists.txt", | 
 |     "README.txt", | 
 |     "LICENSE.txt", | 
 |     "lit.cfg.py", | 
 |     "lit.site.cfg.py", | 
 | ] | 
 |  | 
 | # The root path where tests are located. | 
 | config.test_source_root = os.path.dirname(__file__) | 
 |  | 
 | # The root path where tests should be run. | 
 | config.test_exec_root = os.path.join(config.mpact_obj_root, "test") | 
 | config.standalone_tools_dir = os.path.join(config.mpact_obj_root, "bin") | 
 |  | 
 | # Substitutions. | 
 | config.substitutions.append(("%PATH%", config.environment["PATH"])) | 
 | config.substitutions.append(("%shlibext", config.llvm_shlib_ext)) | 
 |  | 
 | # Tweak the PATH to include the tools dir. | 
 | llvm_config.with_environment("PATH", config.llvm_tools_dir, append_path=True) | 
 | llvm_config.with_environment( | 
 |     "PATH", os.path.join(config.llvm_build_dir, "bin"), append_path=True | 
 | ) | 
 | llvm_config.with_system_environment(["HOME", "INCLUDE", "LIB", "TMP", "TEMP"]) | 
 |  | 
 | # On Windows the path to python could contain spaces in which case it needs to | 
 | # be provided in quotes. This is the equivalent of how %python is setup in | 
 | # llvm/utils/lit/lit/llvm/config.py. | 
 | if "Windows" in config.host_os: | 
 |     config.python_executable = '"%s"' % (config.python_executable) | 
 |  | 
 | # Tools. | 
 | tool_dirs = [ | 
 |     config.standalone_tools_dir, | 
 |     config.llvm_tools_dir, | 
 |     config.mpact_obj_root, | 
 | ] | 
 | tools = [ | 
 |     "mpact-opt", | 
 |     ToolSubst("%PYTHON", config.python_executable, unresolved="ignore"), | 
 | ] | 
 |  | 
 | llvm_config.add_tool_substitutions(tools, tool_dirs) | 
 |  | 
 | llvm_config.with_environment( | 
 |     "PYTHONPATH", | 
 |     [ | 
 |         os.path.join(config.mpact_obj_root, "python_packages/mpact"), | 
 |     ], | 
 |     append_path=True, | 
 | ) |