Re: gpl, gdb and wigglers.dll

DJ Delorie
2001-05-09T08:59:00Z

> I've just re-read GPL v2, and I can't see the point behind the
> discussion: as far as I could understand, the presense of an
> interface to wigglers.dll in gdb sources does not violate GPL as
> long as wigglers.dll is not distributed with gdb (as a "major
> component of the operating system on which the executable runs",
> article 3) and interface between wigglers.dll and any program using
> it is not patented (article 7; this does not seem to be the case).

Some points:

* The wiggler dll is *not* a "major component of" Windows. I don't
see how you could possibly argue that it is.

* The GPL is concerned with "works", not files. If you've created a
version of gdb that does not function without the wiggler dll, it's
*one* work and the GPL applies to the combination of the two as a
whole.

The gray area is when you build a version of gdb that *can* be used
without the wiggler dll, but *may* be used with it *if* it is
available.

Another gray area is if you distribute only gdb's sources. I don't
think the GPL has a problem with that case, even if the sources
include an interface to a proprietary API, as long as no gdb binaries
that use that interface are involved.

IANAL, but it seems to me that you can modify the sources of gdb to
use a proprietary API, and distribute those sources, but you can never
distribute a binary that uses that API, because you can never satisfy
the GPL while doing that.

> In short, I don't think the practice of developing interfaces to
> proprietary systems violates GPL, and I would even like to encourage
> it.

Are you a lawyer? Unless you are and know for sure that this is
legal, I wouldn't encourage people to do something that might be
breaking the law.

> Why do you think inability to fix a problem in wigglers.dll is
> supposed to be prevented by GPL? In the end, that is the problem
> with the dll, not with gdb?

Because this is the whole *point* of the GPL. If you are debugging a
board and there's a bug in the software, you should be able to fix it.
Period. The GPL doesn't care what part of the software the bug is in.

> IMHO, GPL is not supposed to encourage the development of, say,
> GPLed version of Windows 2000.

Of course not, but what does Windows 2000 have nothing to do with
this? Windows *is* a major component of the OS, and the GPL makes an
exception for that.

> Tom:
> Why do you think this code is GPL violation and should be removed?

Specifically? Because gdb+wiggler is a single "work", and thus the
wiggler dll sources must be made available to anyone you distribute a
gdb binary to.