Re: use of Python bindings to GPL library from within non-GPL Python toolkit
In message <[🔎] 20080917171429.GA1704@washoe.rutgers.edu>, Yaroslav
Halchenko <email@example.com> writes
I am sorry that I am following up on this dead thread I started long
ago , and which Francesco was kind to follow up to.
Now I've got another project to package and got the same issue, and I am
not clear if I have the right understanding of GPL-compatibility.
AFAIK it means that you can use GPL-compatible licensed project
within GPL-ed project, and not vise-versa! Am I correct?
And actually if I am reading it right, wikipedia says the same:
"Many of the most common free software licenses, such as the original
MIT/X license, the BSD license (in its current 3-clause form), and the
LGPL, are "GPL-compatible". That is, their code can be combined with a
program under the GPL without conflict (the new combination would have
the GPL applied to the whole)."
so -- combination has to be GPLed!
Sort of yes ...
That's not impossible ... but if I understand you aright, then the GPL
is intended to hinder/prevent that. The GPL does not allow you to mix
GPL'd code in non-gpl'd projects.
If I am not right -- then Francesco is right and I can easily use GPLed
project (and don't even ask for LGPL) from anything which is
The proper way to look at it is:
If you distribute someone else's code you have to abide by their licence
that they put on it. If that licence allows you to relicence the code
then you can, otherwise you can't.
Let's say you mix three code bases into one project, one is GPL, one is
GPL-compatible, and one is your own code.
Your own code, you can do what you like with - apply ANY licence to it.
The GPL code, you cannot relicence it, so you have to distribute it
under the GPL only. The GPL-compatible code can also be distributed
under the GPL.
But because you're distributing your code mixed with GPL code, the GPL
demands that either you dual-licence your code as GPL, or you let the
recipients of the code relicence. Otherwise you can't distribute the GPL
Your recipients now can treat the entire project as if was GPL (that's
the point of "GPL-compatible"). They can strip out your code and use it
under whatever other licence you put it. And they can strip out the
GPL-compatible code and use it under the GPL-compatible licence.
The thing is, you CAN NOT (without the copyright holder's permission)
relicence any third-party code. The GPL says you must pass on ALL the
rights that the GPL grants to ALL the code to ALL the recipients. If you
can't do that you can't distribute the GPL code. And if the 3rd-party
licence didn't give you those rights to pass on, you can't mix that code
with GPL code and pass it on because the two licences conflict - the GPL
says you MUST pass on the rights, the 3rd-party licence says you CAN'T
pass on the rights, and the only option left open to you is to NOT
Anthony W. Youngman - firstname.lastname@example.org