From a2400cbfc51e381c1dd33eb9e1d3c82feb54d911 Mon Sep 17 00:00:00 2001 From: Kurt Zeilenga Date: Fri, 6 Jan 2006 05:38:57 +0000 Subject: [PATCH] Add configure support for REPLACE_SCHED_YIELD --- configure | 17 ++++++++++++++++- configure.in | 12 ++++++++++++ include/portable.hin | 3 +++ 3 files changed, 31 insertions(+), 1 deletion(-) diff --git a/configure b/configure index 3d831943b8..e62191610b 100755 --- a/configure +++ b/configure @@ -1,5 +1,5 @@ #! /bin/sh -# From configure.in OpenLDAP: pkg/ldap/configure.in,v 1.610 2005/12/16 15:52:59 ando Exp . +# From configure.in OpenLDAP: pkg/ldap/configure.in,v 1.612 2006/01/03 22:11:59 kurt Exp . # Guess values for system-dependent variables and create Makefiles. # Generated by GNU Autoconf 2.59. # @@ -24741,6 +24741,21 @@ echo "${ECHO_T}$ol_cv_pthread_create_works" >&6 { { echo "$as_me:$LINENO: error: pthread_create is not usable, check environment settings" >&5 echo "$as_me: error: pthread_create is not usable, check environment settings" >&2;} { (exit 1); exit 1; }; } + fi + + ol_replace_sched_yeild=no + case "$target" in + *-*-linux*) + ol_replace_sched_yeild=yes + ;; + esac + + if test $ol_replace_sched_yeild = yes ; then + +cat >>confdefs.h <<\_ACEOF +#define REPLACE_SCHED_YEILD 1 +_ACEOF + fi if test $ol_with_yielding_select = auto ; then diff --git a/configure.in b/configure.in index ff17fdaca3..5929bd5392 100644 --- a/configure.in +++ b/configure.in @@ -1587,6 +1587,18 @@ dnl [ol_cv_pthread_lpthread_lexc]) AC_MSG_ERROR([pthread_create is not usable, check environment settings]) fi + ol_replace_sched_yeild=no + case "$target" in + *-*-linux*) + ol_replace_sched_yeild=yes + ;; + esac + + if test $ol_replace_sched_yeild = yes ; then + AC_DEFINE([REPLACE_SCHED_YEILD],1, + [define to replace sched_yeild(2)]) + fi + dnl Check if select causes an yield if test $ol_with_yielding_select = auto ; then AC_CACHE_CHECK([if select yields when using pthreads], diff --git a/include/portable.hin b/include/portable.hin index 86f84670e4..5b80589614 100644 --- a/include/portable.hin +++ b/include/portable.hin @@ -915,6 +915,9 @@ /* Define to the version of this package. */ #undef PACKAGE_VERSION +/* define to replace sched_yeild(2) */ +#undef REPLACE_SCHED_YEILD + /* Define as the return type of signal handlers (`int' or `void'). */ #undef RETSIGTYPE -- 2.39.5