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

Re: Bug#189164: libdbd-mysql-perl uses GPL lib, may be used by GPL-incompatible apps

On Sun, Apr 20, 2003 at 08:02:45PM -0400, Anthony DeRobertis wrote:

> > My question is, how is a package that depends on DBD::mysql materially
> > different from a compiled program that links dynamically against
> > libmysqlclient?

>     A ''derivative work'' is a work based upon one or more
>     preexisting works, such as a translation, musical
>     arrangement, dramatization, fictionalization, motion
>     picture version, sound recording, art reproduction,
>     abridgment, condensation, or any other form in which
>     a work may be recast, transformed, or adapted. A work
>     consisting of editorial revisions, annotations,
>     elaborations, or other modifications which, as a whole,
>     represent an original work of authorship, is a
>     ''derivative work''. (Title 17 USC, Sec. 101)

> I can see how it can be argued that dynamic linking is creating a
> derivative work, because it actually involves copying _very small_
> amounts of the library into the executable. I'm not sure if I agree with
> that; but let's assume it true for a moment.

I am not arguing that dynamic linking creates a derivative work, and I'm
not sure the FSF is, either.  I *am* arguing that it is within the
purview of the GPL to impose restrictions on redistribution of dependent
works whether or not these are derivative works; and the FSF's GPL FAQ
asserts that they are doing so.

> If you think that is a creation of a derivative work (and thus violates
> the GPL), then I have a much bigger GPL violation for you to worry
> about. It's with an interpreter known as "bash". Many "bash" scripts
> rely on functionality provided by "bash" modules such as "grep", "gawk",
> and even "tar". Why is this OK, if the DBI/DBD stuff isn't? "The
> mechanisms are different; the effect is the same."

Are you certain that a copyright holder who subscribed to this
interpretation would *not* have legal standing to sue someone for
bundling their GPLed 'mygrep' with a proprietary script that invokes it?

There are two differences, however.  First, we know of no copyright
holders who assert such a requirement in the case of shell scripting
interfaces; whereas in the case of GPL modules that are loaded into
memory by interpreters, there is at least one prominent copyright holder
who asserts this requirement.  Second, in the case of shell utilities, it
is the original authors who have exposed a certain interface (the exec()
interface) for use by the system; whereas in the case of a Perl module,
the wrapper that provides the interface used by Perl scripts may be
written by a third party (as is the case with DBD::mysql), and its
existence cannot be construed as an implicit endorsement on the part of
the authors of the original library.

The truth is that much of this is very fuzzy; but there are some reasons
to believe we are acting in good faith when we use GPL shell utilities
from GPL-incompatible scripts, and there are also some reasons (such as
the statements in the GPL FAQ) to believe this argument would not hold
up as well when the GPL lib is incorporated into an extension to an
interpreted language.

Steve Langasek
postmodern programmer

Attachment: pgpK6h4OgNy7N.pgp
Description: PGP signature

Reply to: