Date: Sat, 6 Sep 2014 08:41:23 -0600 From: Warner Losh <imp@bsdimp.com> To: David Chisnall <theraven@FreeBSD.org> Cc: "freebsd-toolchain@freebsd.org" <freebsd-toolchain@freebsd.org>, "conrad.meyer@emc.com" <conrad.meyer@emc.com>, Garrett Cooper <yaneurabeya@gmail.com> Subject: Re: Building clang in buildworld as part of the bootstrap process -- is it really necessary? Message-ID: <95AE2942-2EB8-4431-8B87-2304610DB262@bsdimp.com> In-Reply-To: <4AF47B56-109E-46A3-8EC4-75B95E063FCF@FreeBSD.org> References: <CAGHfRMD0Tm14p%2Bv=%2B6mp89eb4TSNenPSPn92XKC2XbM8m6Ut=g@mail.gmail.com> <01C283B7-C9AF-4AE8-A192-FBC7C04D207E@bsdimp.com> <215CB3BB-BA4B-41D9-9CBF-FC0FDEE9492C@gmail.com> <4AF47B56-109E-46A3-8EC4-75B95E063FCF@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
--Apple-Mail=_F19F6F4A-91D2-445C-A458-066C5594ECA2 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=windows-1252 On Sep 6, 2014, at 5:28 AM, David Chisnall <theraven@FreeBSD.org> wrote: > On 6 Sep 2014, at 06:47, Garrett Cooper <yaneurabeya@gmail.com> wrote: >=20 >> Makes sense. I'll do some poking around and see if things could = potentially be optimized with the clang build. On beefy machines it's = not a big deal, but as we know on machines without a ton of memory or = SSDs, it can become painful, as expected. >=20 > The build system for clang-in-base has improved a bit so, as you say, = it is now reasonably fast on beefy machines (release clang build with = the upstream build system takes 2-3 minutes on a fast machine, about 10 = on my laptop, the one in buildworld isn't quite as good at extracting = parallelism). On slow machines, it can be quite painful. Yes. Hence the ask for a faster way to rebuild the system. > The correct solution to this problem is likely to be to start creating = bootstrap-toolchain packages. This is also likely to be necessary for = architectures like MIPS and PowerPC before 11 anyway, because the host = compiler doesn't have the C++11 support required for bootstrapping a = newer LLVM and clang. We can work around that quite easily if we have = package for the bootstrap toolchain (possibly cross-compiled from an x86 = machine). I=92m not sure which problem this solves. If you are cross building, then you already are likely running on amd64 = which has a good compiler. If you are doing a native build, then = everybody but mips and armeb already have clang support in the base. For = those what you do with clang is irrelevant, so long as gcc is around. When gcc is kicked out of the base, we=92ll need to have an external = toolchain story for those platforms anyway. That story might include = generation of binary packages, but it will also need to include building = of those packages easily. Likely without buildworld, or a modified = variant that groks how to bootstrap a sysroot. Cross building for ports is getting close, we may be able to use it to = generate packages for nonx86 faster than native (recent successful full = builds are taking only 5x as long). I guess I=92m saying that while packages may be necessary, they aren=92t = sufficient unless they are easily reproduced. All this also needs to be well documented, or we=92re going to go off = the rails trying to support it. Warner --Apple-Mail=_F19F6F4A-91D2-445C-A458-066C5594ECA2 Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=signature.asc Content-Type: application/pgp-signature; name=signature.asc Content-Description: Message signed with OpenPGP using GPGMail -----BEGIN PGP SIGNATURE----- Comment: GPGTools - https://gpgtools.org iQIcBAEBCgAGBQJUCx0TAAoJEGwc0Sh9sBEAcPUP/0egJ1JBuCvxj95YlIalVnSk gvI/LXGyyFxIIaOpG52vyVZV8jMDaPrivYO0riff6vFM0lqmMhKuQvvKLEczNy6T w+riZ4cIBcDV7irS2plq5JNgoekKA3W/9r3VVEQhhcEc/yNdzFIJvPZcvRjA+h40 tUeY+X0tM0019x1FZbqqfYWx0VGKn9cpMdzxmvQX0iogAsTlO+LzCRNxZjqf61Ky l3/Bn9uMVQ1zg+B6h0bC/hJ/E7WG7AtLlO0tebhx+BG1P8tersvRkdFP4/Tc9GGY 1aiOSrxcczxR3ahxrNo2V0FtqlvpKJDi3VJG9nmFA/IWqbls3sEkVhmeVC8GIx10 kw60VjjZg5ng8SdZShKlte9x1Q0CU8PjCMkJFIaj2No1O1GEhwNE6aYud91asNPb RlOurfR/nPB4naht9QZ5FbOR+e8z1Ulpqc5uQo2LqXwxzIoZyM+naNSie6kmjNqt xv7GhOdV6K70Aqd6azi7qsrZMK8Fy22MJuF2d+FDwf5oQi+uIzJKZlHff5NPlWTX OyUAbL1qFOw8FPh67Ps8tQXJNVHRVWlTyyCsnV62tZKnubFxK+RBnGp/uV4T6dt2 RTZGXSQDY99ht8kCfvqT/vinSyai2Yq2yhl/zLXy0KNDzG5SIuIaQLGxU4Z1DI6b KUiNlA/3B9gP3jech1YE =bwVQ -----END PGP SIGNATURE----- --Apple-Mail=_F19F6F4A-91D2-445C-A458-066C5594ECA2--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?95AE2942-2EB8-4431-8B87-2304610DB262>