From: Ruediger Meier <ruediger.me...@ga-group.nl> Now we will find getaddrinfo and getnameinfo on win32 systems. Note it should be even safe to use that macro for all systems instead of trying AC_CHECK_FUNCS first. For now I don't want to do such risky things things and leave it as is. --- configure | 169 ++++++++++++++++++++++++++++++++++++++++++++++ configure.in | 8 ++ include/sane/config.h.in | 3 + 3 files changed, 180 insertions(+), 0 deletions(-)
diff --git a/configure b/configure index 4c9dfcd..5da8db8 100755 --- a/configure +++ b/configure @@ -9508,6 +9508,175 @@ fi +if test "$ac_cv_func_getaddrinfo" != "yes" \ + || test "$ac_cv_func_getnameinfo" != "yes"; then + + + sane_netdb_includes="$ac_includes_default + #ifdef HAVE_SYS_SOCKET_H + # include <sys/socket.h> + #endif + #ifdef HAVE_NETDB_H + # include <netdb.h> + #endif + #ifdef HAVE_WINSOCK2_H + # include <winsock2.h> + #endif + #ifdef HAVE_WS2TCPIP_H + # include <ws2tcpip.h> + #endif" + + ac_cv_func_getaddrinfo="no" + need_winver_xp="no" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for win32 getaddrinfo" >&5 +$as_echo_n "checking for win32 getaddrinfo... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$sane_netdb_includes +int +main () +{ +int testme(){ getaddrinfo; } + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + ac_cv_func_getaddrinfo="yes" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + if test "$ac_cv_func_getaddrinfo" != "yes"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for win32 getaddrinfo if WINVER is 0x0501" >&5 +$as_echo_n "checking for win32 getaddrinfo if WINVER is 0x0501... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#define WINVER 0x0501 + $sane_netdb_includes +int +main () +{ +int testme(){ getaddrinfo; } + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + ac_cv_func_getaddrinfo="yes" + need_winver_xp="yes" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + + if test "$ac_cv_func_getaddrinfo" = "yes"; then + +$as_echo "#define HAVE_GETADDRINFO 1" >>confdefs.h + + + if test "$need_winver_xp" = "yes"; then + +$as_echo "#define NEED_WINVER_XP 1" >>confdefs.h + + fi + fi + + unset sane_netdb_includes + + + sane_netdb_includes="$ac_includes_default + #ifdef HAVE_SYS_SOCKET_H + # include <sys/socket.h> + #endif + #ifdef HAVE_NETDB_H + # include <netdb.h> + #endif + #ifdef HAVE_WINSOCK2_H + # include <winsock2.h> + #endif + #ifdef HAVE_WS2TCPIP_H + # include <ws2tcpip.h> + #endif" + + ac_cv_func_getnameinfo="no" + need_winver_xp="no" + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for win32 getnameinfo" >&5 +$as_echo_n "checking for win32 getnameinfo... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$sane_netdb_includes +int +main () +{ +int testme(){ getnameinfo; } + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + ac_cv_func_getnameinfo="yes" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + + if test "$ac_cv_func_getnameinfo" != "yes"; then + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for win32 getnameinfo if WINVER is 0x0501" >&5 +$as_echo_n "checking for win32 getnameinfo if WINVER is 0x0501... " >&6; } + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#define WINVER 0x0501 + $sane_netdb_includes +int +main () +{ +int testme(){ getnameinfo; } + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 +$as_echo "yes" >&6; } + ac_cv_func_getnameinfo="yes" + need_winver_xp="yes" +else + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 +$as_echo "no" >&6; } +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext + fi + + if test "$ac_cv_func_getnameinfo" = "yes"; then + +$as_echo "#define HAVE_GETNAMEINFO 1" >>confdefs.h + + + if test "$need_winver_xp" = "yes"; then + +$as_echo "#define NEED_WINVER_XP 1" >>confdefs.h + + fi + fi + + unset sane_netdb_includes + +fi + diff --git a/configure.in b/configure.in index 6eb3355..060b8b6 100644 --- a/configure.in +++ b/configure.in @@ -308,6 +308,14 @@ AC_CHECK_FUNCS(atexit ioperm i386_set_ioperm \ AC_REPLACE_FUNCS(getenv isfdtype sigprocmask snprintf \ strcasestr strdup strndup strsep usleep sleep syslog vsyslog) +dnl Some systems need better ckecks for get*info +if test "$ac_cv_func_getaddrinfo" != "yes" \ + || test "$ac_cv_func_getnameinfo" != "yes"; then + + SANE_CHECK_NETDB_FUNC(getaddrinfo) + SANE_CHECK_NETDB_FUNC(getnameinfo) +fi + SANE_PROTOTYPES if test "$ac_cv_header_os2_h" = "yes" ; then diff --git a/include/sane/config.h.in b/include/sane/config.h.in index afeb667..3d0cd1a 100644 --- a/include/sane/config.h.in +++ b/include/sane/config.h.in @@ -454,6 +454,9 @@ */ #undef LT_OBJDIR +/* Define to 1 if some win32 functions needs WINVER set. */ +#undef NEED_WINVER_XP + /* Define to 1 if your C compiler doesn't accept -c and -o together. */ #undef NO_MINUS_C_MINUS_O -- 1.7.6.1