On Sun, Aug 24, 2003 at 04:13:31PM +1000, Anthony Towns wrote: > > An abbreviated form of the so-called "viral" part of the GPL says that > > everything you include in a GPLed work must be distributable under the > > GPL. > > This isn't quite accurate: it says that it must be distributable under the > terms of the GPL. That is, if you follow the requirements of the GPL, then > you're also obeying the requirements of whatever the actual license is.
That's what I said, only longer. And it remains the essence of the problem here - we _can't_ distribute it under the GPL. > > From this I can conclude that I need to be able to distribute any > > given component of the glibc source code under the GPL. > > Which isn't correct. > > You need to be able to distribute the end product under the terms of > the GPL, which you can; the original parts don't matter, since if you're > distributing those, you're not bound by the GPL at all. Consider if a package consisted of two files. One is 'hello.c', and the other is 'fsf-funding'. The license for hello.c says "You may only distribute this along with a copy of fsf-funding, md5sum <value>". The license for the package as a whole says: * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. The licensor of the package does not own the copyright to hello.c, and therefore cannot be construed as implicitly licensing it under the GPL. You can "distribute the end product under the GPL". You cannot remove fsf-funding and distribute the result. Are you seriously suggesting that this is acceptable under the terms of the GPL? It's just another form of the invariant sections we've had so much fun with in the GFDL - data which cannot be detached or modified. If not, please refine the statement "You need to be able to distribute the end product under the terms of the GPL, which you can; the original parts don't matter, since if you're distributing those, you're not bound by the GPL at all." appropriately. I believe that once you have refined it to exclude all the gratuitously non-free examples I can invent, it will also exclude the sunrpc code. > Consider, as another example, the following program: > > #!/bin/sh > # Capital-AJ version 1.0 > # Copyright (c) 2003 Anthony Towns <[EMAIL PROTECTED]> > # All rights reserved > > find /foo -type f | grep 'aj' | while read a; do > x="`echo "$a" | sed 's/aj/AJ/g'`" > mv "$a" "$x" > done > > and the following derivative: > > #!/bin/sh > # Capital-AJ version 1.1 > # Copyright (c) 2003 Anthony Towns <[EMAIL PROTECTED]> > # May be freely used/copied/etc under the terms of the GNU GPL v2. > > export LANG=C > > word="$1" > if [ "$word" = "" ]; then > word="aj" > fi > worduc="`echo "$word" | tr a-z A-Z`" > > find /foo -type f | grep "$word" | while read a; do > x="`echo "$a" | sed "s/$word/$worduc/g"`" > mv "$a" "$x" > done > > Version 1.1 and third party derivatives are clearly under the GPL, but > that doesn't mean you can use it to make a copy of version 1.0 that's > under the GPL, any more than you can start with a blank page and convert > that to a copy of version 1.0 without violating copyright. If this were true, then for all cases where multiple licenses applied to a given sequence of bytes, then you would have to obey _all_ of them. In the copyright law we use in this world, you only have to obey _one_ of them. (Note that this is distinct from combining multiple sequences of bytes under different licenses into a single work - then you do have to obey all of them) Under the GPL, I can take version 1.1, delete the first two stanzas, replace $word with aj and $worduc with AJ - simple modification to optimise the script. I now have a copy of version 1.0 that is under the GPL. At no point did I look at version 1.0 while performing this optimisation, so it is in no sense a derivative work of 1.0. If this did _not_ hold, then a corporation would be able to produce a GPLed program, and a set of modifications which you were not permitted to make - by implementing them and licensing them differently. -- .''`. ** Debian GNU/Linux ** | Andrew Suffield : :' : http://www.debian.org/ | `. `' | `- -><- |
pgpGovijTPmP0.pgp
Description: PGP signature