

November 5th is Clang Day - gcoleman
http://docs.freebsd.org/cgi/getmsg.cgi?fetch=147088+0+current/freebsd-current

======
cantankerous
Man that's actually really exciting to see Clang and LLVM come into their
prime on a popular OS. Great work, guys!

~~~
BudVVeezer
OS X isn't a popular OS but FreeBSD is? ;-)

------
Jonanin
It's really cool that the FreeBSD project is investing into llvm like this,
seems like a good bet for the future. But why so soon and so earnestly?

~~~
fusiongyro
The GPLv3 is why. The current C compiler in FreeBSD is GCC 4.2, which is what,
seven years old? They can't use a more modern one because they're all licensed
GPLv3 which is incompatible with FreeBSD's base system. Clang has a more
liberal license. As I recall, this is also why Apple switched to Clang (though
there were many side benefits for Xcode).

~~~
fafner
Why can't they use GPLv3? The FreeBSD license is compatible with GPLv3.
<http://www.gnu.org/licenses/license-list.html#FreeBSD>

Apple doesn't want to use GPLv3 because of the patent clause.

~~~
ajross
It's not a legal incompatibility; FreeBSD has never shipped modified GPL
software anyway to my knowledge (beyond things like patches to cleanly-
separated ports that can be distributed independently under the GPL).

It's a philosophy thing. The new provisions in the GPLv3 (principly the
counter-tivoization requirements which prevent shipping integrated devices
without reprogrammability) are seen as unacceptable to the FreeBSD team. So
they simply ruled against the license, which means that recent versions of gcc
are unusable and they need to look elsewhere for a modern compiler.

That's the official answer. The cynical answer is that they've always hated
the FSF and their dependence on GNU software, and are finally jumping ship now
that there's a non-copyleft compiler available for them to use.

~~~
chongli
What kind of non-reprogrammable, integrated device would ship with a compiler?

~~~
ajross
They wouldn't. Most situations where GPL exclusions are enforced are still
willing to include a modern gcc toolchain.

But still, it's FreeBSD's distro, and they get to write the rules. And clang
is a modern, attractive compiler. The feud may be dumb but the choice isn't.

------
nimrody
As a side note: Clang really shines when it comes to producing useful error
messages / warnings.

------
lucb1e
Remember remember, the fifth of November...

