Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Oct 2012 17:00:17 +0200
From:      Michael Gmelin <freebsd@grem.de>
To:        freebsd-ports@freebsd.org
Cc:        bapt@FreeBSD.org
Subject:   Re: HAVE_GNOME vs. bsd.ports.options.mk
Message-ID:  <20121010170017.281d94d1@bsd64.grem.de>
In-Reply-To: <20121010142758.GA62709@ithaqua.etoilebsd.net>
References:  <20121010121850.039fb6d2@bsd64.grem.de> <20121010102527.GB26497@ithaqua.etoilebsd.net> <20121010123322.0677a829@bsd64.grem.de> <20121010105757.GD26497@ithaqua.etoilebsd.net> <20121010124938.3e77bb12@bsd64.grem.de> <20121010142758.GA62709@ithaqua.etoilebsd.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 10 Oct 2012 16:27:58 +0200
Baptiste Daroussin <bapt@FreeBSD.org> wrote:

> On Wed, Oct 10, 2012 at 12:49:38PM +0200, Michael Gmelin wrote:
> > On Wed, 10 Oct 2012 12:57:57 +0200
> > Baptiste Daroussin <bapt@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@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@freebsd.org mailing list
> > > > > > http://lists.freebsd.org/mailman/listinfo/freebsd-ports
> > > > > > To unsubscribe, send any mail to
> > > > > > "freebsd-ports-unsubscribe@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
> 
> Autodetection will only work in the case a ports is build on a
> end-user machine directly, as soon as it is build in a sane
> environmenent like poudriere/tinderbox/pointyhat then it will
> completly fail, and won't bring the feature.

Not correct, on poudriere/tinderbox/pointyhat the AUTODETECT flag won't
be set, so it won't cause any harm (and will not "completely fail"). You
still can set the features you want explicitly, so it's useful to
package builders as well as users.

Regardless of the topic of auto detection though - HAVE_GNOME breaks
when things are done the new way, it should be noted somewhere that
this is the case, so people won't waste their time on figuring out
what's going wrong.

Michael

-- 
Michael Gmelin



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20121010170017.281d94d1>