[Fwd: [MinGW-dvlpr] winsock2.h]

Corinna Vinschen vinschen@redhat.com
Tue Feb 6 12:11:00 GMT 2001


On Mon, Feb 05, 2001 at 11:32:17PM -0500, Christopher Faylor wrote:
> On Mon, Feb 05, 2001 at 10:46:07PM -0500, Earnie Boyd wrote:
> >Danny Smith wrote:
> >
> >> This is what's in windows.h now.
> >>
> >> #ifndef WIN32_LEAN_AND_MEAN
> >> #include <commdlg.h>
> >> #include <cderr.h>
> >> #include <dde.h>
> >> #include <ddeml.h>
> >> #include <dlgs.h>
> >> #include <lzexpand.h>
> >> #include <mmsystem.h>
> >> #include <nb30.h>
> >> #include <rpc.h>
> >> #include <shellapi.h>
> >> #include <winperf.h>
> >> #include <winspool.h>
> >> #if defined(Win32_Winsock) ||
> >>  !(defined(__INSIDE_CYGWIN__) || defined(__CYGWIN__) || defined
> >> (__CYGWIN32__) || defined(_UWIN))
> >> #include <winsock.h>
> >> #endif
> >> #endif /* WIN32_LEAN_AND_MEAN */
> >
> >Is this __INSIDE_CYGWIN__ needed?  Danny's trying to clean up the winsock.h and
> >winsock2.h header files.
> 
> Dunno.  Should be pretty simple to find out.  Try building Cygwin with it
> removed.

AFAIK, it's needed. If you build an application using native windows
calls you need to include windows.h. But you _never_ should include
winsock.h when linking against cygwin1.dll since the socket calls
colide then. Except inside of Cygwin which obviously needs winsock.h.

So the problem here is not building cygwin itself but to build a cygwin
application using both, native windows calls and cygwin socket calls.

Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Developer                                mailto:cygwin@cygwin.com
Red Hat, Inc.


More information about the Cygwin-developers mailing list