Subject: Re: transitive dependence on packages
To: Klaus Heinz <k.heinz.aug.zwei@onlinehome.de>
From: Frederick Bruckman <fredb@immanent.net>
List: tech-pkg
Date: 08/23/2002 19:38:22
On Fri, 23 Aug 2002, Klaus Heinz wrote:

> I have observed the following:
>
>   $ pkg_info -n $package_name
>   ...
>   Requires:
>   ...
>   perl>=5.0
>   perl>=5.6.0
>   ...
>
> I have put 'BUILDLINK_DEPENDS.perl= perl>=5.6.0' in the Makefile and I
> assume, the requirement for perl>=5.0 comes from the dependence on other
> perl packages which use perl5/buildlink.mk.
>
> Is there a special reason why package C is required for package A
> although package A only relies directly on package B? The requirement
> for C is recorded in package B and should be resolved in due course at
> installation time of package B.

There isn't any good reason that I can see. Moreover, it causes all
kinds of problems. For example, many packages on ftp.netbsd.org which
depend on perl are broken with the latest perl, since it can't satisfy
the dependency on modules which are now included with the base perl.

Also a problem for gv and freetype-lib (and thus, gnome).

	http://mail-index.netbsd.org/tech-pkg/2000/11/20/0009.html

To get rid of that mess, there are now two places which require
changes. The easy one, would be to remove the section in the
"fake-pkg" target which collects dependencies in installed binary
packages.

The messier one to fix now involves numerous changes to buildlink.mk's
and Makefiles:

	http://mail-index.netbsd.org/tech-pkg/2002/01/02/0005.html
	http://mail-index.netbsd.org/tech-pkg/2002/01/05/0001.html

...but I'm not sure if that applies to buildlink2.

Rather than repeat myself, this one sums up my thoughts on the subject
pretty well:

	http://mail-index.netbsd.org/tech-pkg/2002/01/26/0001.html


Frederick