Craig A. Berry wrote:
At 10:15 AM +0100 3/26/08, H.Merijn Brand wrote:
On Tue, 25 Mar 2008 22:41:56 -0500, "Craig A. Berry" <[EMAIL PROTECTED]>
wrote:
<snip>
I was wrong about that. IO includes its own local poll.h, and
ext/IO/poll.h has
#if (defined(HAS_POLL) && defined(I_POLL)) || defined(POLLWRBAND)
# include <poll.h>
#else
#ifdef HAS_SELECT
I'm also confused about i_poll vs. i_syspoll. Only the latter is
new. So if the Mac OS X (Leopard) hints are wrong, it is only for
i_poll, not the new i_syspoll.
The X/Open group, which is the keeper of the UNIX and POSIX standards
only lists a poll.h.
The standard is on-line for free viewing at http://www.opengroup.org.
Registration may be required. I have never received anything but a
confirmation of registration from them.
I am finding a lot of hits indicating that programmers are expecting it
to be in sys/poll.h.
A check of a Centos system shows that <poll.h> simply does an include of
<sys/poll.h>
Cygwin is doing the same.
I obviously underestimated the effect of this automatically being added
by the new configuration stuff.
If poll.h is automatically always included, we are either doing it wrong
or we have no alternatives, in which case the check would be void. I can
remove it if that would be preferred.
Probably ignoring me would be safer. But I am genuinely confused
about the difference, if any, between poll.h and sys/poll.h. If they
are just different locations for the same thing, should Perl really
have two configuration settings?
If a <poll.h> is found, then the implementation is standard, and that is
the file that should be used, and there is no need to look for a
<sys/poll.h>
If <poll.h> is not found, but <sys/poll.h> is present, then that can be
a fallback. It might be useful to emit a diagnostic that the
implementation is not compliant with the UNIX standard.
Note that VMS ignores the path in system header files, so <poll.h>,
<sys/poll.h> and <foo/poll.h> are all the same.
-John
[EMAIL PROTECTED]
Personal Opinion Only