aboutsummaryrefslogtreecommitdiff
path: root/math/ogdf/files/patch-src_ogdf_basic_System.cpp
diff options
context:
space:
mode:
authorAlexey Dokuchaev <danfe@FreeBSD.org>2020-06-24 12:19:03 +0000
committerAlexey Dokuchaev <danfe@FreeBSD.org>2020-06-24 12:19:03 +0000
commit8369734c89a2d325eb14123db27904e90be5ee04 (patch)
tree1275b1eb8f8136767e3530967131a1bcdb126237 /math/ogdf/files/patch-src_ogdf_basic_System.cpp
parent55c8cf44910e15dc3db49be8c2a6ac20c6038191 (diff)
Notes
Diffstat (limited to 'math/ogdf/files/patch-src_ogdf_basic_System.cpp')
-rw-r--r--math/ogdf/files/patch-src_ogdf_basic_System.cpp77
1 files changed, 77 insertions, 0 deletions
diff --git a/math/ogdf/files/patch-src_ogdf_basic_System.cpp b/math/ogdf/files/patch-src_ogdf_basic_System.cpp
new file mode 100644
index 000000000000..5ff22adb014b
--- /dev/null
+++ b/math/ogdf/files/patch-src_ogdf_basic_System.cpp
@@ -0,0 +1,77 @@
+--- src/ogdf/basic/System.cpp.orig 2015-05-29 15:36:49 UTC
++++ src/ogdf/basic/System.cpp
+@@ -52,6 +52,13 @@
+ #include <mach/vm_statistics.h>
+ #include <mach/mach.h>
+ #include <mach/machine.h>
++#elif defined(OGDF_SYSTEM_FREEBSD)
++#include <stdlib.h>
++#include <unistd.h>
++#include <sys/types.h>
++#include <sys/sysctl.h>
++#include <sys/time.h>
++#include <sys/resource.h>
+ #elif defined(OGDF_SYSTEM_UNIX)
+ #include <malloc.h>
+ #endif
+@@ -308,6 +315,40 @@ size_t System::memoryUsedByProcess()
+ return 0;
+ }
+
++#elif defined(OGDF_SYSTEM_FREEBSD)
++
++long long System::physicalMemory()
++{
++ unsigned long value;
++ size_t size = sizeof( value );
++ if (sysctlbyname("hw.physmem", (void *)&value, &size, NULL, 0) != -1)
++ return value;
++ else
++ return 0;
++}
++
++long long System::availablePhysicalMemory()
++{
++ int pageSize = getpagesize ();
++ unsigned long result;
++ size_t size = sizeof (result);
++
++ if (sysctlbyname("vm.stats.vm.v_free_count", (void *)&result, &size, NULL, 0) != -1)
++ return result * pageSize;
++ else
++ return 0;
++}
++
++
++size_t System::memoryUsedByProcess()
++{
++ struct rusage r;
++ if (getrusage(RUSAGE_SELF, &r) != -1)
++ return r.ru_maxrss;
++ else
++ return 0;
++}
++
+ #else
+ // LINUX, NOT MAC OS
+ long long System::physicalMemory()
+@@ -389,6 +430,19 @@ size_t System::memoryInFreelistOfMalloc(
+ {
+ return mstats().chunks_free;
+ }
++
++#elif defined(OGDF_SYSTEM_FREEBSD)
++
++size_t System::memoryAllocatedByMalloc()
++{
++ return 0;
++}
++
++size_t System::memoryInFreelistOfMalloc()
++{
++ return 0;
++}
++
+ #else
+
+ size_t System::memoryAllocatedByMalloc()