GCC/GCJ, SWT, and license lock-in

Steve Perkins lists@steveperkins.net
Sat Jul 12 19:14:00 GMT 2008


    I have a question about using GCC/GCJ to compile a Java application 
which uses the SWT framework for its GUI, and whether this locks you in 
or out of any licensing options.  I apologize in advance if this 
question is somewhat off-topic... I searched "gnu.org" for a mailing 
list specifically directed toward licensing discussion and came up empty.

    The SWT is covered by the Eclipse Public License (EPL), which does 
not bind you to use the EPL for programs which merely link to SWT 
without modifying it (Question #27 at 
http://www.eclipse.org/legal/eplfaq.php#DERIV). 

    However, the FSF considers the EPL to be incompatible with the GPL.  
I'm not sure what impact (if any) this would have on my desire to write 
a GPL'ed application from scratch, which links to SWT for its GUI. 

    I know that writing a *non*-GPL'ed application, and linking it to 
GPL'ed code, creates problems (e.g. the Cygwin DLL dependency issue on 
Windows).  This is because the GPL requires you to use the GPL for works 
linking to GPL'ed code, even if you aren't modifying that GPL'ed code.  
However, it seems that this issue would not arise when going in the 
other direction... applying the GPL to new code, which links to 
libraries using non-restrictive licenses. 

    Now, if I were also making modifications to the SWT as part of this 
work, then the EPL would be imposed upon the whole... and then I would 
clearly run into a clash between the GPL and EPL.  However, since I am 
not modifying SWT, the EPL does not require me to impose its terms on 
the whole... so it appears that I would be free to apply the GPL on my 
non-derivative new code.  On its face, there doesn't appear to be a 
licensing problem with applying the GPL to a new application which uses 
non-modified SWT.

    This seems fairly intuitive to me, but I wanted to bounce it off the 
GCC community to see if I'm overlooking any potential issues.  For 
example, I'm not sure if GCC's recent migration from GPL 2 to GPL 3 has 
had any effect of imposing license terms on executables compiled with 
GCC/GCJ.




More information about the Gcc mailing list