attempt to properly check if we can use CPU_SET with sched_setaffinity because some older libc had gnu extensions in the definitions of CPU_SET which we do not allow (FSBUILD-226)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@16263 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
66c6760d27
commit
ea5c0c2111
|
@ -8,6 +8,7 @@ m4_include([build/config/ax_lib_mysql.m4])
|
|||
m4_include([build/config/ax_check_java.m4])
|
||||
m4_include([build/config/erlang.m4])
|
||||
m4_include([build/config/odbc.m4])
|
||||
m4_include([build/config/sched_setaffinity.m4])
|
||||
m4_include([libs/apr/build/apr_common.m4])
|
||||
m4_include([libs/sofia-sip/m4/sac-pkg-config.m4])
|
||||
m4_include([libs/sofia-sip/m4/sac-openssl.m4])
|
||||
|
|
|
@ -0,0 +1,16 @@
|
|||
AC_DEFUN([AX_HAVE_CPU_SET], [
|
||||
#
|
||||
# Check for the Linux functions for controlling processor affinity.
|
||||
#
|
||||
# LINUX: sched_setaffinity
|
||||
AC_CHECK_FUNCS(sched_setaffinity sched_getaffinity)
|
||||
if test "$ac_cv_func_sched_setaffinity" = "yes" ; then
|
||||
AC_CACHE_CHECK([whether the CPU_SET and CPU_ZERO macros are defined],
|
||||
ac_cv_cpu_set_defined,[
|
||||
AC_TRY_COMPILE( [#include <sched.h>],[ cpu_set_t t; CPU_ZERO(&t); CPU_SET(1,&t); ],
|
||||
ac_cv_cpu_set_defined=yes,ac_cv_cpu_set_defined=no)])
|
||||
if test "$ac_cv_cpu_set_defined" = "yes" ; then
|
||||
AC_DEFINE(HAVE_CPU_SET_MACROS,1,[Define if CPU_SET and CPU_ZERO defined])
|
||||
fi
|
||||
fi
|
||||
])
|
|
@ -431,9 +431,11 @@ AC_FUNC_MALLOC
|
|||
AC_TYPE_SIGNAL
|
||||
AC_FUNC_STRFTIME
|
||||
AC_CHECK_FUNCS([gethostname vasprintf mmap mlock mlockall usleep getifaddrs])
|
||||
AC_CHECK_FUNCS([sched_setscheduler sched_setaffinity setpriority setrlimit setgroups initgroups])
|
||||
AC_CHECK_FUNCS([sched_setscheduler setpriority setrlimit setgroups initgroups])
|
||||
AC_CHECK_FUNCS([wcsncmp setgroups asprintf setenv pselect gettimeofday localtime_r gmtime_r strcasecmp stricmp _stricmp])
|
||||
|
||||
AX_HAVE_CPU_SET
|
||||
|
||||
AC_CHECK_LIB(rt, clock_gettime, [AC_DEFINE(HAVE_CLOCK_GETTIME, 1, [Define if you have clock_gettime()])])
|
||||
AC_CHECK_LIB(rt, clock_nanosleep, [AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define if you have clock_nanosleep()])])
|
||||
AC_CHECK_FUNC(socket, , AC_CHECK_LIB(socket, socket))
|
||||
|
|
|
@ -537,7 +537,7 @@ SWITCH_MODULE_RUNTIME_FUNCTION(softtimer_runtime)
|
|||
switch_time_t ts = 0, last = 0;
|
||||
int fwd_errs = 0, rev_errs = 0;
|
||||
|
||||
#ifdef HAVE_SCHED_SETAFFINITY
|
||||
#ifdef HAVE_CPU_SET_MACROS
|
||||
cpu_set_t set;
|
||||
CPU_ZERO(&set);
|
||||
CPU_SET(0, &set);
|
||||
|
|
Loading…
Reference in New Issue