classpath
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: vm/reference classes licensed under LGPL


From: Mark Wielaard
Subject: Re: vm/reference classes licensed under LGPL
Date: Wed, 10 Jan 2001 15:48:05 +0100
User-agent: Mutt/1.2.5i

Hi,

On Wed, Jan 10, 2001 at 02:11:21PM +0000, Nic Ferrier wrote:
> 
> If you develop a GPLed version of a standard javalib (say: javamail
> or swing) you can GPL the implementation code to stop other people
> stealing your implementation code for proprietary projects but you
> also enable normal users to use your implementation with non-GPLed
> code.
> 
> This is because the GPL is all about textual inclusion and when you
> develop a library with the GPL and plug it into a non-GPL app there is
> no textual inclusion (because the import statements are not including
> GPLed code but standard, openly available library specifications).
> 
> [...]
>
> The servlet spec is just a bunch of abstract classes and interfaces
> that don't do much at all. If the code was GPLed then you might think
> that everyone using it to run servlets would have to GPL their
> servlets. 
> 
> But this isn't the case. There is no textual inclusion from the
> javax.servlet package into an ordinary servlet other than the
> references to the servlet spec classes. Thus it's impossible to know
> whether a GPLed servlet spec or the Sun version (which is Berkely
> style licence) was used to develop the servlet.

I don't think this is true. The GPL says that the requirements of the
GPL apply when a work is derived from the program that is GPLed.
It does not precisely define when a work is a derived work of a program.
(That is left to copyright law.) Saying that late binding suddenly makes
a program not a derived work anymore is a bit misleading. It might not be
very easy to check. But if you distribute my GPLed library with your
program and then claim that your program is not a derived work of my library
then I don't think you have a very strong case. If there are other
implementations available that implement the same API and you don't
distribute my GPLed version of the library with your program then you might
get away with it (although I think that is cheating on the spirit of the
GPL if you actually used the GPLed version of the library to make your
derived work). And if you use a native code compiler like gcj I am not
so sure that you won't actually get some inlining (and thus textual
inclusion of the orgininal work).

Cheers,

Mark

P.S. Check the strings in the Derived.class when compiling the following
two classes. (What do you mean no textual inclusion :)

public class Work {
    public static final String copyright = "a static final copyrighted string";
}

public class Derived {
    public static void main(String[] args) {
        System.out.println(Work.copyright);
    }
}





reply via email to

[Prev in Thread] Current Thread [Next in Thread]