Re: How much work is a native Windows application?

From: Jason Earl <jason(dot)earl(at)simplot(dot)com>
To: "Marc G(dot) Fournier" <scrappy(at)hub(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, mlw <markw(at)mohawksoft(dot)com>, PostgreSQL-development <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: How much work is a native Windows application?
Date: 2002-05-08 19:18:30
Message-ID: 87r8km5tyx.fsf@npa01zz001.simplot.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

"Marc G. Fournier" <scrappy(at)hub(dot)org> writes:

> On Tue, 7 May 2002, Tom Lane wrote:
>
> > It'd be worth trying to understand cygwin issues in detail before we
> > sign up to do and support a native Windows port. I understand the
> > user-friendliness objection to cygwin (though one would think proper
> > packaging might largely hide cygwin from naive Windows users). What I
> > don't understand is whether there are any serious performance lossages
> > from it, and if so whether we could work around them.
>
> Actually, there are licensing issues involved ... we could never put
> a 'windows binary' up for anon-ftp, since to distribute it would
> require the cygwin.dll to be distributed, and to do that, there is a
> licensing cost ... of course, I guess we could require ppl to
> download cygwin seperately, install that, then install the binary
> over top of that ...

From the Cygwin FAQ:

Is it free software?

Yes. Parts are GNU software (gcc, gas, ld, etc...), parts are
covered by the standard X11 license, some of it is public
domain, some of it was written by Cygnus and placed under the
GPL. None of it is shareware. You don't have to pay anyone to
use it but you should be sure to read the copyright section of
the FAQ more more information on how the GNU General Public
License may affect your use of these tools.

There is even a clause allowing you to link to the cygwin dll without
your software falling under the GPL if your software is released under
a license that complies with the Open Source Definition.

*** NOTE ***

In accordance with section 10 of the GPL, Red Hat permits
programs whose sources are distributed under a license that
complies with the Open Source definition to be linked with
libcygwin.a without libcygwin.a itself causing the resulting
program to be covered by the GNU GPL.

This means that you can port an Open Source(tm) application to
cygwin, and distribute that executable as if it didn't include
a copy of libcygwin.a linked into it. Note that this does not
apply to the cygwin DLL itself. If you distribute a (possibly
modified) version of the DLL you must adhere to the terms of
the GPL, i.e. you must provide sources for the cygwin DLL.

See http://www.opensource.org/osd.html for the precise Open
Source Definition referenced above.

Red Hat sells a special Cygwin License for customers who are
unable to provide their application in open source code
form. For more information, please see:
http://www.redhat.com/software/tools/cygwin/, or call
866-2REDHAT ext. 3007

In other words, you could even distribute a BSD licensed PostgreSQL
that that ran on Windows. Not that such a loophole is particularly
useful. GPL projects regularly include BSD code, this doesn't make
the BSD version GPLed. The GPL might be viral in nature, but it's not
that viral.

Now, I can understand why the PostgreSQL mirrors might be a little bit
concerned about distributing GPLed software, because of the legal
ramifications, but they could leave the distribution of Cygwin up to
RedHat, and simply distribute a BSD-licensed PostgreSQL Windows
binary.

Jason

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2002-05-08 19:26:08 Re: HEADS UP: Win32/OS2/BeOS native ports
Previous Message Lamar Owen 2002-05-08 18:49:39 Re: Path to PostgreSQL portabiliy