Etienne M. Gagnon wrote:

>Hi all.
>
>Q: The first question that comes to mind to a new user is: why is Classpath
>licensed under the GPL + a seemingly obscure exception?
>
>A: The answer is that Classpath is part of a larger suite of libraries used by
>the GNU Compiler Suite (GCC) and linked into the runtime of compiled applications.
>GCC is a cornerstone of the Free Software movement: one cannot get a totally
>Free operating system, running solely Free software, unless one has a Free compiler.
>
>For pragmatic reasons, maintaining and porting a Free compiler to the latest 
>processors
>and machines, would be very difficult without the involvement of companies (which
>have to get returns on their investments to pay their employees).  So, in order to
>get help from commercial companies to maintain a state-of-the-art optimizing
>compiler collection, one has to make sure these companies can benefit from their
>investment.
>
>A balanced way to protect the freedom of the compiler collection, while also 
>accomodating
>contributing companies, is to make sure these companies can use the compiler 
>collection to
>compile proprietary programs.  As a program (proprietary or not) needs to link with 
>runtime
>libraries, it is important that the license of all standard runtime libraries (and any
>other runtime support code) be allowed to link with proprietary code.
>
>For this reason, it was decided that all the runtime libraries would contain an 
>exception,
>allowing "free" linking, with no strings attached.
>
It's not just in exchange for companies' help in contributing code; for 
at least some of us this exception is about letting more of them use it 
so that the application is better tested and (hopefully) becomes more 
stable.  The company doesn't have to invest anything beyond a 5-minute 
gripe on the mailing list of "Class.forName() doesn't work when I have a 
slash in the name" or something like that.  But we get benefits 
nonetheless.  Bottom line: it's a library, meant to be used by others. 
 The exception gets it used by more people.

Another reason, stated before by the GCJ guys, is the ability to link 
the native code statically in an embedded system, which would be 
impossible with plain GPL.  Sometimes there isn't a free alternative 
that's good enough and you need to ship product; you can't wait 6 months 
to develop your own or fix the broken existing one.  In an embedded 
system, static linking gives great benefits; you don't want to give that 
up because of a silly license.

Not that your reason is wrong, it just sort of sounds like "we're using 
this license in exchange for companies' contributing code."  I don't 
really think any of us think that way.

--John



_______________________________________________
Classpath mailing list
[EMAIL PROTECTED]
http://mail.gnu.org/mailman/listinfo/classpath

Reply via email to