pkgsrc-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: What is the proper way to install a package under custom sub directory under LOCALBASE ?



Thank you very much for your input.
I followed your suggestion and put
-DCMAKE_EXE_LINKER_FLAGS=${COMPILER_RPATH_FLAG}${PREFIX}/<sub-directory>lib/libLLVM,
but the installed executables still have RUNPATH set to /usr/pkg/lib,
and cannot find libLLVM-12git.so and such.

By the way, I was mimicking the Makefile of lang/llvm, instead of
lang/libLLVM, and strangely, lang/llvm Makefile does not have above
-DCMAKE_EXE_LINKER_FLAGS cmake argument.

Furthermore, I found pkgsrc/mk/configure/cmake.mk set
-DCMAKE_SKIP_RPATH:BOOL=TRUE on platforms other than Darwin, and I am
wondering whether this is relevant or not.
https://github.com/NetBSD/pkgsrc/blob/trunk/mk/configure/cmake.mk#L59

By the way, I am working with Debian GNU/Linux 10 (buster) running
custom kernel 5.11.0 on x86_64.



2021年4月20日(火) 16:54 Dan Cîrnaț <cirnatdan%netbsd.org@localhost>:
>
> On 20.04.21 09:00, Yosuke Kawasaki wrote:
>
>  > llvm uses CMAKE and when I set
>  > CMAKE_INSTALL_PREFIX=LOCALBASE/sub-directory in pkg Makefile, it
>  > installs files under LOCALBASE/sub-directory.  However, some installed
>  > executables and libraries such as bin/llvm-link have a parameter
>  > RUNPATH, which is  directed to "/usr/pkg/lib", instead of
>  > "/usr/pkg/<sub-directory>/lib" and cannot find shared libraries
>  > installed together e.g. libLLVM-12git.so.
>
> Take a look in the existing packages, I believe this is what you are
> looking for:
> https://github.com/NetBSD/pkgsrc/blob/trunk/lang/libLLVM/Makefile#L34
>
>  > CMAKE_ARGS+=
> -DCMAKE_EXE_LINKER_FLAGS=${COMPILER_RPATH_FLAG}${PREFIX}/lib/libLLVM
>
>


Home | Main Index | Thread Index | Old Index