what was the point?
angelo.schneider at oomentor.de
Sun Oct 21 13:34:04 UTC 2001
> email at greglondon.com wrote:
> OK, so GPL says you can:
> 1) copy/distribute verbatim source code under GPL
> 2) modify/copy/distribute source code and relicense under GPL
> parts of distribution that are not derived from original
> are not covered under this license.
> GPL is not intent on claiming rights to your works.
> Aggregation of another software with GPL'd software
> does not require all software be GPL.
> 3) copy/distribute original or modified(from 2) forms of program
> in object or executable form if you provide the source code.
> you must license it same as 1) or 2) above.
> So, part 2 says parts that are not derived from GPL code do not
> have to be GPL licensed.
The term "derived" does not meand "derived work" IMHO.
The GPL defines their own meaning of derived, hence the long discussion
about inheritance ....
> So, I write a chunk of code that works with some GPL software.
> I compile GPL code and my code and get aggregated binaries,
> aggregated in memory.
NOPE, aggregated also is a term used n an otehr way in the GPL, it
reffers to "putting several binaries or sources on one CD/TAPE etc. then
not all need to be GPLed)
> (2) also says aggregation does not require GPL'ing.
> I link our binaries together, to create an actual usable program,
> and that invokes the "derived work" clause that says the
> executable is derived, therefore my aggregated source code
> must be GPL'd?
Not sure :-)
I'm not an GPL expert.
The linking creats "derived work".
Your work plus the used GPL sources yield together a derived work, where
you and the original author retain copyright on.
> and (2) also says it is not the intent of the GPL to make claims
> to someone else's work?
YES: it cant!!!
You can distribute your part of the "derived work" seperatly in any way
NOTE: here we are talking about siple using of GPLed source, and we
asume you have not modified the original GPLed source.
> but, if I want my non-GPL software to use GPL'd software,
> I can't ship an executable? or I have to relicense it as GPL?
Depends what you mean with "use".
If your executeable can stand alone and is not linked with any GPLed
source, it does not need to be GPLed.
So if your programm still "uses" GPLed stuff how would it do that?
a) using system(); and "calling" a GPLed program
b) it might be embedded in a script which calls your program and the
c) the script itself might be GPLed
> yet the only way anyone can use my code, or use GPL'd code,
> is to link it, which is actually a derived work?
See above: no, there are several ways.
> so, I have to ship my source code aggregated with some GPL'd
> source code, and throw in a build script so the user can
> actually use any of it, and make an executable (derive).
Yes, GPLed software is in general shiped like that, a make file(build
script) plus all sources, often including the used GPLed sources.
> What exactly was the point of making linking special?
> and if linking is a derived work, reserved strictly to the author,
> does that mean that Microsoft can come up with a
> Microsoft Open License (MOL) where they release source code,
> but you can only link it with unmodified MOL software?
> i.e. you can look at it, but you can never USE it?
> I don't see any advantage for the GPL to make linking a
> derived work (since a build script run by the user gets around it anyway),
Its not the GPL which makes linking a derived work!
The process of using a tool (linker) by a user (author) taking several
parts which represent individual works under copyright law (a compiled
GPLed source plus your work compiled), that process creates a new work
piece: teh linked executeable.
Copy right law defines: taking a work of some one else and "adapt, add
to it, modify, combine, translate etc.) yields a "derived work".
> and I see it as something that someone else could abuse
> with legal loopholes if they so wanted to.
So, yes: if you compile your source, which uses GPLed stuff to a
library, you can distribute that library seperatly from the GPLed
sources under any license you like.
However you need the user (or a provided installation script) to get and
install (compile?) all required additional GPLed stuff your work is
In that case you did not even create a "derived work".
The user installing your software and fetching the "needed parts"
creates the "derived work" then.
> license-discuss archive is at http://crynwr.com/cgi-bin/ezmlm-cgi?3
Well, the gPL can only require you to agree on their terms because there
is something like the copyright law.
Because, most ways of using a GPLed source yields a work piece which is
"derived work", the author of the GPLed source has the right (privilege)
to have influence on how the "derived work" is distributed.
If copyright law would not define what "deriveed work" is, the GPL where
Circumventing the GPL by the way noted above or other ways, would shift
a burden onto the end user in getting the programs running or require a
sofisticated install procedure (how do you ensure that your program
written today, still is installable in 5 years if you do only deliever
So there is no real point in doing so.
If you feel the need to do so, create a client server architecture using
CORBA or similar stuff.
Then you have full controll in which process finaly the "derived work"
resides and where your work seperatly resides.
Angelo Schneider OOAD/UML Angelo.Schneider at oomentor.de
Putlitzstr. 24 Patterns/FrameWorks Fon: +49 721 9812465
76137 Karlsruhe C++/JAVA Fax: +49 721 9812467
license-discuss archive is at http://crynwr.com/cgi-bin/ezmlm-cgi?3
More information about the License-discuss