diff --git a/configure.ac b/configure.ac index 24b8850d1..9afa9d98b 100644 --- a/configure.ac +++ b/configure.ac @@ -1304,6 +1304,8 @@ fi # Use AC_CHECK_HEADERS so the HAVE_*_H symbol gets defined AC_CHECK_HEADERS([ncurses/termcap.h termcap.h]) +AC_CHECK_HEADERS([sys/sysctl.h]) + # --enable-openmp: Use OpenMP on multi-core processors AC_ARG_ENABLE([openmp], diff --git a/src/frontend/get_avail_mem_size.c b/src/frontend/get_avail_mem_size.c index 3d468b659..ebec4fd89 100644 --- a/src/frontend/get_avail_mem_size.c +++ b/src/frontend/get_avail_mem_size.c @@ -15,7 +15,7 @@ #include #include #include -#if defined(BSD) +#if defined(BSD) && defined(HAVE_SYS_SYSCTL_H) #include #endif #if defined(__APPLE__) && defined(__MACH__) @@ -91,7 +91,7 @@ unsigned long long getAvailableMemorySize(void) /* Linux/UNIX variants. ------------------------------------------- */ /* 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]; mib[0] = CTL_HW; #if defined(HW_MEMSIZE) @@ -119,7 +119,7 @@ unsigned long long getAvailableMemorySize(void) return (size_t)sysconf( _SC_PHYS_PAGES ) * (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. -------- */ int mib[2]; mib[0] = CTL_HW; diff --git a/src/frontend/get_phys_mem_size.c b/src/frontend/get_phys_mem_size.c index 3ebb92407..c40e5a327 100644 --- a/src/frontend/get_phys_mem_size.c +++ b/src/frontend/get_phys_mem_size.c @@ -17,7 +17,7 @@ #include #include #include -#if defined(BSD) +#if defined(BSD) && defined(HAVE_SYS_SYSCTL_H) #include #endif @@ -98,7 +98,7 @@ unsigned long long getMemorySize(void) return (unsigned long long) sysconf(_SC_PHYS_PAGES) * (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. -------- */ int mib[2]; mib[0] = CTL_HW;