[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: On interpreting licences (was: KDE not in Debian?)



Raul Miller wrote:

> On Sun, Feb 06, 2000 at 12:39:51AM -0500, Andreas Pour wrote:
> > Making that change under the scenario described by Marc would violate
> > the GPL, but so would lots of other things, such as linking a GPL
> > program with a proprietary libc.
>
> Nope, because there's a special exception in the GPL that allows people
> to use a proprietary libc.  This exception is limited (you couldn't
> by the proprietary libc in conjunction with the GPLed program, nor could
> they ship together), but it does exist.  Just search for "special exception"
> in the text of the GPL.

It helps if you read the entire e-mail before responding :-).

> > I note in this regard that Section 3 of the GPL defines "complete source code" as:
> >
> >     For an executable work, complete source code means all the source code
> >     for all modules it contains, plus any associated interface definition files,
> > plus
> >     the scripts used to control compilation and installation of the executable.
> >
> > Notice that it lists only "modules it *contains*", not all "modules it contains or
> > links to" or all "modules it contains during execution" (the latter being relevant
> > b/c "executable work" as written in the quoted sentence above refers to the
> > executable work as it is being distributed, not as it exists at run-time).
>
> You're claiming here that even though Qt must be linked with kghostscript
> that the executing program doesn't contain Qt?

Well, this is funny indeed.  When it suits your desired interpretation, you can change
words rather freely; yet at other times you insist on strict reading of the words.
Although it is obvious, I will repeat myself:  I said "executable work", as used in the
GPL, not "executing program".  The reference to "executable work" in Section 3, which I
quoted above, must be the "Program . . . in . . . executable form" mentioned in the
beginning of Section 3 (why? b/c the quoted sentence is defining the term).  In short,
the term refers only to what is being "copied and distributed", rather than what the
user ends up "executing".  If you read Section 3 with a fair eye I think you will see
what I mean.

> > The next sentence reads:
> >
> >     However, as a special exception, the source code distributed need
> >     not include anything that is normally distributed (in either
> >     source or binary form) with the major components (compiler,
> >     kernel, and so on) of the operating system on which the executable
> >     runs, unless that component itself accompanies the executable.
>
> Ok, so you are aware of the part of the GPL which lets the proprietary
> libc be used.
>
> > This sentence can easily be read to support the dynamic/static
> distinction.
>
> Eh? You can link the proprietary libc statically and this special
> exception would still be just as applicable.

No, it would not, b/c then you would actually be distributing the executable
proprietary libc, and the next clause kicks in (the exception ("unless . . .") to the
special exception) to require the source code to be distributed for the libc part as
well.

> > Normally you would distribute the "major component" w/ the executable
> > only if it is statically linked, in which case you are required to
> > include the source of that component; but if dynamically linked, you
> > are not required to distribute the source.
>
> Even if it's statically linked you're not required to distribute the
> source for a proprietary libc. As long as libc is distributed with the
> kernel or the compiler for the operating system, and as long as the
> kernel or the compiler is *not* distributed with kghostscript, there's
> no problem with also distributing some of that proprietary libc with
> kghostscript.

Now you have essentially read the "unless that component itself accompanies the
executable" clause out of the license.  <sigh>

> > I.e., the GPL does distinguish b/w dynamic and static linking.
>
> It doesn't even use the term "linking" in the terms of the license.

Your point being?

> > As to your -static flag, I think you agree, from your past postings,
> > that someone can distribute a GPL'd program dynamically linked against
> > a proprietary Solaris libc, but that this person could not compile
> > it statically by adding the '-static' flag and then distribute the
> > program. So really I don't see how your kghostview example is any
> > different from what is already allowed and done.
>
> I did not agree to any such thing.  It's perfectly legal to distribute
> a GPLed program which is statically linked against a Solaris libc.

Please, do explain to me how this is possible.  Is this another case where the Powers
That Be choose to ignore the explicit GPL language for the Greater Good?

Ciao,

Andreas


Reply to: