svn commit: r220401 - in head: . share/mk tools/build/mk tools/build/options

Ulrich Spoerlein uqs at FreeBSD.ORG
Thu Apr 7 21:58:30 UTC 2011


On Thu, 07.04.2011 at 07:31:14 +0000, Alexander Best wrote:
> On Wed Apr  6 11, Warner Losh wrote:
> > On Apr 6, 2011, at 3:41 PM, Alexander Best wrote:
> > > On Wed Apr  6 11, Juli Mallett wrote:
> > >> On Wed, Apr 6, 2011 at 14:04, Alexander Best <arundel at freebsd.org> wrote:
> > >>> On Wed Apr  6 11, Ulrich Spoerlein wrote:
> > >>>> Author: uqs
> > >>>> Date: Wed Apr  6 20:08:23 2011
> > >>>> New Revision: 220401
> > >>>> URL: http://svn.freebsd.org/changeset/base/220401
> > >>>> 
> > >>>> Log:
> > >>>>   Complete WITHOUT_CXX support. It implies WITHOUT_GROFF and
> > >>>>   WITHOUT_CLANG.
> > >>> 
> > >>> is there no way to build clang/llvm without CXX support?
> > >> 
> > >> Clang and LLVM are written in C++.  Even if their support for
> > >> compiling C++ could be disabled, you'd still need a C++ cross-compiler
> > >> to build them, which ought to be disabled by WITHOUT_CXX, right?
> > > 
> > > good point. is it even possible to build a world *with* C++ support, if the
> > > installed world *doesn't* have C++ support? is the C++ part of gcc written in
> > > C? if that's the case it's possible.
> > 
> > Yes.  We don't need c++ to bootstrap g++ or anything else in the base system.  Once we build the compilers, we can build the c++ that's in the tree.

While technically true, that c++ (the binary) is not needed, our g++
requires gperf(1) to build, which is written in C++. So we need gperf +
C compiler to bootstrap. How the gperf binary comes into existence on
the host system is someone else's problem :)

> however that means that FreeBSD can never get rid of gcc. so clang can never
> become the main and only base compiler.

Not quite true, right now the host system (whatever that is) needs a
working C compiler plus a whole lot of other stuff. With clang the host
system needs a C++ compiler + lots of other stuff. I haven't tested any
other compilers, but gcc and/or clang might also build with the Sun
compilers, for example.

Cheers,
Uli


More information about the svn-src-all mailing list