libcares.m4 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. AC_DEFUN([AM_PATH_LIBCARES],
  2. [
  3. AC_ARG_WITH([libcares-prefix],
  4. [ --with-libcares-prefix=PREFIX Prefix where libcares installed (optional)],
  5. [libcares_prefix=$withval],
  6. [libcares_prefix=""])
  7. if test "x$libcares_prefix" = "x"; then
  8. libcares_prefix="/usr"
  9. fi
  10. libcares_prefix_lib=$libcares_prefix/lib
  11. libcares_prefix_include=$libcares_prefix/include
  12. LIBS_save=$LIBS
  13. CPPFLAGS_save=$CPPFLAGS
  14. PKG_CONFIG_PATH_save=$PKG_CONFIG_PATH
  15. PKG_CONFIG_PATH="$libcares_prefix/lib/pkgconfig:$PKG_CONFIG_PATH"
  16. PKG_CHECK_MODULES([LIBCARES], [libcares >= 1.7.0], [have_libcares=yes],
  17. [have_libcares=no])
  18. if test "x$have_libcares" = "xyes"; then
  19. LIBS="$LIBCARES_LIBS $LIBS"
  20. CPPFLAGS="$LIBCARES_CFLAGS $CPPFLAGS"
  21. fi
  22. if test "x$have_libcares" != "xyes"; then
  23. LIBS="-L$libcares_prefix_lib $LIBS"
  24. CPPFLAGS="-I$libcares_prefix_include -Wall $CPPFLAGS"
  25. AC_CHECK_LIB([cares], [ares_init], [have_libcares=yes])
  26. if test "x$have_libcares" != "xyes"; then
  27. AC_CHECK_LIB([cares], [ares_init], [have_libcares=yes need_librt=yes], [],
  28. [-lrt])
  29. fi
  30. if test "x$have_libcares" = "xyes"; then
  31. LIBCARES_LIBS="-L$libcares_prefix_lib -lcares"
  32. if test "x$need_librt" = "xyes"; then
  33. LIBCARES_LIBS="$LIBCARES_LIBS -lrt"
  34. fi
  35. LIBCARES_CFLAGS="-I$libcares_prefix_include"
  36. LIBS="$LIBCARES_LIBS $LIBS_save"
  37. CPPFLAGS="$LIBCARES_CFLAGS $CPPFLAGS_save"
  38. fi
  39. fi
  40. if test "x$have_libcares" = "xyes"; then
  41. AC_DEFINE([HAVE_LIBCARES], [1], [Define to 1 if you have libcares.])
  42. AC_CHECK_TYPES([ares_addr_node], [], [], [[#include <ares.h>]])
  43. AC_CHECK_FUNCS([ares_set_servers])
  44. fi
  45. LIBS=$LIBS_save
  46. CPPFLAGS=$CPPFLAGS_save
  47. PKG_CONFIG_PATH=$PKG_CONFIG_PATH_save
  48. ])