File tree Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Expand file tree Collapse file tree 1 file changed +18
-0
lines changed Original file line number Diff line number Diff line change @@ -198,6 +198,24 @@ function(finish_swig_python swig_target lldb_python_bindings_dir lldb_python_tar
198198 COMMENT "Copying Python DLL to LLDB binaries directory." )
199199 endif ()
200200
201+ # Since Python3.8 the Windows runtime loads dependent DLLs only from the directory of the binary
202+ # itself (and not Path). Windows has no RPATHs, so we must copy all DLLs that we depend on into
203+ # the Python package.
204+ if (WIN32 )
205+ # TARGET_RUNTIME_DLLS is supported in CMake 3.21+
206+ if ("${CMAKE_VERSION} " VERSION_LESS "3.21.0" )
207+ if (LLDB_INCLUDE_TESTS)
208+ message (SEND_ERROR
209+ "Your CMake version is ${CMAKE_VERSION} . In order to run LLDB tests "
210+ "on Windows please upgrade to 3.21.0 at least (or disable tests with "
211+ "LLDB_INCLUDE_TESTS=Off)" )
212+ endif ()
213+ else ()
214+ add_custom_command (TARGET ${swig_target} POST_BUILD
215+ COMMAND ${CMAKE_COMMAND} -E copy -t ${lldb_python_target_dir} $<TARGET_RUNTIME_DLLS:liblldb>
216+ COMMAND_EXPAND_LISTS )
217+ endif ()
218+ endif ()
201219
202220endfunction ()
203221
You can’t perform that action at this time.
0 commit comments