This is the mail archive of the mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Commercial Licensing

Reed Kotler Consulting wrote:

> >Distributing a modified cygwin.dll or putting it at an ftp site
> >separately from that which depends on it is really pushing things, and
> >seems pretty dangerous if anyone actually brought suit.
> >
> Why is that dangerous?
> Isnt that the whole point of GPL?
> You can modify the code as long as you give everyone else the
> modifications.

That wasn't the point; the point was distributing your *other* code,
the code that *depends upon* cygwin, without sharing its sources.

> >> However, presumably cygnus can't enforce GPL anyway, only FSF can do
> >> that.
> >
> >Huh?  The copyright on libcygwin.a and cygwin.dll belong to Cygnus
> >Solutions, not the FSF; the FSF just publishes the text of copyright,
> >but that doesn't give them any legal standing.  And it's the courts that
> >enforce these things.
> >
> I quote from section 3 of GPL


> Clearly it's okay to distribute a modified cygwin if it's subject to GPL.

Yes, but that wasn't the issue.  The point was distributing some
*other* code that depends upon cygwin's code, and then distributing
cygwin's code separately, all with the clear intent of avoiding
having the conditions of the GPL enforced against your unshared code.
Suppose that you made some modifications to some GPL code,
compiled it, extracted out all bytes that result from your changes
into a patch, and distributed the binary patch.  That patch is worthless
without the executable that it patches.  So, through some other
channnel you distribute the GPL code that the patch applies to.
That is a clear circumvention of the intent of the GPL.

> In addition, it states clearly  "it is not the intent of this section to
> claim rights or contest your rights to work written entirely by you;
> rather, the intent is to exercise the right to control the distribution of
> derivative
>      or collective works based on the Program.

Right, they don't want to steal your work from you, they
just want to prevent you from distributing derived works without
sharing the source.

> In addition, mere
> aggregation of another work not based on the Program with the Program (or
> with a work based on the Program) on a volume of a storage
>      or distribution medium does not bring the other work under the scope
> of this License. "
> Thus, even if you link in their .a you still don't violate GPL.

No such "thus".  Linking is not mere aggregation; it creates a derived
work.  All the precedent and prior discussion establishes that.
That is definitely the intent of the words of the GPL, as stated by its

> The whole point of GPL is to prevent someone from doing something like
> taking cygwin.dll, improving it and then not letting everyone else
> have the improvements.

That's not the *whole* point; the *whole* point goes back to
Richard Stallman's personal philosophy.  Using the bison parser
in your own program is not making an improvement to the bison parser,
but it has been repeatedly been stated that such *use* of GPLed
code requires sharing source.  The express purpose of the LGPL
as opposed to the GPL is to allow such use without sharing source.
If that were not the case, there simply wouldn't be any need for the
LGPL.  Any argument you wish to make must take the LGPL into account.
> It's not meant, as clearly stated, to cause some "independent work" to
> be become part of GNU.

The issue is not to make it part of GNU; that is a common confusion.
The point is to *prevent you* from distributing someone's property
without obeying their express restrictions.  It is not and never
has been a matter of seizing your property; that is a misunderstanding
that that language in the GPL is meant to dispel, although it fails
to do so.  "You can't hoard the source of programs derived from ours"
does not mean "If you distribute programs derived from ours, we own
them".  Linking GPLed code into a binary is considered to create
a derived work, at least by the FSF.

> Also, it's my understanding that even if cygnus owns the copyright,
> the GPL is a license from FSF so I don't see how somebody else could
> enforce the license.

All such rights and rights to enforcement belong to the copyright
holder (that's why it's called a copy"right").
How someone can enforce their copyright is spelled out in copyright law.

You seem to be confused by the fact that much GPLed code is owned
by the FSF, including code that was written by others but ownership
was turned over to the FSF, and perhaps by the fact that the GPL itself
is copyrighted by the FSF.  The GPL is a document that describes the
terms of a copyright, terms that involve the granting of software
licenses.  The "License" in "GPL" is a license to the "General
Public" from the owner of the copyright, not a license from the FSF.
How could the FSF possibly have licensing rights to code owned by
Cygnus to the exclusion of Cygnus; how were they granted such exclusive
rights?  As opposed to code that Cygnus turned over to the FSF, such as
BFD; cygwin.dll is not such code.  Anybody can put their code, code they
own, code they have the copyright to, under the GPL, which happens to be
published by the FSF.  That does not automatically give the FSF any
special legal standing, including licensing rights.  There is nothing in
the GPL that gives the FSF any rights to code copyrighted under it
(other than the rights that *everyone* in the public gets).

Really, all these issues have been discussed before and elsewhere;
I'm not the best person to debate them with, and this isn't the
best place to do it.  So if you think I've said something false,
I direct you to gnu.misc.discuss (where you won't necessarily
get the right answers either), the FSF and Cygnus legal departments,
the U.S. Patent and Copyrights office, etc.

But then, I thought you didn't care. :-)

<J Q B>
For help on using this list, send a message to
"" with one line of text: "help".

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]