diff --git a/lldb/cmake/modules/AddLLDB.cmake b/lldb/cmake/modules/AddLLDB.cmake --- a/lldb/cmake/modules/AddLLDB.cmake +++ b/lldb/cmake/modules/AddLLDB.cmake @@ -141,6 +141,11 @@ endif() endfunction(add_lldb_executable) + +macro(add_lldb_optional_tool_subdirectory name) + add_llvm_subdirectory(LLDB TOOL ${name}) +endmacro() + function(add_lldb_tool name) add_lldb_executable(${name} GENERATE_INSTALL ${ARGN}) endfunction() diff --git a/lldb/lit/lit.site.cfg.py.in b/lldb/lit/lit.site.cfg.py.in --- a/lldb/lit/lit.site.cfg.py.in +++ b/lldb/lit/lit.site.cfg.py.in @@ -18,6 +18,8 @@ config.host_triple = "@LLVM_HOST_TRIPLE@" config.lldb_bitness = 64 if @LLDB_IS_64_BITS@ else 32 config.lldb_disable_python = @LLDB_DISABLE_PYTHON@ +config.has_lldb_instr = "@LLDB_TOOL_LLDB_INSTR_BUILD@" +config.has_lldb_vscode = "@LLDB_TOOL_LLDB_VSCODE_BUILD@" config.maxIndividualTestTime = 600 # Support substitution of the tools and libs dirs with user parameters. This is diff --git a/lldb/lit/tools/lldb-instr/lit.local.cfg b/lldb/lit/tools/lldb-instr/lit.local.cfg new file mode 100644 --- /dev/null +++ b/lldb/lit/tools/lldb-instr/lit.local.cfg @@ -0,0 +1,4 @@ +import sys + +if config.has_lldb_instr == "OFF": + config.unsupported = True diff --git a/lldb/tools/CMakeLists.txt b/lldb/tools/CMakeLists.txt --- a/lldb/tools/CMakeLists.txt +++ b/lldb/tools/CMakeLists.txt @@ -1,10 +1,11 @@ add_subdirectory(argdumper) add_subdirectory(driver) add_subdirectory(intel-features) -add_subdirectory(lldb-instr) add_subdirectory(lldb-mi) add_subdirectory(lldb-test) -add_subdirectory(lldb-vscode) + +add_lldb_optional_tool_subdirectory(lldb-instr) +add_lldb_optional_tool_subdirectory(lldb-vscode) if (CMAKE_SYSTEM_NAME MATCHES "Darwin") add_subdirectory(darwin-debug)