RFC: Re-work pkgdep/DEPORIGIN?

Jim Trigg jtrigg at spamcop.net
Mon Jun 7 15:27:57 GMT 2004


On Monday 7 June at 12:57:44 GMT, Ulrich Spoerlein wrote:
> On Wed, 02.06.2004 at 14:58:40 -0700, Kris Kennaway wrote:
> > > What do I need to tell to my Makefile to make a port depend on
> > > Postgresql client, which was removed ? The client can be built with
> > > -DWITHOUT_SERVER, but how do I do this from the Makefile; should I use a
> > > custom script ?
> > 
> > You can't (think about how users would add packages).  For now -- until
> > someone can redo the client/server split properly, in a way that
> > doesn't break ports that try to use it -- you need to depend on the
> > single postgresql package,
> 
> The real fix is IMHO not to blindly record the dependancy provided in
> the Makefile. That is:

> LIB_DEPENDS+=   pq.3:${PORTSDIR}/databases/postgresql7-client

> will record databases/postgresql7 as dependancy, no matter what package
> actually provided the libpq.so.3 in the first place. Postgres is not the
> only place where this is wrong, lang/php4 has the same problems. Most
> Ports require www/mod_php which I dont have installed. Instead I'm using
> lang/php4 with WITH_APACHE.

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.)

Jim Trigg
-- 
Jim Trigg, Lord High Everything Else  O-          /"\
                                                  \ /  ASCII RIBBON CAMPAIGN
Hostmaster, Huie Kin family website                X    HELP CURE HTML MAIL
Verger, All Saints Church - Sharon Chapel         / \


More information about the freebsd-ports mailing list