MinGW doesn't provide wspiapi.h header, so only include it when using MSVC and
include ws2tcpip.h which directly declares the functions used for the other
compilers.
This doesn't have quite the same semantics but it's better than failing to
compile at all.
See #15005.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@73626
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
#define wxHAS_MT_SAFE_GETBY_FUNCS
#if wxUSE_IPV6
#define wxHAS_MT_SAFE_GETBY_FUNCS
#if wxUSE_IPV6
- // this header does dynamic dispatching of getaddrinfo/freeaddrinfo()
- // by implementing them in its own code if the system versions are not
- // available (as is the case for anything < XP)
- //
- // NB: if this is not available for the other compilers (so far tested
- // with MSVC only) we should just use wxDynamicLibrary "manually"
- // disable a warning occurring in Microsoft own version of this file
+ // this header does dynamic dispatching of getaddrinfo/freeaddrinfo()
+ // by implementing them in its own code if the system versions are
+ // not available (as is the case for anything < XP)
+ #pragma warning(push)
#pragma warning(disable:4706)
#pragma warning(disable:4706)
- #endif
- #include <wspiapi.h>
- #ifdef __VISUALC__
- #pragma warning(default:4706)
+ #include <wspiapi.h>
+ #pragma warning(pop)
+ #else
+ // TODO: Use wxDynamicLibrary to bind to these functions
+ // dynamically on older Windows systems, currently a program
+ // built with wxUSE_IPV6==1 won't even start there, even if
+ // it doesn't actually use the socket stuff.
+ #include <ws2tcpip.h>
#endif
#endif
#endif // __WINDOWS__
#endif
#endif
#endif // __WINDOWS__