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

Richard Carlsson <>
Thu Apr 10 12:43:39 CEST 2008


Alpár Jüttner wrote:
> In fact, there there is a paragraph in GNU GPL that seems to define when
> it is not necessary to use GPL in your work using a GPL software:
> 
>         A compilation of a covered work with other separate and
>         independent works, which are not by their nature extensions of
>         the covered work, and which are not combined with it such as to
>         form a larger program, in or on a volume of a storage or
>         distribution medium, is called an “aggregate” if the compilation
>         and its resulting copyright are not used to limit the access or
>         legal rights of the compilation's users beyond what the
>         individual works permit. Inclusion of a covered work in an
>         aggregate does not cause this License to apply to the other
>         parts of the aggregate.
> 
> Assume that Erlang is linked against a GPL lib. Is that an aggregation?
> (Then no GPL is necessary) Or it "is combined with it such as to form a
> larger program" (Then Erlang seems to be requested to use GPL)? It is
> far too fuzzy for me.

I haven't looked at the GLP v3 until now, but interestingly, they've
removed the use of the term "derived work", and are now referring only
to "a modified version of the earlier work" or "a work based on the
earlier work", and it's harder to see exactly what this means, but the
main clues are 1) your quote above, in particular the part "separate and
independent works, which are not by their nature extensions of the covered
work, and which are not combined with it such as to form a larger program",
and 2) the last paragraph of the license: "The GNU General Public License
does not permit incorporating your program into proprietary programs. If
your program is a subroutine library, you may consider it more useful to
permit linking proprietary applications with the library. If this is what
you want to do, use the GNU Lesser General Public License instead of this
License."

 From that, I'd say it's not very fuzzy: you can't link with a GPL library
(neither statically nor dynamically) without creating a "work based on"
the library, and hence, the rest of the work needs to be made available
under the GPL. An aggregation, on the other hand, would be e.g. to include
a standalone GNU program (with sources), such as gcc, along with the OTP
distribution.

     /Richard





More information about the erlang-questions mailing list