Misunderstanding GPL's terms and conditions as restrictions

Les Mikesell lesmikesell at gmail.com
Mon Jul 28 01:19:13 UTC 2008

Alexandre Oliva wrote:
>> If the FSF doesn't not believe that the work-as-a-whole clause
>> actually means the terms must cover the work as a whole,
> It does.  The terms are permissions, the conditions are requirements
> for the exercise of the permissions.

GPL terms are not only permissions, they are restrictions as well.

> It doesn't take away any other
> permissions you might have.

Normally I would have permission to apply terms of my choice. When 
distributing something as a part of a GPL-encumbered work, I don't.  I 
also can't use your choice or your lawyer's choice.  The GPL says it 
must be "this License".

> That it does is the incorrect assumption
> that's misleading you.

That's what the license says.

> Consider this scenario:
> John A. Hacker develops, from scratch, a program that contains two
> source files: lib.c and main.c.  lib.c was developed to be released as
> a separate library, under the modified (3-clause) BSD license (so
> these are the headers it carries), whereas main.c was developed to be
> released under the GPL (so these are the headers it carries).  John
> A. publishes the whole, named gnothing, under the GPLv2+, and never
> publishes lib.c in any other way.
> Wanda B. Foreman downloads gnothing, and notices lib.c would be really
> useful in his project, linstall.  She thus modifies gnothing by
> removing main.c and the build scripts, and then adds lib.c to her
> version control system, along with changes to the build machinery to
> have lib.c built and linked into his own program.  She then publishes
> linstall, under the GPLv3+.
> Ken C. Farsight has access to Wanda's VCS repository, and sees lib.c
> show up there.  It provides just the feature he wanted for his bsdown
> Free Software program, that he's always distributed under the 3-clause
> BSD license.  He copies lib.c into bsdown and releases a new version
> of bsdown.
> Evelyn D. Scent maintains a non-Free fork of bsdown called macrash, so
> she takes this new release containing lib.c, merges the add-on
> features she maintains, and publishes a new release, under the usual
> restrictive EULA, known to be compatible with the 3-clause BSD
> license.
> Please ask your lawyer questions such as:
> - Has any party had his/her license to distribute gnothing or lib.c
>   automatically terminated?
> - Can John A. Hacker stop any of the other 3 from distributing lib.c
>   in linstall, bsdown, or macrash, under the licenses given or implied
>   by the description above, or even by itself under the modified BSD
>   license, without a copy of the GPL?
> - Can Evelyn be stopped by any of the other 3 from distributing this
>   version of macrash containing lib.c, under the usual EULA?
> then let us know how he justifies the answers.

No reason to ask - the people using the alternative licenses have no 
need to agree to the GPL terms for the work as a whole that includes 
GPL-encumbered parts.  The questionable situation would be if Ken or 
Evelyn also needed the complete gnothing or a modification and thus had 
to agree to GPL terms before extracting a part of it in a way that 
violates it.

>> Would this imaginative interpretation also permit sharing of
>> GPL-covered components modified to link with proprietary libraries
>> among people who otherwise have the right to do so
> AFAIK the GPL doesn't stop anyone from adding dependencies on
> non-GPLed libraries to GPLed programs.  In fact, this is very common,
> in the particular case of system libraries on non-Free operating
> systems.

There is a special exception for system libraries.  You can't use that 
as an example.  And the FSF does routinely claim that a dependency on a 
non-GPL-compatible library is a violation if the functions are unique 
and no GPL-compatible implementation exists.  (This is bizarre in my 
opinion because the copyright infringement status can change with no 
change to the code in question if a new library suddenly exists somewhere).

> It doesn't grant permission for the GPLed program be distributed in a
> form that contains the library or derived portions thereof, without
> also offering the corresponding sources of the library under the GPL,
> but if you distribute the GPLed program in source code form, you're
> covered, and if you can create an object form of the program that does
> not contain code derived from the library, and then distribute it,
> you're also covered.

That's absolutely wrong, with the exception granted for standard 
operating system libraries.   Actually it is questionable legally, but 
the FSF position is that the dependency creates a derived work.  If you 
can find archives back to 1993 or so, look up the history of RIPEM and 
why the FSF considered a source distribution to be infringing for its 
use of the gmp library. I'd try to explain it but you wouldn't believe it.

   Les Mikesell
    lesmikesell at gmail.com

More information about the fedora-list mailing list