Quoting Alex Dupre <a...@freebsd.org> (from Fri, 17 Feb 2012 11:33:17 +0100):

Andriy Gapon wrote:
Needless to say that all these ports got their port revisions bumped.
Was there a good reason for that?  I don't know.

I just know that now I need to needlessly reinstall/rebuild about a hundred
ports, many of which are not quite light-weight.

It's time to experiment seriously with ${EXPLICIT_PACKAGE_DEPENDS} and libtool patch to not link to indirect dependencies (ports/104877). Ideally a port should include in LIB_DEPENDS all the direct dependencies.

When I made the EXPLICIT_PACKAGE_DEPENDS patch, I noticed that there is not only libtool at fault (reaction of the libtool developers was IIRC: it's not trivial to fix known problems for the cross-building case (for libtool-1.x?)), but also pkg-config and similar things (dependencies of dependencies where specified, e.g. your port links against liba, the pkg-config for liba also told to link against libb which liba depends upon but for which the ABI was not exposed to your port by liba, but this caused a record of libb to show up in binaries of your port). I do not know if the situation improved in _all_ ports, but some look more sane.

You can also have a look at /usr/ports/Tools/scripts/explicit_lib_depends.sh, thats a script which analyzes the recorded dependencies in binaries for a given port (this may be different from what is recorded in LIB_DEPENDS, and it can be different from it even if LIB_DEPENDS is 100% correct). So if a lib which is listed in the output changes the soversion, you _have_ to recompile this port, no matter if the binary has his hands in the ABI of the changed lib or not (that's the port->liba->libb case from the paragraph above).

Bye,
Alexander.

--
There must be at least 500,000,000 rats in the United
States; of course, I never heard the story before.

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137

_______________________________________________
freebsd-ports@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to