From owner-freebsd-current@FreeBSD.ORG Sat Nov 8 20:52:19 2014 Return-Path: Delivered-To: current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A5AE81D2; Sat, 8 Nov 2014 20:52:19 +0000 (UTC) Received: from udns.ultimatedns.net (unknown [IPv6:2602:d1:b4d6:e600:4261:86ff:fef6:aa2a]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 766C9BA3; Sat, 8 Nov 2014 20:52:19 +0000 (UTC) Received: from ultimatedns.net (localhost [127.0.0.1]) by udns.ultimatedns.net (8.14.9/8.14.9) with ESMTP id sA8KqQrp087043; Sat, 8 Nov 2014 12:52:26 -0800 (PST) (envelope-from bsd-lists@bsdforge.com) To: Dimitry Andric In-Reply-To: <2D6D79A7-D05E-4DE2-A2B6-EFE261204B02@FreeBSD.org> References: <6810431a15d054459a29d434dd22619e@ultimatedns.net>, <2D6D79A7-D05E-4DE2-A2B6-EFE261204B02@FreeBSD.org> From: "Chris H" Subject: Re: How exactly does the base toolchain determine WHICH language to build with? Date: Sat, 08 Nov 2014 12:52:26 -0800 Content-Type: text/plain; charset=UTF-8; format=fixed MIME-Version: 1.0 Message-id: <9135556ed9cef3ea7052a00d1b3b9120@ultimatedns.net> Content-Transfer-Encoding: 8bit Cc: freebsd-hackers@freebsd.org, FreeBSD CURRENT , FreeBSD ports X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.18-1 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: Sat, 08 Nov 2014 20:52:19 -0000 On Sat, 8 Nov 2014 14:46:21 +0100 Dimitry Andric wrote > On 08 Nov 2014, at 01:23, Chris H wrote: > > Sorry for the long title. I've been [needlessly] struggling > > with getting ports within the ports tree to build, on a > > fresh 11-CURRENT install from 2014-11-05. With custom > > KERNEL and WORLD built, and installed. > > Here's my situation, which has worked well since ~8.2; > > make.conf(5) > > WITHOUT_CLANG=true > > FAVORITE_COMPILER=gcc > > src.conf(5) > > WITHOUT_CLANG=true > > If you don't want to use and build clang at all, I think you also need > these two settings (at least on recent -CURRENT): > > WITHOUT_CLANG_BOOTSTRAP=foo > WITHOUT_CLANG_IS_CC=foo > > The latter variable determines whether /usr/bin/cc, /usr/bin/c++ and so > on are linked to clang or gcc. I suspect the root of all your problems > is that you don't have this setting. > > > > I'll neither argue, nor defend rational for w/o clang. To > > boring and out of scope for this thread. That said; I > > realize that lang/clang(33/34/35) is the default toolchain > > for 10+, and that's just fine by me. So I shouldn't be > > terribly surprised when install kernel/world, followed by > > make delete-old removes the clang built, or provided by > > the base install from the (initial) install procedure. But > > what _does_ surprise me, is that the install of lang/gcc-48 > > does _not_ become the compiler of choice with the above > > $ENV, after [seemingly] deleting clang. > > It does not work that way. If you configure the base system to use gcc > only, individual ports can decide that they need newer C++ support, or > other features not available in the version of gcc in base (which is > very old by now). In that case, they will use one of the gcc ports, > or possibly even one of the clang ports. Ahh. Thank you. It's now perfectly clear, and makes complete sense, now. For the record; I have nothing against clang/llvm, per se. I am just looking to obtain a bit more control over my environment. As this installation is intended for development purposes. In fact, I'll probably install all 3 versions of lang/clang. :) Oh, and GNC C, as well. Thank you again, for the reply. Now that I have also been informed about freebsd-toolchain@. I should probably take this opportunity to apologize for the noise, and thank all for their thoughtful replies. :) --Chris > > -Dimitry