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