diff --git a/libs/image/kis_image_config.cpp b/libs/image/kis_image_config.cpp --- a/libs/image/kis_image_config.cpp +++ b/libs/image/kis_image_config.cpp @@ -310,7 +310,7 @@ #if defined Q_OS_LINUX #include -#elif defined Q_OS_FREEBSD +#elif defined Q_OS_FREEBSD || defined Q_OS_NETBSD || defined Q_OS_OPENBSD #include #elif defined Q_OS_WIN #include @@ -334,9 +334,13 @@ if(!error) { totalMemory = info.totalram * info.mem_unit / (1UL << 20); } -#elif defined Q_OS_FREEBSD +#elif defined Q_OS_FREEBSD || defined Q_OS_NETBSD || defined Q_OS_OPENBSD u_long physmem; +# if defined HW_PHYSMEM64 // NetBSD only + int mib[] = {CTL_HW, HW_PHYSMEM64}; +# else int mib[] = {CTL_HW, HW_PHYSMEM}; +# endif size_t len = sizeof(physmem); error = sysctl(mib, 2, &physmem, &len, NULL, 0);