Subject: Re: CVS commit: pkgsrc/devel/automake
To: Robert Elz <kre@munnari.OZ.AU>
From: Frederick Bruckman <email@example.com>
Date: 08/27/2001 10:02:57
On Mon, 27 Aug 2001, Robert Elz wrote:
> This is also what I don't like about all the buildlink stuff ... just
> by upgrading the default version in the buildlink file, all the packages that
> used to depend upon an old version now depend upon a newer one, without
> needing to at all. I'd suggest deleting the default version stuff from
> the buildlink files, and requiring packages to explicitly say which version
> they need, rather than just "whatever is current".
The DEPENDS+= in *.buildlink.mk for shared libraries should make some
reasonable guess based on the shared library version bumps, and not
always use the latest version. Even that will fail to update the (nb)
version of the depending package, confusing binary package users and
making it impossible to do the dependencies right further up the
chain for long chains of interdependent packages.
> eg: I upgraded xfig recently, that wanted me to upgrade libpng, which was
> going to require that half the packages I hd installed (including kde2)
> be upgraded. Of course, xfig didn't really need a newer version of png
> than I had installed, and fixing its Makefile (and transfig) to be happy
> with what I had installed made me much happier indeed.
Well, that depends on what version of libpng you had. If it's not too
old, you can safely _build_ against it, on your system, but we
shouldn't allow binary packages with binaries that are linked against
somethething other than "libpng.so.2.1". The problem with doing so is
that then binary packages built against the same sources on different
systems can be fundamentally different, which could lead to, for
example, there being no possible way to install "kde" from the binary
packages on ftp.netbsd.org. And what is a _package_ system, if it
can't produce binary packages?
As a matter of fact, png/buildlink.mk doesn't go far enough in
depending only on png>=1.0.11. Since the minor version was bumped with
1.0.12, that's what we should be depending on, and imlib, gnome-libs,
and all packages that depend on them should have gotten teeny version
bumps, too (analogously for kde & friends, and others). If you ever
try to share binary packages between as few as two different machines,
you'll see what I mean.