# Check for support for nanosleep. It's defined in , but on # some systems, such as solaris, you need to link in a library to use it. # We set acx_nanosleep_ok if nanosleep is supported; in that case, # NANOSLEEP_LIBS is set to whatever libraries are needed to support # nanosleep. AC_DEFUN([ACX_NANOSLEEP], [AC_MSG_CHECKING(if nanosleep requires any libraries) AC_LANG_SAVE AC_LANG([C]) acx_nanosleep_ok="no" NANOSLEEP_LIBS= # For most folks, this should just work AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[static struct timespec ts; nanosleep(&ts, NULL);]])],[acx_nanosleep_ok=yes],[]) # For solaris, we may need -lrt if test "x$acx_nanosleep_ok" != "xyes"; then OLD_LIBS="$LIBS" LIBS="-lrt $LIBS" AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include ]], [[static struct timespec ts; nanosleep(&ts, NULL);]])],[acx_nanosleep_ok=yes],[]) if test "x$acx_nanosleep_ok" = "xyes"; then NANOSLEEP_LIBS="-lrt" fi LIBS="$OLD_LIBS" fi if test "x$acx_nanosleep_ok" != "xyes"; then AC_MSG_ERROR([cannot find the nanosleep function]) else AC_MSG_RESULT(${NANOSLEEP_LIBS:-no}) fi AC_LANG_RESTORE ])