This is the mail archive of the java@gcc.gnu.org mailing list for the Java project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

License information for libgcj


Hello all -

I'm close to releasing an Eclipse plugin that I've written, allowing Win32 and Linux (GTK) users to natively compile SWT gui apps into standalone executables with one click. Before I do, I want to clear up some nagging licensing concerns that I have. I've asked about this on the Eclipse newsgroups, and came away from that more confused than when I started.

Basically, my plugin consists of the following components:


(1) Unmodified binaries for the MinGW build of GCC/GCJ for Win32, along with unmodified binary for the compression tool UPX.


(2) Static SWT library, build from slightly modified source... I made small alterations to support compilation with MinGW, and to support static compilation rather than a DLL-dependency.

(3) Completely original code making up the plugin functionality itself. Essentially, this code is just a glorified GUI shell script that compiles applications using the binaries included with (1) and (2).


I'm not concerned with (3), because the code is original... I'm leaning towards declaring that portion as GPL upon release. I'm not concerned with (2), because SWT is covered by the Common Public License (CPL)... which, as I understand it, allows me to modify the library so long as I keep my derived work CPL'ed.


However, (1) has me nervous. I know that you can use GPL'ed binaries without restriction through "fork" or "exec" calls (which is what my plugin does), but I'm concerned about linking issues. I'm using GCC/GCJ to build my modified version of SWT, which implies CPL'ed code mingling with non-CPL'ed code... and GCC/GCJ libraries will also be linked and used in compiling end-user apps.

I know that the C library is LGPL'ed, and the MinGW win32api library is public domain, so I *believe* both are safely compatible with the CPL for linking purposes (feel free to correct me!). However, I've been researching for the past two hours... and I CANNOT find a straight answer on what the license is for GCJ's libgcj. The website is completely silent on the issue (in fact, it's the only open-source project website I've ever seen that doesn't have a "License" link in the main navigation bar). The manual includes a cut-n-pasted copy of the GPL, but no specific text pertaining to the linking libraries. I found information on the licensing for GNU Classpath, but that left me even more confused. For one thing, it's the GPL with a "special exception" that seems to essentially make it LGPL'ed (why do certain people hate the LGPL so much? do you really think calling it by another name makes it different?). Secondly, I don't know how the license for GNU Classpath and libgcj affect each other... since the two libraries are in the process of being merged.

In fact, the ONLY place I could find mention of this was in the archives for the developer's mailing lists. The developers themselves seemed just as confused as I am, and half the conversation seemed to be borderline-flamewar fodder regarding Richard Stallman's temperment and personality quirks.

Can anyone tell me what the exact licensing terms are for the java libraries shipping with GCJ, what the legal impact is on Java code you compile using GCJ, and whether the Eclipse plugin described above seems to pass muster with licensing issues? Thank you very much in advance for any input!

Steve D. Perkins

P.S. I'm not sure if this list is even the appropriate place for this next item, but I would very much like to submit a "feature request" asking that licensing info be given a prominent spot on GNU's GCJ website... preferable it's own page linked from the navigation menu, where the licensing information for executables and libraries is spelled out basically.












Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]