diff options
| author | Haibo Huang <hhb@google.com> | 2019-09-16 23:31:16 +0000 |
|---|---|---|
| committer | Haibo Huang <hhb@google.com> | 2019-09-16 23:31:16 +0000 |
| commit | 5a115e81cdd40c758b10c382aeffc0c8de6930e2 (patch) | |
| tree | 25d5557d25106c44ea347bda5cc88964d2c088c5 | |
| parent | 8fc8d3fe0108479ce22234ec829fc7ee2b8f0bd2 (diff) | |
| download | bcm5719-llvm-5a115e81cdd40c758b10c382aeffc0c8de6930e2.tar.gz bcm5719-llvm-5a115e81cdd40c758b10c382aeffc0c8de6930e2.zip | |
Fix swig python package path
Summary:
The path defined in CMakeLists.txt doesn't match the path generated in
our python script. This change fixes that.
LLVM_LIBRARY_OUTPUT_INTDIR is defined as:
${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
On the other hand, the path of site-package is generaged in
get_framework_python_dir_windows() in finishSwigPythonLLDB.py as:
(Dispite its name, the function is used for everything other than xcode)
prefix/cmakeBuildConfiguration/distutils.sysconfig.get_python_lib()
From lldb/CMakeLists.txt, we can see that:
prefix=${CMAKE_BINARY_DIR},
cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}
And from python source code, we can see get_python_lib() always returns
lib/pythonx.y/site-packages for posix, or Lib/site-packages for windows:
https://github.com/python/cpython/blob/3.8/Lib/distutils/sysconfig.py#L128
We should make them match each other.
Subscribers: mgorny, lldb-commits
Tags: #lldb
Differential Revision: https://reviews.llvm.org/D67583
llvm-svn: 372047
| -rw-r--r-- | lldb/scripts/CMakeLists.txt | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lldb/scripts/CMakeLists.txt b/lldb/scripts/CMakeLists.txt index 1a0ea96ff9f..9de96ef5565 100644 --- a/lldb/scripts/CMakeLists.txt +++ b/lldb/scripts/CMakeLists.txt @@ -42,13 +42,15 @@ add_custom_target(swig_wrapper ALL DEPENDS ) if(NOT LLDB_BUILD_FRAMEWORK) - if(CMAKE_SYSTEM_NAME MATCHES "Windows") - set(swig_python_subdir site-packages) + # The path here should match the result of python function + # distutils.sysconfig.get_python_lib(). + if(CMAKE_HOST_SYSTEM_NAME MATCHES "Windows") + set(swig_python_subdir Lib/site-packages) else() - set(swig_python_subdir python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}) + set(swig_python_subdir lib/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}) endif() - set(SWIG_PYTHON_DIR ${LLVM_LIBRARY_OUTPUT_INTDIR}/${swig_python_subdir}) + set(SWIG_PYTHON_DIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${swig_python_subdir}) set(SWIG_INSTALL_DIR lib${LLVM_LIBDIR_SUFFIX}) # Install the LLDB python module |

