From 54e49d10d2d47fae72472e27d97891b1de5451ae Mon Sep 17 00:00:00 2001 From: Yang Tse Date: Mon, 22 Sep 2008 00:44:10 +0000 Subject: attempt to make work the gethostname function check for winsock build target configurations --- m4/curl-functions.m4 | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) (limited to 'm4') diff --git a/m4/curl-functions.m4 b/m4/curl-functions.m4 index bb8eef542..09af726b4 100644 --- a/m4/curl-functions.m4 +++ b/m4/curl-functions.m4 @@ -22,7 +22,7 @@ #*************************************************************************** # File version for 'aclocal' use. Keep it a single number. -# serial 13 +# serial 20 dnl CURL_INCLUDES_NETDB @@ -204,6 +204,34 @@ curl_includes_unistd="\ ]) +dnl CURL_INCLUDES_WINSOCK2 +dnl ------------------------------------------------- +dnl Set up variable with list of headers that must be +dnl included when winsock(2).h is to be included. + +AC_DEFUN([CURL_INCLUDES_WINSOCK2], [ +curl_includes_winsock2="\ +/* includes start */ +#ifdef HAVE_WINDOWS_H +# ifndef WIN32_LEAN_AND_MEAN +# define WIN32_LEAN_AND_MEAN +# endif +# include +# ifdef HAVE_WINSOCK2_H +# include +# else +# ifdef HAVE_WINSOCK_H +# include +# endif +# endif +#endif +/* includes end */" + CURL_CHECK_HEADER_WINDOWS + CURL_CHECK_HEADER_WINSOCK + CURL_CHECK_HEADER_WINSOCK2 +]) + + dnl CURL_CHECK_FUNC_ALARM dnl ------------------------------------------------- dnl Verify if alarm is available, prototyped, and @@ -752,6 +780,7 @@ dnl shell variable curl_disallow_gethostname, then dnl HAVE_GETHOSTNAME will be defined. AC_DEFUN([CURL_CHECK_FUNC_GETHOSTNAME], [ + AC_REQUIRE([CURL_INCLUDES_WINSOCK2])dnl AC_REQUIRE([CURL_INCLUDES_UNISTD])dnl # tst_links_gethostname="unknown" @@ -761,7 +790,13 @@ AC_DEFUN([CURL_CHECK_FUNC_GETHOSTNAME], [ # AC_MSG_CHECKING([if gethostname can be linked]) AC_LINK_IFELSE([ - AC_LANG_FUNC_LINK_TRY([gethostname]) + AC_LANG_PROGRAM([[ + $curl_includes_winsock2 + $curl_includes_unistd + ]],[[ + if(0 != gethostname(0, 0)) + return 1; + ]]) ],[ AC_MSG_RESULT([yes]) tst_links_gethostname="yes" @@ -773,6 +808,7 @@ AC_DEFUN([CURL_CHECK_FUNC_GETHOSTNAME], [ if test "$tst_links_gethostname" = "yes"; then AC_MSG_CHECKING([if gethostname is prototyped]) AC_EGREP_CPP([gethostname],[ + $curl_includes_winsock2 $curl_includes_unistd ],[ AC_MSG_RESULT([yes]) @@ -787,6 +823,7 @@ AC_DEFUN([CURL_CHECK_FUNC_GETHOSTNAME], [ AC_MSG_CHECKING([if gethostname is compilable]) AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([[ + $curl_includes_winsock2 $curl_includes_unistd ]],[[ if(0 != gethostname(0, 0)) -- cgit v1.2.3