Date: Sat, 08 Nov 2014 12:52:26 -0800 From: "Chris H" <bsd-lists@bsdforge.com> To: Dimitry Andric <dim@FreeBSD.org> Cc: freebsd-hackers@freebsd.org, FreeBSD CURRENT <current@freebsd.org>, FreeBSD ports <freebsd-ports@FreeBSD.org> Subject: Re: How exactly does the base toolchain determine WHICH language to build with? Message-ID: <9135556ed9cef3ea7052a00d1b3b9120@ultimatedns.net> In-Reply-To: <2D6D79A7-D05E-4DE2-A2B6-EFE261204B02@FreeBSD.org> References: <6810431a15d054459a29d434dd22619e@ultimatedns.net>, <2D6D79A7-D05E-4DE2-A2B6-EFE261204B02@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 8 Nov 2014 14:46:21 +0100 Dimitry Andric <dim@FreeBSD.org> wrote > On 08 Nov 2014, at 01:23, Chris H <bsd-lists@bsdforge.com> 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9135556ed9cef3ea7052a00d1b3b9120>