
On Thu, Jan 15, 2009 at 01:27:00PM +0000, John Levon wrote:
On Thu, Jan 15, 2009 at 01:15:13PM +0000, Richard W.M. Jones wrote:
We really should go by features detected in configure, not assumptions about the platform which may not even be true.
That's my point. They are true, and they always will be. In fact, it's MUCH safer in these cases to check __sun. I can't check for stropts.h, since someone might have installed that icky STREAMS stuff on Linux, which would then break.
Doesn't working STREAMS exist on UnixWare too? I still think the right thing to do is to detect STREAMS. If someone installs broken STREAMS on Linux, then it is their responsibility to find a more discrete test which differentiates between broken STREAMS and working STREAMS on Solaris/UnixWare.
I can't check for priv.h, since it's generic enough to exist in different form on other platforms. Even if least priv in the exact Solaris form gets ported to say BSD, it won't have __init_suid_priv(), for example.
Right, but don't just check for the header. Check for both the header and some common symbol inside it.
Of course, my preferred fix would be for Solaris to drop STREAMS, but that's a vain hope :)
There's the problem - if Solaris drop streams, the #ifdef __sun checks will be incorrect. Rich. -- Richard Jones, Emerging Technologies, Red Hat http://et.redhat.com/~rjones virt-top is 'top' for virtual machines. Tiny program with many powerful monitoring features, net stats, disk stats, logging, etc. http://et.redhat.com/~rjones/virt-top