cvs commit: ports/graphics/djvulibre Makefile ports/textproc/wordnet Makefile

Pav Lucistnik pav at FreeBSD.org
Fri Jul 15 16:16:37 GMT 2005


Michael Nottebrock píše v pá 15. 07. 2005 v 18:10 +0200:
> On Friday, 15. July 2005 17:57, Pav Lucistnik wrote:
> 
> > These PORTREVISION bumps are here mainly for the users. Because, when a
> > library raises it's major version number, you need to relink all C
> > binaries linked against the old copy of the library...
> 
> ... except that portupgrade keeps old libraries in a cache just so you don't.

That does not mean you don't have to recompile everything. It's just a
fallback for users so their software don't stop working until they
manage to recompile it.

Think about this scenario:

libfoo.1 -> libbar.0 -> bin/application
libfoo.1 -> bin/application

Now update libfoo without PORTREVISION bumpage:

lib/compat/pkg/libfoo.1 -> libbar.0 -> bin/application
lib/compat/pkg/libfoo.1 -> bin/application

So far so good. Now libbar gets updated to new release:

libfoo.2 -> libbar.0 -> bin/application
lib/compat/pkg/libfoo.1 -> bin/application

Houston, we got a problem. In this moment user may experience strange
crashes or startup problems, because two conflicting copies of libfoo
are being loaded into application by rtld.

That's why we bump and recompile everything.

-- 
Pav Lucistnik <pav at oook.cz>
              <pav at FreeBSD.org>

What is the airspeed velocity of an unladen swallow?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: This is a digitally signed message part
Url : http://lists.freebsd.org/pipermail/cvs-all/attachments/20050715/1b3606f5/attachment.bin


More information about the cvs-all mailing list