Subject: Re: When DEPENDS can be upgraded in place
To: Frederick Bruckman <>
From: Hubert Feyrer <>
List: tech-pkg
Date: 09/05/2000 01:11:19
On Mon, 4 Sep 2000, Frederick Bruckman wrote:
> > 	Currently updating a package involves deletion and
> > 	re-compilation/installation of all the packages that depended on
> > 	it. For many packages this is quite correct (anything depending
> > 	on another package to link against its includes), but for
> > 	others it is completely unnecessary (packages depending on
> > 	other packages containing only executables and manpages).
> I've thought about that. We have two problems. We're building and
> installing packages in the DEPENDS list that aren't really necessary
> for building and installing the package at all. Another is that the
> package no longer contains the information of exactly which packages
> it was built against. Even if you track down the RCS ID's in the
> +BUILD_INFO file, you can not know what was installed on the build
> system.

You're jumping from a observation to proposal of a solution without saying
first what you want to solve/fix. Please explain.

As to your observation of a pkg "needs to know which pkg we built against
exactly": why do you need this? The pkg will probably still be there even
if you use "pkg_delete -r". Don't mix up pkg_delete's -r and -R
switch. -r goes +REQUIRED_BY, -R goes @pkgdep.

> xpm-*		xpm-3.4k	wmx-5.0,knews-1.01b1,xpdf-0.91
> png>=1.06	png-1.08	knews-1.01b1
> png-*		png-1.08	foo-1.01
> ...
> Such a database would evidently be very easy to construct on initial
> installation of a package. To build a new binary package, you first do
> a "pkg_delete -r". This searches the second column, and deletes all
> the packages in the third field for entries that match. 

This last sentence sounds like a lame workaround that 'd expect from
someone who doesn't know how to expand wildcards properly. See pkg_delete
sources on how to do that.

Other than that, I don't see much win from this over the +REQUIRED_BY
file. What did I miss?

Another problem you'll face there is that different patterns will expand
to the same pkg, e.g. png-1.* and png>=1.05 can both expand to 

 - Hubert

Hubert Feyrer <>