Cygwin license

DJ Delorie
Tue Mar 16 12:21:00 GMT 1999

> I have seldom found RMS's thoughts to be compelling. You always have
> to take his adgenda into account and his adgenda is quite complex. I
> do suspect that without LGPL gcc would be a minor player.

Nothing about gcc is LGPL.  Only glibc is LGPL, and the only reason
*that* is LGPL is because it provides no value beyond what any other C
runtime provides, so there is no incentive to choose it over another.

> Every deveoper I have ever met that volunteered to work on gcc cut
> their gcc teeth using gcc in a place of employment that used gcc to
> create licensed binary distributed code.

This has nothing to do with GPL vs LGPL.  The GPL just doesn't cover
the results of *using* a GPL'd program, only using the program's
sources.  This has always been the case.

> These people wouldn't be part of the free software movement without

But they were part of the movement before there was an LGPL, and the LGPL
doesn't apply to gcc anyway.

> I think RMS wants to have it both ways, the broad distribution that
> comes with people using gcc commercially plus the forcing of
> software into the free software domain. He doesn't like to admit the
> part that binary distributors play in supporting free software.

RMS doesn't care about how broad the distribution is.  He only cares
that the software he writes and uses is free to be used by everyone.
I tend to agree - I have no philanthropic interest in convering the
world to my views as long as *I* have the programs *I* need.

> As has been stated earlier on this list it is not clear that Cygnus
> can restrict the distribution of code that runs under Cygwin.

Since any cygwin application includes a significant portion of the
runtime within it, and it's a runtime that does not simply interface
you to the Win32 API (which is the platform you're running on),
there's a clear value added that's part of the source upon which your
binary was built (not including the dll).  It is primarily this code
that makes your application GPL.

> Courts have held in other cases that glue software required for
> inter-operability can be used regardless of license conflicts.

The cygwin startup code is not just glue, and there's nothing else for
us to be inter-operable with.  Do you know of any other companies
making a cygwin dll?  If the code were simply a way of hooking you do
the Win32 API, I might agree, but we're providing a significant amount
of extra functionality on top of the Win32 API.  The fact that said
functionality emulates a POSIX environment is irrelevent; Win32 is not
a posix environment so our code isn't there to make you interoperable
with the OS.

> If you consider sourceware cygwin.dll to be a general platform for
> running UNIX code

We do not.  It is a tool that helps you port unix code to windows.
The result is not a unix program any more, but a windows program.

> If it is effectively impossible (i.e. prohibitively expensive) to
> distribute code without including Cygnus licensed glue I suspect
> that the license is unenforcable.

Just because cygwin makes a hard job easy doesn't mean we're legally
obliged to guarantee we'll make it easy for everyone.  We have chosen
a particular set of terms which you may agree to or not.  If you don't
agree to them, you simply have to find another way.  The video game
analogy is inappropriate - it *is* impossible to run game X on system
Y without interfacing to system Y's APIs.  It *is* possible to write
program A to run on Win32 without interfacing with Cygwin's APIs.

> In other words when Cygnus decided to make cygwin.dll freely
> available they probably let the cat out of the bag for third party
> applications.

Nope.  It has always had the GPL's restrictions on it; you are free to
not use cygwin if you don't agree with the terms and you will still be
able to write Win32 applications (just not with Cygwin).

> (NOTE: It would probably depend largely on the license fee
> arrangement. The game manufacturers wanted steep per cartridge
> royalties.)

Irrelevent in our case, since cygwin isn't a mandatory component of
writing a Win32 program.

> Think about it. If cygwin.dll is free and people can distribute third
> party software with out sending money to Cygnus, why the heck did they
> waste their stakeholders money investing in it?

Well, the original reason was because *we* needed it to port GNUPro to

> I personally hope that my legal arguement is invalid and that
> Cygnus' two track release strategy is legally supportable, i.e. you
> can use the sourceware version of cygwin to develop sourceware, and
> the commercial version to develop commercial software. Commercial
> vendors end up paying for the support of sourceware.

I think your argument is invalid because cygwin isn't a *mandatory*
part of developing Win32 programs.  It's a tool that makes it easier
to do certain things, but people have been writing Win32 programs long
before cygwin came along.  Now, if *Microsoft* tried to license the
import libraries for Win32, *then* I think there would be a legal

> In other words my legal hat is having a major arguement with my
> sourceware hat. Am I showing signs of split personality? ;-)

Yes.  No.  ;-)

Want to unsubscribe from this list?
Send a message to

More information about the Cygwin mailing list