Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 23 Jun 2012 12:07:53 +0200
From:      Olli Hauer <ohauer@FreeBSD.org>
To:        FreeBSD Ports <ports@FreeBSD.org>
Cc:        Baptiste Daroussin <bapt@FreeBSD.org>, Doug Barton <dougb@FreeBSD.org>, Olli Hauer <ohauer@FreeBSD.org>, Michael Scheidell <scheidell@FreeBSD.org>, Ganael LAPLANCHE <martymac@FreeBSD.org>, Matthew Seaman <matthew@FreeBSD.org>
Subject:   Re: optionsng and tinderbox?
Message-ID:  <4FE59579.2070006@FreeBSD.org>
In-Reply-To: <4FE58AF8.9060203@FreeBSD.org>
References:  <4FE12F2D.9080302@FreeBSD.org> <20120620061136.GA79164@ithaqua.etoilebsd.net> <4FE1829D.6030109@FreeBSD.org> <20120620091321.GA83730@ithaqua.etoilebsd.net> <20120620094431.M12775@martymac.org> <20120620103412.GB83730@ithaqua.etoilebsd.net> <4FE1C1EA.8070901@FreeBSD.org> <20120621090226.M48537@FreeBSD.org> <4FE4AEFC.4070405@FreeBSD.org> <4FE51858.4010502@FreeBSD.org> <20120623081843.GC41054@ithaqua.etoilebsd.net> <4FE58AF8.9060203@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2012-06-23 11:23, Matthew Seaman wrote:
> On 23/06/2012 09:18, Baptiste Daroussin wrote:
>> Well the priority ordering the logical was to give the end word to the last user
>> action.
>>
>> It goes from global to specific
>>
>> 1/ the global options (infrastructures) are applied
>> 2/ the maintainer option (ports are applied)
>> 3/ the user global options are applied (OPTIONS_{,UN}SET)
>> 4/ the user ports options are applied (${UNIQUENAME}_{,UN}SET)
>> 5/ the dialog (make config) options are applied
>>
>> If that it looks not good to anyone, please comment (we can still change it) and
>> please provide arguments.
> 
> It's the ordering of 4 and 5 that confuses me.
> 
> If you've got ${UNIQUENAME}_{,UN}SET in /etc/make.conf and then you run
> 'make config' you'ld expect the choices you make in the dialogue to be
> the final word. (ie. 5 overrides 4, as currently) (Would you expect the
> make.conf setting to affect what is shown in the dialog initially?
> Seems logical)

No, I don't expect to see this see setting from make.conf in dialog
since I'm aware I've overwritten this in make.conf.
The other way around knowing you have set this explicit in make.conf and it
is overwritten later get me a bad feeling.

I suspect normal users don't use make.conf to control port builds except
for gcc/clang ... settings.



> On the other hand, if you run 'make foo_SET=yes all' on a command line,
> you'ld expect the command line to override anything saved in an options
> file (ie 4 overrides 5).

Not for all dependency but for the actual port in ${.CURDIR}.

> I don't think you can have both of those behaviours in any reasonable
> way.  If forced to choose, I'd prefer to have the capability to override
> a config setting as a one-off on the command line.
> 
> Also given that in normal usage, selections would always be made in the
> options dialogue when the port was compiled, so they would always
> override any ${UNIQUENAME}_{,UN}SET setting in /etc/make.conf or from
> the command line.  Which implies ${UNIQUENAME}_{,UN}SET only has any
> utility when the options dialogues are not used, such as in tinderbox or
> other port building systems.  Swapping 4 and 5 would make the behaviour
> more consistent for all usage patterns.

Yes, sometimes I have to run 'make configure' with different command line
parameter only and save the config.log(s) to compare them later.
Not really handy to run all the time 'make configure' since this will break
automated test scripting. For example a script which builds devel/apr in a
loop with all possible options where you have for your daily work an option
file in place. Ok, for this case you could move the option file to another
location and run your scripts ...

--
Regatds,
olli



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