mirror of
https://git.openldap.org/openldap/openldap.git
synced 2025-12-20 22:59:34 -05:00
Add support for OSF1 c89's -thread option to enable threads.
Fix old -pthread -lmach ... support to check for -lc_r instead of -lc.
This commit is contained in:
parent
e6ac1f46c3
commit
078c192c63
2 changed files with 475 additions and 400 deletions
71
configure.in
71
configure.in
|
|
@ -27,7 +27,7 @@ dnl OL_ARG_ENABLE(syslog,[ --enable-syslog enable syslog support], auto)dnl
|
||||||
OL_ARG_ENABLE(proctitle,[ --enable-proctitle enable proctitle support], yes)dnl
|
OL_ARG_ENABLE(proctitle,[ --enable-proctitle enable proctitle support], yes)dnl
|
||||||
OL_ARG_ENABLE(libui,[ --enable-libui enable library user interface], yes)dnl
|
OL_ARG_ENABLE(libui,[ --enable-libui enable library user interface], yes)dnl
|
||||||
OL_ARG_ENABLE(cache,[ --enable-cache enable caching], yes)dnl
|
OL_ARG_ENABLE(cache,[ --enable-cache enable caching], yes)dnl
|
||||||
OL_ARG_ENABLE(dns,[ --enable--dns enable V2 DNS extension], no)dnl
|
OL_ARG_ENABLE(dns,[ --enable-dns enable V2 DNS extension], no)dnl
|
||||||
OL_ARG_ENABLE(referrals,[ --enable-referrals enable V2 Referrals extension], yes)dnl
|
OL_ARG_ENABLE(referrals,[ --enable-referrals enable V2 Referrals extension], yes)dnl
|
||||||
OL_ARG_ENABLE(cldap,[ --enable-cldap enable connectionless ldap], no)dnl
|
OL_ARG_ENABLE(cldap,[ --enable-cldap enable connectionless ldap], no)dnl
|
||||||
OL_ARG_ENABLE(x_compile,[ --enable-x-compile enable cross compiling],
|
OL_ARG_ENABLE(x_compile,[ --enable-x-compile enable cross compiling],
|
||||||
|
|
@ -69,6 +69,14 @@ OL_ARG_ENABLE(shell,[ --enable-shell enable shell backend], no)dnl
|
||||||
dnl SLURPD OPTIONS
|
dnl SLURPD OPTIONS
|
||||||
OL_ARG_ENABLE(slurpd,[ --enable-slurpd enable building slurpd], auto)dnl
|
OL_ARG_ENABLE(slurpd,[ --enable-slurpd enable building slurpd], auto)dnl
|
||||||
|
|
||||||
|
# validate options
|
||||||
|
if test $ol_enable_referrals = no ; then
|
||||||
|
if test $ol_enable_dns = yes ; then
|
||||||
|
AC_MSG_WARN([dns disabled, ignoring --enable-dns argument])
|
||||||
|
fi
|
||||||
|
ol_enable_dns=no
|
||||||
|
fi
|
||||||
|
|
||||||
if test $ol_enable_slapd = no ; then
|
if test $ol_enable_slapd = no ; then
|
||||||
dnl SLAPD was specificallly disabled
|
dnl SLAPD was specificallly disabled
|
||||||
if test $ol_enable_ldbm = yes ; then
|
if test $ol_enable_ldbm = yes ; then
|
||||||
|
|
@ -348,12 +356,11 @@ if test $ol_with_threads = auto -o $ol_with_threads = posix ; then
|
||||||
dnl try -pthread
|
dnl try -pthread
|
||||||
AC_CACHE_CHECK([for pthread_create with -pthread],
|
AC_CACHE_CHECK([for pthread_create with -pthread],
|
||||||
[ol_cv_pthread_flag], [
|
[ol_cv_pthread_flag], [
|
||||||
dnl save the CPPFLAGS
|
dnl save the flags
|
||||||
save_LIBS="$LIBS"
|
save_LIBS="$LIBS"
|
||||||
LIBS="-pthread $LIBS"
|
LIBS="-pthread $LIBS"
|
||||||
AC_TRY_LINK([#include <pthread.h>],[
|
AC_TRY_LINK([char pthread();],[
|
||||||
pthread_create((pthread_t*) 0,
|
pthread_create();
|
||||||
(pthread_attr_t*) 0, 0, 0);
|
|
||||||
], ol_cv_pthread_flag=yes, ol_cv_pthread_flag=no)
|
], ol_cv_pthread_flag=yes, ol_cv_pthread_flag=no)
|
||||||
dnl restore the LIBS
|
dnl restore the LIBS
|
||||||
LIBS="$save_LIBS"
|
LIBS="$save_LIBS"
|
||||||
|
|
@ -365,6 +372,40 @@ if test $ol_with_threads = auto -o $ol_with_threads = posix ; then
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if test $ol_link_threads = no ; then
|
||||||
|
dnl try -thread
|
||||||
|
AC_CACHE_CHECK([for pthread_create with -thread],
|
||||||
|
[ol_cv_thread_flag], [
|
||||||
|
dnl save the flags
|
||||||
|
save_LIBS="$LIBS"
|
||||||
|
LIBS="-thread $LIBS"
|
||||||
|
AC_TRY_LINK([char pthread();],[
|
||||||
|
pthread_create();
|
||||||
|
], ol_cv_thread_flag=yes, ol_cv_thread_flag=no)
|
||||||
|
dnl restore the LIBS
|
||||||
|
LIBS="$save_LIBS"
|
||||||
|
])
|
||||||
|
|
||||||
|
if test $ol_cv_thread_flag = yes ; then
|
||||||
|
LTHREAD_LIBS="$LTHREAD_LIBS -thread"
|
||||||
|
ol_link_threads=posix
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if test $ol_link_threads = no ; then
|
||||||
|
dnl try DEC Threads
|
||||||
|
save_LIBS="$LIBS"
|
||||||
|
AC_CHECK_LIB(pthread, pthread_create, [
|
||||||
|
AC_DEFINE(HAVE_DCE)
|
||||||
|
ol_link_threads=posix
|
||||||
|
LTHREAD_LIBS="$LTHREAD_LIBS -lpthread -lmach -lexc -lc_r"
|
||||||
|
if test $ol_with_preemptive = auto ; then
|
||||||
|
ol_with_preemptive=yes
|
||||||
|
fi
|
||||||
|
],,[-lmach -lexc -lc_r])
|
||||||
|
LIBS="$save_LIBS"
|
||||||
|
fi
|
||||||
|
|
||||||
if test $ol_link_threads = no ; then
|
if test $ol_link_threads = no ; then
|
||||||
dnl try -lpthread
|
dnl try -lpthread
|
||||||
save_LIBS="$LIBS"
|
save_LIBS="$LIBS"
|
||||||
|
|
@ -383,24 +424,10 @@ if test $ol_with_threads = auto -o $ol_with_threads = posix ; then
|
||||||
LIBS="$save_LIBS"
|
LIBS="$save_LIBS"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if test $ol_link_threads = no ; then
|
|
||||||
dnl try DEC Threads
|
|
||||||
save_LIBS="$LIBS"
|
|
||||||
AC_CHECK_LIB(pthread, pthread_create, [
|
|
||||||
AC_DEFINE(HAVE_DCE)
|
|
||||||
ol_link_threads=posix
|
|
||||||
LTHREAD_LIBS="$LTHREAD_LIBS -lpthread -lmach -lexc -lc"
|
|
||||||
if test $ol_with_preemptive = auto ; then
|
|
||||||
ol_with_preemptive=yes
|
|
||||||
fi
|
|
||||||
],,[-lmach -lexc -lc])
|
|
||||||
LIBS="$save_LIBS"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if test $ol_link_threads != no ; then
|
if test $ol_link_threads != no ; then
|
||||||
AC_DEFINE(HAVE_PTHREADS)
|
AC_DEFINE(HAVE_PTHREADS)
|
||||||
|
|
||||||
dnl save DEFS/LIBS
|
dnl save flags
|
||||||
save_CPPFLAGS="$CPPFLAGS"
|
save_CPPFLAGS="$CPPFLAGS"
|
||||||
save_LIBS="$LIBS"
|
save_LIBS="$LIBS"
|
||||||
LIBS="$LTHREAD_LIBS $LIBS"
|
LIBS="$LTHREAD_LIBS $LIBS"
|
||||||
|
|
@ -522,7 +549,7 @@ dnl gmtime_r \
|
||||||
dnl strtok_r \
|
dnl strtok_r \
|
||||||
dnl )
|
dnl )
|
||||||
|
|
||||||
dnl restore DEFS/LIBS
|
dnl restore flags
|
||||||
CPPFLAGS="$save_CPPFLAGS"
|
CPPFLAGS="$save_CPPFLAGS"
|
||||||
LIBS="$save_LIBS"
|
LIBS="$save_LIBS"
|
||||||
else
|
else
|
||||||
|
|
@ -549,7 +576,7 @@ if test $ol_with_threads = auto -o $ol_with_threads = mach ; then
|
||||||
dnl this test needs work
|
dnl this test needs work
|
||||||
AC_CACHE_CHECK([for cthread_fork with -all_load],
|
AC_CACHE_CHECK([for cthread_fork with -all_load],
|
||||||
[ol_cv_cthread_all_load], [
|
[ol_cv_cthread_all_load], [
|
||||||
dnl save the CPPFLAGS
|
dnl save the flags
|
||||||
save_LIBS="$LIBS"
|
save_LIBS="$LIBS"
|
||||||
LIBS="-all_load $LIBS"
|
LIBS="-all_load $LIBS"
|
||||||
AC_TRY_LINK([#include <mach/cthreads.h>],[
|
AC_TRY_LINK([#include <mach/cthreads.h>],[
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue