Re: Linus about GPL x BSD(long)

"Deven T. Corzine" <[email protected]> Fri, 19 Jul 2002 15:46:49 -0400 (EDT)
Newsgroups gmane.comp.emulators.wine.license
Message-ID <[email protected]>
On Fri, 19 Jul 2002, Francois Gouget wrote:

> On Fri, 19 Jul 2002, Deven T. Corzine wrote:
> [...]
> > I'm not spreading lies, nor did I say what you seem to think I said.  When
> > did I _ever_ say that the existence of GPL projects impedes your ability to
> > contribute to X11 projects?  Never, so please don't spread disinformation
> > about what I have and haven't said.
> 
> You said:
> 
> > the GPL wants others to give up their freedom to choose a license even
> > on other code, NOT just modifications made to GPL code.
> 
> Let me emphasize: *even on other code*. This has only one meaning and
> you just said that it is not true. Since this is not the first time you
> say this this means you are purposefully spreading lies.

That statement was perfectly true, even if you had trouble interpreting it.

The "other code" in question is code that gets linked with GPL code into a 
combined derived work.  It does not refer to completely separate projects 
like GCC vs. XFree86.  So you're wrong about that too -- "other code" does 
not have "only one meaning" as you claim.  I wrote it intending a different 
meaning than you evidently interpreted it as.  That's not my fault.

When the "other code" is code that gets linked with GPL code (which is what 
I was referring to), it doesn't matter if the other code was developed 
independently for some other purpose -- the GPL still requires that the 
other code be relicensed under the GPL in order to distribute the combined 
work, as if the only reason for the other code's existence is to subvert 
the intent of the GPL.

Even if the other code was NOT independently developed, such as NeXT's 
Objective C frontend to GCC, it can still be _new_ code rather than being 
simply a modified version of the GPL code.  That new code may depend on the 
GPL code to function (and may be designed to be combined with the GPL code 
to form a larger whole), or it might follow an independent third-party API 
that exists independently of the GPL.  (Consider a device driver using the 
UDI driver model, for example.)

Regardless, the new code cannot be licensed as the author desires, if the 
combined work are to be distributed.  The GPL demands that the other code 
must also be released under the GPL.  Of course, whether those demands have 
any force is a legal question -- it seems clear that a static binary must 
be a derived work (in a legal sense), but is the source code necessarily a 
derived work just because it may interact intimately with the GPL code?  
The FSF asserts that it is, but who knows if a court would agree?

In any case, my statements were correct.  I never suggested that completely 
independent projects like GCC and XFree86 had any bearing on each other.  
What I said was that "the GPL wants others to give up their freedom to 
choose a license even on other code", which is exactly true.

Suppose the other code in question was an internal library in a closed, 
proprietary product.  For the sake of argument, let's say it's a Sorenson 
codec for a commercial Quicktime player, and the codec was developed in 
complete isolation from anything GPL.  Now, suppose you have a GPL media 
player which supports Quicktime, but not the Sorenson codec.  The owner of 
the commercial player could probably modify the GPL code to match the API 
calling conventions of their proprietary Sorenson codec to make a version 
of the GPL media player that could play Sorenson Quicktime movies.

If they did so, they'd probably have no objections to releasing the actual 
modifications to the GPL code (to interface with the codec's API) under the 
GPL, but they would probably want to keep the Sorenson codec proprietary.
They'd probably be fine with distributing all the GPL code (or making it 
available), omitting the source code of the Sorenson codec, and restricting 
redistribution of the combined binary as they would with any proprietary 
program.  Their users could freely redistribute the GPL source, or another 
binary they create from the GPL code (modified to remove the codec), but 
they'd be restricted from redistributing the partly-proprietary binary.

Of course, the GPL forbids this, since this sort of use would be considered 
an "abuse" of the GPL code.  Therefore, if the combined program is to be 
distributed at all, the GPL requires that the Sorenson codec be released 
under the GPL.  This wouldn't be the preference of a proprietary company, 
so it's no surprise that many avoid the GPL like the plague.

Now, let's look at my original statement again:

> > the GPL wants others to give up their freedom to choose a license even
> > on other code, NOT just modifications made to GPL code.

How can you claim this statement is a lie?  That statement fits the example 
above perfectly:  "The GPL wants others [in this example, the proprietary 
company owning the Sorenson codec] to give up their freedom to choose a 
license [they must use the GPL to distribute at all] even on other code 
[the Sorenson codec which was legitimately under a non-GPL license and was 
not even modified to use with the GPL code], NOT just modifications made to 
the GPL code [which were made to match the codec's API]."

Now, would you like to make another attempt at rationalizing your attack, 
or will you do the right thing, admit you misunderstood me, and maybe even
apologize for mischaracterizing my statements and attacking my integrity?

Deven