Re: RFC: how to handle OS-specific configure options?

From: Amos Jeffries <squid3_at_treenet.co.nz>
Date: Sat, 24 Apr 2010 13:24:20 +1200

Kinkie wrote:
> On Fri, Apr 23, 2010 at 2:11 AM, Amos Jeffries <squid3_at_treenet.co.nz> wrote:
>> Kinkie wrote:
>>> Hi all,
>>> as part of the configure-refactor work I'm currently reworking how
>>> the various firewalling frameworks are handled.
>>> In general, since the autoconf framework now correctly handles
>>> tristate (yes/no/auto) options, I'm inclined to adopt where sensible
>>> this general guideline: default should be "auto"
>>> (enable-if-available), and fail the configuration if the user
>>> force-enables something that can't be delivered.
>>>
>>> Two consequences: squid will build more stuff in (interception is for
>>> instance generally not included), and build-tests that force-enable
>>> will fail because firewalling frameworks are mutually exclusive, so
>>> more build tests will have to rely on the default "auto" approach.
>>>
>>> I'd like to collect feedback on this approach. Reverting those options
>>> to "do not build by default" is of course doable, even trivial.
>>>
>>> Thanks
>>>
>> In the current 3.HEAD the lookups are not mutually exclusive any more.
>> Run-time checking of the lookup results is done now with the intention of
>> doing your proposed change.
>>
>> It seems to be that we can enable all and auto-disable firewalling
>> frameworks based on the headers and libraries available at build now without
>> major problems.
>>
>>
>> There is some potential difficulties between lookups where the success
>> results are indistinguishable from a fail results;
>> IPF is currently broken. Will need a full code fix anyway.
>> TPROXY has already been split at the run-time flag level.
>
> Implemented.
>
> I've also gone ahead with the auth configure changes we talked about:
> five commands;
> --disable-auth
> (sets the USE_AUTH) preprocessor macro to 1 (default) or 0.
> Default-disables all auth code, modules etc.
> --disable-auth-{basic,ntlm,digest,negotiate}
> --enable-auth-{basic,ntlm,digest,negotiate}="helper helper.."
> --enable-auth-{basic,ntlm,digest,negotiate} (default) builds all
> buildable helpers
> --enable-auth-{basic,ntlm,digest,negotiate}=none enables auth scheme
> but builds no helper
>
> --disable-auth together with any --enable-auth-* will FAIL the configure.
>
>
> It's probably time for another interim merge.
>

Wonderful.

Amos

-- 
Please be using
   Current Stable Squid 2.7.STABLE9 or 3.1.1
Received on Sat Apr 24 2010 - 01:24:29 MDT

This archive was generated by hypermail 2.2.0 : Sat Apr 24 2010 - 12:00:09 MDT