
Apparently "{sys.prefix}/bin/python3" isn't where you find the python interpreter on windows, so the test I wrote for -print-script-interpreter-info is failing. We can't rely on sys.executable at runtime, because that will point to lldb.exe not python.exe. We can't just record sys.executable from build time, because python could have been moved to a different location. But it should be OK to apply relative path from sys.prefix to sys.executable from build-time to the sys.prefix at runtime. Reviewed By: JDevlieghere Differential Revision: https://reviews.llvm.org/D113650
44 lines
1.0 KiB
CMake
44 lines
1.0 KiB
CMake
if(NOT LLDB_PYTHON_RELATIVE_PATH)
|
|
message(FATAL_ERROR "LLDB_PYTHON_RELATIVE_PATH is not set.")
|
|
endif()
|
|
add_definitions(-DLLDB_PYTHON_RELATIVE_LIBDIR="${LLDB_PYTHON_RELATIVE_PATH}")
|
|
|
|
if(NOT LLDB_PYTHON_EXE_RELATIVE_PATH)
|
|
message(FATAL_ERROR "LLDB_PYTHON_EXE_RELATIVE_PATH is not set.")
|
|
endif()
|
|
add_definitions(-DLLDB_PYTHON_EXE_RELATIVE_PATH="${LLDB_PYTHON_EXE_RELATIVE_PATH}")
|
|
|
|
|
|
if (LLDB_ENABLE_LIBEDIT)
|
|
list(APPEND LLDB_LIBEDIT_LIBS ${LibEdit_LIBRARIES})
|
|
endif()
|
|
|
|
add_lldb_library(lldbPluginScriptInterpreterPython PLUGIN
|
|
PythonDataObjects.cpp
|
|
PythonReadline.cpp
|
|
ScriptInterpreterPython.cpp
|
|
ScriptedPythonInterface.cpp
|
|
ScriptedProcessPythonInterface.cpp
|
|
ScriptedThreadPythonInterface.cpp
|
|
SWIGPythonBridge.cpp
|
|
|
|
LINK_LIBS
|
|
lldbBreakpoint
|
|
lldbCore
|
|
lldbDataFormatters
|
|
lldbHost
|
|
lldbInterpreter
|
|
lldbTarget
|
|
${Python3_LIBRARIES}
|
|
${LLDB_LIBEDIT_LIBS}
|
|
|
|
LINK_COMPONENTS
|
|
Support
|
|
)
|
|
|
|
if (LLDB_ENABLE_LIBEDIT)
|
|
target_include_directories(lldbPluginScriptInterpreterPython PUBLIC
|
|
${LibEdit_INCLUDE_DIRS}
|
|
)
|
|
endif()
|