mirror of
https://github.com/MariaDB/server.git
synced 2025-01-16 12:02:42 +01:00
Add a more reliable "getconf" test for Linuxthreads. The later trees should already
have a better test (and so this should be null-merged there). ALSO! Make it so that it accepts NPTL as a valid _equivalent_ implementation.
This commit is contained in:
parent
861096a58f
commit
89c7db0cb0
1 changed files with 15 additions and 6 deletions
21
configure.in
21
configure.in
|
@ -1241,8 +1241,9 @@ if test "$with_named_thread" = "no" -a "$with_mit_threads" = "no"
|
|||
then
|
||||
# Look for LinuxThreads.
|
||||
AC_MSG_CHECKING("LinuxThreads")
|
||||
res=`grep Linuxthreads /usr/include/pthread.h 2>/dev/null | wc -l`
|
||||
if test "$res" -gt 0
|
||||
grepres=`grep Linuxthreads /usr/include/pthread.h 2>/dev/null | wc -l`
|
||||
getconfres=`which getconf >/dev/null && getconf GNU_LIBPTHREAD_VERSION | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ |grep LINUXTHREADS | wc -l || echo 0`
|
||||
if test "$grepres" -gt 0 -o "$getconfres" -gt 0
|
||||
then
|
||||
AC_MSG_RESULT("Found")
|
||||
AC_DEFINE(HAVE_LINUXTHREADS)
|
||||
|
@ -1255,12 +1256,20 @@ then
|
|||
else
|
||||
AC_MSG_RESULT("Not found")
|
||||
# If this is a linux machine we should barf
|
||||
AC_MSG_CHECKING("NPTL")
|
||||
if test "$IS_LINUX" = "true"
|
||||
then
|
||||
AC_MSG_ERROR([This is a linux system and Linuxthreads was not
|
||||
found. On linux Linuxthreads should be used. Please install Linuxthreads
|
||||
(or a new glibc) and try again. See the Installation chapter in the
|
||||
Reference Manual for more information.])
|
||||
getconfres=`which getconf >/dev/null && getconf GNU_LIBPTHREAD_VERSION | tr abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ |grep NPTL | wc -l || echo 0`
|
||||
if test "$getconfres" -gt 0
|
||||
then
|
||||
AC_DEFINE(HAVE_LINUXTHREADS) dnl All this code predates NPTL, so "have linuxthreads" is a poor name.
|
||||
with_named_thread="-lpthread"
|
||||
else
|
||||
AC_MSG_ERROR([This is a Linux system and neither Linuxthreads nor NPTL were
|
||||
found. Please install Linuxthreads or a new glibc and try
|
||||
again. See the Installation chapter in the Reference Manual for
|
||||
more information.])
|
||||
fi
|
||||
else
|
||||
AC_MSG_CHECKING("DEC threads")
|
||||
if test -f /usr/shlib/libpthread.so -a -f /usr/lib/libmach.a -a -f /usr/ccs/lib/cmplrs/cc/libexc.a
|
||||
|
|
Loading…
Reference in a new issue