From owner-freebsd-current@FreeBSD.ORG Thu Aug 22 06:59:51 2013 Return-Path: Delivered-To: current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id 48C1190; Thu, 22 Aug 2013 06:59:51 +0000 (UTC) (envelope-from dim@FreeBSD.org) Received: from tensor.andric.com (tensor.andric.com [87.251.56.140]) (using TLSv1 with cipher ADH-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0CFD5231F; Thu, 22 Aug 2013 06:59:50 +0000 (UTC) Received: from [IPv6:2001:7b8:3a7::d41a:e6f8:849c:6e20] (unknown [IPv6:2001:7b8:3a7:0:d41a:e6f8:849c:6e20]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) by tensor.andric.com (Postfix) with ESMTPSA id 7F7835C43; Thu, 22 Aug 2013 08:59:41 +0200 (CEST) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 6.5 \(1508\)) Subject: Re: why does buildkernel set COMPILER_TYPE? From: Dimitry Andric In-Reply-To: <20130822040418.GE94127@funkthat.com> Date: Thu, 22 Aug 2013 08:59:40 +0200 Content-Transfer-Encoding: 7bit Message-Id: <49A46D2E-D736-4D57-BB54-5B68C1FE2466@FreeBSD.org> References: <20130822040418.GE94127@funkthat.com> To: John-Mark Gurney X-Mailer: Apple Mail (2.1508) Cc: Brooks Davis , current@FreeBSD.org X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.14 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: Thu, 22 Aug 2013 06:59:51 -0000 On Aug 22, 2013, at 06:04, John-Mark Gurney wrote: > I've noticed that if you do a: > make buildworld WITHOUT_CLANG_IS_CC=YES > > and then do a: > make buildkernel > > (w/o the WITHOUT_CLANG_IS_CC=YES option) > that it fails... Why don't you just put the WITHOUT_CLANG_IS_CC setting in /etc/src.conf, where it belongs? That would save you this trouble. I don't think we should support building different parts of the tree with incompatible settings. E.g. compiling part of the tree using WITH_FOO, and some other part using WITHOUT_FOO is *not* supposed to work properly. > Apparently instead of letting buildkernel figure out > which compiler it will use, the src/Makefile.inc1 forces COMPILER_TYPE > to be what the options specified instead of using what bsd.compiler.mk > figures out... This was added by brooks in r240468 (and further developed in r250659 where he added external compiler support), with what I assume is the explanation in the commit message: "To avoid negative performance impacts in the default case and correct value for COMPILER_TYPE type is determined and passed in the environment of submake instances while building world." So I suspect this is really on purpose. Brooks, any comments? :) -Dimitry