summaryrefslogtreecommitdiff
path: root/m4/sleep.m4
diff options
context:
space:
mode:
Diffstat (limited to 'm4/sleep.m4')
-rw-r--r--m4/sleep.m424
1 files changed, 17 insertions, 7 deletions
diff --git a/m4/sleep.m4 b/m4/sleep.m4
index 37f19a9..a27baa6 100644
--- a/m4/sleep.m4
+++ b/m4/sleep.m4
@@ -1,5 +1,5 @@
-# sleep.m4 serial 5
-dnl Copyright (C) 2007-2011 Free Software Foundation, Inc.
+# sleep.m4 serial 7
+dnl Copyright (C) 2007-2013 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.
@@ -7,12 +7,13 @@ dnl with or without modifications, as long as this notice is preserved.
AC_DEFUN([gl_FUNC_SLEEP],
[
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
+ AC_REQUIRE([AC_CANONICAL_HOST]) dnl for cross-compiles
dnl We expect to see the declaration of sleep() in a header file.
dnl Older versions of mingw have a sleep() function that is an alias to
dnl _sleep() in MSVCRT. It has a different signature than POSIX sleep():
dnl it takes the number of milliseconds as argument and returns void.
dnl mingw does not declare this function.
- AC_CHECK_DECLS([sleep], , , [#include <unistd.h>])
+ AC_CHECK_DECLS([sleep], , , [[#include <unistd.h>]])
AC_CHECK_FUNCS_ONCE([sleep])
if test $ac_cv_have_decl_sleep != yes; then
HAVE_SLEEP=0
@@ -44,9 +45,18 @@ handle_alarm (int sig)
return 0;
]])],
[gl_cv_func_sleep_works=yes], [gl_cv_func_sleep_works=no],
- [gl_cv_func_sleep_works="guessing no"])])
- if test "$gl_cv_func_sleep_works" != yes; then
- REPLACE_SLEEP=1
- fi
+ [case "$host_os" in
+ # Guess yes on glibc systems.
+ *-gnu*) gl_cv_func_sleep_works="guessing yes" ;;
+ # If we don't know, assume the worst.
+ *) gl_cv_func_sleep_works="guessing no" ;;
+ esac
+ ])])
+ case "$gl_cv_func_sleep_works" in
+ *yes) ;;
+ *)
+ REPLACE_SLEEP=1
+ ;;
+ esac
fi
])