diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2006-02-14 23:08:59 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2006-02-14 23:08:59 +0000 |
commit | 05e61daca4d7e0ed1f82e0e604812b90b8bcbde1 (patch) | |
tree | dfa8745d2ae39bfabc619e50d16f565a10fe16f8 /m4/getaddrinfo.m4 | |
parent | 83dcf2436fec5440943c03dac404f4b25f72e222 (diff) | |
download | coreutils-05e61daca4d7e0ed1f82e0e604812b90b8bcbde1.tar.xz |
Sync from gnulib.
Diffstat (limited to 'm4/getaddrinfo.m4')
-rw-r--r-- | m4/getaddrinfo.m4 | 46 |
1 files changed, 41 insertions, 5 deletions
diff --git a/m4/getaddrinfo.m4 b/m4/getaddrinfo.m4 index b3b7b0736..006cdab2a 100644 --- a/m4/getaddrinfo.m4 +++ b/m4/getaddrinfo.m4 @@ -1,36 +1,72 @@ # getaddrinfo.m4 serial 7 -dnl Copyright (C) 2004, 2005 Free Software Foundation, Inc. +dnl Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. AC_DEFUN([gl_GETADDRINFO], [ + AC_MSG_NOTICE([checking how to do getaddrinfo]) + AC_SEARCH_LIBS(getaddrinfo, [nsl socket]) - AC_SEARCH_LIBS(gethostbyname, [inet nsl]) - AC_SEARCH_LIBS(getservbyname, [inet nsl socket xnet]) - AC_REPLACE_FUNCS(getaddrinfo gai_strerror) + AC_CHECK_FUNCS(getaddrinfo,, [ + AC_CACHE_CHECK(for getaddrinfo in ws2tcpip.h and -lws2_32, + gl_cv_w32_getaddrinfo, [ + gl_cv_w32_getaddrinfo=no + am_save_LIBS="$LIBS" + LIBS="$LIBS -lws2_32" + AC_TRY_LINK([ +#define WINVER 0x0501 +#include <ws2tcpip.h> +], [getaddrinfo(0, 0, 0, 0);], gl_cv_w32_getaddrinfo=yes) + LIBS="$am_save_LIBS" + if test "$gl_cv_w32_getaddrinfo" = "yes"; then + LIBS="$LIBS -lws2_32" + else + AC_LIBOBJ(getaddrinfo) + fi + ])]) + + AC_REPLACE_FUNCS(gai_strerror) gl_PREREQ_GETADDRINFO ]) # Prerequisites of lib/getaddrinfo.h and lib/getaddrinfo.c. AC_DEFUN([gl_PREREQ_GETADDRINFO], [ + AC_SEARCH_LIBS(gethostbyname, [inet nsl]) + AC_SEARCH_LIBS(getservbyname, [inet nsl socket xnet]) AC_REQUIRE([gl_C_RESTRICT]) AC_REQUIRE([gl_SOCKET_FAMILIES]) AC_REQUIRE([AC_C_INLINE]) AC_REQUIRE([AC_GNU_SOURCE]) - AC_CHECK_HEADERS_ONCE(netinet/in.h) + AC_CHECK_HEADERS_ONCE(netinet/in.h sys/socket.h netdb.h ws2tcpip.h) AC_CHECK_DECLS([getaddrinfo, freeaddrinfo, gai_strerror],,,[ /* sys/types.h is not needed according to POSIX, but the sys/socket.h in i386-unknown-freebsd4.10 and powerpc-apple-darwin5.5 required it. */ #include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> +#endif +#ifdef HAVE_NETDB_H #include <netdb.h> +#endif +#ifdef HAVE_WS2TCPIP_H +#define WINVER 0x0501 +#include <ws2tcpip.h> +#endif ]) AC_CHECK_TYPES([struct addrinfo],,,[ #include <sys/types.h> +#ifdef HAVE_SYS_SOCKET_H #include <sys/socket.h> +#endif +#ifdef HAVE_NETDB_H #include <netdb.h> +#endif +#ifdef HAVE_WS2TCPIP_H +#define WINVER 0x0501 +#include <ws2tcpip.h> +#endif ]) ]) |