37 lines
1.5 KiB
Plaintext
37 lines
1.5 KiB
Plaintext
dnl @synopsis NETSNMP_SEARCH_LIBS(FUNCTION, SEARCH-LIBS, [ACTION-IF-FOUND],
|
|
dnl [ACTION-IF-NOT-FOUND], [OTHER-LIBRARIES], [TARGET-VARIABLE])
|
|
dnl Similar to AC_SEARCH_LIBS but changes TARGET-VARIABLE instead of LIBS
|
|
dnl If TARGET-VARIABLE is unset then LIBS is used
|
|
AC_DEFUN([NETSNMP_SEARCH_LIBS],
|
|
[m4_pushdef([netsnmp_target],m4_ifval([$6],[$6],[LIBS]))
|
|
AC_CACHE_CHECK([for library containing $1],
|
|
[netsnmp_cv_func_$1_]netsnmp_target,
|
|
[netsnmp_func_search_save_LIBS="$LIBS"
|
|
m4_if(netsnmp_target, [LIBS],
|
|
[netsnmp_target_val="$LIBS"
|
|
netsnmp_temp_LIBS="$5 ${LIBS}"],
|
|
[netsnmp_target_val="$netsnmp_target"
|
|
netsnmp_temp_LIBS="${netsnmp_target_val} $5 ${LIBS}"])
|
|
netsnmp_result=no
|
|
LIBS="${netsnmp_temp_LIBS}"
|
|
AC_LINK_IFELSE([AC_LANG_CALL([],[$1])],
|
|
[netsnmp_result="none required"],
|
|
ifelse([$2],[],[],
|
|
[for netsnmp_cur_lib in $2 ; do
|
|
LIBS="-l${netsnmp_cur_lib} ${netsnmp_temp_LIBS}"
|
|
AC_LINK_IFELSE([AC_LANG_CALL([],[$1])],
|
|
[netsnmp_result=-l${netsnmp_cur_lib}
|
|
break])
|
|
done]))
|
|
LIBS="${netsnmp_func_search_save_LIBS}"
|
|
[netsnmp_cv_func_$1_]netsnmp_target="${netsnmp_result}"])
|
|
if test "${[netsnmp_cv_func_$1_]netsnmp_target}" != "no" ; then
|
|
if test "${[netsnmp_cv_func_$1_]netsnmp_target}" != "none required" ; then
|
|
netsnmp_target="${netsnmp_result} ${netsnmp_target_val}"
|
|
fi
|
|
$3
|
|
m4_ifval([$4], [else
|
|
$4])
|
|
fi
|
|
m4_popdef([netsnmp_target])])
|