Date: Tue, 30 Aug 2011 13:25:20 -0700 From: Kevin Oberman <kob6558@gmail.com> To: "Hartmann, O." <ohartman@zedat.fu-berlin.de> Cc: freebsd-current <freebsd-current@freebsd.org>, Dimitry Andric <dim@freebsd.org>, Alex Kuster <vertex.symphony@gmail.com> Subject: Re: CLANG; still cc in use when building the WORLD with CLANG? Message-ID: <CAN6yY1twJBTFXeuRqE5VWCMK=E6-XFJOxbWLBUh71MB7E2qxcg@mail.gmail.com> In-Reply-To: <4E5D3B28.1060103@zedat.fu-berlin.de> 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>
next in thread | previous in thread | raw e-mail | index | archive | help
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 a= nd >>>>> 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 after= 9.0 >>>> is released. =A0As to the make.conf/src.conf confusion, it is very sim= ple >>>> 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 are >>>> =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, a= re >>>> =A0better specified in make.conf, though the manpage does not tell you >>>> =A0so explicitly. >>> >>> This is as I understood the manpage of src.conf. There is only a YES/se= t >>> 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 documente= d >> 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 unexpect= ed >> 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 faci= lty > 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 interactions 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. --=20 R. Kevin Oberman, Network Engineer - Retired E-mail: kob6558@gmail.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN6yY1twJBTFXeuRqE5VWCMK=E6-XFJOxbWLBUh71MB7E2qxcg>