/src/libev/libev.m4

http://github.com/jacksonh/manos · m4 · 39 lines · 31 code · 6 blank · 2 comment · 0 complexity · 6ca22d976117a15ef695325bba3d40a6 MD5 · raw file

  1. dnl this file is part of libev, do not make local modifications
  2. dnl http://software.schmorp.de/pkg/libev
  3. dnl libev support
  4. AC_CHECK_HEADERS(sys/inotify.h sys/epoll.h sys/event.h port.h poll.h sys/select.h sys/eventfd.h sys/signalfd.h)
  5. AC_CHECK_FUNCS(inotify_init epoll_ctl kqueue port_create poll select eventfd signalfd)
  6. AC_CHECK_FUNC(clock_gettime, [], [
  7. dnl on linux, try syscall wrapper first
  8. if test $(uname) = Linux; then
  9. AC_MSG_CHECKING(for clock_gettime syscall)
  10. AC_LINK_IFELSE([AC_LANG_PROGRAM(
  11. [#include <unistd.h>
  12. #include <sys/syscall.h>
  13. #include <time.h>],
  14. [struct timespec ts; int status = syscall (SYS_clock_gettime, CLOCK_REALTIME, &ts)])],
  15. [ac_have_clock_syscall=1
  16. AC_DEFINE(HAVE_CLOCK_SYSCALL, 1, "use syscall interface for clock_gettime")
  17. AC_MSG_RESULT(yes)],
  18. [AC_MSG_RESULT(no)])
  19. fi
  20. if test -z "$LIBEV_M4_AVOID_LIBRT" && test -z "$ac_have_clock_syscall"; then
  21. AC_CHECK_LIB(rt, clock_gettime)
  22. unset ac_cv_func_clock_gettime
  23. AC_CHECK_FUNCS(clock_gettime)
  24. fi
  25. ])
  26. AC_CHECK_FUNC(nanosleep, [], [
  27. if test -z "$LIBEV_M4_AVOID_LIBRT"; then
  28. AC_CHECK_LIB(rt, nanosleep)
  29. unset ac_cv_func_nanosleep
  30. AC_CHECK_FUNCS(nanosleep)
  31. fi
  32. ])
  33. AC_CHECK_LIB(m, ceil)