Re: How to detect NPTL at compile time
Jakub Jelinek <[email protected]>
| Newsgroups | gmane.comp.lib.phil |
|---|---|
| Message-ID | <[email protected]> |
On Fri, Apr 04, 2003 at 02:51:51PM -0800, Wan-Teh Chang wrote:
> Red Hat Linux 9 ships with the NPTL. Our code
> contains workarounds for LinuxThreads, and I
> want to disable the workarounds if we are compiling
> against NPTL. How do I detect whether the pthread
> library is LinuxThreads or NPTL at compile time?
> Can I use the glibc version number to determine
> that (i.e., NPTL if glibc 2.3 or higher)?
No.
int isnptl (void)
{
size_t n = confstr (_CS_GNU_LIBPTHREAD_VERSION, NULL, 0);
if (n > 0)
{
char *buf = alloca (n);
confstr (_CS_GNU_LIBPTHREAD_VERSION, buf, n);
if (strstr (buf, "NPTL"))
return 1;
}
return 0;
}
Jakub