ports/64233: [PATCH] bsd.port.mk: improved OPTIONS handling

Oliver Eikemeier eikemeier at fillmore-labs.com
Sun Mar 14 01:28:20 UTC 2004


Kris Kennaway wrote:

> On Sun, Mar 14, 2004 at 01:58:17AM +0100, Oliver Eikemeier wrote:
> 
>>That should be easy to resolve, but I'll appreciate some feedback before
>>I develop a solution. First of all, when BATCH or PACKAGE_BUILDING is set,
>>default options are used and no configuration dialog is presented.
>>
>>So we can either set BATCH in INDEX builds or add another variable, like
>>DISABLE_CONFIG.
> 
> BATCH may be appropriate, but it will require careful testing to make
> sure it does the right thing.  For example, end users want INDEX
> builds to use their local options and make.conf settings, but package
> builds need to use the default settings without picking up anything
> from the local system.  Currently I override LOCALBASE and X11BASE,
> and __MAKE_CONF to prevent package index builds from seeing installed
> host packages and system settings.

Name one: DEFAULT_OPTIONS, DEFAULT_SETTINGS, IGNORE_OPTIONS,
WITHOUT_OPTIONS ;)

>>The issues here are:
>>
>>- To generate default options I need to write them to a file. Currently
>> I'm using the real OPTIONSFILE, so after a `make index' you have a
>> saved default configuration for all ports that define OPTIONS. Maybe
>> a temporary file would be a better solution here?
> 
> A temporary file may be the way to go; if the options are stored in
> the system directory, then if the user builds INDEX and later builds
> the port, they won't be presented with the config dialog and the port
> will just silently use the default options.

I agree.

>>- I'm not sure what this does to running times of INDEX builds.
> 
> That's a very important one.  The initial OPTIONS processing patch
> already slowed down index builds by ~10% because it spawns a shell to
> check the options file for every port.  I mentioned this to marcus
> shortly after it was committed, but I don't know to what extent it was
> followed up (it's not yet fixed).

I guess that can be removed, now that OPTIONS lives in bsd.port.post.mk.
What *will* hurt index build times is that I'll have to spawn another
make to build the port with options.



More information about the freebsd-ports-bugs mailing list