]> git.ipfire.org Git - thirdparty/coreutils.git/commit
build: fix link failure on cygwin
authorEric Blake <ebb9@byu.net>
Mon, 23 Nov 2009 21:59:18 +0000 (14:59 -0700)
committerEric Blake <ebb9@byu.net>
Tue, 24 Nov 2009 13:36:07 +0000 (06:36 -0700)
commitf9d0bb8481bed4cea5994ed8aae49fcf52c0e604
tree89b6696d0c7a8c7673b14de0fff4214b87633a78
parentab6b27eba720c04da91f5300121a6fe06d1fa9b4
build: fix link failure on cygwin

Cygwin 1.5 has a broken sleep, and the gnulib tests dragged in
rpl_sleep which then caused a link failure because it wasn't in
libcoreutils.a.  We could solve it by using the gnulib sleep module.
However, sleep and usleep may interact poorly with SIGALRM, and they
have less granularity; so it is better to adopt a policy that if we
must sleep, prefer xnanosleep.

* src/sort.c (pipe_fork): Use xnanosleep, to avoid the need for
rpl_sleep on cygwin, and to reduce granularity.
(MAX_FORK_TRIES_COMPRESS, MAX_FORK_TRIES_DECOMPRESS): Increase,
to account for reduction in granularity.
* src/tail.c (tail_file): Use xnanosleep in debug code.
* cfg.mk (sc_prohibit_sleep): New rule.
cfg.mk
src/sort.c
src/tail.c