Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 Aug 2011 13:42:19 -0700
From:      Garrett Cooper <yanegomi@gmail.com>
To:        Kevin Oberman <kob6558@gmail.com>
Cc:        Dimitry Andric <dim@freebsd.org>, freebsd-current <freebsd-current@freebsd.org>, "Hartmann, O." <ohartman@zedat.fu-berlin.de>, Alex Kuster <vertex.symphony@gmail.com>
Subject:   Re: CLANG; still cc in use when building the WORLD with CLANG?
Message-ID:  <CAGH67wSn3E6j3Acsy6kBLdPJXT8MP_BS5izLM2TQGQk%2B8yYweQ@mail.gmail.com>
In-Reply-To: <CAN6yY1twJBTFXeuRqE5VWCMK=E6-XFJOxbWLBUh71MB7E2qxcg@mail.gmail.com>
References:  <4E5CB1E9.9080801@zedat.fu-berlin.de> <4E5D0DD3.20606@FreeBSD.org> <CABZ2EQM8oUoWd6c=2Arp8AZS1KfNCvZEJm40so%2BxTeyGg8a4Cg@mail.gmail.com> <4E5D24DE.8050909@FreeBSD.org> <4E5D2854.1030305@zedat.fu-berlin.de> <CAN6yY1v2%2B-jhbz=0mmU%2Bw4i%2BhWp53FhZ25V9YPdAr2pApGzQAQ@mail.gmail.com> <4E5D3B28.1060103@zedat.fu-berlin.de> <CAN6yY1twJBTFXeuRqE5VWCMK=E6-XFJOxbWLBUh71MB7E2qxcg@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 30, 2011 at 1:25 PM, Kevin Oberman <kob6558@gmail.com> wrote:
> On Tue, Aug 30, 2011 at 12:34 PM, Hartmann, O.
> <ohartman@zedat.fu-berlin.de> wrote:
>> On 08/30/11 21:27, Kevin Oberman wrote:
>>>
>>> On Tue, Aug 30, 2011 at 11:13 AM, Hartmann, O.
>>> <ohartman@zedat.fu-berlin.de> =A0wrote:
>>>>
>>>> On 08/30/11 19:58, Dimitry Andric wrote:
>>>>>
>>>>> On 2011-08-30 18:44, Alex Kuster wrote:
>>>>>>
>>>>>> Thanks for pointing out those details !
>>>>>> This whole thing about make.conf& =A0 =A0src.conf is very confusing =
and
>>>>>> gives
>>>>>> the
>>>>>> impression of something half ported ...
>>>>>
>>>>> The only thing that is "half ported" at the moment, is an easy "use
>>>>> clang to build world" switch. =A0This will be properly addressed afte=
r 9.0
>>>>> is released. =A0As to the make.conf/src.conf confusion, it is very si=
mple
>>>>> really:
>>>>>
>>>>> - make.conf is used for system-wide settings, applied to every build
>>>>> =A0using make.
>>>>>
>>>>> - src.conf is used for setting FreeBSD source tree settings, which ar=
e
>>>>> =A0always of the form WITH_XXX or WITHOUT_XXX. =A0See src.conf(5) for=
 a
>>>>> =A0full list. =A0Any other "make" settings, such as CC, CFLAGS, etc, =
are
>>>>> =A0better specified in make.conf, though the manpage does not tell yo=
u
>>>>> =A0so explicitly.
>>>>
>>>> This is as I understood the manpage of src.conf. There is only a YES/s=
et
>>>> and
>>>> NO/unset.
>>>
>>> No. There is only set and unset. WITH_option=3D"NO" has the same effect=
 as
>>> WITH_option=3D"YES".
>>>
>>> I think this is confusing and often leads to unintended
>>> consequences, but I and also say that some of the WITH_options document=
ed
>>> for src.conf (the man page is auto-generated from the code) are either
>>> non-functional or broken. I've had some interesting issues with unexpec=
ted
>>> interactions of WITH_options, as well. Be very careful!
>>
>> Sorry being so unprecise. I meant WITH_ and WITHOUT_. I learned the hard=
 way
>> that setting a variable
>> to "be set" is simply done by naming it.
>>
>> Well, as I understand your comment, it seems that this /etc/src.conf fac=
ilty
>> isn't working properly yet?
>
> That's a semantic issue. It works as designed in that setting an
> option in src.conf
> does set the specified flags for make in /usr/src. Unfortunately some
> of the options
> were added as options, but the code to actually make the option
> effective was not.
> The more popular options work fine...SENDMAIL, BIND, BSNMP, and many more=
.
> Most of those that are simple skips of doing a make on a given
> directory are fine, too.
> In fact, most are working as expected.
>
> The problems are with more complex options that get involved with
> complex library
> dependencies. WITHOUT_SSH was broken for quite a while due to interaction=
s
> with several other options. (Just look through the Makefiles involved
> in ssh and the
> complexity of the other cryto-related tools. It's not trivial and
> there are way too many
> options to fully test all possible combinations. (As far as I can
> tell, SSH issues are now
> resolved.)
>
> I will also point out that several options DO state that they have no
> effect in the man
> page, but that assumes people actually read the text associated with a
> given option.

    And there are some options which are truly just broken (or simply
put -- don't disable / enable things properly). See
http://phk.freebsd.dk/misc/stable7_build_options/ for an initial idea
(there's another one hanging around in another FreeBSD dev's public
directory -- I forget whom exactly).
HTH,
-Garrett



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAGH67wSn3E6j3Acsy6kBLdPJXT8MP_BS5izLM2TQGQk%2B8yYweQ>