Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 10 Nov 2014 12:04:53 -0800
From:      "Chris H" <bsd-lists@bsdforge.com>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        FreeBSD toolchain <freebsd-toolchain@freebsd.org>, FreeBSD CURRENT <current@freebsd.org>
Subject:   Re: What's the least required in base to be functional?
Message-ID:  <fbc9b3cf65ed5898bf397a493a3f11f2@ultimatedns.net>
In-Reply-To: <620257BF-6202-4B3A-838F-9424D3E76BBF@FreeBSD.org>
References:  <35a0310882e1d8483662707a3925cbc9@ultimatedns.net>, <620257BF-6202-4B3A-838F-9424D3E76BBF@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 10 Nov 2014 20:28:00 +0100 Dimitry Andric <dim@FreeBSD.org> wrote

> On 10 Nov 2014, at 19:54, Chris H <bsd-lists@bsdforge.com> wrote:
> > 
> > Apologies. That may not have been the best choice of titles.
> > What I'm trying to determine, is what is the very least I will
> > require in base, to actually build a userland build environment.
> > NOTE; this all concerns -CURRENT (recent 11).
> > Point being, while I recognize that clang/llvm is the default on
> > 10+. I have been building/installing world/kernel with
> > 
> > make.conf(5)
> > WITHOUT_CLANG=true
> > FAVORITE_COMPILER=gcc
> > 
> > src.conf(5)
> > WITHOUT_CLANG=true
> > 
> > on RELENG_8, and RELENG_9, and 11 (as of 1 mos ago)
> > Everything worked as anticipated. But a recent (5 days ago)
> > build/install on -CURRENT. Followed by a make delete-old
> > _seemed_ to have an adverse affect. More specifically;
> > having used the above declarations always resulted in the
> > make delete-old removing clang from base. Which was fine. As
> > I had intended to experiment with the different versions of
> > lang/clang, and devel/llvm, via installing from ports. But my
> > recent attempt using the above method, resulted in my being
> > unable to build many ports. x11/* mostly. I ran into problems
> > with "xmmintrin.h" not being found. Or other problems, where
> > declarations were not supported in gcc(4.8,4.9, or 5). So what
> > exactly *must* be installed in base to allow for a more
> > *granular* approach to testing/building?
> > Used to be IIRC, fmake, or bmake. But that's likely a pretty
> > dated recollection.
> 
> On recent -CURRENT, to build world using the version of gcc in base, and
> to not build or use the version of clang in base at all, you need at
> least the following settings in your src.conf:
> 
> WITH_GCC=x                 # Enables building gcc for the final world
> WITH_GCC_BOOTSTRAP=x       # Enables building gcc during cross-tools
> WITH_GNUCXX=x              # Enables building libstdc++ and libsupc++
> WITHOUT_CLANG_BOOTSTRAP=x  # Disables building clang during cross-tools
> WITHOUT_CLANG=x            # Disables building clang for the final world
> WITHOUT_CLANG_IS_CC=x      # Links gcc to /usr/bin/cc, /usr/bin/c++, etc.
> 
> Note that you can delete WITHOUT_CLANG from your make.conf, just like
> other WITH_ and WITHOUT_ settings.  These only belong in src.conf.
> 
> -Dimitry

Thank you, Dimitry. Perfect!

So that I can become better acquainted. Where can I find (read)
more about my options in base? KNOBS, and such. I don't recall
reading about these in the developers handbook, and even then,
especially where -CURRENT is concerned, they move/change pretty
quickly. :)

Thanks again.

--Chris





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?fbc9b3cf65ed5898bf397a493a3f11f2>