Date: Thu, 13 Jun 2013 15:07:30 +0200 From: Baptiste Daroussin <bapt@FreeBSD.org> To: ports@FreeBSD.org Subject: [CFT] Fixing/changing LIB_DEPENDS Message-ID: <20130613130730.GK99460@ithaqua.etoilebsd.net>
next in thread | raw e-mail | index | archive | help
--S6vg04ofUPzW4qJg Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, Here is a patch to fix LIB_DEPENDS. First what is/are the problem of LIB_DEPENDS. 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 is not really what we want. secondly ldconfig -r is only able to print something for libraries in the form of: lib<name>.so[.number], while we have no technical limitation to enforce 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 know we have to patch the upstream build system, to send some magic tricks on libtool etc, all that kind of things all of us loves to deal with. What I do propose is a new form of LIB_DEPENDS in addition to the current one: LIB_DEPENDS= bla.so[numberwithlongorwhatever]:${PORTSDIR}/cat/bla What the framework will do, is lookup in all libraries directories for libbla.so[numberwithdotsorwhatever] test if it exists (test -f also validate the symlink is pointing to a regular file) if /usr/bin/file is present on your system it will validate the pointed file is really a shared library. Any review welcome: http://people.freebsd.org/~bapt/fix-libdepends.patch This idea behind this patch is on mid/long term to remove the other LIB_DEPENDS forms. I do plan to commit this on next friday 2013-06-21. regards, Bapt --S6vg04ofUPzW4qJg Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAlG5xBEACgkQ8kTtMUmk6EwmSgCeMaSMKXRo5vIaAkcTMChxzb8j h8cAoK4zmqrObawoc6gIoIxVIPnPEQHr =CHTy -----END PGP SIGNATURE----- --S6vg04ofUPzW4qJg--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130613130730.GK99460>