+2008-10-11 Bruno Haible <bruno@clisp.org>
+
+ Make sleep work on older versions of mingw.
+ * m4/sleep.m4 (gl_FUNC_SLEEP): Test whether 'sleep' is declared, not
+ only whether it exists.
+ * doc/posix-functions/sleep.texi: Mention the problem with older
+ versions of mingw.
+
2008-10-11 Bruno Haible <bruno@clisp.org>
New module 'shutdown'.
-# sleep.m4 serial 1
-dnl Copyright (C) 2007 Free Software Foundation, Inc.
+# sleep.m4 serial 2
+dnl Copyright (C) 2007-2008 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.
AC_DEFUN([gl_FUNC_SLEEP],
[
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
- AC_CHECK_FUNCS_ONCE([sleep])
- if test $ac_cv_func_sleep = no; then
+ 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>])
+ if test $ac_cv_have_decl_sleep != yes; then
HAVE_SLEEP=0
AC_LIBOBJ([sleep])
gl_PREREQ_SLEEP