1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Apple Originally Tried To Give GPL'ed LLVM To GCC

Free Software

Published on 25 January 2014 10:55 AM EST
Written by Michael Larabel in Free Software
70 Comments

Phoronix was the first to report widespread on Richard Stallman calling LLVM a "terrible setback" with the innovative and growing compiler infrastructure being put out under a BSD-style license instead of the GPL. Well, a little known fact is that when LLVM was first starting out, Apple tried integrating LLVM changes with GCC but it was rejected by the GCC developers.

While many were quick to turn anti-Apple after Stallman's comments and there was the always heated BSD vs. GPL fighting, LLVM originally was proposed for integration with GCC and under a GPL license until upstream GCC didn't welcome the work.

I was reminded in a private email exchange this morning with a Phoronix tipster that Chris Lattner in his early days at Apple was working on LLVM/GCC integration and -- with Apple's support -- was willing to contribute back his changes into the upstream GNU Compiler Collection under the GPL. The code at the time was already under the University of Illinois' open-source license but the authors were willing to re-license to the GPL.

There's several messages about this back in November of 2005 that began with Chris Lattner writing the LLVM/GCC Integration Proposal and the actual LLVM integration patch, etc.

However, in the end it was the GCC developers that rejected Apple's willing GPL contribution to GCC (still in the pre-GPLv3 days when GCC was GPLv2 licensed). The upstream GCC developers didn't want LLVM because of wanting C instead of C++ code, GCC developers didn't like the modular and library design of LLVM, LLVM wasn't formally "done" at that point, and there was some "Not Invented Here" syndrome going on by the FSF developers.

There's plenty of other old mailing list posts you can read through from November 2005 that show Apple was trying to do the good thing back in the early days. Since then we have seen GCC adopt support for compiler plug-ins, a rather new GCC JIT compiler option, talk of GCC 5.0 possibly being more modular, and GCC building in C++ mode. So while LLVM was originally critique for some of these features not wanted at the time in GCC, since then the Free Software Foundation developers have moved in that direction.

Latest Linux Hardware Reviews
  1. ASUS AM1I-A: A Mini-ITX Board For Socketed Kabini APUs
  2. Mini-Box M350: A Simple, Affordable Mini-ITX Case
  3. Overclocking The AMD AM1 Athlon & Sempron APUs
  4. AMD Athlon 5350 / 5150 & Sempron 3850 / 2650
Latest Linux Articles
  1. Ubuntu 12.04.4 vs. 13.10 vs. 14.04 LTS Desktop Benchmarks
  2. AMD OpenCL Performance With AM1 Kabini APUs
  3. A Quick Look At GCC 4.9 vs. LLVM Clang 3.5
  4. Are AMD Athlon/Sempron APUs Fast Enough For Steam On Linux?
Latest Linux News
  1. The Improv ARM Board Still Isn't Shipping; Riding A Dead Horse?
  2. Debian To Maintain 6.0 Squeeze As An LTS Release
  3. Wasteland 2 Is Finally Released For Linux Gamers
  4. FreeBSD Advances For ARM, Bhyve, Clang
  5. Ubuntu 14.04 LTS "Trusty Tahr" Officially Released
  6. Ubuntu 12.04 LTS vs. 14.04 LTS Server Benchmarks
  7. QEMU 2.0 Released With ARM, x86 Enhancements
  8. Running The Unity 8 Preview Session On Ubuntu 14.04 LTS
  9. R600 Gallium3D Disables LLVM Back-End By Default
  10. Fedora 21 Gets GNOME 3.12, PHP 5.6, Mono 3.4
  11. Fedora Workstation Is Making Me Quite Excited
  12. Maynard: A Lightweight Wayland Desktop
Latest Forum Discussions
  1. The GNOME Foundation Is Running Short On Money
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. Radeon 8000M problematic on Linux?
  4. Linux Kernel Developers Fed Up With Ridiculous Bugs In Systemd
  5. After Jack Keane, RuseSoft will briing Ankh 3 to Linux through Desura
  6. Suspected PHP Proxy Issue
  7. Change installation destination from home directory
  8. Bye bye BSD, Hello Linux: A Sys Admin's Story