1 | Dnl $Id$
|
---|
2 |
|
---|
3 | AC_DEFUN([KRB_PTHREADS], [
|
---|
4 | AC_MSG_CHECKING(if compiling threadsafe libraries)
|
---|
5 |
|
---|
6 | AC_ARG_ENABLE(pthread-support,
|
---|
7 | AS_HELP_STRING([--enable-pthread-support],
|
---|
8 | [if you want thread safe libraries]),
|
---|
9 | [],[enable_pthread_support=maybe])
|
---|
10 |
|
---|
11 | case "$host" in
|
---|
12 | *-*-solaris2*)
|
---|
13 | native_pthread_support=yes
|
---|
14 | if test "$GCC" = yes; then
|
---|
15 | PTHREAD_CFLAGS=-pthreads
|
---|
16 | PTHREAD_LIBADD=-pthreads
|
---|
17 | else
|
---|
18 | PTHREAD_CFLAGS=-mt
|
---|
19 | PTHREAD_LDADD=-mt
|
---|
20 | PTHREAD_LIBADD=-mt
|
---|
21 | fi
|
---|
22 | ;;
|
---|
23 | *-*-netbsd[[12]]*)
|
---|
24 | native_pthread_support="if running netbsd 1.6T or newer"
|
---|
25 | dnl heim_threads.h knows this
|
---|
26 | PTHREAD_LIBADD="-lpthread"
|
---|
27 | ;;
|
---|
28 | *-*-netbsd[[3456789]]*)
|
---|
29 | native_pthread_support="netbsd 3 uses explict pthread"
|
---|
30 | dnl heim_threads.h knows this
|
---|
31 | PTHREAD_LIBADD="-lpthread"
|
---|
32 | ;;
|
---|
33 | *-*-freebsd[[56789]]*)
|
---|
34 | native_pthread_support=yes
|
---|
35 | PTHREAD_LIBADD="-pthread"
|
---|
36 | ;;
|
---|
37 | *-*-openbsd*)
|
---|
38 | native_pthread_support=yes
|
---|
39 | PTHREAD_CFLAGS=-pthread
|
---|
40 | PTHREAD_LIBADD=-pthread
|
---|
41 | ;;
|
---|
42 | *-*-linux* | *-*-linux-gnu)
|
---|
43 | case `uname -r` in
|
---|
44 | 2.*|3.*)
|
---|
45 | native_pthread_support=yes
|
---|
46 | PTHREAD_CFLAGS=-pthread
|
---|
47 | PTHREAD_LIBADD=-pthread
|
---|
48 | ;;
|
---|
49 | esac
|
---|
50 | ;;
|
---|
51 | *-*-kfreebsd*-gnu*)
|
---|
52 | native_pthread_support=yes
|
---|
53 | PTHREAD_CFLAGS=-pthread
|
---|
54 | PTHREAD_LIBADD=-pthread
|
---|
55 | ;;
|
---|
56 | *-*-aix*)
|
---|
57 | dnl AIX is disabled since we don't handle the utmp/utmpx
|
---|
58 | dnl problems that aix causes when compiling with pthread support
|
---|
59 | native_pthread_support=no
|
---|
60 | ;;
|
---|
61 | mips-sgi-irix6.[[5-9]]) # maybe works for earlier versions too
|
---|
62 | native_pthread_support=yes
|
---|
63 | PTHREAD_LIBADD="-lpthread"
|
---|
64 | ;;
|
---|
65 | *-*-darwin*)
|
---|
66 | native_pthread_support=yes
|
---|
67 | ;;
|
---|
68 | *)
|
---|
69 | native_pthread_support=no
|
---|
70 | ;;
|
---|
71 | esac
|
---|
72 |
|
---|
73 | if test "$enable_pthread_support" = maybe ; then
|
---|
74 | enable_pthread_support="$native_pthread_support"
|
---|
75 | fi
|
---|
76 |
|
---|
77 | if test "$enable_pthread_support" != no; then
|
---|
78 | AC_DEFINE(ENABLE_PTHREAD_SUPPORT, 1,
|
---|
79 | [Define if you want have a thread safe libraries])
|
---|
80 | dnl This sucks, but libtool doesn't save the depenecy on -pthread
|
---|
81 | dnl for libraries.
|
---|
82 | LIBS="$PTHREAD_LIBADD $LIBS"
|
---|
83 | else
|
---|
84 | PTHREAD_CFLAGS=""
|
---|
85 | PTHREAD_LIBADD=""
|
---|
86 | fi
|
---|
87 |
|
---|
88 | AC_SUBST(PTHREAD_CFLAGS)
|
---|
89 | AC_SUBST(PTHREAD_LDADD)
|
---|
90 | AC_SUBST(PTHREAD_LIBADD)
|
---|
91 |
|
---|
92 | AC_MSG_RESULT($enable_pthread_support)
|
---|
93 | ])
|
---|