On Wed, Oct 15, 2008 at 11:55:20AM -0400, George Nychis wrote: > Alright, I was hoping someone could clear this up for me in terms of the > GPL, and we all know how vague it can be. > > Sorry to toss a private statement public, Eric, but you mention: > "the license they pick must be compatible with the GPLv3, otherwise they > can't use the existing code" > > Is this really true?
They must comply with the terms of the license (GPLv3). http://www.gnu.org/licenses/gpl-3.0.html http://www.softwarefreedom.org/resources/2008/compliance-guide.html > The gr-ucla code might be a good example: I have permission from Thomas > to put the gr-ucla code in CGRAN, but something that surprised me is > that it is not under the GPL: > http://acert.ir.bbn.com/viewvc/gr-ucla/trunk/README?revision=24&view=markup > It doesn't re-use any GNU Radio code that I can find in the repository, > but it will of course link to GNU Radio libraries. There are parts of it that are clearly "work based on the program" and must be licensed under the GPL (most of gr-ucla/trunk/src/lib, and many in fact are). See for example http://acert.ir.bbn.com/viewvc/gr-ucla/trunk/src/lib/ucla_ieee802_15_4_packet_sink.h?revision=28&view=markup However http://acert.ir.bbn.com/viewvc/gr-ucla/trunk/src/lib/ucla_qpsk_modulator_cc.cc?revision=25&view=markup includes a BSD license which is incorrect. That file should be under GPL. There are probably more, I just took a quick look. Anything that includes any gr_*.h header directly or indirectly is going to be a "work based on the earlier work" and must be licensed under the GPL. Excerpts from the GPLv3: > To "modify" a work means to copy from or adapt all or part of the work > in a fashion requiring copyright permission, other than the making of an > exact copy. The resulting work is called a "modified version" of the > earlier work or a work "based on" the earlier work. > > A "covered work" means either the unmodified Program or a work based > on the Program. > > 5. Conveying Modified Source Versions. > > You may convey a work based on the Program, or the modifications to > produce it from the Program, in the form of source code under the > terms of section 4, provided that you also meet all of these > conditions: > > a) The work must carry prominent notices stating that you modified > it, and giving a relevant date. > > b) The work must carry prominent notices stating that it is > released under this License and any conditions added under section > 7. This requirement modifies the requirement in section 4 to > "keep intact all notices". > > c) You must license the entire work, as a whole, under this > License to anyone who comes into possession of a copy. This > License will therefore apply, along with any applicable section 7 > additional terms, to the whole of the work, and all its parts, > regardless of how they are packaged. This License gives no > permission to license the work in any other way, but it does not > invalidate such permission if you have separately received it. > > d) If the work has interactive user interfaces, each must display > Appropriate Legal Notices; however, if the Program has interactive > interfaces that do not display Appropriate Legal Notices, your > work need not make them do so. > > Through some google searching, its a large dispute whether linking > to a GPL library forces the "linker" to be under the GPL. It isn't > explicit. That question is irrelevant to the gr-ucla situation. > From http://www.gnu.org/licenses/gpl-faq.html#WhatIsCompatible ... > > "If you just want to install two separate programs in the same system, > it is not necessary that their licenses be compatible, because this does > not combine them into a larger work." > > ... to me, that states gr-ucla does not need to be under the GPL. > > Thoughts? The stuff in trunk/sos is all new work, and doesn't modify GR, thus may be licensed under the BSD license. The rest of the code needs to be reviewed on a file by file basis; much of it will be required to be licensed under the GPL. Having a body of code that uses mixed licenses (some files licensed one way, some another) leads to confusion and trouble. See for example this discussion... It would be a good idea for Thomas to review the licenses assigned to each file and ensure that they are the correct ones and that the code is in compliance with the terms of the GPLv3. Having a copy of the GPLv3 (COPYING) in the top directory would be a good too. With the current mixed bag, you'd want a copy of the BSD and the GPLv3. I request that anybody that has questions or comments about any of this first take the time to read the text of the GPL and the compliance guide before posting (links at the top). It'll save us all a lot of time. Eric _______________________________________________ Discuss-gnuradio mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
