Hrvoje Niksic wrote: > Keith Moore <[EMAIL PROTECTED]> writes: > > >>FWIW - POSIX timers appear to be partially >>supported. clock_gettime() is present, but there is no librt.a, so >>it's in a nonstandard place (unless I am totally missing something). > > > Wget doesn't require clock_gettime to be exactly in librt.(so|a), but > it has to be *somewhere*. But if I understand your first report, the > problem is not the lack of clock_gettime, but of clock_getres, and > that's what Wget is not prepared to handle. It (naively) assumes > that, if the implementation defines _POSIX_TIMERS, that they are > actually implemented. Serves me right for trying to use an API > designed after 1985.
Yes, it's the missing clock_getres() that's the problem. I asked about this on the Cygwin list, and I received a quick (if brief) reply: Christopher Faylor wrote: > On Fri, Apr 08, 2005 at 10:32:19PM +0200, Keith Moore wrote: > >>/usr/include/sys/features.h defines _POSIX_TIMERS, presumably to >>indicate that POSIX timers are supported. There seems to be something >>missing, though. >> >>Under the influence of _POSIX_TIMERS, /usr/include/time.h defines >>function prototypes for clock_gettime() and clock_getres() (and a few >>others). clock_gettime() gets linked-in from libc.a, but I cannot find >>a library for clock_getres(). >> >>This is causing problems for the CVS version of wget, which assumes >>_POSIX_TIMERS means all of the POSIX timer APIs are supported. >> >>Am I missing something here? Is there a clock_getres() somewhere? > > > No, there isn't. Sorry. So, there's the answer. Cygwin's POSIX timer support is incomplete. I'm not a Cygwin expert, but I suspect getting this API added would not be too terribly painful. However, even if that were to happen, it would mean wget would require a recent (and currently undeveloped/untested/unreleased) version of Cygwin to run in the Cygwin environment. Bummer. If there's anything I can do to help, please let me know. For example, I can do regular "sanity test" builds under Cygwin. Thanks for wget! KM
