Simple question

Ian Lance Taylor iant@google.com
Sat Aug 25 21:23:00 GMT 2012


On Sat, Aug 25, 2012 at 1:16 PM, Georg-Johann Lay <gjl@gcc.gnu.org> wrote:
> Ian Lance Taylor schrieb:
>
>> Georg-Johann Lay wrote:
>>>
>>> Ian Lance Taylor schrieb:
>>>
>>> Some weeks ago a customer came up with concerns about libgcc, GPL,
>>> the runtime exception and libgcc code.
>>>
>>> The objection against libgcc was that it uses parts that are GPL
>>> but do *not* come with the runtime exception.
>>>
>>> For example, ./libgcc/libgcc2.c includes tm.h which includes files
>>> from the ARM backend like ./gcc/config/arm/arm.h given the compiler
>>> is configured for ARM.   arm.h does not come with the library
>>> exception because it is part of the compiler proper.
>>>
>>> The question is now: How is this handled?
>>>
>>> Is there a definite statement from the FSF on this case?
>>> If yes, please point me to it.
>>> If no, it would be highly appreciated to add a note to the
>>> FSF or GPL web sites and FAQ.
>>
>>
>> I linked to the FSF FAQ earlier, and I think it is clear:
>>
>> http://www.gnu.org/licenses/gpl-faq.html#CanIUseGPLToolsForNF
>
>
> hmm. That text is about bison and hairy code.
> It doesn't even mention "runtime library exception" or #include

That link poses the question "Can I use GPL-covered tools such as GCC
to compile [non free programs]?" and answers the question "Yes."

Details like the runtime library exception and #include simply aren't
relevant.  The issues with the runtime library exception only arise in
very unusual and, to the best of my knowledge, purely theoretical
cases.  No ordinary user of GCC will ever encounter them.  The issue
with #include simply doesn't matter.


>> I don't think this is a real problem in practice.  The statement on
>> libgcc/libgcc2.c is clear.  No part of gcc/config/arm/arm.h is copied
>> into libgcc2.c.
>
>
> What if not a copy is #include?  If it is legal to #include any code,
> I could just as well include GPL code in non-GPL software.

I'm sorry, I should have said: no part of gcc/config/arm/arm.h is
copied into libgcc2.o.  Does that make my statement clearer?


>> However, if you are concerned about it, I recommend that you raise the
>> issue with the GCC Steering Committee (by sending
>> an e-mail to gcc@gcc.gnu.org).
>
>
> I have no problem with the GPL, but companies unfamiliar with it
> tend to be kind of paranoid with it...

Yes, and the way to answer that paranoia is to be honest and
straightforward in answering any questions.  It is completely fine to
use GCC to compile proprietary programs.  Nobody has ever been
challenged because they used GCC to build their proprietary program.
It is exceptionally unlikely that anybody ever will be challenge,
since the only part with any standing is the FSF itself, and the FSF
has always said clearly that it is fine to use GCC to compile
proprietary programs.  Should the FSF for some reason change their
position, the law would not be on their side.


> Of course it is possible to ask the FSF or the GCC steering
> committee each and every time, but such questions pop up again and
> again and it might help GCC or other free software if the FAQ was
> more specific and more explicit on that.  The FAQ could explicitly
> work out some common use cases like include GPL code in non-GPL
> code, or the above mentioned inclusion of code without runtime
> exception from code with runtime exception.

What questions pop up again and again?  Where do they pop up?  I have
not seen them.


> If it's no problem, then the page could say so.
>
> I believe that *any* misconceptions about GPL and runtime exception
> should be cleared up as early as possible, and as clearly as
> possible, and as easily to find on the web as possible.
>
> Anything else keeps potential users from using free software.
> That's not the intention of its founders or its authors.

I find the FAQ to be perfectly clear.  But if you find that it is not
clear, I really do urge you to contact the FSF with suggestions for
how to improve it.  I don't see how I can help to improve it, because
to me it seems fine already.

Ian



More information about the Gcc-help mailing list