Re: It's not Rust, it's FreeBSD (and LLVM)

From: David Chisnall <theraven_at_FreeBSD.org>
Date: Tue, 10 Sep 2024 08:47:37 UTC
On 9 Sep 2024, at 23:12, Rick Macklem <rick.macklem@gmail.com> wrote:
> 
> As for build times, I already find "make buildworld" takes way too long
> for me, so adding another ginormous compiler won't make much difference.

As with so many other things, this would be addressable if someone had the time to do it.  A single developer at Microsoft can edit the code and build their own custom Windows VM image on a fairly low-end laptop, in spite of the fact that most laptops don’t have enough disk space for a full git clone of the Windows source tree.  This is possible because of a combination of two things:

 - git-vfs lets you have a local view of a remote git repo and fetches files on demand as they’re accessed.  Don’t run `grep` over your source tree!
 - A build system that has cloud caching, so if you have changed one file you’ll rebuild everything that depends on that file but download the artefacts for everything else.

It’s a bit sad that building Windows typically takes a developer less time than building FreeBSD.  The engineering effort involved in the second part is huge though.  It would probably need the Foundation to pay someone to work on it for a year (I think this would be well worth the investment, but that’s another discussion).  I’m not sure if bmake can be extended enough to support this (Buck2 looks to be the most promising of the new build systems designed around this model but it hasn’t yet had a stable release and comes with big ‘do not use this yet’ warnings).  This would also need infrastructure to make sure each commit to head or a stable branch was built in a trusted environment and pushed to the caches (and that random developers’ builds did not).

David