You are correct as so far as the fact that the originally owner can not stop other people from using code he released under the GPL under the license terms specified in the GPL. That does not apply to his re-licensed code however, and this does not stop him from taking all of his own code and re-licensing it, GPL or not. It is not some magic bullet that withdraws all ownership, unless they added a clause that removes a persons ownership over their own code in GPL4, which would cause it's own problems.
It doesnt say that it protects an "instance" (version? copy?) of the code or whatever it is that you think it says. It doesnt matter how the copyright holder relicenses it. If it is also protected by the GPL then its terms need to be abided by.
I am quite astonished how many people that are discussing licenses here or in other threads on Phoronix actually don't really have a clue of the licenses they talk about. At first, a license is not the only part that has to be considered, also the laws in the jurisdiction of the projects leadership, the articles on the blog of the VLC project are a good read for that: http://www.jbkempf.com/blog/post/201...source-project
This shows also that it actually is no problem to re-license something away from the GPL (even if it is in this case only to LGPL, but nonetheless), as long as all code-contributors agree with that or a CLA exists that actually allows that directly, like Canonical's CLA. This has been done with VLC, it has been done with Sorcerer GNU/Linux (switching to a different license, which caused a fork to happen and the GNU/Linux to be removed from the name).
There were absolutely no legal issues with that and the existing codebase had not to be re-written. You also can be pretty sure that Canonical's legal department has made the CLA waterproof in this regard.
When I see the uncertainties and misconceptions here I can only recommend to anyone planning to contribute to an existing project (or planning to choose a license for a new project) to actually visit a lawyer and make sure that the licenses are really saying what you think they are and which copyright and author right laws are in place in the country where the main development takes place, this can make a significant difference.
I create Library Demo. I create a codebase A for this. Then I create 2 more codebase's B and C that are a clone of A. I license B as GPL, and C as LGPL. A is still mine and currently unlicensed.
I can let company Z use codebase C (which is LGPL) to integrate by library Demo into their application.
I can compile codebase A and sell the binary only by itself.
I can improve codebase A, and clone the changes into B (GPL) and C (LGPL)
I can create a codebase D and license it with a BSD license.
Now I make codebase B (GPL) public, and contributor 1 adds new features.
The new features contributor 1 adds to codebase B (GPL) cannot be put back into my first codebase A (unlicensed), or copied into codebase C (LGPL) or D (BSD) as that would breach the GPL license.
Lets say company Z wants to use contributor 1's code in codebase B (GPL) within their application which is using codebase C (LGPL). If contributor 1 and I both agree, we can re-license codebase B (GPL) to a new license (LGPL) and use that as codebase C (LGPL).
This is allowed, as all copyright holders agreed to the relicense. The codebase B (GPL) would still be available in the same state it was before it was re-licensed. However changes can be made to codebase C (LGPL) without needing those changes to be made to codebase B (GPL) The GPL IS protecting the code that was licensed under it, however it does allow for re-licensing provided all copyright holders agree to it, and a new codebase can be created.
The reason the CLA's are used, is that I can get contributor 1 to sign a CLA before working on my codebase B (GPL). This means all code contributor 1 adds has its copyright assigned to me. That means I own copyright of all the code, and I can relicense this code when I want without needing contributor 1's explicit permission, as it is *my* code.
I hope that is clear enough for you duby229 :)
Anyone else please let me know if I made a mistake. Thanks
I don't see how you could get that much convolution out of what the GPL actually says. It's quite clear and I don't see any other way to understand it then what it says. I'm not trying to be argumentative, but I think you guys are stretching. The GPL doesnt say anything half as much as what you just wrote. It's a whole lot simpler then that if you8 take what was written literally.
EDIT: It's no wonder there are so many thousands of GPL violations. It seems to be a general agreement that the copyright holder doesnt have to abide by the license even though it addresses that specifically in simple terms. I'm stumped. I mean I just reviewed the GPL again just to look over it once more and I came out of it with exactly the same interpretation as before. My mind is not changed one tiny bit.
Let's let the people who wrote the GPL clear this up. From the Official gnu.org GPL FAQs (emphasis added):
Is the developer of a GPL-covered program bound by the GPL? Could the developer's actions ever be a violation of the GPL?
Strictly speaking, the GPL is a license from the developer for others to use, distribute and change the program. The developer itself is not bound by it, so no matter what the developer does, this is not a “violation” of the GPL.
However, if the developer does something that would violate the GPL if done by someone else, the developer will surely lose moral standing in the community.
I heard that someone got a copy of a GPL'ed program under another license. Is this possible?
The GNU GPL does not give users permission to attach other licenses to the program. But the copyright holder for a program can release it under several different licenses in parallel. One of them may be the GNU GPL.
The license that comes in your copy, assuming it was put in by the copyright holder and that you got the copy legitimately, is the license that applies to your copy.
I would like to release a program I wrote under the GNU GPL, but I would like to use the same code in non-free programs.
To release a non-free program is always ethically tainted, but legally there is no obstacle to your doing this. If you are the copyright holder for the code, you can release it under various different non-exclusive licenses at various times.
I hope that clears things up. And I hope nobody claims to know more about the GPL than the people who wrote it.