"Hal E. Fulton" <hal9000 / hypermetrics.com> writes:

> 1. I do think that cygwin1.dll should be packaged with the Ruby
> installation. It was a significant pain for me to find it on the web.
> In the end, I had to use the site's search engine, because I 
> couldn't find it by navigating.
> 
> 2. However, I think there are licensing issues -- if I remember 
> right, the source has to be included along with the DLL. A nuisance
> from our perspective, and increasing the code bloat.

Hal:

That was a good point. I went and checked. CYGWIN is distributed under 
the GPL V2 or later (http://sources.redhat.com/cygwin/licensing.html).

Clause three of that license says:

    3. You may copy and distribute the Program (or a work based on
    it, under Section 2) in object code or executable form under the
    terms of Sections 1 and 2 above provided that you also do one of
    the following:

        a) Accompany it with the complete corresponding machine-readable
        source code, which must be distributed under the terms of
        Sections 1 and 2 above on a medium customarily used for
        software interchange; or,

        b) Accompany it with a written offer, valid for at least three
        years, to give any third party, for a charge no more than your
        cost of physically performing source distribution, a complete
        machine-readable copy of the corresponding source code, to be
        distributed under the terms of Sections 1 and 2 above on a
        medium customarily used for software interchange; or,

        c) Accompany it with the information you received as to the offer
        to distribute corresponding source code.  (This alternative is
        allowed only for noncommercial distribution and only if you
        received the program in object code or executable form with
        such an offer, in accord with Subsection b above.)

    The source code for a work means the preferred form of the work
    for making modifications to it.  For an executable work, complete
    source code means all the source code for all modules it contains,
    plus any associated interface definition files, plus the scripts
    used to control compilation and installation of the executable.
    However, as a special exception, the source code distributed need
    not include anything that is normally distributed (in either
    source or binary form) with the major components (compiler,
    kernel, and so on) of the operating system on which the executable
    runs, unless that component itself accompanies the executable.

    If distribution of executable or object code is made by offering
    access to copy from a designated place, then offering equivalent
    access to copy the source code from the same place counts as
    distribution of the source code, even though third parties are not
    compelled to copy the source along with the object code.


I think that this means that we can distribute the .dll via download
and say that the source is also available for download from the same
place. In a way that's good - we keep the source to the .dll in step
with the .dll itself.

I'm not a lawyer -- anyone else care to comment?


Regards


Dave