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

Re: Undistributable java in main



Hi Arnaud,

Arnaud Vandyck wrote:
Anyway, we're switching kaffe's class library over to GNU Classpath, which is GPL + linking exception, and that should make the people who support FSFs interpretation happy, too, as GNU Classpath explicitely allows linking to it.

This won't necessarily change anything for Kaffe, as long as Kaffe itself
is licensed under the GPL without any exception, as classpath classes do
link with the underlying JVM [this is required to implement things like
reflection].  So, I restate my argumnet clearly:

Kaffe (GPL) + Classpath (GPL+linking exception) + Ant (apache license)
=> cannot be run, as running causes linking. Linking (statically or
dynamically) is a form of modification in the FSF's opinion.

The problem here is that, because of the desing of the Java API, Classpath
*must* link with Kaffe (it is not merely interpreted by kaffe). So, when
classpath is linked with kaffe, the combined work license may not allow
anymore for the linking exception, therefore linking with Ant is disallowed,
because of incompatibility of Apache license & GPL.

I'd also like to know if the problem exists with other compiler/ virtual
machine?

Before writing the first line of SableVM, I had a long email correpondance
with Richard Stallman about the licensing issues for a Free java virtual
machine.  As a result, SableVM is licensed under the Gnu LGPL and uses
classpath (GPL + exception).  None of the LGPL or the GPL + exception
interferes with the other license, so you are allowed to run *any* application
on top of SableVM + Classpath (as long as the application license allows for
it [think of a licence which says: you may link this application with
any library except classpath or a derivative of it]).

What is exactly the problem for switching to +exception license (I don't
know this area  very well). Isn't it simply a LICENSE  file to change at
the root of kaffe? You have to modify the header of each files in kaffe?

The problem is that the change must be done by the copyright holder(s).  Now,
apparently Transvirtual has went bankrupt, so you would have to find out which
creditor(s) now owns the copyright, and convince him to change the license from
GPL to GPL + classpath-like exception.

Thanks for clarifying  these points because we are  working to have java
libraries and java  applications in main and I will not  be happy if all
this  work is  for nothing  (f*#@  english I'd  like to  tell this  last
sentence with more power but don't want to be rude! ;)).

My (biased) suggestion: look at SableVM.  We are currently doing a *lot* of
backstage work on it.  The upcoming 1.0.10 version will use the latest classpath
release 0.06.  While SableVM does not have the user-visible completeness of
Kaffe (class-library support, mainly), it does have a very robust internal
architecture: robust JNI interface implementation allowing for moving garbage
collectors (without deadlocking the VM if a native method is running an
infinite loop), very portable and *relatively* efficient inline-threaded
interpreter, etc.  See my Ph.D. thesis for details, if you really are
interested. :-)

Etienne

--
Etienne M. Gagnon, Ph.D.             http://www.info.uqam.ca/~egagnon/
SableVM:                                       http://www.sablevm.org/
SableCC:                                       http://www.sablecc.org/



Reply to: