Subject: Re: Maxi-packages
To: None <tech-pkg@netbsd.org>
From: Martin J. Laubach <mjl@nospam.office.emsi.priv.at>
List: tech-pkg
Date: 02/05/2000 01:48:49
So if I may try a resume of all the topics here...
(a) Having packages with different optional components will
cause much confusion for binary packages.
(b) Many packages have a mandatory set of dependencies, and
and optional set (ie. they will work equally well but may miss
some capabilities, eg. reading certain file formats, or a tcl/tk
binding).
(c) Currently, there is no way to distinguish between those
two sets, so people tend to turn on everything.
I have no good answer for (a) right now, so I'll leave that
question open. For the rest, please bear with me for a little
while...
How about having a possibility of declaring optional dependencies.
So one could say, for example, "webalizer" depends on "png" and
"gd", and optionally on "freetype" and "gettext". When building
such a package, the pkg system would check which of those optional
pkgs is present, and display a message like this
| You are about to build webalizer-2.340.3
|
| Optional dependencies: freetype-47.11 (not present)
| gettext-9.9 (present)
|
| If you would like to include capabilities that some of
| the absent packages provide, abort the build now and install
| those packages first.
If an optional dependency is included, register it in the
package db, if not, well, don't. (Well, perhaps a way to turn
off present, but unwanted optional dependencies would be good?)
To cater for bulk builds, one could introduce a "REQUIRE_OPTIONAL"
variable that transforms the optional in regular dependencies, ie.
that would give today's behaviour.
Thoughts?
mjl