dnl bsd_sockets.m4--which socket libraries do we need? dnl Derrick Brashear dnl from Zephyr dnl Hacked on by Rob Earhart to not just toss stuff in LIBS dnl It now puts everything required for sockets into LIB_SOCKET AC_DEFUN([CMU_SOCKETS], [ save_LIBS="$LIBS" AC_CHECK_HEADERS([sys/socket.h ws2tcpip.h]) AC_CHECK_FUNC(socket, , [ AC_CHECK_LIB(socket, socket, [LIB_SOCKET=-lsocket], [ LIBS="$LIBS -lws2_32" AC_LINK_IFELSE([ AC_LANG_PROGRAM([[ #ifdef HAVE_SYS_SOCKET_H # include #endif #ifdef HAVE_WS2TCPIP_H # include #endif ]], [[return socket(0, 0, 0);]]) ], [LIB_SOCKET=-lws2_32 AC_MSG_RESULT(yes)], [AC_MSG_ERROR([socket not found])]) ]) ]) LIBS="$save_LIBS" AC_CHECK_FUNC(connect, :, [AC_CHECK_LIB(nsl, gethostbyname, LIB_SOCKET="-lnsl $LIB_SOCKET") AC_CHECK_LIB(socket, connect, LIB_SOCKET="-lsocket $LIB_SOCKET")] ) LIBS="$LIB_SOCKET $save_LIBS" AC_CHECK_FUNC(res_search, :, [LIBS="-lresolv $LIB_SOCKET $save_LIBS" AC_TRY_LINK([[ #include #include #include #ifdef HAVE_ARPA_NAMESER_COMPAT_H #include #endif #include ]],[[ const char host[12]="openafs.org"; u_char ans[1024]; res_search( host, C_IN, T_MX, (u_char *)&ans, sizeof(ans)); return 0; ]], LIB_SOCKET="-lresolv $LIB_SOCKET") ]) LIBS="$LIB_SOCKET $save_LIBS" AC_CHECK_FUNCS(dn_expand dns_lookup) LIBS="$save_LIBS" AC_SUBST(LIB_SOCKET) ])