[erlang-questions] GNU GPL, MIT, BSD and compatibility

Alceste Scalas <>
Thu Apr 10 11:11:07 CEST 2008

Il giorno gio, 10/04/2008 alle 10.45 +0200, Richard Carlsson ha scritto:
> Alceste Scalas wrote:
> > The GNU GPL does *not* require that the linked software is released (or
> > re-licensed) under the terms of the GNU GPL itself.
> Really? Here's what the GPL (v2) says:
>      b) You must cause any work that you distribute or publish, that in 
>         whole or in part contains or is derived from the Program or any part
>         thereof, to be licensed as a whole at no charge to all third parties
>         under the terms of this License.
> As far as I can see, this is rather clear: *if* you distribute the derived
> work, then all of it *has* to be provided under the GPL ("this License"),

"As a whole" refers to the final product (as I called it in my previous
email) taken in its entirety.  But it may be composed by parts (e.g.
code portions) that, taken alone, have different (albeit GNU
GPL-compatible) licenses.

In fact, as you report, the GNU GPL v2 also says that:

> "These requirements apply to the modified work as a whole. If identifiable 
> sections of that work are not derived from the Program, and can be 
> reasonably considered independent and separate works in themselves, then 
> this License, and its terms, do not apply to those sections when you 
> distribute them as separate works. But when you distribute the same sections 
> as part of a whole which is a work based on the Program, the distribution of 
> the whole must be on the terms of this License, whose permissions for other 
> licensees extend to the entire whole, and thus to each and every part 
> regardless of who wrote it."

The GNU GPL v3 has the same conditions with different wording.

> The LGPL differs in that it does not consider code that merely links to
> your program to be a derived work.

Well, not exactly.  Under the copyright law, a program that
depends/links to a library *is* a derived work, and thus it must observe
the licensing requirements of the library itself.  Unlike the GNU GPL,
the GNU LGPL does *not* require that the derived product is released "as
a whole" under compatible licensing terms --- even if it *does* require
that modifications to the library itself are released under compatible
licensing terms.


Alceste Scalas <>
CRS4 - http://www.crs4.it/

More information about the erlang-questions mailing list