diff --git a/src/common/system.cpp b/src/common/system.cpp index cf032adfced..35a6f4415bc 100644 --- a/src/common/system.cpp +++ b/src/common/system.cpp @@ -113,10 +113,15 @@ int GetNumCores() std::optional GetTotalRAM() { - auto clamp{[](uint64_t v) { return size_t(std::min(v, uint64_t{std::numeric_limits::max()})); }}; + [[maybe_unused]] auto clamp{[](uint64_t v) { return size_t(std::min(v, uint64_t{std::numeric_limits::max()})); }}; #ifdef WIN32 if (MEMORYSTATUSEX m{}; (m.dwLength = sizeof(m), GlobalMemoryStatusEx(&m))) return clamp(m.ullTotalPhys); -#elif defined(__linux__) || defined(__APPLE__) +#elif defined(__APPLE__) || \ + defined(__FreeBSD__) || \ + defined(__NetBSD__) || \ + defined(__OpenBSD__) || \ + defined(__illumos__) || \ + defined(__linux__) if (long p{sysconf(_SC_PHYS_PAGES)}, s{sysconf(_SC_PAGESIZE)}; p > 0 && s > 0) return clamp(1ULL * p * s); #endif return std::nullopt;