Combining GPL and non-GPL code (was: multiple topics)

John Cowan cowan at
Thu Aug 2 01:49:44 UTC 2007

Wilson, Andrew scripsit:

> The specific question under discussion is what license applies to a
> combination of GPL and non-GPL code.  My assertion is that GPL applies
> to the entire combination,

I agree.

> and that the creator of such a combination must place additional terms
> and conditions, in the form of GPL, on the underlying non-GPL license.

I disagree.

In particular, I hold that although the work as a whole can only be
distributed under the terms of the GPL, any parts that you receive
with BSD (or similar) licenses applying to them (which may not be
removed, by their own terms) may be distributed by you under the
said terms, with no GPL restrictions.

To refute this, you will have to explain to me how the express
terms of the BSD license somehow no longer apply to the file in
which they are physically embedded.

> Downstream distributees of such a combination receive a license
> under GPL from the creator of the combination and from any subsequent
> distributors of the combination.

I agree.

> The license which subsequently applies to the non-GPL portions is either
> the union of GPL and the original non-GPL license (which obviously
> must contain no provisions which would be in conflict with GPL),

I'm not sure what you mean by "union", whether conjunction or disjunction.
In either case, I don't see how the restrictions can possibly apply to
otherwise unrestricted code.  The *permissions* of the GPL must apply
to each and every part of the code, as the GPL  says.

> or an outright conversion of the non-GPL licensed portions to GPL
> (as allowed, for example, by LGPL).

No problem with that, though I deny that it's necessary.

> I do not believe this section is relevant to the question at hand,
> the combination of GPL and non-GPL code, e.g. to a derivative work.  
> I believe the relevant section is GPLv2, sec. 2, para (b), which reads
> # You must cause any work that you distribute or publish, that in whole
> # or 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.

I agree that the work *as a whole* must be licensed under the GPL.
That is different from claiming that any parts with non-restrictive
licenses of their own inherit the GPL restrictions.

> There is no obligation here to be the actual copyright owner of all
> code in a derivative work in order to apply GPL terms to the derivative.

Quite so.  For example, if you make a derivative work by modifying a
BSD-licensed single-file program, you may license your derivative
under the GPL, since you are the copyright owner of that derivative work.

> Rather, there an affirmative obligation to license (note the verb)
> said entire derivative work under GPLv2.

I agree.

Newbies always ask:                             John Cowan
  "Elements or attributes?            
Which will serve me best?"                      cowan at
  Those who know roar like lions;
  Wise hackers smile like tigers.                   --a tanka, or extended haiku

More information about the License-discuss mailing list