This is the mail archive of the cygwin-developers@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

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


Christopher Faylor wrote:
> 
> On Tue, Feb 06, 2001 at 09:11:52PM +0100, Corinna Vinschen wrote:
> >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.
> 
> I don't understand the logic, though.  When is __INSIDE_CYGWIN__ defined when
> __CYGWIN__ is not defined?
> 

The more I study this the more I think we can remove the whole !(...)
test anyway.  If you don't want the winsock.h header just undef
Win32_Winsock if you want it undef WIN32_LEAN_AND_MEAN and define
Win32_Winsock.

Earnie.

_________________________________________________________
Do You Yahoo!?
Get your free @yahoo.com address at http://mail.yahoo.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]