LGPL (was RE: [Biojava-l] Restriction digest progress)
Keith James
kdj@sanger.ac.uk
02 Jul 2002 15:27:00 +0100
>>>>> "Brian" == Brian Osborne <brian_osborne@cognia.com> writes:
Brian> Mat, I did read the licenses themselves, I believe I
Brian> understand them, somewhat. What I don't understand is the
Brian> idea that Biojava is distributed under the LGPL so that
Brian> it's not under the LGPL. Is this what the Biojava authors
Brian> actually want to say? It looks like a typo. Is there a
Brian> third kind of GPL license?
As I understand it, the statement on the web site "This means that you
can use the libraries without your software being forced under either
the LGPL or GPL" refers to *your* own software which links to the
library.
>From http://www.gnu.org/licenses/why-not-lgpl.html (Why you shouldn't
use the Library GPL for your next library):
"The GNU Project has two principal licenses to use for libraries. One
is the GNU Library GPL; the other is the ordinary GNU GPL. The choice
of license makes a big difference: using the Library GPL permits use
of the library in proprietary programs; using the ordinary GPL for a
library makes it available only for free programs."
So the Lesser (previously called Library) GPL means that your
proprietary code can be bound by whatever licence/conditions you like
as long as it
Brian> But to answer your answer one of your questions, we here at
Brian> Cognia have contributed to Biojava and we're all happy to
Brian> do so, including the business people (and I help with
Brian> Bioperl myself). What's not as clear is the reverse case,
Brian> meaning what happens if we incorporate Biojava code into
Brian> our products.
I think it depends what you mean by "incorporate". The LGPL
distinguishes between a work that is a derivative of the library and
one which uses the library:
"A program that contains no derivative of any portion of the Library,
but is designed to work with the Library by being compiled or linked
with it, is called a "work that uses the Library". Such a work, in
isolation, is not a derivative work of the Library, and therefore
falls outside the scope of this License."
It appears to me (not being a lawyer, obviously) that if you extend
classes (or implement interfaces?) in BioJava then you are making a
derivative work and must also be LGPLed. (The situation for header
files is described - maybe interfaces fall in similar territory?)
Keith
--
-= Keith James - kdj@sanger.ac.uk - http://www.sanger.ac.uk/Users/kdj =-
Pathogen Sequencing Unit, Wellcome Trust Sanger Institute, Cambridge, UK