qtcreatorcdbext: Deploy lldb on Windows

Starting with LLVM 17.0.1 we include lldb in the list of packages
compiled on Windows.

This commit deploys lldb.exe and its Python required machinery.

Fixes: QTCREATORBUG-14539
Change-Id: I7f44c537cbaf31bf2f065762bdc9a48dd5efc64d
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: David Schulz <david.schulz@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
This commit is contained in:
Cristian Adam
2023-11-07 17:57:09 +01:00
parent f9e2942a80
commit 3939ba93af
2 changed files with 24 additions and 1 deletions

View File

@@ -245,7 +245,10 @@ def build_qtcreatorcdbext(args, paths):
return
if not os.path.exists(paths.qtcreatorcdbext_build):
os.makedirs(paths.qtcreatorcdbext_build)
prefix_paths = [common.to_posix_path(os.path.abspath(fp)) for fp in args.prefix_paths]
prefix_paths = [os.path.abspath(fp) for fp in args.prefix_paths]
if paths.llvm:
prefix_paths += [paths.llvm]
prefix_paths = [common.to_posix_path(fp) for fp in prefix_paths]
cmake_args = ['-DCMAKE_PREFIX_PATH=' + ';'.join(prefix_paths),
'-DCMAKE_INSTALL_PREFIX=' + common.to_posix_path(paths.qtcreatorcdbext_install)]
cmake_args += common_cmake_arguments(args)

View File

@@ -201,4 +201,24 @@ if (_library_enabled)
COMMAND "${CMAKE_COMMAND}" -E copy_if_different ${deployPythonFiles} "${output_binary_dir}/lib/qtcreatorcdbext${ArchSuffix}/"
VERBATIM
)
# Deploy lldb.exe and its Python dependency
find_package(Clang QUIET)
if (LLVM_TOOLS_BINARY_DIR AND LLVM_LIBRARY_DIRS)
foreach(lldb_file lldb.exe lldb-vscode.exe liblldb.dll python311.zip python311.dll)
if (EXISTS ${LLVM_TOOLS_BINARY_DIR}/${lldb_file})
install(FILES ${LLVM_TOOLS_BINARY_DIR}/${lldb_file}
DESTINATION bin/clang/bin
COMPONENT qtcreatorcdbext)
endif()
endforeach()
if (EXISTS ${LLVM_LIBRARY_DIRS}/site-packages)
install(DIRECTORY ${LLVM_LIBRARY_DIRS}/site-packages
DESTINATION bin/clang/lib
COMPONENT qtcreatorcdbext
PATTERN _lldb.cp311-win_amd64.pyd EXCLUDE)
endif()
endif()
endif()