X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=m4%2Fusleep.m4;h=1d67e58b5184a19d482583d91e4f8e4129ac6204;hb=c43cc7b973f4daf0c59368ae52e130dfd12ce8d6;hp=c8e691138d0b23c667f4203a5208ed7a34785d61;hpb=2d4d7d9d00fe33b6f5291e00a30b6c1016775b74;p=gnulib.git diff --git a/m4/usleep.m4 b/m4/usleep.m4 index c8e691138..1d67e58b5 100644 --- a/m4/usleep.m4 +++ b/m4/usleep.m4 @@ -1,5 +1,5 @@ -# usleep.m4 serial 1 -dnl Copyright (C) 2009 Free Software Foundation, Inc. +# usleep.m4 serial 3 +dnl Copyright (C) 2009-2014 Free Software Foundation, Inc. dnl This file is free software; the Free Software Foundation dnl gives unlimited permission to copy and/or distribute it, dnl with or without modifications, as long as this notice is preserved. @@ -12,13 +12,13 @@ AC_DEFUN([gl_FUNC_USLEEP], dnl usleep was required in POSIX 2001, but dropped as obsolete in dnl POSIX 2008; therefore, it is not always exposed in headers. AC_REQUIRE([gl_USE_SYSTEM_EXTENSIONS]) + AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles AC_CHECK_FUNCS_ONCE([usleep]) AC_CHECK_TYPE([useconds_t], [], [AC_DEFINE([useconds_t], [unsigned int], [Define to an unsigned 32-bit type if lacks this type.])]) if test $ac_cv_func_usleep = no; then HAVE_USLEEP=0 - AC_LIBOBJ([usleep]) else dnl POSIX allows implementations to reject arguments larger than dnl 999999, but GNU guarantees it will work. @@ -28,10 +28,18 @@ AC_DEFUN([gl_FUNC_USLEEP], #include ]], [[return !!usleep (1000000);]])], [gl_cv_func_usleep_works=yes], [gl_cv_func_usleep_works=no], - [gl_cv_func_usleep_works="guessing no"])]) - if test "$gl_cv_func_usleep_works" != yes; then - REPLACE_USLEEP=1 - AC_LIBOBJ([usleep]) - fi + [case "$host_os" in + # Guess yes on glibc systems. + *-gnu*) gl_cv_func_usleep_works="guessing yes" ;; + # If we don't know, assume the worst. + *) gl_cv_func_usleep_works="guessing no" ;; + esac + ])]) + case "$gl_cv_func_usleep_works" in + *yes) ;; + *) + REPLACE_USLEEP=1 + ;; + esac fi ])