Check for additional libs required for inet_pton/ntop, as on Solaris

This commit is contained in:
dmiller 2018-07-02 16:20:39 +00:00
parent 14f439a29e
commit cdae588782
2 changed files with 120 additions and 13 deletions

124
nbase/configure vendored
View file

@ -4519,20 +4519,71 @@ if test "$ac_res" != no; then :
fi
for ac_func in gai_strerror
for ac_func in gai_strerror inet_pton inet_ntop
do :
ac_fn_c_check_func "$LINENO" "gai_strerror" "ac_cv_func_gai_strerror"
if test "x$ac_cv_func_gai_strerror" = xyes; then :
as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
cat >>confdefs.h <<_ACEOF
#define HAVE_GAI_STRERROR 1
#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
_ACEOF
fi
done
ac_fn_c_check_func "$LINENO" "inet_ntop" "ac_cv_func_inet_ntop"
if test "x$ac_cv_func_inet_ntop" = xyes; then :
$as_echo "#define HAVE_INET_NTOP 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inet_ntop" >&5
$as_echo_n "checking for library containing inet_ntop... " >&6; }
if ${ac_cv_search_inet_ntop+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char inet_ntop ();
int
main ()
{
return inet_ntop ();
;
return 0;
}
_ACEOF
for ac_lib in '' nsl resolv network; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_search_inet_ntop=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
if ${ac_cv_search_inet_ntop+:} false; then :
break
fi
done
if ${ac_cv_search_inet_ntop+:} false; then :
else
ac_cv_search_inet_ntop=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_ntop" >&5
$as_echo "$ac_cv_search_inet_ntop" >&6; }
ac_res=$ac_cv_search_inet_ntop
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
else
case " $LIBOBJS " in
@ -4541,11 +4592,62 @@ else
;;
esac
fi
ac_fn_c_check_func "$LINENO" "inet_pton" "ac_cv_func_inet_pton"
if test "x$ac_cv_func_inet_pton" = xyes; then :
$as_echo "#define HAVE_INET_PTON 1" >>confdefs.h
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing inet_pton" >&5
$as_echo_n "checking for library containing inet_pton... " >&6; }
if ${ac_cv_search_inet_pton+:} false; then :
$as_echo_n "(cached) " >&6
else
ac_func_search_save_LIBS=$LIBS
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
/* Override any GCC internal prototype to avoid an error.
Use char because int might match the return type of a GCC
builtin and then its argument prototype would still apply. */
#ifdef __cplusplus
extern "C"
#endif
char inet_pton ();
int
main ()
{
return inet_pton ();
;
return 0;
}
_ACEOF
for ac_lib in '' nsl resolv network; do
if test -z "$ac_lib"; then
ac_res="none required"
else
ac_res=-l$ac_lib
LIBS="-l$ac_lib $ac_func_search_save_LIBS"
fi
if ac_fn_c_try_link "$LINENO"; then :
ac_cv_search_inet_pton=$ac_res
fi
rm -f core conftest.err conftest.$ac_objext \
conftest$ac_exeext
if ${ac_cv_search_inet_pton+:} false; then :
break
fi
done
if ${ac_cv_search_inet_pton+:} false; then :
else
ac_cv_search_inet_pton=no
fi
rm conftest.$ac_ext
LIBS=$ac_func_search_save_LIBS
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_inet_pton" >&5
$as_echo "$ac_cv_search_inet_pton" >&6; }
ac_res=$ac_cv_search_inet_pton
if test "$ac_res" != no; then :
test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
else
case " $LIBOBJS " in
@ -4554,8 +4656,8 @@ else
;;
esac
fi
fi
{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for working getaddrinfo" >&5

View file

@ -185,8 +185,13 @@ AC_ARG_ENABLE(ipv6,
AC_SEARCH_LIBS(getaddrinfo, [inet6 socket])
AC_SEARCH_LIBS(gai_strerror, [inet6 socket])
AC_SEARCH_LIBS(getnameinfo, [inet6 socket])
AC_CHECK_FUNCS(gai_strerror)
AC_REPLACE_FUNCS(inet_ntop inet_pton)
AC_CHECK_FUNCS([gai_strerror inet_pton inet_ntop])
AC_SEARCH_LIBS(inet_ntop, [nsl resolv network], [],
[AC_LIBOBJ(inet_ntop)
])
AC_SEARCH_LIBS(inet_pton, [nsl resolv network], [],
[AC_LIBOBJ(inet_pton)
])
APR_CHECK_WORKING_GETADDRINFO
# The inet_addr function is used by APR_CHECK_WORKING_GETNAMEINFO.
AC_SEARCH_LIBS(inet_addr, [nsl])