From owner-freebsd-current@FreeBSD.ORG Tue Aug 30 22:26:06 2011 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A49BF106566B; Tue, 30 Aug 2011 22:26:06 +0000 (UTC) (envelope-from ohartman@zedat.fu-berlin.de) Received: from outpost1.zedat.fu-berlin.de (outpost1.zedat.fu-berlin.de [130.133.4.66]) by mx1.freebsd.org (Postfix) with ESMTP id 585F98FC17; Tue, 30 Aug 2011 22:26:06 +0000 (UTC) Received: from inpost2.zedat.fu-berlin.de ([130.133.4.69]) by outpost1.zedat.fu-berlin.de (Exim 4.69) with esmtp (envelope-from ) id <1QyWkv-0001XK-Bj>; Wed, 31 Aug 2011 00:26:05 +0200 Received: from e178029245.adsl.alicedsl.de ([85.178.29.245] helo=thor.walstatt.dyndns.org) by inpost2.zedat.fu-berlin.de (Exim 4.69) with esmtpsa (envelope-from ) id <1QyWkv-0007hX-5r>; Wed, 31 Aug 2011 00:26:05 +0200 Message-ID: <4E5D637C.9020406@zedat.fu-berlin.de> Date: Wed, 31 Aug 2011 00:26:04 +0200 From: "Hartmann, O." User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:6.0) Gecko/20110825 Thunderbird/6.0 MIME-Version: 1.0 To: Kevin Oberman References: <4E5CB1E9.9080801@zedat.fu-berlin.de> <4E5D0DD3.20606@FreeBSD.org> <4E5D24DE.8050909@FreeBSD.org> <4E5D2854.1030305@zedat.fu-berlin.de> <4E5D3B28.1060103@zedat.fu-berlin.de> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: 85.178.29.245 Cc: freebsd-current , Dimitry Andric , Alex Kuster Subject: Re: CLANG; still cc in use when building the WORLD with CLANG? X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 30 Aug 2011 22:26:06 -0000 On 08/30/11 22:25, Kevin Oberman wrote: > On Tue, Aug 30, 2011 at 12:34 PM, Hartmann, O. > wrote: >> On 08/30/11 21:27, Kevin Oberman wrote: >>> On Tue, Aug 30, 2011 at 11:13 AM, Hartmann, O. >>> wrote: >>>> 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& src.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. This will be properly addressed after 9.0 >>>>> is released. As to the make.conf/src.conf confusion, it is very simple >>>>> really: >>>>> >>>>> - make.conf is used for system-wide settings, applied to every build >>>>> using make. >>>>> >>>>> - src.conf is used for setting FreeBSD source tree settings, which are >>>>> always of the form WITH_XXX or WITHOUT_XXX. See src.conf(5) for a >>>>> full list. Any other "make" settings, such as CC, CFLAGS, etc, are >>>>> better specified in make.conf, though the manpage does not tell you >>>>> so explicitly. >>>> This is as I understood the manpage of src.conf. There is only a YES/set >>>> and >>>> NO/unset. >>> No. There is only set and unset. WITH_option="NO" has the same effect as >>> WITH_option="YES". >>> >>> I think this is confusing and often leads to unintended >>> consequences, but I and also say that some of the WITH_options documented >>> 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 unexpected >>> 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 facilty >> 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. Well, why not moving known working options of the src tree to the /etc/src.conf file and delete them from /etc/make.conf? Maybe this is a soft force to take more care of that? Just a suggestion. I like sometimes the more "radical" cut if things tend to get stuck. well, my OS is now compiling as expected with completely with CLANG. I missed some news in the list (I can't read everything, so I'm very grateful to people setting up the default config files). > > 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.