On Fri, Dec 29, 2000 at 09:26:59PM +0200, Stanislav Malyshev a.k.a Frodo wrote:
> AS>> > ==quote==
> AS>> > Richard Stallman wrote:
> AS>> > 
> AS>> > That you don't distribute binaries does not change the fact that your
> AS>> > source code is designed to include Readline in the program. You
> AS>> > cannot do that, now that your license is incompatible with the GPL.
> AS>> > ==end quote==
> AS>> > 
> AS>> > It is that simple.
> AS>> 
> AS>> It is quite OK to interoperate with GPLed code if you do not make it a
> AS>> part of your program. For example: MySQL in their pre-GPL days had
> 
> Did you read the quote? It says "your code is designed to include [i.e.,
> link with] Readline, [thus] you cannot do that". Note that nobody
> _distributes_ compiled/linked version, so GPL doesn't even apply here,

One of the program's functions is to incorporate GPLed code. The
program is useless, or parts of the program are useless, unless the
program is combined (in compile time or otherwise) with the GPLed
code. Therefore the extecutable and the library are parts of the same
program.

> unless RMS is going to follow RIAA and apply copyright terms on my private
> usage of the legally obtained code.

Neither the GPL nor RMS try to tell you how to privately use
software. On the contrary -- the main reason the FSF does not consider
Apple's license to be a Free Software license is because it requires
disclosing even modifications made for private (personal or corporate)
use. The only thing RMS's free software concept is about is the terms
under which software is distributed from one party to another.

> AS>> "mysqlclient" which included readline and communicated with "mysqld"
> AS>> through a socket. I don't remember if mysqlclient was GPLed, but if it
> AS>> were, the MySQL authors would have been perfectly within their rights.
> 
> All MySQL is GPL now. Until it was, I guess either mysql client was
> illegal, just RMS didn't know or didn't care about it, or MySQL client was
> GPLed. There's no program in MySQL that relies on mysql client, so there's
> no problem.

Whether MySQL "relies" on mysqlclient or not is immaterial, because
mysqld does not use readline or any other GPLed code (AFAIK). What
matters is that mysqlclient used readline's GPLed code, and was
therefore either distributed with the same or less restrictions as
readline is, or distributed illegally (like you said).

> AS>> Read the quote: if the program is actually including readline
> AS>> (statically or dynamically) then readline becomes a part of it. We are
> 
> Yes. But nobody is going to distribute it (compiled binary), so GPL
> doesn't apply here. What RMS is saying that even distributing _source_
> (that doesn't include a line of GPLed code) that _can_ be linked to GPL,
> is illegal - though you don't have even a point here where you could apply
> GPL. 

The problem is not that it _can_ link to GPLed code, but that it
_does_ link to it. Actuality, not potential. And because an executable
does in practice link to readline, it and readline should be
considered two modules of the same program. 

Note that the problem is not compiling such a program (nobody tried to
restrict what you DO with the program) but distributing a part of a
program where the program as a whole is not licensed under the GPL.

> That's why I say that GPL is what RMS means it is and it's not
> actually so "free" as many people think.

I think most people who use the GPL for their code know very well that
it forbids linking their code against more restricted code. This is
not a new thing in any way. If they do not want to restrict their code
this way, they should not use the GPL.

> AS>> not talking about interoperability alone anymore, we are talking about
> AS>> actual inclusion of binary code.
> 
> When I last checked, copyright was dealing with _distribution_ (that's why
> "copy"), not _execution_. 

The GPL does not deal with execution:

"Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope.  The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does."

The problem is with distribution of code that exists as a part of a
larger program, where parts of it are GPLed.

> And RMS is prohibiting (or, rather, trying to
> prohibit, but given the power he holds it's almost the same - there's not
> many organisations that can afford being at war with FSF now)
> _distribution of source_, which doesn't have a line of GPLed code. I
> understand why he does this - because otherwise GPL and LGPL would be the
> same for libraries, and he's actively against it - but the fact that RMS
> doesn't like it shouldn't automatically make it illegal.

I am not a lawyer so I cannot argue the finer legal points. But
consider examples: can I make a patch to Linux that fixes some bugs
and only sell it under a license that does not allow redistribution? I
cannot. Can Microsoft add to IE a feature that automatically downloads
Sun's JVM and patches it to contains its own extensions? They
cannot. Neither the patch nor the extentions stand on their own. They
both consist a part of a larger program that is covered by a copyright
license and has to abide by it.

> AS>> I do think a program's libraries should be considered part of the
> AS>> program. Or else, if someone wanted to turn GIMP into a proprietary
> 
> You mean, if you source has possibility to link it to GPLed library, it
> has to be GPL? In other words, if you allow possibility to attach some
> GPLed code in some way to your system, all your system should be GPL?  
> Let's say we are talking Java and not C - you don't have any includes, you
> can directly call GPLed library in runtime without ever mentioning it in
> the source. By this point of view, any program that allows user to do this
> (call GPLed library in run-time) and isn't GPLed is illegal. Which pretty
> much makes all Java code illegal, since you can just pass text string
> obtained from the user to class loader and say "load class with this
> name".
> 
> Now that can be extended, for example, to make any GPL software on
> Windows illegal - since Windows can take advantage of GPLed code, and
> obviously Windows isn't GPL, so it's illegal by RMS's point of
> view. That only depends on what you call the library and what - the
> executable, and that's just technicality - you can call Windows being
> executale and running program being library - actually, some systems do 
> work this way. See my point here?

You seem to be saying that:

1. Distributing proprietary code linked to GPLed code is illegal.

2. Therefore: anything that _can_ link proprietary code to GPLed code
is illegal.

3. Therefore: Java is illegal.

And since 3 is obviously not true, 1 is not true. But this is the same
as saying:

1. Distributing Microsoft Office is illegal.

2. Therefore: anything that _can_ distribute MS-Office is illegal.

3. Therefore: FTP is illegal.

This does not hold. Distributing MS-Office, or Solaris' bourne shell
linked to readline are both illegal, because they both do something in
practice. Not because they _can_.

> AS>> Everyone has their own definitions.
> 
> Yeah, MSIE is "free" too - look on the Microsoft site.

Free as in beer. A distinction added by RMS to separate the two
things. You can always add your own distinctions, if you like. What is
your point?



        - Adi Stav

=================================================================
To unsubscribe, send mail to [EMAIL PROTECTED] with
the word "unsubscribe" in the message body, e.g., run the command
echo unsubscribe | mail [EMAIL PROTECTED]

Reply via email to