On Tuesday, May 27, 2003, at 23:21 US/Eastern, Steve Langasek wrote:
Not all: the terms of section 3 talk about covered source code in very
broad terms of "all modules [the work] contains". Can you expand on
your understanding of this phrase?
Section 3 reads, in part:
You may copy and distribute the Program (or a work based
on it, under Section 2) in object code or executable form
under the terms ofSections 1 and 2 above provided that you
also do one of the following:
a) Accompany it with the complete corresponding
machine-readable source code, which must be distributed
under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
Later, complete source code is defined, in part, as "all the source
code for all modules the work contains."
In order to be a part of the complete source code, the source has to be
for a module that the Program or a work based on the Program [i.e., a
derivative work] contains.
This leads fairly clearly to your asymmetry below:
One possibility that I had not thoroughly considered is that in the
case
of an application, "all modules" includes any libraries referenced by
the application; but that in the case of a library, "all modules" does
not include any applications which use that library, because the
*library* which is GPLed does not encode any information pointing to
the
applications.
I think it might even be possible that symmetry is preserved; that is,
dynamic linking a GPL'd work to a non-GPL'd library might be allowed,
too, iff that does not form a derivative work. Why? Because if those
are two separate works under copyright law, then the non-GPL'd library
is not a module of the work.
I'm not sure I like this asymmetry (I'm pretty sure it
isn't the FSF's intention),
I think the FSF argues that a program using the library is a derivative
work of the library, in which case the program using the library is a
"work based on [the Program]" for GPL 3.
However, depending on how Lotus v. Borland is interpreted, this
reasoning may be specious.
Noted. I've come to believe that the basis for claiming the
application
is a derived work in these cases is very weak, but it still seems
prudent to treat dynamically-linked works as covered by the GPL's
source
code requirements for the time being.
As Debian doesn't have a legal war chest (and doesn't want a bunch of
bad press, either), it's quite prudent. Then again, it'd end all our
OpenSSL problems real quick ;-D
However, I think for some cases --- such as the mess that started this
whole thread, and for other things that have been discussed, like
command-line utilities in shell scripts, we should go ahead and "link"
'em.