[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Should _POSIX_TIMERS be set to 200809L instead of 0?



Svante Signell, le Tue 18 Feb 2014 23:55:07 +0100, a écrit :
> >From /usr/include/i386-gnu/bits/posix_opt.h (in eglibc-2.17-98~1)
> /* We do not have POSIX timers, but could in future without ABI change.
> */
> #define _POSIX_TIMERS   0

IIRC, the reason why we keep it 0 is because we haven't implementer
timer_create() and friends yet.

> According to the developers having _POSIX_TIMERS equal to zero while the
> other two are defined is not correct.

Actually yes, see susv3:

“
If the symbolic constant _POSIX_MONOTONIC_CLOCK is defined, then
the symbolic constant _POSIX_TIMERS shall also be defined by the
implementation to have the value 200112L.

If the symbolic constant _POSIX_CLOCK_SELECTION is defined, then
the symbolic constant _POSIX_TIMERS shall also be defined by the
implementation to have the value 200112L.
”

> > since clock selection instrinsically depends on timers.

I don't really see why.

> > Furthermore POSIX.2008 requires timers and the monotonic clock in
> > any case (they are *not* optional).

We are not claiming that hurd's eglibc is completely posix 2008.  Just
that we provide the posix 2008 monotonic clock.

> > So as already implied, your system is broken. It is your operating system, not 
> > VLC, that needs fixing.
> 
> However from
> http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap02.html
> one reads (quote):
> * The following symbolic constants shall be defined by the implementation as follows:
>   o Symbolic constants defined with the value 200809L:
>         _POSIX_CLOCK_SELECTION
>         ...
>         _POSIX_TIMERS
>     ...
> 
> * The system may support one or more options (see Options) denoted by the following symbolic constants:
> _POSIX_MONOTONIC_CLOCK

Well, that does not contradict what is said above: in POSIX 2008,
_POSIX_TIMERS is always defined (to 200809).

Samuel


Reply to: