Date: Thu, 13 Jun 2013 19:50:05 +0200 From: Baptiste Daroussin <bapt@FreeBSD.org> To: olli hauer <ohauer@gmx.de> Cc: ports@FreeBSD.org Subject: Re: [CFT] Fixing/changing LIB_DEPENDS Message-ID: <20130613175005.GC44980@ithaqua.etoilebsd.net> In-Reply-To: <51B9FA28.3020303@gmx.de> References: <20130613130730.GK99460@ithaqua.etoilebsd.net> <51B9FA28.3020303@gmx.de>
next in thread | previous in thread | raw e-mail | index | archive | help
--5G06lTa6Jq83wMTw Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jun 13, 2013 at 06:58:16PM +0200, olli hauer wrote: > On 2013-06-13 15:07, Baptiste Daroussin wrote: > > Hi, > >=20 > > Here is a patch to fix LIB_DEPENDS. > >=20 > > First what is/are the problem of LIB_DEPENDS. > >=20 > > LIB_DEPENDS relies on of ldconfig -r to get its valid or not installed = shared > > libraries, problem is: > > liba-5.2.so and liba-5.so.2 will both be a-5.2 for ldconfig -r, which i= s not > > really what we want. > >=20 > > secondly ldconfig -r is only able to print something for libraries in t= he form > > of: lib<name>.so[.number], while we have no technical limitation to enf= orce this > > form and it is more and more common to find libraries in the following = form: > > lib<name>.so.major.minor.patch and to get them working properly right k= now we > > have to patch the upstream build system, to send some magic tricks on l= ibtool > > etc, all that kind of things all of us loves to deal with. > >=20 > > What I do propose is a new form of LIB_DEPENDS in addition to the curre= nt one: > > LIB_DEPENDS=3D bla.so[numberwithlongorwhatever]:${PORTSDIR}/cat/bla > >=20 > > What the framework will do, is lookup in all libraries directories for > > libbla.so[numberwithdotsorwhatever] test if it exists (test -f also val= idate the > > symlink is pointing to a regular file) if /usr/bin/file is present on y= our > > system it will validate the pointed file is really a shared library. > >=20 > > Any review welcome: http://people.freebsd.org/~bapt/fix-libdepends.patch > >=20 > > This idea behind this patch is on mid/long term to remove the other LIB= _DEPENDS > > forms. > >=20 > > I do plan to commit this on next friday 2013-06-21. > >=20 > > regards, > > Bapt > >=20 >=20 >=20 >=20 > Hm, >=20 > so this is a modern extended incarnation of the old LIB_DEPENDS notation > For example pcre.3:... becomes pcre:... >=20 > Isn't this something that can be handled with some additional code in pat= hfix? >=20 > -- > regards, > olli >=20 Either I m missing something, or I don't see the point about pathfix. It is not a matter of path, but rather allowing the ports tree to handle properly all kind of library name, right now we have some false limitation = and library name collision because we wrongly rely on ldconfig -r. we have lots of patches so convert library names to a format libname.so.asinglenumber, just for the sake of a technical limitation of the ports tree. That is what I m trying to fix. regards, Bapt --5G06lTa6Jq83wMTw Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlG6Bk0ACgkQ8kTtMUmk6ExYnwCbBdUrMFDKtgrmFoKWX94jI1DH V7QAnAiCHqQvODGWvv4qrX3UvFU93fkP =/3Mi -----END PGP SIGNATURE----- --5G06lTa6Jq83wMTw--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130613175005.GC44980>