nptl dependencies

This commit is contained in:
rsc 2005-01-17 21:32:55 +00:00
parent 4753f0691a
commit b04c42e9eb
4 changed files with 28 additions and 1 deletions

1
.cvsignore Normal file
View file

@ -0,0 +1 @@
config

View file

@ -21,6 +21,7 @@ if [ `uname` = Linux ]; then
echo " NPTL not found."
echo "SYSVERSION=2.4" >$PLAN9/config
fi
rm -f ./a.out
fi
echo "Building mk..."
cd src

15
lib/linux-isnptl.c Normal file
View file

@ -0,0 +1,15 @@
#include <pthread.h>
#include <unistd.h>
#include <stdlib.h>
#include <stdio.h>
int
main(void)
{
ulong x;
x = (ulong)pthread_self();
if(x < 1024*1024)
exit(1); /* NOT NPTL */
exit(0);
}

View file

@ -40,7 +40,17 @@ can safely be repeated to rebuild the system from scratch.
The system uses different threading implementations on Linux 2.6 and
later kernels than on 2.4 and earlier;
and on FreeBSD 5 and later kernels than on FreeBSD 4 and earlier.
Running binaries from one class on another may not work.
Running binaries from one class on another will not work.
.PP
Some Linux 2.6 systems (e.g., Gentoo) do not use the new NPTL pthread library
even though the kernel supports them. On these systems, plan9port must
fall back on the threading code intended for Linux 2.4. To accomplish this,
.I INSTALL
checks whether the running system uses NPTL and sets
.B SYSVERSION
in
.B \*9/config
accordingly.
.SH FILES
.TP
.B \*9/lib/moveplan9.files