diff options
Diffstat (limited to '')
-rw-r--r-- | src/common/tuklib_cpucores.c (renamed from src/common/cpucores.h) | 39 |
1 files changed, 17 insertions, 22 deletions
diff --git a/src/common/cpucores.h b/src/common/tuklib_cpucores.c index 370c3cec..0a8081ff 100644 --- a/src/common/cpucores.h +++ b/src/common/tuklib_cpucores.c @@ -1,7 +1,7 @@ /////////////////////////////////////////////////////////////////////////////// // -/// \file cpucores.h -/// \brief Get the number of online CPU cores +/// \file tuklib_cpucores.c +/// \brief Get the number of CPU cores online // // Author: Lasse Collin // @@ -10,42 +10,37 @@ // /////////////////////////////////////////////////////////////////////////////// -#ifndef CPUCORES_H -#define CPUCORES_H +#include "tuklib_cpucores.h" -#if defined(HAVE_CPUCORES_SYSCONF) -# include <unistd.h> - -#elif defined(HAVE_CPUCORES_SYSCTL) +#if defined(TUKLIB_CPUCORES_SYSCTL) # ifdef HAVE_SYS_PARAM_H # include <sys/param.h> # endif -# ifdef HAVE_SYS_SYSCTL_H -# include <sys/sysctl.h> -# endif +# include <sys/sysctl.h> + +#elif defined(TUKLIB_CPUCORES_SYSCONF) +# include <unistd.h> #endif -static inline uint32_t -cpucores(void) +extern uint32_t +tuklib_cpucores(void) { uint32_t ret = 0; -#if defined(HAVE_CPUCORES_SYSCONF) - const long cpus = sysconf(_SC_NPROCESSORS_ONLN); - if (cpus > 0) - ret = (uint32_t)(cpus); - -#elif defined(HAVE_CPUCORES_SYSCTL) +#if defined(TUKLIB_CPUCORES_SYSCTL) int name[2] = { CTL_HW, HW_NCPU }; int cpus; size_t cpus_size = sizeof(cpus); if (sysctl(name, 2, &cpus, &cpus_size, NULL, 0) != -1 && cpus_size == sizeof(cpus) && cpus > 0) - ret = (uint32_t)(cpus); + ret = (uint32_t)cpus; + +#elif defined(TUKLIB_CPUCORES_SYSCONF) + const long cpus = sysconf(_SC_NPROCESSORS_ONLN); + if (cpus > 0) + ret = (uint32_t)cpus; #endif return ret; } - -#endif |