This is an old revision of the document!


LIB_DEPENDS is abitrary limited to libname.so.X while we can perfectly deal with library named libname.so.X.Y.Z

the limitation is due to the fact we are looking for the lib via ldconfig -r which is not able to output libname.so.X.Y.Z

While ldconfig -r can be fix, this will take time until all version supported by the ports tree receive the fix via MFC.

What we need to do is to reimplement LIB_DEPENDS a new way with compatibility with current LIB_DEPENDS.

current scheme is: name:${PORTSDIR}/cat/port or name.X:${PORTSDIR}/cat/port

First looks for libname.so and second look for both libname.so.X and libname.X.so

Proposed recommaded new scheme: libname.so:${PORTSDIR}/cat/port or if depending on a specific version for some reasons: libname.so.X:${PORTSDIR}/cat/port

where X can be a full version like 1 or 1.0.3

to allow compatibility name:${PORTSDIR}/cat/port should look for libname.so name.X:${PORTSDIR}/cat/port should look for libname.X.so and libname.so.X if X is multiple version like name-2.0.1:${PORTSDIR}/cat/port we should look for libname-2.0.so.1 and libname-2.0.1.so

How to look for library: Lookup should be done in ${LOCALBASE}/lib and every directory listed in ${LOCALBASE}/libdata/ldconfig/*

  • ports/fix_lib_depends.1359065416.txt.gz
  • Last modified: 2013/01/24 22:10
  • by BaptisteDaroussin