diff options
Diffstat (limited to 'libs/pbd')
-rw-r--r-- | libs/pbd/cpus.cc | 6 | ||||
-rw-r--r-- | libs/pbd/pbd/floating.h | 1 | ||||
-rw-r--r-- | libs/pbd/pbd/system_exec.h | 3 |
3 files changed, 9 insertions, 1 deletions
diff --git a/libs/pbd/cpus.cc b/libs/pbd/cpus.cc index fb94b475de..69421e5e92 100644 --- a/libs/pbd/cpus.cc +++ b/libs/pbd/cpus.cc @@ -43,10 +43,14 @@ hardware_concurrency() { #if defined(PTW32_VERSION) || defined(__hpux) return pthread_num_processors_np(); -#elif defined(__APPLE__) || defined(__FreeBSD__) +#elif defined(__APPLE__) int count; size_t size=sizeof(count); return sysctlbyname("hw.physicalcpu",&count,&size,NULL,0)?0:count; +#elif defined(__FreeBSD__) + int count; + size_t size=sizeof(count); + return sysctlbyname("hw.ncpu",&count,&size,NULL,0)?0:count; #elif defined(HAVE_UNISTD) && defined(_SC_NPROCESSORS_ONLN) int const count=sysconf(_SC_NPROCESSORS_ONLN); return (count>0)?count:0; diff --git a/libs/pbd/pbd/floating.h b/libs/pbd/pbd/floating.h index 86ab4a68f0..d7d6349a34 100644 --- a/libs/pbd/pbd/floating.h +++ b/libs/pbd/pbd/floating.h @@ -28,6 +28,7 @@ #include <stdint.h> +#include <cstdlib> // abs(int) #include <cmath> #include "pbd/libpbd_visibility.h" diff --git a/libs/pbd/pbd/system_exec.h b/libs/pbd/pbd/system_exec.h index d5b14c8273..a8a30ba18d 100644 --- a/libs/pbd/pbd/system_exec.h +++ b/libs/pbd/pbd/system_exec.h @@ -37,6 +37,9 @@ #undef interface // VKamyshniy: to avoid "include/giomm-2.4/giomm/dbusmessage.h:270:94: error: expected ',' or '...' before 'struct'" #endif +#else // posix +#include <sys/types.h> +#include <sys/wait.h> /* WNOHANG is part of the exposed API */ #endif #include <string> |