On Thu, Feb 07, 2013 at 11:17:15AM +0100, Kuno Woudt wrote:
Hello,
On 02/07/2013 03:34 AM, Richard Fontana wrote:
I noted that the GNU GPL was originally intended for software that would be compiled by proprietary compilers and run on proprietary operating systems. The earliest binary versions of GNU Emacs must have contained proprietary code. This of course was what led RMS to add what came to be known as the system library exception to the definition of 'complete source code'. But the system library exception does not tell us what the license of a statically-linked binary formed out of GPL-licensed code and 'system library' code is supposed to be.
Doesn't that simply mean that the parts of the binary which consist of the transformed GPL'ed work are still GPL licensed, and the remaining parts are under whatever license binaries of the system library code would have if it would be distributed separately?
That's sometimes how I've looked at it, yes.
The system library exception seems to merely limit the scope of the copyleft nature of the license, so the scenario is similar to statically linking code under a weaker copyleft (e.g. the Mozilla Public License) with a system library.
When distributing such a binary you would have to comply with the terms of both licenses.
Yes. I'm just not sure whether RMS contemplated the possibility that the proprietary license might be significantly more restrictive than the GPL without actually making it impossible to satisfy the terms of the GPL.
Essentially, there's something strange about the system library exception. It's focused on clarifying that you don't have to provide source code to something you probably won't have distributable (or GPL-compatible) source code to anyway, but it doesn't say how the inclusion of the system library in the generated binary affects the requirement to license the binary under the GPL.
The larger issue I was getting at is this: If you distribute a binary, and you provide everything needed to generate a functionally equivalent binary, why does the license of the original binary even matter? The answer might be that the GPL is designed to ensure that binaries are easily redistributable under GPL-like terms (royalty-free copying and distribution), without expecting the user to have to rebuild from source code in order to have a freely-redistributable binary.
But isn't this true of a GPL covered work statically linked with a library under a GPL-compatible license as well? My understanding is that someone distributing such a binary would still have to comply with both licenses, but if you comply with the terms of the GPL you are usually also complying with terms of any other licenses, because GPL compatible licenses cannot demand anything substantial beyond what the GPL is already demanding.
In that case I've tended to think of the whole thing as being under the GPL (this is how the GPL itself speaks of it, and this is how I believe developers typically conceptualize it).
- RF