Skip site navigation (1)Skip section navigation (2)
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>