Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 11 Apr 2014 14:02:06 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Julian Elischer <julian@freebsd.org>
Cc:        freebsd-arch <freebsd-arch@freebsd.org>
Subject:   Re: Separating out building bootstrap and system compilers
Message-ID:  <C34C8AF4-3DE6-4627-BA7E-E2176B5FBCFA@bsdimp.com>
In-Reply-To: <5348366A.1030001@freebsd.org>
References:  <09D78C17-A4F6-4A79-96D4-413B937265F4@bsdimp.com> <5348366A.1030001@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help


On Apr 11, 2014, at 12:37 PM, Julian Elischer <julian@freebsd.org> wrote:

> On 4/9/14, 11:25 AM, Warner Losh wrote:
>> I’d love to be able to say
>> 
>> make buildworld WITHOUT_GCC=t WITHOUT_CLANG=t
>> 
>> and get a working system out of it, without compilers. Too bad I can’t right now.
>> 
>> Luckily, I worked up these patches. Here’s my proposed commit message. Please comment on the patch
>> (which can be found at http://people.freebsd.org/~imp/patch-queue/bootstrap)
>> 
>> Separate out enabling building clang and/or gcc for the system and
>> building clang and/or gcc as the bootstrap compiler. Normally, the
>> default compiler is used. WITH_CLANG_BOOTSTRAP and/or
>> WITH_GCC_BOOTSTRAP will enable building these compilers as part
>> bootstrap phase.  WITH/WITHOUT_CLANG_IS_CC controls which compiler is
>> used by default for the bootstrap phase, as well as which compiler is
>> installed as cc.  buildworld now successfully completes building the
>> cross compiler with WITHOUT_CLANG=t and WITHOUT_GCC=t and produces a
>> built system with neither of these included.
>> 
>> MK_CROSS_COMPILER will now force MK_CLANG_BOOTSTRAP=no and
>> MK_GCC_BOOTSTRAP=no.
>> 
>> BOOTSTRAP_COMPILER was considered, but rejected, since pc98 needs both
>> clang and gcc to bootstrap still. It should be revisisted in the
>> future if this requirement goes away. Values should be gcc, clang or
>> none.
>> 
>> Chances are good that MK_BINUTILS is a good candidate for similar
>> treatment. We likely need to fold Xxx causing things to magically not
>> happen into this scheme as well, but that may be a larger, more disruptive
>> change.
>> 
>> Comments?
> 
> for added credit add a top level arg that builds and installs all the bootstrap stuff (includes, libs, compilers, other tools) in a given destination..
> I happen to need this. (ok, not need but it would be nice)  at $JOB.  Do it by hand at the moment.

How does make xdev not fit your needs?

Warner

>> 
>> Warner
>> 
>> _______________________________________________
>> freebsd-arch@freebsd.org mailing list
>> http://lists.freebsd.org/mailman/listinfo/freebsd-arch
>> To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C34C8AF4-3DE6-4627-BA7E-E2176B5FBCFA>