Opinion on cross-port OPTIONS CONFLICTS

Edwin Groothuis edwin at mavetju.org
Fri Dec 21 17:51:02 PST 2007


On Fri, Dec 21, 2007 at 04:13:46PM -0600, Josh Paetzel wrote:
> On Friday 21 December 2007 03:43:19 pm Edwin Groothuis wrote:
> > On Fri, Dec 21, 2007 at 03:24:20PM -0600, Josh Paetzel wrote:
> > > I've recently run across some brokeness in ports that would be relatively
> > > trivial to deal with if one port had a way to know about the OPTIONS
> > > another port was compiled with.
> >
> > I have been working on it a not-so-long-time-ago and found that
> > this could be the best way:
> >
> > [/var/db/ports/arts] edwin at k7>cat options
> > # This file is auto-generated by 'make config'.
> > # No user-servicable parts inside!
> > # Options for arts-1.5.1_1,1
> > _OPTIONS_READ=arts-1.5.1_1,1
> > WITHOUT_ESD=true
> > WITHOUT_NAS=true
> >
> > [/var/db/ports/arts] edwin at k7>eval `cat options | grep -v "^\#" | sed -e
> > 's/^/arts_/'`
> >
> > [/var/db/ports/arts] edwin at k7>echo $arts_WITHOUT_NAS
> > true
> >
> >
> > I hadn't put it in a PR yet because it has some synchronity issues:
> >
> > - It only works for ports already installed.
> > - It doesn't work for ports which are being installed by this port.
> > - No idea how to do this for packages build on ye olde cluster.
> >
> > But the idea is there:
> >
> >     OPTIONS_DEPENDS=	arts
> >     .include <bsd.port.pre.mk>
> >     .if !defined arts_WITH_NAS
> >     BROKEN=		Please build audio/arts first before building this port.
> >     .fi
> >     .if ${arts_WITH_NAS} = "true"
> >     BROKEN=		This port can't work with audio/arts enabled with NAS support
> >     .fi
> >
> > Edwin
> 
> It also doesn't work if someone runs make rmconfig, or make config again and 
> changes things after the port is installed.
> 
> It probably doesn't work if a package was used to install either.

Create a slave port audio/arts-withoutnas and let it depends on
that one.

Edwin

-- 
Edwin Groothuis      |            Personal website: http://www.mavetju.org
edwin at mavetju.org    |              Weblog: http://www.mavetju.org/weblog/


More information about the freebsd-ports mailing list