Date: Mon, 23 Jul 2018 12:42:39 -0700 From: Mark Millard <marklmi@yahoo.com> To: bob prohaska <fbsd@www.zefox.net> Cc: Trev <freebsd-arm@sentry.org>, freebsd-arm@freebsd.org Subject: Re: RPI3 swap experiments Message-ID: <76BCFCB9-1071-4557-9FDE-017444ADBF42@yahoo.com> In-Reply-To: <20180723190257.GA47869@www.zefox.net> References: <20180630005145.GA43801@www.zefox.net> <6f3406e2-71f3-d0c2-2b65-703e1a1d3c25@sentry.org> <8e92b2b7-da61-3efb-7231-9fac76b2c1d4@sentry.org> <ba33d8a7-a849-3893-8016-0765ebe1c51f@sentry.org> <2deaaec3-f78f-0b09-5ca7-27e14c6979f9@sentry.org> <bc8da02c-4465-9634-6fd0-0af4c63aa49d@sentry.org> <20180723063526.GA45726@www.zefox.net> <AB5EE2E4-B2FD-4CA9-A993-04C2A4BE10AE@yahoo.com> <20180723155311.GB45726@www.zefox.net> <4ED9B658-A5A8-4BA6-9412-EBB7150B4B66@yahoo.com> <20180723190257.GA47869@www.zefox.net>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2018-Jul-23, at 12:02 PM, bob prohaska <fbsd at www.zefox.net> wrote: > . . . > Here's a point I find confusing: What is the purpose of cross tools = when the build > is self-hosted? Is "cross-tools" a component of bootstrap tools?=20 When clang is updated, using the existing system clang need not be sufficient. Imagine an extreme case: the jump from clang 5 to clang 6 as the system compiler. clang 6 should be built and used to make the new version of FreeBSD. (Think of other llvm toolchain items than clang as well.) Lesser updates can end up with a similar status. Another context is, say, some 11.x building to update to a 12.x . The temporary bootstrap compiler/toolchain is a form of "self hosted cross-tools". (The "cross" aspect does not involve cpu architecture but other context differences.) (Of course there are FreeBSD architectures that still can not use clang or the related system-llvm tool chain.) Of: -------------------------------------------------------------- >>> stage 1.2: bootstrap tools -------------------------------------------------------------- . . . -------------------------------------------------------------- >>> stage 2.3: build tools -------------------------------------------------------------- . . . -------------------------------------------------------------- >>> stage 3: cross tools -------------------------------------------------------------- it is stage 3 that has the likes of, for example, --- cross-tools --- =3D=3D=3D> lib/clang (obj,all,install) --- all_subdir_lib/clang/libllvm --- =3D=3D=3D> lib/clang/libllvm (all) --- all_subdir_lib/clang/libclang --- =3D=3D=3D> lib/clang/libclang (all) --- all_subdir_lib/clang/headers --- =3D=3D=3D> lib/clang/headers (all) --- realinstall_subdir_lib/clang/libllvm --- =3D=3D=3D> lib/clang/libllvm (install) --- realinstall_subdir_lib/clang/libclang --- =3D=3D=3D> lib/clang/libclang (install) --- realinstall_subdir_lib/clang/headers --- =3D=3D=3D> lib/clang/headers (install) clang 5 would build clang 6 in my example. Then clang 6 would be used to build FreeBSD. =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net <http://dsl-only.net/> went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?76BCFCB9-1071-4557-9FDE-017444ADBF42>