[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
sleep() on older mingw
From: |
Bruno Haible |
Subject: |
sleep() on older mingw |
Date: |
Sat, 11 Oct 2008 23:44:39 +0200 |
User-agent: |
KMail/1.5.4 |
On older mingw installations, libcoldnames.a contains a sleep() function that
is incompatible with POSIX:
- it takes milliseconds, not seconds, as argument,
- it returns 'void', not 'int'.
Unfortunately, the gnulib module 'sleep' did not recognize this function as
being unusable. This fixes it.
2008-10-11 Bruno Haible <address@hidden>
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.
*** m4/sleep.m4.orig 2008-10-11 23:38:05.000000000 +0200
--- m4/sleep.m4 2008-10-11 23:37:54.000000000 +0200
***************
*** 1,5 ****
! # sleep.m4 serial 1
! dnl Copyright (C) 2007 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.
--- 1,5 ----
! # 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.
***************
*** 7,14 ****
AC_DEFUN([gl_FUNC_SLEEP],
[
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
! AC_CHECK_FUNCS_ONCE([sleep])
! if test $ac_cv_func_sleep = no; then
HAVE_SLEEP=0
AC_LIBOBJ([sleep])
gl_PREREQ_SLEEP
--- 7,19 ----
AC_DEFUN([gl_FUNC_SLEEP],
[
AC_REQUIRE([gl_UNISTD_H_DEFAULTS])
! 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
*** doc/posix-functions/sleep.texi.orig 2008-10-11 23:38:05.000000000 +0200
--- doc/posix-functions/sleep.texi 2008-10-11 23:36:46.000000000 +0200
***************
*** 11,16 ****
--- 11,20 ----
@item
This function is missing on some platforms:
mingw (2005 or newer).
+ @item
+ This function takes milliseconds as argument and returns @code{void} on some
+ platforms:
+ mingw (2005 and older).
@end itemize
Portability problems not fixed by Gnulib:
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- sleep() on older mingw,
Bruno Haible <=