Chuck Swiger wrote:
> Ulrich Spoerlein wrote:
> [ ... ]
>>>> The real fix IMHO is to use a strategy similar to what Debian Linux
>>> uses: instead of depending on specific ports, depend on capabilities.
>>> So for example, www/horde2 would depend on webphp, and lang/php4 and
>>> www/mod_php4 would each provide webphp. (I don't know the postgres port
>>> family as well, so I can't readily give an example using it.)
>>>> I don't know the specific debian facilities, but isn't this overkill?
>> Perhaps so, as it it seems other people agree with your opinion.
>> To my mind, supporting "capability-based dependencies" would be a win,
> as would supporting what I think of as "loose dependencies" (ie, I
> depend on libiconv, but I don't care whether the system has shlib .2,
> .3, or whatever, just _a_ version), rather than having ports always
> hardcode themselves to looking for a specific version ("strict
> dependencies").
>> The advantage of loose dependency support would be to reduce the need
> for propogating a ripple of changes to LIB_DEPENDS for possibly hundreds
> of dependent ports when some basic library like readline or libiconv is
> updated.
The point of doing this is to make sure that new packages are build. You can
already depend on just *some* version, but then an upgrade of the shared lib
will kill all dependend ports (portupgrade keeps old libraries, I know).
There has to be some way to record the used library in the dependent package,
wich brings us back to `capabilities'. This can be done, but we have to do a
proper specification for that.
-Oliver