Skip to content

Commit e097f7e

Browse files
author
tcmal
committed
lldb: fix python lldb library
_lldb.so is now properly symlinked to the shared library. applies to lldb 8 through 12. fixes #125183
1 parent 6021639 commit e097f7e

10 files changed

Lines changed: 95 additions & 0 deletions

File tree

pkgs/development/compilers/llvm/10/lldb/default.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ stdenv.mkDerivation (rec {
6868

6969
doCheck = false;
7070

71+
installCheckPhase = ''
72+
if [ ! -e "$out/lib/python3.8/site-packages/lldb/_lldb.so" ] ; then
73+
return 1;
74+
fi
75+
'';
76+
7177
postInstall = ''
7278
# Editor support
7379
# vscode:

pkgs/development/compilers/llvm/10/lldb/gnu-install-dirs.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,16 @@ index aff75d7db334..98a527c5e761 100644
6363
install(TARGETS lldbIntelFeatures
6464
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
6565
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
66+
diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
67+
index 752113b..010f187 100644
68+
--- a/cmake/modules/LLDBStandalone.cmake
69+
+++ b/cmake/modules/LLDBStandalone.cmake
70+
@@ -62,7 +62,7 @@ endif()
71+
72+
# They are used as destination of target generators.
73+
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
74+
-set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
75+
+set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
76+
if(WIN32 OR CYGWIN)
77+
# DLL platform -- put DLLs into bin.
78+
set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})

pkgs/development/compilers/llvm/11/lldb/default.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,12 @@ stdenv.mkDerivation (rec {
6868

6969
doCheck = false;
7070

71+
installCheckPhase = ''
72+
if [ ! -e "$out/lib/python3.8/site-packages/lldb/_lldb.so" ] ; then
73+
return 1;
74+
fi
75+
'';
76+
7177
postInstall = ''
7278
# Editor support
7379
# vscode:

pkgs/development/compilers/llvm/11/lldb/gnu-install-dirs.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,16 @@ index efba2f74904f..e08413b1dbb1 100644
6363
install(TARGETS lldbIntelFeatures
6464
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
6565
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
66+
diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
67+
index 752113b..010f187 100644
68+
--- a/cmake/modules/LLDBStandalone.cmake
69+
+++ b/cmake/modules/LLDBStandalone.cmake
70+
@@ -62,7 +62,7 @@ endif()
71+
72+
# They are used as destination of target generators.
73+
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
74+
-set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
75+
+set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
76+
if(WIN32 OR CYGWIN)
77+
# DLL platform -- put DLLs into bin.
78+
set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})

pkgs/development/compilers/llvm/12/lldb/default.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,6 +84,12 @@ stdenv.mkDerivation (rec {
8484

8585
doCheck = false;
8686

87+
installCheckPhase = ''
88+
if [ ! -e "$out/lib/python3.8/site-packages/lldb/_lldb.so" ] ; then
89+
return 1;
90+
fi
91+
'';
92+
8793
postInstall = ''
8894
# Editor support
8995
# vscode:

pkgs/development/compilers/llvm/12/lldb/gnu-install-dirs.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,16 @@ index 734167e51bc5..f95761b5df58 100644
6363
install(TARGETS lldbIntelFeatures
6464
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
6565
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
66+
diff --git a/cmake/modules/LLDBStandalone.cmake b/cmake/modules/LLDBStandalone.cmake
67+
index 752113b..010f187 100644
68+
--- a/cmake/modules/LLDBStandalone.cmake
69+
+++ b/cmake/modules/LLDBStandalone.cmake
70+
@@ -62,7 +62,7 @@ endif()
71+
72+
# They are used as destination of target generators.
73+
set(LLVM_RUNTIME_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/bin)
74+
-set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_BINARY_DIR}/${CMAKE_CFG_INTDIR}/lib${LLVM_LIBDIR_SUFFIX})
75+
+set(LLVM_LIBRARY_OUTPUT_INTDIR ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
76+
if(WIN32 OR CYGWIN)
77+
# DLL platform -- put DLLs into bin.
78+
set(LLVM_SHLIB_OUTPUT_INTDIR ${LLVM_RUNTIME_OUTPUT_INTDIR})

pkgs/development/compilers/llvm/8/lldb/default.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,12 @@ stdenv.mkDerivation rec {
6161

6262
doCheck = false;
6363

64+
installCheckPhase = ''
65+
if [ ! -e "$out/lib/python3.8/site-packages/lldb/_lldb.so" ] ; then
66+
return 1;
67+
fi
68+
'';
69+
6470
postInstall = ''
6571
mkdir -p $out/share/man/man1
6672
cp ../docs/lldb.1 $out/share/man/man1/

pkgs/development/compilers/llvm/8/lldb/gnu-install-dirs.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,3 +79,16 @@ index b5316540fdf3..3c3c882d503f 100644
7979
install(TARGETS lldbIntelFeatures
8080
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
8181
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
82+
diff --git a/CMakeLists.txt b/CMakeLists.txt
83+
index cdf22c4..d56fc6a 100644
84+
--- a/CMakeLists.txt
85+
+++ b/CMakeLists.txt
86+
@@ -146,7 +146,7 @@ if (NOT LLDB_DISABLE_PYTHON)
87+
--cfgBldDir=${lldb_scripts_dir}
88+
--prefix=${CMAKE_BINARY_DIR}
89+
--cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}
90+
- --lldbLibDir=lib${LLVM_LIBDIR_SUFFIX}
91+
+ --lldbLibDir=${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
92+
${use_python_wrapper_from_src_dir}
93+
${use_six_py_from_system}
94+
VERBATIM

pkgs/development/compilers/llvm/9/lldb/default.nix

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,12 @@ stdenv.mkDerivation rec {
5858

5959
doCheck = false;
6060

61+
installCheckPhase = ''
62+
if [ ! -e "$out/lib/python3.8/site-packages/lldb/_lldb.so" ] ; then
63+
return 1;
64+
fi
65+
'';
66+
6167
postInstall = ''
6268
# man page
6369
mkdir -p $out/share/man/man1

pkgs/development/compilers/llvm/9/lldb/gnu-install-dirs.patch

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,3 +63,16 @@ index b5316540fdf3..3c3c882d503f 100644
6363
install(TARGETS lldbIntelFeatures
6464
- LIBRARY DESTINATION lib${LLVM_LIBDIR_SUFFIX})
6565
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX})
66+
diff --git a/CMakeLists.txt b/CMakeLists.txt
67+
index cdf22c4..d56fc6a 100644
68+
--- a/CMakeLists.txt
69+
+++ b/CMakeLists.txt
70+
@@ -146,7 +146,7 @@ if (NOT LLDB_DISABLE_PYTHON)
71+
--cfgBldDir=${lldb_scripts_dir}
72+
--prefix=${CMAKE_BINARY_DIR}
73+
--cmakeBuildConfiguration=${CMAKE_CFG_INTDIR}
74+
- --lldbLibDir=lib${LLVM_LIBDIR_SUFFIX}
75+
+ --lldbLibDir=${CMAKE_INSTALL_LIBDIR}${LLVM_LIBDIR_SUFFIX}
76+
${use_python_wrapper_from_src_dir}
77+
${use_six_py_from_system}
78+
VERBATIM

0 commit comments

Comments
 (0)