LWN.net Logo

The reasons for GNU's care with gcc licence

The reasons for GNU's care with gcc licence

Posted Oct 26, 2009 21:49 UTC (Mon) by coriordan (guest, #7544)
In reply to: The reasons for GNU's care with gcc licence by AlexHudson
Parent article: LLVM 2.6 released

GCC's licence (or specifically the licence of the gcc-runtime library) will only compile the metacode output of a plugin if that plugin is GPL compatible:

http://lwn.net/Articles/301135/
http://www.fsf.org/licensing/licenses/gcc-exception-faq.html
http://www.fsf.org/licensing/licenses/gcc-exception.html

From the exception:

"""

A Compilation Process is "Eligible" if it is done using GCC, alone or with other GPL-compatible software, or if it is done without using any work based on GCC. For example, using non-GPL-compatible Software to optimize any GCC intermediate representations would not qualify as an Eligible Compilation Process.

1. Grant of Additional Permission.

You have permission to propagate a work of Target Code formed by combining the Runtime Library with Independent Modules, even if such propagation would otherwise violate the terms of GPLv3, provided that all Target Code was generated by Eligible Compilation Processes. You may then convey such a combination under terms of your choice, consistent with the licensing of the Independent Modules.
"""


(Log in to post comments)

The reasons for GNU's care with gcc licence

Posted Oct 27, 2009 21:10 UTC (Tue) by AlexHudson (guest, #41828) [Link]

You're explaining gcc plugins. What I was asking was more about why LLVM has been affected by gcc's license. Are you saying LLVM / clang is a mere gcc plugin?

The reasons for GNU's care with gcc licence

Posted Oct 27, 2009 21:54 UTC (Tue) by coriordan (guest, #7544) [Link]

The module I mentioned was a reference to the DragonEgg module (linked from the blurb on the story's entry on the lwn homepage). I don't know how much of LLVM/Clang (all? most? almost nothing?) is included in DragonEgg.

The reasons for GNU's care with gcc licence

Posted Oct 27, 2009 22:13 UTC (Tue) by coriordan (guest, #7544) [Link]

Maybe I could have been clearer in my first post.

The reasons for GNU's care with gcc licence

Posted Oct 28, 2009 8:17 UTC (Wed) by AlexHudson (guest, #41828) [Link]

I think saying that GCC's license resulted in DragonEgg being free software is a bit debatable. LLVM was free from the start, and deliberately not based on GCC - being GPL-compatible it doesn't need the plugin exception anyway.

I suspect the proof of the exception pudding will be in the eating 5/10 years from now.

The reasons for GNU's care with gcc licence

Posted Oct 28, 2009 11:02 UTC (Wed) by coriordan (guest, #7544) [Link]

I agree.

My point wasn't that GCC caused LLVM to be free. My point was that with this proof of concept (DragonEgg), hopefully it's easier to see why FSF is so careful about GCC's licence exception and ensuring that only free software modules/plugins can be used with GCC.

If proprietary modules were allowed, it would be a disaster for free software compilers.

Copyright © 2012, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds