Add a check for sys/sysctrl.h, which has been declared deprecated,
and which may not be available (in the future) on some systems.
This commit is contained in:
parent
1b17c5cc59
commit
79ebf219fe
|
|
@ -1304,6 +1304,8 @@ fi
|
||||||
|
|
||||||
# Use AC_CHECK_HEADERS so the HAVE_*_H symbol gets defined
|
# Use AC_CHECK_HEADERS so the HAVE_*_H symbol gets defined
|
||||||
AC_CHECK_HEADERS([ncurses/termcap.h termcap.h])
|
AC_CHECK_HEADERS([ncurses/termcap.h termcap.h])
|
||||||
|
AC_CHECK_HEADERS([sys/sysctl.h])
|
||||||
|
|
||||||
|
|
||||||
# --enable-openmp: Use OpenMP on multi-core processors
|
# --enable-openmp: Use OpenMP on multi-core processors
|
||||||
AC_ARG_ENABLE([openmp],
|
AC_ARG_ENABLE([openmp],
|
||||||
|
|
|
||||||
|
|
@ -15,7 +15,7 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#if defined(BSD)
|
#if defined(BSD) && defined(HAVE_SYS_SYSCTL_H)
|
||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
#endif
|
#endif
|
||||||
#if defined(__APPLE__) && defined(__MACH__)
|
#if defined(__APPLE__) && defined(__MACH__)
|
||||||
|
|
@ -91,7 +91,7 @@ unsigned long long getAvailableMemorySize(void)
|
||||||
/* Linux/UNIX variants. ------------------------------------------- */
|
/* Linux/UNIX variants. ------------------------------------------- */
|
||||||
/* Prefer sysctl() over sysconf() except sysctl() HW_REALMEM and HW_PHYSMEM */
|
/* Prefer sysctl() over sysconf() except sysctl() HW_REALMEM and HW_PHYSMEM */
|
||||||
|
|
||||||
#if defined(CTL_HW) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM64))
|
#if defined(CTL_HW) && (defined(HW_MEMSIZE) || defined(HW_PHYSMEM64)) && defined(HAVE_SYS_SYSCTL_H)
|
||||||
int mib[2];
|
int mib[2];
|
||||||
mib[0] = CTL_HW;
|
mib[0] = CTL_HW;
|
||||||
#if defined(HW_MEMSIZE)
|
#if defined(HW_MEMSIZE)
|
||||||
|
|
@ -119,7 +119,7 @@ unsigned long long getAvailableMemorySize(void)
|
||||||
return (size_t)sysconf( _SC_PHYS_PAGES ) *
|
return (size_t)sysconf( _SC_PHYS_PAGES ) *
|
||||||
(size_t)sysconf( _SC_PAGE_SIZE );
|
(size_t)sysconf( _SC_PAGE_SIZE );
|
||||||
|
|
||||||
#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM))
|
#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM)) && defined(HAVE_SYS_SYSCTL_H)
|
||||||
/* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */
|
/* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */
|
||||||
int mib[2];
|
int mib[2];
|
||||||
mib[0] = CTL_HW;
|
mib[0] = CTL_HW;
|
||||||
|
|
|
||||||
|
|
@ -17,7 +17,7 @@
|
||||||
#include <unistd.h>
|
#include <unistd.h>
|
||||||
#include <sys/types.h>
|
#include <sys/types.h>
|
||||||
#include <sys/param.h>
|
#include <sys/param.h>
|
||||||
#if defined(BSD)
|
#if defined(BSD) && defined(HAVE_SYS_SYSCTL_H)
|
||||||
#include <sys/sysctl.h>
|
#include <sys/sysctl.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
@ -98,7 +98,7 @@ unsigned long long getMemorySize(void)
|
||||||
return (unsigned long long) sysconf(_SC_PHYS_PAGES) *
|
return (unsigned long long) sysconf(_SC_PHYS_PAGES) *
|
||||||
(unsigned long long) sysconf(_SC_PAGE_SIZE);
|
(unsigned long long) sysconf(_SC_PAGE_SIZE);
|
||||||
|
|
||||||
#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM))
|
#elif defined(CTL_HW) && (defined(HW_PHYSMEM) || defined(HW_REALMEM)) && defined(HAVE_SYS_SYSCTL_H)
|
||||||
/* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */
|
/* DragonFly BSD, FreeBSD, NetBSD, OpenBSD, and OSX. -------- */
|
||||||
int mib[2];
|
int mib[2];
|
||||||
mib[0] = CTL_HW;
|
mib[0] = CTL_HW;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue