JDevlieghere created this revision. JDevlieghere added reviewers: LLDB, labath. Herald added a subscriber: teemperor. Herald added a project: LLDB.
Explicitly disallow using `lldb` instead of `%lldb` in the shell tests. This is a clever trick that is used by Swift to achieve the same results. Repository: rLLDB LLDB https://reviews.llvm.org/D73289 Files: lldb/test/Shell/helper/toolchain.py Index: lldb/test/Shell/helper/toolchain.py =================================================================== --- lldb/test/Shell/helper/toolchain.py +++ lldb/test/Shell/helper/toolchain.py @@ -14,6 +14,15 @@ return os.path.join(config.test_exec_root, 'Shell', 'lit-lldb-init') +def _disallow(config, execName): + warning = ''' + echo '*** Do not use \'{0}\' in tests; use \'%''{0}\'. ***' && + exit 1 && echo + ''' + config.substitutions.append((' {0} '.format(execName), + warning.format(execName))) + + def use_lldb_substitutions(config): # Set up substitutions for primary tools. These tools must come from config.lldb_tools_dir # which is basically the build output directory. We do not want to find these in path or @@ -58,6 +67,10 @@ extra_args=build_script_args) ] + _disallow(config, 'lldb') + _disallow(config, 'debugserver') + _disallow(config, 'platformserver') + llvm_config.add_tool_substitutions(primary_tools, [config.lldb_tools_dir]) @@ -141,6 +154,7 @@ additional_tool_dirs += [config.lldb_tools_dir, config.llvm_tools_dir] llvm_config.add_tool_substitutions(support_tools, additional_tool_dirs) + _disallow(config, 'clang') def use_lldb_repro_substitutions(config, mode): lldb_init = _get_lldb_init_path(config)
Index: lldb/test/Shell/helper/toolchain.py =================================================================== --- lldb/test/Shell/helper/toolchain.py +++ lldb/test/Shell/helper/toolchain.py @@ -14,6 +14,15 @@ return os.path.join(config.test_exec_root, 'Shell', 'lit-lldb-init') +def _disallow(config, execName): + warning = ''' + echo '*** Do not use \'{0}\' in tests; use \'%''{0}\'. ***' && + exit 1 && echo + ''' + config.substitutions.append((' {0} '.format(execName), + warning.format(execName))) + + def use_lldb_substitutions(config): # Set up substitutions for primary tools. These tools must come from config.lldb_tools_dir # which is basically the build output directory. We do not want to find these in path or @@ -58,6 +67,10 @@ extra_args=build_script_args) ] + _disallow(config, 'lldb') + _disallow(config, 'debugserver') + _disallow(config, 'platformserver') + llvm_config.add_tool_substitutions(primary_tools, [config.lldb_tools_dir]) @@ -141,6 +154,7 @@ additional_tool_dirs += [config.lldb_tools_dir, config.llvm_tools_dir] llvm_config.add_tool_substitutions(support_tools, additional_tool_dirs) + _disallow(config, 'clang') def use_lldb_repro_substitutions(config, mode): lldb_init = _get_lldb_init_path(config)
_______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits