LWN.net Logo

GCC unplugged

GCC unplugged

Posted Nov 20, 2007 21:59 UTC (Tue) by gmaxwell (subscriber, #30048)
In reply to: GCC unplugged by njs
Parent article: GCC unplugged

"Unfortunately, copyright doesn't work that way. Only a judge can decide what is or what isn't derivative work."

This is a attractive-inaccuracy that I see often repeated in Free Software and Free Content circles.

If I create a copyrighted work and you put it on a disk with some other stuff and mass produce it, your product, the resulting disk is a derivative work and would constitute a copyright infringement unless you received a license which permitted you to perform this action. Full stop. When your work actually contains my copyright work, it's derivative.

Now, it just so happens that most free software licenses (including the GPL) allow the covered work to be freely distributed, even on a common medium with works under other licenses so long as certain rules are followed. But only through the license do you have the right to perform this distribution. If the license you've received stated that it was only valid if the distribution was on stone-tablet with goatse printed on the back, then thats what you'd have to do if you distribute the covered work or you will find yourself in violation of copyright law. So long as your action involves distributing my copyrighted work you are at the mercy of my license.

In the cases of interest, where someone has extended something like GCC with some proprietary module, it is sufficient for the license of GCC to say that you can not distribute GCC with proprietary extensions and define proprietary extensions in whatever way the copyright holder pleases. It doesn't require a court to determine if the proprietary extensions themselves would be subject to the GCC license because your distribution involves the distribution of GCC which is indisputably covered by the GCC license and which is therefor subject to the restrictions and stipulations therein. You could reject the GCC license, and its definition of 'extension', but without the GCC license you can not legally distribute GCC.

It's true that someone could still distribute the proprietary extensions *without GCC*, and "only a judge could decide" that the proprietary work work still infringed on the GCC license even though GCC itself was not being distributed, but when we're talking about proprietary extensions, the separate distribution case isn't what most people are thinking of...

This does result in the possibility that separate distribution could be used as a loophole, a loophole is increasingly important with real-time software distribution over the Internet. However, for anyone other than the FSF it would be a trivially closed loophole: In most of the software world the software license takes the form of a EULA, a contract which stipulates terms which also govern the use of the work. A license could prohibit users from combining the covered work with a proprietary extension. The FSF would have a hard time adopting this position due to their long history of aggressively rejecting software licensing schemes which go beyond a pure copyright grant. (Though perhaps this is changing with the FSF's approval of the affero GPL)


(Log in to post comments)

GCC unplugged

Posted Nov 21, 2007 3:47 UTC (Wed) by njs (subscriber, #40338) [Link]

>If I create a copyrighted work and you put it on a disk with some other stuff and mass
produce it, your product, the resulting disk is a derivative work and would constitute a
copyright infringement unless you received a license which permitted you to perform this
action. Full stop. When your work actually contains my copyright work, it's derivative.

I'm not sure that's accurate in detail -- my understanding is that putting several works next
to each other on one medium, individually unmodified, is not creating a derivative work; it's
just putting several works together, and distributing the result is like distributing each of
those works individually.  (In particular, while there is such a thing as a compilation
copyright, it is distinct from the copyright inherent in a derivative work.)

However, I am not a lawyer or any other kind of expert.  Rick Moen will swoop in momentarily
to tell us both off, possibly in iambic pentameter (he's just that cool).

In any case, it's hardly relevant to the point at hand.  Obviously I agree that we don't need
to ask a judge to know that it's illegal to distribute a copyrighted work verbatim, without a
valid license.  But who cares whether this is technically a contradiction to my original point
or not... do you really think anyone was confused?  I was responding to a poster claiming they
could make some works derivative by adding a line to their license, which is nonsense...

>In the cases of interest, where someone has extended something like GCC with some proprietary
module, it is sufficient for the license of GCC to say that you can not distribute GCC with
proprietary extensions and define proprietary extensions in whatever way the copyright holder
pleases.

1) Defining "proprietary extensions" is a pain in the butt.  Can I ship GCC and Matlab
together?  Matlab contains proprietary code that knows how to call GCC to build Matlab
plugins...

2) This would make the GCC license GPL-incompatible.

>It's true that someone could still distribute the proprietary extensions *without GCC*, and
"only a judge could decide" that the proprietary work work still infringed on the GCC license
even though GCC itself was not being distributed, but when we're talking about proprietary
extensions, the separate distribution case isn't what most people are thinking of...

But, uh... that's *exactly* how people have tried to weasel around this problem both
historically (Apple with Objective-C, say) and right now (e.g. NVidia with its proprietary
kernel modules).  So anyone who isn't thinking about it, should be :-).

>A license [meaning contract] could prohibit users from combining the covered work with a
proprietary extension.

There are valid reasons to want to avoid restricting use, as opposed to distribution... if
nothing else, how do you phrase this in a way that allows people to make local modifications
that they do not distribute, but rules out proprietary extensions?

GCC unplugged

Posted Nov 23, 2007 7:15 UTC (Fri) by giraffedata (subscriber, #1954) [Link]

It's true that someone could still distribute the proprietary extensions *without GCC*, and "only a judge could decide" that the proprietary work work still infringed on the GCC license

I have to correct the terminology here, because as it stands is reinforces the popular misconception that a copyright license is something that stops you from copying code. There's no such thing as infringing on a license.

It should say, "... that distributing the proprietary work infringed on the GCC copyright."

but when we're talking about proprietary extensions, the separate distribution case isn't what most people are thinking of...
Hmm. To me, that's what plugins are all about -- selling a plugin for use with the customer's independently acquired GCC.

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds