Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe@cygwin.com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin@cygwin.com>
List-Help: <mailto:cygwin-help@cygwin.com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner@cygwin.com
Mail-Followup-To: cygwin@cygwin.com
Delivered-To: mailing list cygwin@cygwin.com
To: cygwin@cygwin.com
From: Patrick Rotsaert <patrick.rotsaert@tts-online.be>
Subject:  Re: [FAQ Alert, ping JDF!] RE: How to make DLLs in cygwin for MSVC  and BCB
Date:  Wed, 22 Jun 2005 18:22:42 +0200
Lines: 65
Message-ID: <d9c2st$r4g$1@sea.gmane.org>
References:  <42B9854D.DBC0BD@dessent.net> <SERRANO8xtp1nRZRHOR00000150@SERRANO.CAM.ARTIMI.COM>
Mime-Version:  1.0
Content-Type:  text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding:  7bit
User-Agent: Mozilla Thunderbird 1.0.2 (Windows/20050317)
In-Reply-To: <SERRANO8xtp1nRZRHOR00000150@SERRANO.CAM.ARTIMI.COM>
X-IsSubscribed: yes

> ----Original Message----
> 
>>From: Brian Dessent
>>Sent: 22 June 2005 16:36
> 
> 
>>Patrick Rotsaert wrote:
>>
>>
>>>I need to build a DLL in cygwin (I use a lot of POSIX functions), that I
>>>can use in MSVC and Borland CBuilder apps.
>>
>>http://cygwin.com/faq/faq.html#TOC102
> 
> 
> 
>>And, as far as I know, using cygwin1.dll in this way means all your code
>>must be released under the GPL, or another OSI approved license.
> 
> 
>   Absolutely so, and I think the FAQ entry needs a little revising, because
> I think point 5. in the list of items is misleadingly
> not-strongly-emphatic-enough:
> 
> "  Download crt0.c from the cygwin website and include it in your sources.
> Modify it to call my_crt0() instead of cygwin_crt0(). Since you are using
> Cygwin source code, your resulting program will be licensed under the GNU
> GPL. For more information, see http://gnu.org/licenses/gpl-faq.html.  "
> 
>   To my ears, this sounds like it's saying that your program is GPL'd *only*
> because you've downloaded, modified and included crt0.c in your source.  But
> regardless of that fact, and even if you write your own crt0.c entirely from
> scratch, you are obliged to GPL your program *anyway*, because as long as
> you're LoadLibrarying the cygwin dll and calling functions from it, your
> program counts as being 'linked' to the dll - the GPL doesn't discriminate
> between compile-time static linking and run-time dynamic linking.  So I
> would remove this detail from point 5 in the list (it's a little
> out-of-place there anyway) and add it as an extra para at the end of the
> item, so we'd have just
> 
> "  Download crt0.c from the cygwin website and include it in your sources.
> Modify it to call my_crt0() instead of cygwin_crt0().  "
> 
> for point 5, and then something like
> 
> "  Note that if you are using any other Cygwin-based libraries that you will
> probably need to build them as DLLs using gcc and then generate import
> libraries for the MS VC linker.
> 
>   Note also that Cygwin is GPL'd software (as indeed are all other
> Cygwin-based libraries).  That means that if your code links against the
> cygwin dll (and if your program is calling functions from Cygwin, it must,
> as a matter of fact, be linked against it), you must apply the GPL to your
> source as well.  Of course, this only matters if you plan to distribute your
> program in binary form.  For more information, see
> http://gnu.org/licenses/gpl-faq.html.  "
> 
> 
>     cheers,
>       DaveK

No problem that my dll will fall under the GPL.
Just out of curiosity, does this also apply for applications that use my 
DLL?



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

