configure: Disable networking if winsock2.h is available but winsock functions aren't
authorMartin Storsjö <martin@martin.st>
Tue, 31 Dec 2013 08:11:24 +0000 (10:11 +0200)
committerMartin Storsjö <martin@martin.st>
Mon, 6 Jan 2014 16:55:04 +0000 (18:55 +0200)
Previously, if neither of the checks for the closesocket function
succeeded, we still kept winsock2.h and networking in general
enabled.

When targeting the WinRT API subset, the winsock2.h header is
available (making the check for it succeed, giving the impression
that winsock is available), but tests that actually try to use
such a function will fail. In this case, disable the winsock2.h
feature and networking in general, as if the winsock2.h header
test would have failed in the first place.

Signed-off-by: Martin Storsjö <martin@martin.st>
configure

index 7c3a9f8..e9fc08c 100755 (executable)
--- a/configure
+++ b/configure
@@ -3776,7 +3776,7 @@ if ! disabled network; then
         check_func_headers winsock2.h closesocket -lws2 &&
             network_extralibs="-lws2" ||
         { check_func_headers winsock2.h closesocket -lws2_32 &&
-            network_extralibs="-lws2_32"; }
+            network_extralibs="-lws2_32"; } || disable winsock2_h network
         check_func_headers ws2tcpip.h getaddrinfo $network_extralibs
         check_type ws2tcpip.h socklen_t
         check_type ws2tcpip.h "struct addrinfo"