HAVE_GNOME vs. bsd.ports.options.mk

Michael Gmelin freebsd at grem.de
Wed Oct 10 11:24:07 UTC 2012


On Wed, 10 Oct 2012 12:57:57 +0200
Baptiste Daroussin <bapt at FreeBSD.org> wrote:

> On Wed, Oct 10, 2012 at 12:33:22PM +0200, Michael Gmelin wrote:
> > On Wed, 10 Oct 2012 12:25:27 +0200
> > Baptiste Daroussin <bapt at FreeBSD.org> wrote:
> > 
> > > On Wed, Oct 10, 2012 at 12:18:50PM +0200, Michael Gmelin wrote:
> > > > Hi
> > > > 
> > > > I noticed that HAVE_GNOME doesn't work properly with
> > > > bsd.ports.options.mk yet, so
> > > > 
> > > > .include <bsd.port.options.mk>
> > > > .if ${HAVE_GNOME:Mgnomelibs}!=""
> > > > # ...
> > > > .endif
> > > > .include <bsd.port.mk>
> > > > 
> > > > won't work, while this
> > > > 
> > > > .include <bsd.port.pre.mk>
> > > > .if ${HAVE_GNOME:Mgnomelibs}!=""
> > > > # ...
> > > > .endif
> > > > .include <bsd.port.post.mk>
> > > > 
> > > > does.
> > > > 
> > > > AFAIK bsd.port.pre.mk/bsd.port.post.mk should be replaced by
> > > > bsd.port.options.mk/bsd.port.mk in the long term, so having this
> > > > work or documenting a workaround would help port maintainers
> > > > who are in the process of updating the port structure.
> > > > 
> > > > Michael
> > > > 
> > > > -- 
> > > > Michael Gmelin
> > > > _______________________________________________
> > > > freebsd-ports at freebsd.org mailing list
> > > > http://lists.freebsd.org/mailman/listinfo/freebsd-ports
> > > > To unsubscribe, send any mail to
> > > > "freebsd-ports-unsubscribe at freebsd.org"
> > > 
> > > Which ports are you speaking about? given that
> > > HAVE_GNOME:#gnomelibs is refering to gnome 1.4 I think this part
> > > can safely be dropped out.
> > > 
> > > regards,
> > > Bapt
> > 
> > I'm talking about the feature in general, it also applies to
> > HAVE_GNOME:Mesound, HAVE_GNOME:Mpygnomeextras etc.
> > 
> > I stumbled over this while converting polish/gnugadu2 to OptionsNG
> > (http://www.freebsd.org/cgi/query-pr.cgi?pr=172427).
> > 
> > Michael
> > 
> > -- 
> > Michael Gmelin
> 
> imho HAVE_GNOME should die, as autodectection of what you have does
> not fit at all with package building. Thing shouldn't been added
> magically because they are on your system but only on explicit demand
> of the maintainer/user.
> 
> That said I'll have a look at the PR.
> 
> regards,
> Bapt

I found this behaviour in many ports and I agree that by
default people should be able to explicitly state what they want. On
the other hand it can be extremely convenient to get all plugins your
system supports by default (for those of us you build their ports
themselves). I solved this in this PR by adding an "AUTODETECT" option,
that allows the port to detect automatically only when explicitly asked
by the builder. I had that turned on by default to make sure
the port behaves exactly like it did before conversion to OptionsNG
(it's not my lawn, you know). The committer changed that to be off by
default, since this is a better solution for package building and I
agree with him.

Also note that there are a lot of ports that use either techniques for
auto detection (e.g. checking for the existence of libraries to bring
in functionality) and that those should be covered as well - simply not
allowing auto detection will massively reduce functionality, so using
an OPTION to allow it might be the way to go. I think AUTODETECT might
be an interesting candidate for bsd.options.mk though.

Michael

-- 
Michael Gmelin


More information about the freebsd-ports mailing list