1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
3 NAMEBASE= perl-Sys-MemInfo
7 SDESC[532]= Returns free and used physical memory (5.32)
8 SDESC[534]= Returns free and used physical memory (5.34)
10 CONTACT= Perl_Automaton[perl@ironwolf.systems]
13 SITES[main]= CPAN/ID:S/SC/SCRESTO
14 DISTFILE[1]= Sys-MemInfo-0.99.tar.gz:main
19 OPTIONS_AVAILABLE= PERL_532 PERL_534
20 OPTIONS_STANDARD= none
21 VOPTS[532]= PERL_532=ON PERL_534=OFF
22 VOPTS[534]= PERL_532=OFF PERL_534=ON
24 DISTNAME= Sys-MemInfo-0.99
30 [PERL_532].USES_ON= perl:532,configure
32 [PERL_534].USES_ON= perl:534,configure
34 [FILE:351:descriptions/desc.single]
35 This module return the total amount of free and used physical memory
36 in bytes in totalmem and freemem variables.
38 This module has been tested on Linux 3.13.0, UnixWare 7.1.2, AIX5,
39 OpenBSD 3.8, NetBSD 2.0.2, FreBSD 5.4, HPUX11, Solaris 9, Tru64 5.1,
40 Irix 6.5, MacOS X 10.2 and Windows XP.
42 It should work on FreeBSD 4 and Windows 9X/ME/NT/200X/Vista.
46 0786319d3a3a8bae5d727939244bf17e140b714f52734d5e9f627203e4cf3e3b 13276 Sys-MemInfo-0.99.tar.gz
49 [FILE:379:patches/patch-Makefile.PL]
50 --- Makefile.PL.orig 2006-11-10 00:19:12.000000000 +0200
52 @@ -36,6 +36,9 @@ for ($^O) {
54 print "Sys::MemInfo for FreeBSD 4 and lower\n";
56 + } elsif (/dragonfly/) {
57 + copy ('arch/dragonfly.xs', 'MemInfo.xs');
58 + print "Sys::MemInfo for DragonFly\n";
60 copy ('arch/bsd.xs', 'MemInfo.xs');
64 [FILE:2422:patches/patch-arch_dragonfly.xs]
65 --- /dev/null 2015-12-12 12:33:16.341252360 +0200
72 +MODULE = Sys::MemInfo PACKAGE = Sys::MemInfo
74 +#include "arch/functions.h"
77 +#include <sys/param.h>
78 +#include <sys/sysctl.h>
79 +#include <vm/vm_param.h>
85 + XPUSHs(sv_2mortal(newSVpv(_totalmem, strlen(_totalmem))));
86 + XPUSHs(sv_2mortal(newSVpv(_freemem, strlen(_freemem))));
87 + XPUSHs(sv_2mortal(newSVpv(_totalswap, strlen(_totalswap))));
88 + XPUSHs(sv_2mortal(newSVpv(_freeswap, strlen(_freeswap))));
94 + unsigned long long ret = 0;
95 + size_t len = sizeof (ret);
96 + static int mib[2] = { CTL_HW, HW_PHYSMEM };
98 + if (sysctl (mib, 2, &ret, &len, NULL, 0) != -1) {
99 + RETVAL = (double) (ret);
113 + size_t len = sizeof (fmem);
114 + static int pagesize = 0;
116 + if (!pagesize) pagesize = getpagesize();
118 + if (sysctlbyname("vm.stats.vm.v_free_count", &fmem, &len, NULL, 0) != -1) {
119 + ret = (double) (fmem);
133 + int sused_anon = 0;
134 + int sused_cache = 0;
135 + size_t len = sizeof (free_swap);
136 + static int pagesize = 0;
138 + if (!pagesize) pagesize = getpagesize();
140 + if (sysctlbyname("vm.swap_size", &free_swap, &len, NULL, 0) != -1) {
141 + ret = (double) (free_swap);
143 + if (sysctlbyname("vm.swap_anon_use", &sused_anon, &len, NULL, 0) != -1) {
144 + ret += (double) (sused_anon);
146 + if (sysctlbyname("vm.swap_cache_use", &sused_cache, &len, NULL, 0) != -1) {
147 + ret += (double) (sused_cache);
162 + size_t len = sizeof (free_swap);
163 + static int pagesize = 0;
165 + if (!pagesize) pagesize = getpagesize();
167 + if (sysctlbyname("vm.swap_size", &free_swap, &len, NULL, 0) != -1) {
168 + ret = (double) (free_swap);
177 +# vim:et:ts=2:sts=2:sw=2