This is the mail archive of the mailing list for the GCC 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]

Re: static libgcc license?

Hi there.

John Love-Jensen wrote:
>>Unfortunately, considering that libgcc.a is a static library and we're wishing
> to link it statically, the distinction between the LGPL and GPL is (I believe)
> irrelevant.
> The difference (and distinction) between GPL and LGPL is enormous.

That's why I qualified my assertions rather that just saying "the
distinction between the LGPL and GPL is (I believe) irrelevant"!
GIVEN the constraints we desire for our binary, whether libgcc is
under LGPL or GPL results in non-met constraints and is thus

I am strongly aware that the differences between the GPL and the
LGPL licenses as enormous, but that does not imply that for any
given situation the differences are _relevant_.

> LGPL means you can link to the library, or use any of the code or
> subroutines, statically or dynamically, in your own code.

Goodness, surely it does NOT nearly so glibly mean that, without a
whole slew of restrictions.  Critically, if you link statically then
you MUST provide source, a second executable that is linked
dynamically, or object files that the user can link themselves.
This can be of amazing importance on embedded platforms.

> And it does NOT
> make your code GPL or LGPL.

It depends on whether the library distributed with the statically-linked
binary is GPL or LGPL.  For compliance with the former case our source
must be rendered GPL and in the latter case the binary is rendered LGPL
(which is relatively harmless, but it imposes the above restrictions
that we were hoping to avoid for the sake of libgcc if we're permitted
by its license).

See the LGPL sections 5 (particularly the second paragraph), 6{a,b}

5. [..]'However, linking a "work that uses the Library" with the Library creates an executable [..] covered by this License.'

We're wishing to simply provide a binary which is statically linked
with libgcc, which was the main precept given in my original question.
Within the constraints of the vanilla LGPL, we would then have to
provide one of a number of alternative forms of our product, as
given in section 6 of the LGPL.  If libgcc is vanilla GPL then we
simply cannot link against it AT ALL unless we are GPL'd (libgcc
is clearly not under vanilla GPL, but the question is whether it is
under an exception-using [L]GPL).

It is NOT clear to me what the license of libgcc is, particularly
the one linked by GCC 3.1.1 before additional exemptions went in.

I have contributed thousands of hours of programming time to [L]GPL
projects and I hope that I already have a fine grasp of licenses
and that you are simply misunderstanding my question and statements,
possibly because I am not making them clear.

If not, I'm going to give up on computers and go become a monk.

Adam D. Moss   . ,,^^   co:3
"Tell people something they know already and they will thank you for
it.  Tell them something new and they will hate you for it."

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