Skip site navigation (1)Skip section navigation (2)
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>