[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[News.eclipse.foundation] [LICENSE] Definition of "derivative work"

Myself and another person were having a license discussion in the platform newsgroup when a helpful poster suggested we bring it here. I came hear and read a bit and think this is the correct place.

The issue is the definition of derivative work. I will repost my position from the other forum here.


The GPLs position on derivative work has not changed with the emergence of Java. For instance when one has a library he intends to be useable by others he may license it under the LGPL. Which means you can link to it without being required to release your source provided


1. You link 'dynamically' which means your object code will not contain any of the libraries code.

2. The header file you use to link dynamically is NOT under the LGPL, because you are still 'statically' linking to the header, and your end work is still a derivative of this header.

It seems that many people have historically released their libraries under the LGPL without releasing the headers under a freer license. Thus, improperly using the LGPL. The GPL would prevent the use of this header file in the library without the header being itself GPL compatable. The LGPL allows the use of this header in the library without the header being GPL compatible. This is the main reason the LGPL is better for libraries. With this header one can now dynamically link to the library _without_ including any part of said library in his own code.

Jump forward to Java and this same situation is present with the LGPL and the CPL. Both allow you to link to the work freely (unlike GPL), but not to become a derivative work freely (just like GPL). The way to deal with this I believe is as it has been(so I have read): Create a library of the interfaces, and release that under a freer license. That is how it is handled historically with c, c++, etc. and the LGPL, that is how it should be handled in Java.



Summary

One of two things needs to happen;

a.) IBM must specify its own definition of "derivative work" and have that present in the definitions section of the license, and have that definition not include "linking" at runtime. But how IBM can do this and still protect the Eclipse source from exploitation is unclear due to the myriad ways of 'linking' in Java.

b.) The Eclipse Project must package the interfaces to the Eclipse Platform (the portions that do not need protection from exploitation) in seperate jar files, under a seperate freer license.


Needless to say, some do not agree. What is your position?


-- Respectfully,


CL Gilbert

"Verily, verily, I say unto you, He that entereth not by the door() into the sheepfold{}, but climbeth up some other *way, the same is a thief and a robber."

GnuPG Key Fingerprint:
82A6 8893 C2A1 F64E A9AD  19AE 55B2 4CD7 80D2 0A2D

For a free Java interface to Freechess.org see http://www.rigidsoftware.com/Chess/chess.html