[RFC/HEADSUP] portmaster default -w (preserve shared libraries)

Kevin Oberman kob6558 at gmail.com
Wed Dec 12 00:19:39 UTC 2012

On Tue, Dec 11, 2012 at 1:04 PM, RW <rwmaillists at googlemail.com> wrote:
> On Tue, 11 Dec 2012 20:18:51 +0100
> Alex Dupre wrote:
>> For simple ports it may works correctly, but for others it could
>> happen that finally both revisions are linked into a library or
>> executable (because one !recompiled dependency depends on the old
>> version and another recompiled dependency depends on the new version)
>> and this is not good. So the correct thing is to always recompile
>> ports to get the new version, the 'keep old libs' flags should be
>> used with caution (this is why I prefer it to be opt-in and not
>> opt-out).
> The main reason for keeping the libraries is that it reduces the
> number of breakages during the upgrade process, which can be a very
> serious inconvenience, particularly if the forced update fails to
> complete. In my experience the problem you describe is much less
> significant.

It does eliminate the instant breakage of lots and lots of stuff, but
it can lead to hard to track down issues later.

The problem is that, as ports are updated, you end up with
applications that link to libraries that, in turn link to the library
that had the version bump. If one of those libraries is updated, the
application fails as the loader (rtld) will refuse to load two
different versions of the same library (for good reason). So saving
the old lib is fine, but you really, really need to update all ports
that link to that library fairly immediately.
R. Kevin Oberman, Network Engineer
E-mail: kob6558 at gmail.com

More information about the freebsd-ports mailing list