tuklib_cpucores.m4 | tuklib_cpucores.m4 | |||
---|---|---|---|---|
skipping to change at line 12 | skipping to change at line 12 | |||
# SYNOPSIS | # SYNOPSIS | |||
# | # | |||
# TUKLIB_CPUCORES | # TUKLIB_CPUCORES | |||
# | # | |||
# DESCRIPTION | # DESCRIPTION | |||
# | # | |||
# Check how to find out the number of available CPU cores in the system. | # Check how to find out the number of available CPU cores in the system. | |||
# This information is used by tuklib_cpucores.c. | # This information is used by tuklib_cpucores.c. | |||
# | # | |||
# Supported methods: | # Supported methods: | |||
# - GetSystemInfo(): Windows (including Cygwin) | ||||
# - sysctl(): BSDs, OS/2 | # - sysctl(): BSDs, OS/2 | |||
# - sysconf(): GNU/Linux, Solaris, Tru64, IRIX, AIX, Cygwin | # - sysconf(): GNU/Linux, Solaris, Tru64, IRIX, AIX, Cygwin (but | |||
# GetSystemInfo() is used on Cygwin) | ||||
# - pstat_getdynamic(): HP-UX | # - pstat_getdynamic(): HP-UX | |||
# | # | |||
# COPYING | # COPYING | |||
# | # | |||
# Author: Lasse Collin | # Author: Lasse Collin | |||
# | # | |||
# This file has been put into the public domain. | # This file has been put into the public domain. | |||
# You can do whatever you want with this file. | # You can do whatever you want with this file. | |||
# | # | |||
AC_DEFUN_ONCE([TUKLIB_CPUCORES], [ | AC_DEFUN_ONCE([TUKLIB_CPUCORES], [ | |||
AC_REQUIRE([TUKLIB_COMMON]) | AC_REQUIRE([TUKLIB_COMMON]) | |||
# sys/param.h might be needed by sys/sysctl.h. | # sys/param.h might be needed by sys/sysctl.h. | |||
AC_CHECK_HEADERS([sys/param.h]) | AC_CHECK_HEADERS([sys/param.h]) | |||
AC_CACHE_CHECK([how to detect the number of available CPU cores], | AC_CACHE_CHECK([how to detect the number of available CPU cores], | |||
[tuklib_cv_cpucores_method], [ | [tuklib_cv_cpucores_method], [ | |||
# Maybe checking $host_os would be enough but this matches what | ||||
# tuklib_cpucores.c does. | ||||
# | ||||
# NOTE: IRIX has a compiler that doesn't error out with #error, so use | ||||
# a non-compilable text instead of #error to generate an error. | ||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ | ||||
#if defined(_WIN32) || defined(__CYGWIN__) | ||||
int main(void) { return 0; } | ||||
#else | ||||
compile error | ||||
#endif | ||||
]])], [tuklib_cv_cpucores_method=special], [ | ||||
# Look for sysctl() solution first, because on OS/2, both sysconf() | # Look for sysctl() solution first, because on OS/2, both sysconf() | |||
# and sysctl() pass the tests in this file, but only sysctl() | # and sysctl() pass the tests in this file, but only sysctl() | |||
# actually works. | # actually works. | |||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ | AC_COMPILE_IFELSE([AC_LANG_SOURCE([[ | |||
#include <sys/types.h> | #include <sys/types.h> | |||
#ifdef HAVE_SYS_PARAM_H | #ifdef HAVE_SYS_PARAM_H | |||
# include <sys/param.h> | # include <sys/param.h> | |||
#endif | #endif | |||
#include <sys/sysctl.h> | #include <sys/sysctl.h> | |||
int | int | |||
skipping to change at line 85 | skipping to change at line 100 | |||
main(void) | main(void) | |||
{ | { | |||
struct pst_dynamic pst; | struct pst_dynamic pst; | |||
pstat_getdynamic(&pst, sizeof(pst), 1, 0); | pstat_getdynamic(&pst, sizeof(pst), 1, 0); | |||
(void)pst.psd_proc_cnt; | (void)pst.psd_proc_cnt; | |||
return 0; | return 0; | |||
} | } | |||
]])], [tuklib_cv_cpucores_method=pstat_getdynamic], [ | ]])], [tuklib_cv_cpucores_method=pstat_getdynamic], [ | |||
tuklib_cv_cpucores_method=unknown | tuklib_cv_cpucores_method=unknown | |||
])])])]) | ])])])])]) | |||
case $tuklib_cv_cpucores_method in | case $tuklib_cv_cpucores_method in | |||
sysctl) | sysctl) | |||
AC_DEFINE([TUKLIB_CPUCORES_SYSCTL], [1], | AC_DEFINE([TUKLIB_CPUCORES_SYSCTL], [1], | |||
[Define to 1 if the number of available CPU cores | [Define to 1 if the number of available CPU cores | |||
can be detected with sysctl().]) | can be detected with sysctl().]) | |||
;; | ;; | |||
sysconf) | sysconf) | |||
AC_DEFINE([TUKLIB_CPUCORES_SYSCONF], [1], | AC_DEFINE([TUKLIB_CPUCORES_SYSCONF], [1], | |||
[Define to 1 if the number of available CPU cores | [Define to 1 if the number of available CPU cores | |||
End of changes. 4 change blocks. | ||||
2 lines changed or deleted | 17 lines changed or added | |||
This html diff was produced by rfcdiff 1.41. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |