29#ifdef HAVE_SYS_TYPES_H
30# include <sys/types.h>
32#ifdef HAVE_SYS_PARAM_H
33# include <sys/param.h>
35#ifdef HAVE_SYS__CPUSET_H
36# include <sys/_cpuset.h>
44#ifdef HAVE_SYS_SYSCTL_H
45# include <sys/sysctl.h>
57# ifndef WIN32_LEAN_AND_MEAN
58# define WIN32_LEAN_AND_MEAN 1
61# ifndef ALL_PROCESSOR_GROUPS
62# define ALL_PROCESSOR_GROUPS 0xFFFFu
64#elif defined(_WIN32) && ! defined (__CYGWIN__)
65# error Windows headers are required for Windows build
70#ifdef HAVE_SYS_CPUSET_H
71# include <sys/cpuset.h>
77#if ! defined(HAS_DECL_CPU_SETSIZE) && ! defined(CPU_SETSIZE)
78# define CPU_SETSIZE (1024)
79# define CPU_SETSIZE_SAFE (64)
81# define CPU_SETSIZE_SAFE CPU_SETSIZE
85#if ! defined(HAS_DECL_CTL_HW) && defined(CTL_HW)
86# define HAS_DECL_CTL_HW 1
89#if ! defined(HAS_DECL_HW_NCPUONLINE) && defined(HW_NCPUONLINE)
90# define HAS_DECL_HW_NCPUONLINE 1
93#if ! defined(HAS_DECL_HW_AVAILCPU) && defined(HW_AVAILCPU)
94# define HAS_DECL_HW_AVAILCPU 1
97#if ! defined(HAS_DECL_HW_NCPU) && defined(HW_NCPU)
98# define HAS_DECL_HW_NCPU 1
101#if ! defined(HAS_DECL__SC_NPROCESSORS_ONLN) && defined(_SC_NPROCESSORS_ONLN)
102# define HAS_DECL__SC_NPROCESSORS_ONLN 1
105#if ! defined(HAS_DECL__SC_NPROC_ONLN) && defined(_SC_NPROC_ONLN)
106# define HAS_DECL__SC_NPROC_ONLN 1
109#if ! defined(HAS_DECL__SC_CRAY_NCPU) && defined(_SC_CRAY_NCPU)
110# define HAS_DECL__SC_CRAY_NCPU 1
113#if ! defined(HAS_DECL__SC_NPROCESSORS_CONF) && defined(_SC_NPROCESSORS_CONF)
114# define HAS_DECL__SC_NPROCESSORS_CONF 1
132#if defined(HAVE_SCHED_GETAFFINITY) && defined(HAVE_GETPID)
154#ifdef HAVE_CPU_COUNT_S
168#ifndef MHD_FUNC_CPU_COUNT_S_GETS_CPUS
195#if defined(HAVE_CPUSET_GETAFFINITY)
220#ifdef HAVE_CPU_COUNT_S
235#ifndef MHD_FUNC_CPU_COUNT_S_GETS_CPUS
262#if defined(HAVE_SCHED_GETAFFINITY_NP) && defined(HAVE_GETPID)
272#if defined(HAVE_SYSCONF) && defined(HAVE_DECL__SC_NPROCESSORS_CONF)
327#if defined(_WIN32) && ! defined(__CYGWIN__)
333#define MHDT_MAX_GROUP_COUNT 128
363 "GetProcessGroupAffinity");
413 "GetThreadGroupAffinity");
425 "GetProcessDefaultCpuSetMasks");
528#if defined(__linux__) || defined(__GLIBC__)
572#ifdef HAVE_PSTAT_GETDYNAMIC
585#ifdef HAVE_VXCPUENABLEDGET
596#if defined(_WIN32) && ! defined (__CYGWIN__)
674#ifdef HAVE_SYSCTLBYNAME
677 size_t value_size =
sizeof (
ret);
681 || (
sizeof (
ret) != value_size))
686 size_t value_size =
sizeof (
ret);
690 || (
sizeof (
ret) != value_size))
695 size_t value_size =
sizeof (
ret);
699 || (
sizeof (
ret) != value_size))
704 size_t value_size =
sizeof (
ret);
708 || (
sizeof (
ret) != value_size))
713 size_t value_size =
sizeof (
ret);
717 || (
sizeof (
ret) != value_size))
721#if defined(HAVE_SYSCTL) && \
722 defined(HAS_DECL_CTL_HW) && \
723 defined(HAS_DECL_HW_NCPUONLINE)
728 size_t value_size =
sizeof (
ret);
730 || (
sizeof (
ret) != value_size))
734#if defined(HAVE_SYSCTL) && \
735 defined(HAS_DECL_CTL_HW) && \
736 defined(HAS_DECL_HW_AVAILCPU)
741 size_t value_size =
sizeof (
ret);
743 || (
sizeof (
ret) != value_size))
772#ifdef HAVE_SYSCTLBYNAME
775 size_t value_size =
sizeof (
ret);
779 || (
sizeof (
ret) != value_size))
783#if defined(HAVE_SYSCTL) && \
784 defined(HAS_DECL_CTL_HW) && \
785 defined(HAS_DECL_HW_NCPU)
790 size_t value_size =
sizeof (
ret);
792 || (
sizeof (
ret) != value_size))
815#if defined(HAVE_SYSCONF) && \
816 (defined(HAS_DECL__SC_NPROCESSORS_ONLN) || defined(HAS_DECL__SC_NPROC_ONLN))
818#ifdef HAS_DECL__SC_NPROCESSORS_ONLN
822#ifdef HAS_DECL__SC_NPROC_ONLN
829 if ((
long)
ret != value)
851#if defined(HAVE_SYSCONF) && \
852 (defined(HAS_DECL__SC_CRAY_NCPU) || defined(HAS_DECL__SC_NPROCESSORS_CONF))
854#ifdef HAS_DECL__SC_CRAY_NCPU
858#ifdef HAS_DECL__SC_NPROCESSORS_CONF
865 if ((
long)
ret != value)
899#if ! defined(__linux__) && ! defined(__GLIBC__)
931#if ! defined(__linux__) && ! defined(__GLIBC__)
additional automatic macros for MHD_config.h