Subject: Re: When DEPENDS can be upgraded in place
To: Frederick Bruckman <fb@enteract.com>
From: Hubert Feyrer <hubert.feyrer@informatik.fh-regensburg.de>
List: tech-pkg
Date: 09/05/2000 16:49:01
On Mon, 4 Sep 2000, Frederick Bruckman wrote:
> It would not be needed by the pkg_* tools at all, unless an option
> were added to "pkg_info" to simply list it. It would especially _not_
> be used by "pkg_delete -R", since for that case, you would certainly
> want to remove all installed packages that match the package's @pkgdep
> or DEPENDS wildcards, and not the exact package(s) it was built
> against (which may not even exist on the system).
How about a simple BUILD_DEDS+= DEPENDS BUILD_DEPENDS then?
> > Don't mix up pkg_delete's -r and -R
> > switch. -r goes +REQUIRED_BY, -R goes @pkgdep.
>
> It's the +REQUIRED_BY that I object to, as it makes it impossible to
> update binary packages "out of order". It should be possible to
> reconstruct the +REQUIRED_BY file from the @pkgdep entries in all the
> other +CONTENTS files (for the purpose of installing packages out of
> order), but I suppose that would be too time consuming to do on every
> install. Once it's resolved to replace the +REQUIRED_BY with a
> database, it's a short step to replace the @pkgdep entries with the
> same database.
This is the wrong approach, see the file that I've pointed you to.
If you upgrade a package, you should not touch the pkgs that depend on it
at all. Move it aside, install the new pkg, then move back some things
(like +REQUIRED_BY, shared libs, maybe some more).
I don't see why some "top-down" generated database could help there.
- Hubert
--
Hubert Feyrer <hubert.feyrer@informatik.fh-regensburg.de>