But it's "GPLv2 or later" so it may work. Well, maybe not within the same file, but I think it's okay if it's in different source files that are linked together. But it may even be ok to write a comment like "next block of code is GPLv3" at the #ifdef or something like that. Either way, it's kind of ugly.
Also I doubt id Software will care much about mixing RTCW-code into Q3-code. Cheers, - Daniel On Tue, Jan 4, 2011 at 5:19 PM, eviljoel <evilj...@linux.com> wrote: > Hello Simon, > > I read over the GPLv2 several times while writing this e-mail. I > believe distributions of GPLv2 source code with portions of code that > are more restrictive than GPLv2 would be considered a violation of > that same paragraph I quoted previously. The fact that they are in > #ifdef blocks makes no difference. This is because a "work" can be > considered both the source code and the resulting binary. > > It is true that GPLv2 programs can be combined with programs with less > restrictive licenses. However, GPLv3 is a more restrictive license > than GPLv2 and therefore cannot be combined without making the entire > work GPLv3. > > Laters, > eviljoel > > > On Tue, Jan 4, 2011 at 5:23 AM, Simon McVittie > <smcv-ioqua...@pseudorandom.co.uk> wrote: >> On Mon, 03 Jan 2011 at 17:07:56 -0600, eviljoel wrote: >>> Maybe your e-mail reader does not support bolded text >> >> Good guess (it's mutt). >> >>> > If Zack wants to let developers who insist on GPLv2 re-use modules from >>> > his >>> > engine, one way to do it would be to isolate WolfET-derived code into >>> > particular files, so all the other files can remain GPLv2+... >>> >>> This is a violation of the GPLv2 because the GPLv3 components cannot >>> be distributed under the same terms of the GPLv2. >> >> ioquake3 isn't GPLv2 (only) like Linux, though; it's GPLv2+ (as far as I >> can see), which is shorthand for "GPLv2 or GPLv3 or hypothetical future GPLv4 >> or...". >> >> It's valid to license parts of your source code under GPLv2+ and >> parts of it under GPLv3, as long as the GPLv2+ parts aren't a derived work of >> the GPLv3 parts (anything derived from the GPLv3 parts has to stay GPLv3). >> >> If Turtle Arena contains both GPLv2+ modules (from ioquake3) and GPLv3 >> modules >> (from WolfET), then Turtle Arena *binaries* will be a derived work of both, >> so >> the only option you can choose from the GPLv2+ multi-license is the GPLv3, >> and you have to release binaries under the terms of the GPLv3. >> >> However, if other people want to re-use some of its code, they'll >> (presumably) >> be working from the source code, not the binaries, and if they're only using >> modules that allow GPLv2+, then they can choose to take the GPLv2 option. >> >> It's quite common for a single project to include some parts that are more >> permissively licensed than others. For instance, GNOME and KDE projects >> generally have a policy of licensing libraries under some version of the >> LGPL, >> and applications/utilities (which might be shipped in the same tarball) under >> some compatible version of the GPL. >> >> Simon >> _______________________________________________ >> ioquake3 mailing list >> ioquake3@lists.ioquake.org >> http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org >> By sending this message I agree to love ioquake3 and libsdl. >> > _______________________________________________ > ioquake3 mailing list > ioquake3@lists.ioquake.org > http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org > By sending this message I agree to love ioquake3 and libsdl. > _______________________________________________ ioquake3 mailing list ioquake3@lists.ioquake.org http://lists.ioquake.org/listinfo.cgi/ioquake3-ioquake.org By sending this message I agree to love ioquake3 and libsdl.