diff options
author | miwi <miwi@FreeBSD.org> | 2010-01-29 05:33:20 +0800 |
---|---|---|
committer | miwi <miwi@FreeBSD.org> | 2010-01-29 05:33:20 +0800 |
commit | 7b4b4ee4314b1e8c7244f36d4b0f3fb0a5cf8104 (patch) | |
tree | b417778be743852ae39a3cdd4bb83fabda54bba2 | |
parent | 81920fac962202120bfcea19317d187365ebdf92 (diff) | |
download | freebsd-ports-gnome-7b4b4ee4314b1e8c7244f36d4b0f3fb0a5cf8104.tar.gz freebsd-ports-gnome-7b4b4ee4314b1e8c7244f36d4b0f3fb0a5cf8104.tar.zst freebsd-ports-gnome-7b4b4ee4314b1e8c7244f36d4b0f3fb0a5cf8104.zip |
- Fix build on HEAD
PR: 143310
Patched by: ed@
Submitted by: Konrad Heuer <kheuer@gwdg.de> (maintainer)
-rw-r--r-- | sysutils/rmonitor/Makefile | 8 | ||||
-rw-r--r-- | sysutils/rmonitor/files/extra-patch-utmpx | 51 |
2 files changed, 58 insertions, 1 deletions
diff --git a/sysutils/rmonitor/Makefile b/sysutils/rmonitor/Makefile index 1ea1202e16bd..4e45d5dc9387 100644 --- a/sysutils/rmonitor/Makefile +++ b/sysutils/rmonitor/Makefile @@ -20,4 +20,10 @@ MANCOMPRESSED= yes #CFLAGS+= -w -.include <bsd.port.mk> +.include <bsd.port.pre.mk> + +.if ${OSVERSION} >= 900007 +EXTRA_PATCHES+= ${FILESDIR}/extra-patch-utmpx +.endif + +.include <bsd.port.post.mk> diff --git a/sysutils/rmonitor/files/extra-patch-utmpx b/sysutils/rmonitor/files/extra-patch-utmpx new file mode 100644 index 000000000000..74701016bf05 --- /dev/null +++ b/sysutils/rmonitor/files/extra-patch-utmpx @@ -0,0 +1,51 @@ +--- src/rmonitor.c ++++ src/rmonitor.c +@@ -88,7 +88,7 @@ + #include <sys/vmmeter.h> + #include <time.h> + #include <unistd.h> +-#include <utmp.h> ++#include <utmpx.h> + + + #define DEFTOL 2.5 /* default tolerance */ +@@ -300,7 +300,7 @@ + int memfre = 0; + int memtot = 0; + int memuse = 0; +- int nu = -1; ++ int nu = 0; + int np = -1; + int openf = -1; + int pgcnt = 0; +@@ -309,9 +309,8 @@ + int pgsize = 0; + int slvl = 0; + int vn[3]; +- int utfd; + time_t ct; +- struct utmp utmprec; ++ struct utmpx *utmprec; + + union { + char buf[STRLEN]; +@@ -402,14 +401,12 @@ + + if (getloadavg(lavg, samples) != samples) errmsg("getloadavg"); + +- if ((utfd = open(_PATH_UTMP, O_RDONLY)) >= 0) { +- nu = 0; +- while (read(utfd, &utmprec, sizeof utmprec) > 0) +- if (*(utmprec.ut_name)) nu++; +- if (close(utfd) < 0) errmsg("close"); ++ setutxent(); ++ while ((utmprec = getutxent()) != NULL) { ++ if (utmprec->ut_type == USER_PROCESS) ++ nu++; + } +- else +- errmsg("open"); ++ endutxent(); + + #if __FreeBSD_version >= 420000 + snprintf(stat, STRLEN, |