Mon Dec 19 21:00:16 2022 UTC ()
x11/xmem: initial import.

XMem is an X11 utility to display memory and swap usage.  It was
initially created by the K. Shane Hartman (MIT-LCS) and Stuart A. Malone
(MIT-LCS); with features added by Jim Gettys (MIT-Athena), Bob Scheifler
(MIT-LCS), Tony Della Fera (MIT-Athena), and Chris Peterson (MIT-LCS).

Updated 2007/04 by Michelle Konzack, and then by Christian Barthel
(2017/01), who introduced OpenBSD support.


(vins)
diff -r0 -r1.1 pkgsrc/x11/xmem/DESCR
diff -r0 -r1.1 pkgsrc/x11/xmem/Makefile
diff -r0 -r1.1 pkgsrc/x11/xmem/PLIST
diff -r0 -r1.1 pkgsrc/x11/xmem/distinfo
diff -r0 -r1.1 pkgsrc/x11/xmem/patches/patch-get__mem.c
diff -r0 -r1.1 pkgsrc/x11/xmem/patches/patch-xmem.1

File Added: pkgsrc/x11/xmem/DESCR
XMem is a tiny graphical utility using the Xaw toolkit, which monitors
and displays swap and memory (free, active, buffer, cached) usage.

File Added: pkgsrc/x11/xmem/Makefile
# $NetBSD: Makefile,v 1.1 2022/12/19 21:00:16 vins Exp $

DISTNAME=	xmem_${PKGVER:S/./_/}
PKGVER=		1.29
PKGNAME=	xmem-${PKGVER}
CATEGORIES=	x11 sysutils
MASTER_SITES=	${HOMEPAGE}/archive/

MAINTAINER=	vins@NetBSD.org
HOMEPAGE=	https://git.sdf.org/bch/xmem
COMMENT=	Memory and swap meter for X11
LICENSE=	mit

SUBST_CLASSES+=		paths
SUBST_STAGE.paths=	pre-configure
SUBST_FILES.paths+=	xmem.1
SUBST_VARS.paths=	PREFIX
SUBST_MESSAGE.paths=	Replacing PREFIX placeholders.

.include "../../mk/bsd.prefs.mk"
.if ${OPSYS:M*BSD} || ${OPSYS} == "Darwin" || ${OPSYS} == "DragonFly"
LDFLAGS+=	-lkvm
.endif

.for lib in X11 Xt Xaw Xmu
LDFLAGS+=	-l${lib}
.endfor

MAKE_FLAGS+=	CC=${CC:Q}
MAKE_FLAGS+=	CFLAGS=${CFLAGS:Q}
MAKE_FLAGS+=	LDFLAGS=${LDFLAGS:Q}
MAKE_FLAGS+=	PREFIX=${PREFIX:Q}

INSTALLATION_DIRS=	bin ${PKGMANDIR}/man1
INSTALLATION_DIRS+=	share/${PKGBASE}
INSTALLATION_DIRS+=	lib/X11/app-defaults

WRKSRC=	${WRKDIR}/xmem

do-install:
	${INSTALL_PROGRAM} ${WRKSRC}/xmem			\
		${DESTDIR}${PREFIX}/bin
	${INSTALL_MAN} ${WRKSRC}/xmem.1 			\
		${DESTDIR}${PREFIX}/${PKGMANDIR}/man1
	${INSTALL_DATA} ${WRKSRC}/XMem.ad 			\
		${DESTDIR}${PREFIX}/lib/X11/app-defaults/XMem
.for f in xmem.bit copyright
	${INSTALL_DATA} ${WRKSRC}/${f}				\
		${DESTDIR}${PREFIX}/share/${PKGBASE}
.endfor

.include "../../x11/libXaw/buildlink3.mk"
.include "../../x11/libXmu/buildlink3.mk"
.include "../../x11/libXt/buildlink3.mk"
.include "../../x11/libX11/buildlink3.mk"
.include "../../mk/bsd.pkg.mk"

File Added: pkgsrc/x11/xmem/PLIST
@comment $NetBSD: PLIST,v 1.1 2022/12/19 21:00:16 vins Exp $
bin/xmem
lib/X11/app-defaults/XMem
man/man1/xmem.1
share/xmem/copyright
share/xmem/xmem.bit

File Added: pkgsrc/x11/xmem/distinfo
$NetBSD: distinfo,v 1.1 2022/12/19 21:00:16 vins Exp $

BLAKE2s (xmem_1_29.tar.gz) = 7097275ecaba3444bb6cf118c9bd782d692129a084426d16942d51e1a00221f2
SHA512 (xmem_1_29.tar.gz) = 4d5b14d59c7da86715831a985a922ca820239608a9e510bbf5fa79e1cc1b72e5f48f2fa991409c6ba8318d5d320d8d8c12a7e37993b0132070c003464fb48e2b
Size (xmem_1_29.tar.gz) = 1004011 bytes
SHA1 (patch-get__mem.c) = f644c4cd7d781ccad9284de79a6840c2ff30103e
SHA1 (patch-xmem.1) = abdb4a4c55ea8d5f24568a8e6cabb980d83bca11

File Added: pkgsrc/x11/xmem/patches/patch-get__mem.c
$NetBSD: patch-get__mem.c,v 1.1 2022/12/19 21:00:16 vins Exp $

Rely on procfs on NetBSD to get memory statistics.

--- get_mem.c.orig	2022-02-05 06:40:03.000000000 +0000
+++ get_mem.c
@@ -250,7 +250,7 @@ void GetMemLoadPoint(Widget w, caddr_t c
 
 
 /* ------------------------------------------------------------------ */
-#if __gnu_linux__
+#if defined(__linux__) || defined (__NetBSD__)
 #include <X11/Xos.h>
 #include <X11/Intrinsic.h>
 #include <stdio.h>

File Added: pkgsrc/x11/xmem/patches/patch-xmem.1
$NetBSD: patch-xmem.1,v 1.1 2022/12/19 21:00:16 vins Exp $

Do not hard-code paths.

--- xmem.1.orig	2022-02-05 06:40:03.000000000 +0000
+++ xmem.1
@@ -105,7 +105,7 @@ to get the default host and display numb
 to get the name of a resource file that overrides the global resources
 stored in the RESOURCE_MANAGER property.
 .SH FILES
-/etc/X11/app-defaults/XMem - specifies required resources
+@PREFIX@/lib/X11/app-defaults/XMem - specifies required resources
 .SH SEE ALSO
 X(1), xrdb(1), mem(4), Athena StripChart Widget.
 .SH BUGS