On Wed, Dec 05, 2018 at 05:03:14PM +0100, Sebastien Marie wrote:
> Hi,
> 
> While testing lang/rust testsuite with lldb, I noted several failure due
> to not properly packaged devel/llvm,-python.
> 
> devel/llvm,-python provides a lldb python module. The module used a
> _lldb.so module, which is in fact a symlink to liblldb.so (installed in
> /usr/local/lib).
> 
> the library is provided by devel/llvm, but its name isn't liblldb.so
> but liblldb.so.0.0. The symlink is wrong, so the python module fails to
> load.
> 
> $ python2.7 -c 'import lldb'
> Traceback (most recent call last):
>   File "<string>", line 1, in <module>
>   File "/usr/local/lib/python2.7/site-packages/lldb/__init__.py", line 39, in 
> <module>
>     import _lldb
> ImportError: No module named _lldb
>         
> 
> $ pkg_locate _lldb.so
> py-llvm-6.0.1p2:devel/llvm,-python:/usr/local/lib/python2.7/site-packages/lldb/_lldb.so
> 
> $ ls -l /usr/local/lib/python2.7/site-packages/lldb/_lldb.so
> lrwxr-xr-x  1 root  wheel  26 Dec  5 13:06 
> /usr/local/lib/python2.7/site-packages/lldb/_lldb.so@ -> 
> ../../../../lib/liblldb.so
> 
> (it is /usr/local/lib/liblldb.so)
> 
> $ pkg_locate liblldb.so
> llvm-6.0.1p18:devel/llvm,-main:/usr/local/lib/liblldb.so.0.0
> 
> $ ls /usr/local/lib/liblldb.so*
> /usr/local/lib/liblldb.so.0.0
> 
> 
> Below an untested diff to correct the symlink in post-install. I will
> test it soon.

After testing, it seems my diff was wrong. so a new diff (tested this
time).

Comments or OK ?
-- 
Sebastien Marie

Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/llvm/Makefile,v
retrieving revision 1.199
diff -u -p -r1.199 Makefile
--- Makefile    21 Nov 2018 08:03:05 -0000      1.199
+++ Makefile    7 Dec 2018 05:21:41 -0000
@@ -19,7 +19,7 @@ PKGSPEC-main =        llvm-=${LLVM_V}
 PKGNAME-main = llvm-${LLVM_V}
 PKGNAME-python =       py-llvm-${LLVM_V}
 REVISION-main =        18
-REVISION-python = 2
+REVISION-python = 3
 CATEGORIES =   devel
 DISTFILES =    llvm-${LLVM_V}.src${EXTRACT_SUFX} \
                cfe-${LLVM_V}.src${EXTRACT_SUFX} \
@@ -124,6 +124,8 @@ post-install:
            ${PREFIX}/man/man1
        ${INSTALL_DATA} ${WRKSRC}/tools/clang/docs/_build/man/clang.1 \
            ${PREFIX}/man/man1
+       ln -fs ${LOCALBASE}/lib/liblldb.so.${LIBlldb_VERSION} \
+           ${PREFIX}/lib/python${MODPY_VERSION}/site-packages/lldb/_lldb.so
        # lit and FileCheck are not installed
        @rm ${PREFIX}/man/man1/lit.1
        @rm ${PREFIX}/man/man1/FileCheck.1

Reply via email to