LLVM's Clang going into FreeBSD's base system
comments.gmane.org
comments.gmane.org
Getting really close though. The compiler was the last really huge piece of the system that was GNU dependent.
bsddiff and bsdsort are available in the ports tree according to http://wiki.freebsd.org/SummerOfCode2008#head-860658a852d058...
http://lists.freebsd.org/pipermail/svn-src-head/2010-January...
I think you're forgetting about binutils and gdb. It sounds like there might be a replacement for binutils coming up soon, but I haven't heard anyone seriously talk about writing a new debugger. There's also texinfo (hopefully this can die in 10.0) and groff (hopefully this can be replaced by some new NetBSD code in 10.0).
But we're definitely moving in the right direction.
http://wiki.freebsd.org/LibElf
More information:
http://elftoolchain.sourceforge.net/for-review/libelf-by-exa...
BTW, your slideshow on the encryption stuff, very cool! Enjoyed it tremendously.
Replacing functional, well-tested, and Free tools with completely new ones?
Yeah, there's a reason why I don't use *BSD.
This was definitely the case for replacing GNU tar/cpio/pax with libarchive-based versions.
For what it's worth, I've talked to some people at linux distributions who are excited about ditching gcc too. (Not going to say who they are, because I don't want to get them in trouble.)
What I mean here is, why replace a big collection of flaky C apps with another big collection of flaky C apps? Sure, maybe your new version uses strlcpy instead of strncpy, but that doesn't really fix any fundamental implementation problems.
It's really hard to rebuild a plane while in flight
Obviously these people didn't know that http://www.youtube.com/watch?v=L2zqTYgcpfg[Disclaimer - I used to work for them]
The first reason probably applies most to big projects like gcc, where it's alleged that the FSF's development process has led to un-modular, hard-to-maintain software. But there are some differences on smaller projects as well, where the BSDs have a tendency to prefer more use of libraries with command-line apps as front-ends to the libs, while the FSF prefers self-contained command-line utilities that interact in the traditional Unix piping style. E.g. GNU tar and GNU gzip are mostly self-contained utilities, while the BSD versions have all the real code in libarchive and zlib, with some command-line frontends.
Some of the more minor rewrites I assume are due to licensing or personality/political issues (I doubt technical reasons are what lay behind OpenBSD writing GNU bc/dc workalikes).
I disagree. Having just spent a week at BSDCan and the attached FreeBSD developer summit, I'd say that the biggest reason is code quality.
Apple very definitely supported LLVM/Clang because they wanted to avoid GPLv3. FreeBSD is very happy to have a superior compiler available, and the fact that it's BSD licensed is extra icing on the cake. But if LLVM wasn't happening, I'm 100% certain that we would end up importing a newer (GPLv3) version of gcc.