Subject: RE: GPL with the Classpath exception - clarification needed
From: "Wilson, Andrew" <andrew.wilson@intel.com>
Date: Thu, 26 Mar 2009 16:09:30 -0700

 Thu, 26 Mar 2009 16:09:30 -0700


Philippe Verdy [mailto:verdy p@wanadoo.fr] wrote:

> The same is true for Java: the classpath is not different from the include
> path for headers and library path in a C-written library

I agree 100%.  Then, the question is: since LGPL has such explicit limitations
on what you can do with an #include file in C without becoming a work based
on the library and therefore subject to LGPL (short macros and inline functions
less than ten lines, etc., very detailed), why are Java classes exempt from these
same limitations?

The reasoning in the FSF link provided by Roger (http://www.gnu.org/licenses/lgpl-java.html)
is that instantiating a class is exactly like making a function call.
Well, maybe.  I'm sure there are other technical experts who would say
it's more like doing an #include and expanding the macros -- perhaps
even you.  Certainly, deriving a class has macro-like qualities.

> In fact the LGPL will work well also for network services (including the web
> itself that supports RPC services through communication protocols and
> transfer syntaxes like XML and SOAP, or even just HTML).

Don't see how this is relevant.  I guess the argument is that LGPL's copyleft
does not extend through network services; network services are sort of like
calling a class library on your own machine; therefore copyleft does not extend to
using LGPL class libraries when only local linking occurs.  Granted, no flavor of (L)GPL
copyleft
extends through network services; that's why there's AGPL.  On the other hand, (L)GPL
definitely say copyleft applies to derivatives you create via
local linking.

I don't really have a dog in this fight. People should use the
license they feel most comfortable with. Frequently, that is LGPL.
I'm just weighing to suggest that developers should always look at LGPL
carefully and not just blithely assume it is GPL with a linking exception,
because it is not; it is a very nuanced license.

Andy Wilson
Intel open source technology center