Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 24 Mar 2013 16:45:15 GMT
From:      Tomi Tapper <tomi.o.tapper@student.jyu.fi>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   ports/177349: [patch] sysutils/xosview new version available
Message-ID:  <201303241645.r2OGjF1f057015@red.freebsd.org>
Resent-Message-ID: <201303241650.r2OGo1ea088631@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         177349
>Category:       ports
>Synopsis:       [patch] sysutils/xosview new version available
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Mar 24 16:50:00 UTC 2013
>Closed-Date:
>Last-Modified:
>Originator:     Tomi Tapper
>Release:        9.1
>Organization:
>Environment:
FreeBSD localhost.localdomain 9.1-RELEASE-p1 FreeBSD 9.1-RELEASE-p1 #0 r247464: Thu Feb 28 17:41:00 EET 2013     root@localhost.localdomain:/usr/obj/usr/src/sys/CUSTOM  amd64
>Description:
There's a new version of xosview (1.13) available. This version has updated support for FreeBSD 7 and above.
>How-To-Repeat:

>Fix:
I have attached a patch for the ports tree (tested on 9.1 amd64).

Patch attached with submission follows:

diff -Nurb xosview.orig/Makefile xosview/Makefile
--- xosview.orig/Makefile	2013-03-24 18:37:13.000000000 +0200
+++ xosview/Makefile	2013-03-24 18:37:30.000000000 +0200
@@ -7,43 +7,22 @@
 #
 
 PORTNAME=	xosview
-PORTVERSION=	1.8.3
-PORTREVISION=	3
+PORTVERSION=	1.13
 CATEGORIES=	sysutils
-MASTER_SITES=	SF/${PORTNAME}/${PORTNAME}/${PORTNAME}-${PORTVERSION}
+MASTER_SITES=	http://www.pogo.org.uk/~mark/xosview/releases/
 
 MAINTAINER=	clsung@FreeBSD.org
 COMMENT=	A graphical performance meter
 
-USE_XORG=	xpm
-GNU_CONFIGURE=	yes
+USE_GMAKE=	yes
+USE_XORG=	x11
 MAN1=		xosview.1
+MAKE_ENV+=	PLATFORM=bsd MANDIR=${LOCALBASE}/man
+ALL_TARGET=
 
 .include <bsd.port.pre.mk>
 
-post-patch:
-	@${REINPLACE_CMD} -e 's,iostream.h,iostream,' \
-		${WRKSRC}/xwin.h \
-		${WRKSRC}/Host.h \
-		${WRKSRC}/Xrm.cc \
-		${WRKSRC}/llist.cc \
-		${WRKSRC}/timeval.h \
-		${WRKSRC}/xosview.cc
-	@${REINPLACE_CMD} -e 's,string.h,string,' \
-		${WRKSRC}/xwin.h \
-		${WRKSRC}/Host.cc \
-		${WRKSRC}/Xrm.cc \
-		${WRKSRC}/llist.cc \
-		${WRKSRC}/timeval.h \
-		${WRKSRC}/xosview.cc
-	@${REINPLACE_CMD} -e 's,fstream.h,fstream,' \
-		${WRKSRC}/bitfieldmeter.cc \
-		${WRKSRC}/fieldmeter.cc \
-		${WRKSRC}/fieldmeterdecay.cc \
-		${WRKSRC}/fieldmetergraph.cc
-	@${REINPLACE_CMD} -e 's,-O4,,' \
-		${WRKSRC}/configure
-	@${REINPLACE_CMD} -e 's,/share/man,/man,' \
-		${WRKSRC}/config/Makefile.top.in
+do-configure:
+	@${CP} ${WRKSRC}/targets/freebsd-9.0 ${WRKSRC}/.config
 
 .include <bsd.port.post.mk>
diff -Nurb xosview.orig/distinfo xosview/distinfo
--- xosview.orig/distinfo	2013-03-24 18:37:13.000000000 +0200
+++ xosview/distinfo	2013-03-24 18:37:28.000000000 +0200
@@ -1,2 +1,2 @@
-SHA256 (xosview-1.8.3.tar.gz) = 3aa28fb12552ea106e06f6958e1a0913bde8b0bb1491c091a3f1849717736b66
-SIZE (xosview-1.8.3.tar.gz) = 259793
+SHA256 (xosview-1.13.tar.gz) = 5f840842a3cb2bb37d76111c3035421f41c846de3ff1ddf3fd6d31a00d1a12e4
+SIZE (xosview-1.13.tar.gz) = 135285
\ No newline at end of file
diff -Nurb xosview.orig/files/patch-ae xosview/files/patch-ae
--- xosview.orig/files/patch-ae	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-ae	1970-01-01 02:00:00.000000000 +0200
@@ -1,21 +0,0 @@
---- Xdefaults.in.orig	2006-02-18 00:45:00.000000000 -0500
-+++ Xdefaults.in	2010-03-30 19:54:34.499193987 -0400
-@@ -169,15 +169,15 @@
- 
- ! Interrupt Meter Resources
- 
--xosview*interrupts:         True
-+xosview*interrupts:         False
- xosview*intOnColor:         red
- xosview*intOffColor:        aquamarine
- xosview*intPriority:	    1
- 
- ! Interrupt Rate Meter Resources
--xosview*irqrate:	True
-+xosview*irqrate:	False
- xosview*irqrateUsedColor:	red
--xosview*irqrateIdleColor:	black
-+xosview*irqrateIdleColor:	aquamarine
- xosview*irqratePriority:	1
- xosview*irqrateUsedFormat:  autoscale
- xosview*irqrateDecay:	True
diff -Nurb xosview.orig/files/patch-configure xosview/files/patch-configure
--- xosview.orig/files/patch-configure	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-configure	1970-01-01 02:00:00.000000000 +0200
@@ -1,20 +0,0 @@
---- configure.orig	2006-02-18 05:34:12.000000000 +0100
-+++ configure	2011-12-27 18:24:08.000000000 +0100
-@@ -5071,7 +5071,7 @@
-     echo host_dir is $host_dir
-     host_os=netbsd ;;
- 
--freebsd[0123]*)
-+freebsd[0123].*)
-         EXTRALIBS="-lkvm $XPMLIB $DEVSTATLIB"
-         INSTALL_ARGS='-s -g kmem -m 02555'
- 	NetMeter_Default_Setting=True
-@@ -5085,7 +5085,7 @@
- 
- 			host_dir=bsd
- 	host_os=freebsd ;;
--freebsd[4]*)
-+freebsd[4567891]*)
-         EXTRALIBS="-lkvm $XPMLIB $DEVSTATLIB"
-         INSTALL_ARGS='-s -g kmem -m 02555'
- 	NetMeter_Default_Setting=True
diff -Nurb xosview.orig/files/patch-intmeter.cc xosview/files/patch-intmeter.cc
--- xosview.orig/files/patch-intmeter.cc	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-intmeter.cc	1970-01-01 02:00:00.000000000 +0200
@@ -1,24 +0,0 @@
---- bsd/intmeter.cc.orig	Sat Jun 10 17:37:21 2000
-+++ bsd/intmeter.cc	Sat Jun 10 17:37:51 2000
-@@ -22,9 +22,9 @@
-   //  out the door.
-   //  Same goes for platforms (like Alpha) with more than 16
-   //  interrupts.
--  : BitMeter( parent, "INTS", "IRQs", 16 /*BSDNumInts()*/, 
-+  : BitMeter( parent, "INTS", "IRQs", BSDNumInts(), 
-               dolegends, dousedlegends ) {
--  for ( int i = 0 ; i < 16 ; i++ )
-+  for ( int i = 0 ; i < BSDNumInts(); i++ )
-     irqs_[i] = lastirqs_[i] = 0;
- }
- 
-@@ -34,7 +34,7 @@
- void IntMeter::checkevent( void ){
-   getirqs();
- 
--  for ( int i = 0 ; i < 16 ; i++ ){
-+  for ( int i = 0 ; i < BSDNumInts() ; i++ ){
-     bits_[i] = ((irqs_[i] - lastirqs_[i]) != 0);
-     lastirqs_[i] = irqs_[i];
-   }
-
diff -Nurb xosview.orig/files/patch-kernel.cc xosview/files/patch-kernel.cc
--- xosview.orig/files/patch-kernel.cc	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-kernel.cc	1970-01-01 02:00:00.000000000 +0200
@@ -1,339 +0,0 @@
---- bsd/kernel.cc.orig	2006-02-18 08:36:06.000000000 +0100
-+++ bsd/kernel.cc	2008-12-15 15:46:05.000000000 +0100
-@@ -54,6 +54,7 @@
- #endif
- 
- #ifdef HAVE_DEVSTAT
-+#include <sys/dkstat.h>
- #include <devstat.h>
- #include <stdlib.h>	/*  For malloc().  */
- void DevStat_Init();
-@@ -83,6 +84,10 @@
- #else
- #include <sys/dkstat.h>
- #endif
-+#if defined(XOSVIEW_FREEBSD) && (__FreeBSD_version >= 700000)
-+#include <sys/resource.h>
-+#include <sys/sysctl.h>
-+#endif
- 
- #ifdef HAVE_SWAPCTL
- #include <unistd.h>		/*  For swapctl proto.  */
-@@ -135,7 +140,7 @@
- // this later on.  This keeps the indices within the nlist constant.
- #define DUMMY_SYM "dummy_sym"
- 
--#if defined(XOSVIEW_BSDI) || (defined(XOSVIEW_NETBSD) && (__NetBSD_Version__ >= 104260000))
-+#if defined(XOSVIEW_BSDI) || (defined(XOSVIEW_NETBSD) && (__NetBSD_Version__ >= 104260000)) || (defined(XOSVIEW_FREEBSD) && (__FreeBSD_version >= 700000))
- // BSDI and __NetBSD_Version__ >= 104260000 reads cp_time through sysctl
- { DUMMY_SYM },
- #define DUMMY_0
-@@ -211,19 +216,28 @@
- 
- { "_bufspace" },
- #define BUFSPACE_SYM_INDEX      3
-+#if __FreeBSD_version < 500000
- { "_intr_countp" },
- #define INTRCOUNTP_SYM_INDEX 	4
-+{ DUMMY_SYM },
-+#define DUMMY_5			5
-+#else
-+{ "_intrnames" },
-+#define INTRNAMES_SYM_INDEX 	4
-+{ "_eintrnames" },
-+#define EINTRNAMES_SYM_INDEX 	5
-+#endif /* FreeBSD < 5.x */
- { "_intrcnt" },
--#define INTRCNT_SYM_INDEX 	5
-+#define INTRCNT_SYM_INDEX 	6
- { "_eintrcnt" },
--#define EINTRCNT_SYM_INDEX 	6
-+#define EINTRCNT_SYM_INDEX 	7
- 
- #ifndef HAVE_DEVSTAT
- 
- { "_dk_ndrive" },
--#define DK_NDRIVE_SYM_INDEX     7
-+#define DK_NDRIVE_SYM_INDEX     8
- { "_dk_wds" },
--#define DK_WDS_SYM_INDEX        8
-+#define DK_WDS_SYM_INDEX        9
- 
- #endif /*HAVE_DEVSTAT */
- 
-@@ -329,7 +343,12 @@
-   while (nlp && nlp->n_name && strncmp(nlp->n_name, DUMMY_SYM, strlen(DUMMY_SYM))) {
-     if ((nlp->n_type == 0) || (nlp->n_value == 0))
-       /*errx (-1, "kvm_nlist() lookup failed for symbol '%s'.", nlp->n_name);*/
-+#if defined(XOSVIEW_FREEBSD) && defined(__alpha__)
-+	/* XXX: this should be properly fixed. */
-+	;
-+#else
-       warnx ("kvm_nlist() lookup failed for symbol '%s'.", nlp->n_name);
-+#endif
-     nlp++;
-   }
- #ifdef HAVE_DEVSTAT
-@@ -402,11 +421,17 @@
- #if defined(XOSVIEW_NETBSD) && (__NetBSD_Version__ >= 104260000)
-   static int mib[] = { CTL_KERN, KERN_CP_TIME };
- #endif
-+#if defined(XOSVIEW_FREEBSD) && (__FreeBSD_version >= 700000)
-+
-+  long cpu[CPUSTATES];
-+  size_t size = sizeof(cpu);
-+
-+#endif
- 
-   if (!timeArray) errx (-1, "BSDGetCPUTimes():  passed pointer was null!\n");
-   if (CPUSTATES != 5)
-     errx (-1, "Error:  xosview for *BSD expects 5 cpu states!\n");
--#if defined(__NetBSD_Version__) && __NetBSD_Version__ > 104260000 /* > 1.4Z */
-+#if (defined(__NetBSD_Version__) && __NetBSD_Version__ > 104260000) /* > 1.4Z */
-   struct schedstate_percpu ssp;
-   size_t size = sizeof(ssp.spc_cp_time);
-   if (sysctl(mib, 2, ssp.spc_cp_time, &size, NULL, 0) < 0) {
-@@ -423,9 +448,18 @@
-   }
-   bcopy (cpu.cp_time,timeArray,sizeof (long) * CPUSTATES);
- #else
-+#if defined(XOSVIEW_FREEBSD) && (__FreeBSD_version >= 700000)
-+
-+  if (sysctlbyname("kern.cp_time", &cpu, &size, NULL, 0) < 0) {
-+    fprintf(stderr, "xosview: sysctl failed: %s\n", strerror(errno));
-+    bzero(&cpu, sizeof(cpu));
-+  }
-+  bcopy (cpu,timeArray,sizeof (long) * CPUSTATES);
-+#else
-   safe_kvm_read_symbol (CP_TIME_SYM_INDEX, timeArray, sizeof (long) * CPUSTATES);
- #endif
- #endif
-+#endif
- }
- 
- 
-@@ -597,13 +631,21 @@
- 	 * Make sure that the userland devstat version matches the kernel
- 	 * devstat version.
- 	 */
-+#if __FreeBSD_version >= 500000
-+	if (devstat_checkversion(kd) < 0) {
-+#else
- 	if (checkversion() < 0) {
-+#endif
- 		nodisk++;
- 		return;
- 	}
- 
- 	/* find out how many devices we have */
-+#if __FreeBSD_version >= 500000
-+	if ((num_devices = devstat_getnumdevs(kd)) < 0) {
-+#else
- 	if ((num_devices = getnumdevs()) < 0) {
-+#endif
- 		nodisk++;
- 		return;
- 	}
-@@ -618,7 +660,11 @@
- 	 * changed here, since it almost certainly has.  We only look for
- 	 * errors.
- 	 */
-+#if __FreeBSD_version >= 500000
-+	if (devstat_getdevs(kd,&cur) == -1) {
-+#else
- 	if (getdevs(&cur) == -1) {
-+#endif
- 		nodisk++;
- 		return;
- 	}
-@@ -630,7 +676,11 @@
- 
- 	/* only interested in disks */
- 	matches = NULL;
-+#if __FreeBSD_version >= 500000
-+	if (devstat_buildmatch("da", &matches, &num_matches) != 0) {
-+#else
- 	if (buildmatch("da", &matches, &num_matches) != 0) {
-+#endif
- 		nodisk++;
- 		return;
- 	}
-@@ -645,13 +695,18 @@
- 	 * device list has changed, so we don't look for return values of 0
- 	 * or 1.  If we get back -1, though, there is an error.
- 	 */
-+#if __FreeBSD_version >= 500000
-+	if (devstat_selectdevs(&dev_select, &num_selected,
-+#else
- 	if (selectdevs(&dev_select, &num_selected,
-+#endif
- 		       &num_selections, &select_generation,
- 		       generation, cur.dinfo->devices, num_devices,
- 		       matches, num_matches,
- 		       NULL, 0,
- 		       select_mode, 10, 0) == -1)
- 		nodisk++;
-+
- }
- 
- int
-@@ -672,7 +727,11 @@
- 		 * the selection process again, in case a device that we
- 		 * were previously displaying has gone away.
- 		 */
-+#if __FreeBSD_version >= 500000
-+		switch (devstat_getdevs(kd,&cur)) {
-+#else
- 		switch (getdevs(&cur)) {
-+#endif
- 		case -1:
- 			return (0);
- 		case 1: {
-@@ -680,7 +739,11 @@
- 
- 			num_devices = cur.dinfo->numdevs;
- 			generation = cur.dinfo->generation;
-+#if __FreeBSD_version >= 500000
-+			retval = devstat_selectdevs(&dev_select, &num_selected,
-+#else
- 			retval = selectdevs(&dev_select, &num_selected,
-+#endif
- 					    &num_selections, &select_generation,
- 					    generation, cur.dinfo->devices,
- 					    num_devices, matches, num_matches,
-@@ -704,14 +767,22 @@
- 		 * Calculate elapsed time up front, since it's the same for all
- 		 * devices.
- 		 */
-+#if __FreeBSD_version >= 500000
-+		busy_seconds = cur.snap_time - last.snap_time;
-+#else
- 		busy_seconds = compute_etime(cur.busy_time, last.busy_time);
-+#endif
- 
- 		/* this is the first time thru so just copy cur to last */
- 		if (last.dinfo->numdevs == 0) {
- 			tmp_dinfo = last.dinfo;
- 			last.dinfo = cur.dinfo;
- 			cur.dinfo = tmp_dinfo;
-+#if __FreeBSD_version >= 500000
-+			last.snap_time = cur.snap_time;
-+#else
- 			last.busy_time = cur.busy_time;
-+#endif
- 			return (0);
- 		}
- 
-@@ -725,12 +796,15 @@
- 
- 			di = dev_select[dn].position;
- 
-+#if __FreeBSD_version >= 500000
-+			if (devstat_compute_statistics(&cur.dinfo->devices[di],
-+#else
- 			if (compute_stats(&cur.dinfo->devices[di],
-+#endif
- 				  &last.dinfo->devices[di], busy_seconds,
--				  &total_bytes, &total_transfers,
--				  NULL, NULL,
--				  NULL, NULL, 
--				  NULL, NULL)!= 0)
-+				  DSM_TOTAL_BYTES, &total_bytes,
-+				  DSM_TOTAL_TRANSFERS, &total_transfers,
-+				  DSM_NONE)!= 0)
- 				  break;
- 			total_xfers += (int)total_transfers;
- 			total_xbytes += (int)total_bytes;
-@@ -740,7 +814,11 @@
- 		last.dinfo = cur.dinfo;
- 		cur.dinfo = tmp_dinfo;
- 
-+#if __FreeBSD_version >= 500000
-+		last.snap_time = cur.snap_time;
-+#else
- 		last.busy_time = cur.busy_time;
-+#endif
- 
- 	} else {
- 		/* no disks found ? */
-@@ -912,25 +990,26 @@
-   OpenKDIfNeeded(); 
-   nintr = (nlst[EINTRCNT_SYM_INDEX].n_value -
- 	   nlst[INTRCNT_SYM_INDEX].n_value)   / sizeof(int);
--#ifdef XOSVIEW_FREEBSD
--  /*  I'm not sure exactly how FreeBSD does things, but just do
-+#if defined(i386)
-+# if defined(XOSVIEW_FREEBSD)
-+  /*  I'm not sure exactly how FreeBSD/i386 does things, but just do
-    *  16 for now.  bgrayson  */
-   return 16;
--#else
--# if defined(i386)
-+# else
-   /*  On the 386 platform, we count stray interrupts between
-    *  intrct and eintrcnt, also, but we don't want to show these.  */
-   return nintr/2;
--# else
--  return nintr;
- # endif
-+#else
-+  return nintr;
- #endif
- }
- #endif /* XOSVIEW_OPENBSD */
- 
- void
- BSDGetIntrStats (unsigned long intrCount[NUM_INTR]) {
--#ifdef XOSVIEW_FREEBSD
-+#if defined(XOSVIEW_FREEBSD) && defined(__i386__)
-+#if __FreeBSD_version < 500000
-     /* FreeBSD has an array of interrupt counts, indexed by device number.
-        These are also indirected by IRQ num with intr_countp: */
-     safe_kvm_read (nlst[INTRCOUNTP_SYM_INDEX].n_value,
-@@ -944,6 +1023,46 @@
- 	    sizeof(unsigned long);
- 	intrCount[i] = kvm_intrcnt[idx];
-     }
-+#else /* FreeBSD 5.x and 6.x */
-+    /* This code is stolen from vmstat */
-+    unsigned long *kvm_intrcnt, *base_intrcnt;
-+    char *kvm_intrname, *base_intrname;
-+    size_t inamlen, intrcntlen;
-+    unsigned int i, nintr;
-+    int d;
-+
-+    intrcntlen = (nlst[EINTRCNT_SYM_INDEX].n_value - nlst[INTRCNT_SYM_INDEX].n_value);
-+    inamlen = nlst[EINTRNAMES_SYM_INDEX].n_value - nlst[INTRNAMES_SYM_INDEX].n_value;
-+    nintr = intrcntlen / sizeof(unsigned long);
-+
-+    if (((kvm_intrcnt = (unsigned long *)malloc(intrcntlen)) == NULL) || 
-+	((kvm_intrname = (char *)malloc(inamlen)) == NULL))
-+      err(1, "malloc()");
-+
-+    // keep track of the mem we're given:
-+    base_intrcnt = kvm_intrcnt;
-+    base_intrname = kvm_intrname;
-+
-+    safe_kvm_read (nlst[INTRCNT_SYM_INDEX].n_value, kvm_intrcnt, intrcntlen);
-+    safe_kvm_read (nlst[INTRNAMES_SYM_INDEX].n_value, kvm_intrname, inamlen);
-+
-+    /* kvm_intrname has the ASCII names of the IRQs, every null-terminated
-+     * string corresponds to a value in the kvm_intrcnt array */
-+    for (i=0; i < nintr; i++) {
-+	if (kvm_intrname[0] != '\0' && (*kvm_intrcnt != 0)) {
-+	  /* Figure out which irq we have here */
-+	    if (1 == sscanf(kvm_intrname, "irq%d:", &d))
-+	      if (d < NUM_INTR)
-+		intrCount[d] = *kvm_intrcnt;
-+	}
-+	kvm_intrcnt++;
-+	kvm_intrname += strlen(kvm_intrname) + 1;
-+    }
-+
-+    // Doh! somebody needs to free this stuff too... (pavel 20-Jan-2006)
-+    free(base_intrcnt);
-+    free(base_intrname);
-+#endif
- #elif defined (XOSVIEW_BSDI)
-     int nintr = 16;
- #if _BSDI_VERSION >= 199802 /* BSD/OS 4.x */
diff -Nurb xosview.orig/files/patch-kernel.h xosview/files/patch-kernel.h
--- xosview.orig/files/patch-kernel.h	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-kernel.h	1970-01-01 02:00:00.000000000 +0200
@@ -1,15 +0,0 @@
---- bsd/kernel.h.orig	Fri May 29 14:21:36 1998
-+++ bsd/kernel.h	Tue Aug 21 10:50:17 2001
-@@ -67,7 +67,11 @@
- #endif
- 
- 
--#define NUM_INTR	16
-+#if defined(XOSVIEW_FREEBSD) && defined(__alpha__)
-+# define NUM_INTR	256
-+#else
-+# define NUM_INTR	16
-+#endif
- 
- int
- BSDIntrInit();
diff -Nurb xosview.orig/files/patch-swapinternal.cc xosview/files/patch-swapinternal.cc
--- xosview.orig/files/patch-swapinternal.cc	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-swapinternal.cc	1970-01-01 02:00:00.000000000 +0200
@@ -1,24 +0,0 @@
---- bsd/swapinternal.cc.orig	Tue Nov 16 23:16:20 1999
-+++ bsd/swapinternal.cc	Tue Aug 21 11:27:26 2001
-@@ -459,16 +459,17 @@
- #endif /* XOSVIEW_FREEBSD */
- 
- void
--BSDGetSwapInfo(int* total, int* free)
-+BSDGetSwapInfo(int64_t* total, int64_t* free)
- {
--        int i, avail, npfree, used=0, xsize, xfree;
-+        int i, npfree, xsize, xfree;
-+        int64_t avail, used=0;
- 
- 	fetchswap();
- #ifdef USE_KVM_GETSWAPINFO
- 	avail = used = 0;
- 	if (kvnsw == 0) {
--		avail += pagesize * kvmsw[0].ksw_total;
--		used += pagesize * kvmsw[0].ksw_used;
-+		avail += pagesize * (int64_t)kvmsw[0].ksw_total;
-+		used += pagesize * (int64_t)kvmsw[0].ksw_used;
- 	}
- 	*total = avail;
- 	*free = avail - used;
diff -Nurb xosview.orig/files/patch-swapinternal.h xosview/files/patch-swapinternal.h
--- xosview.orig/files/patch-swapinternal.h	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-swapinternal.h	1970-01-01 02:00:00.000000000 +0200
@@ -1,13 +0,0 @@
---- bsd/swapinternal.h.orig	Wed Feb 11 21:04:07 1998
-+++ bsd/swapinternal.h	Tue Aug 21 10:51:00 2001
-@@ -12,7 +12,7 @@
- BSDInitSwapInfo();
- 
- void
--BSDGetSwapInfo(int* total, int* free);
-+BSDGetSwapInfo(int64_t* total, int64_t* free);
- #endif
- 
- void
--BSDGetSwapCtlInfo(int* total, int* free);
-+BSDGetSwapCtlInfo(int64_t* total, int64_t* free);
diff -Nurb xosview.orig/files/patch-swapmeter.cc xosview/files/patch-swapmeter.cc
--- xosview.orig/files/patch-swapmeter.cc	2013-03-24 18:37:13.000000000 +0200
+++ xosview/files/patch-swapmeter.cc	1970-01-01 02:00:00.000000000 +0200
@@ -1,7 +0,0 @@
---- bsd/swapmeter.cc.orig	Tue Aug 21 10:52:35 2001
-+++ bsd/swapmeter.cc	Tue Aug 21 10:53:02 2001
-@@ -76,3 +76,3 @@
- void SwapMeter::getswapinfo( void ){
--  unsigned long long total_int, free_int;
-+  int64_t total_int, free_int;
- 
diff -Nurb xosview.orig/pkg-descr xosview/pkg-descr
--- xosview.orig/pkg-descr	2013-03-24 18:37:13.000000000 +0200
+++ xosview/pkg-descr	2013-03-24 18:37:24.000000000 +0200
@@ -3,11 +3,4 @@
 it looks similar in appearance to the zoomy performance meters to 
 be found on various other platforms.  
 
-The FreeBSD version works but doesn't yet have full functionality.  
-At the time of this writing, the meters that work are the Load meter,
-the CPU meter and the memmeter.  The other nonfunctional meters are
-not displayed.  Someone who understands how to grab statistics out 
-of the kernel needs to volunteer to help make this a fully functional
-port!
-
 WWW: http://xosview.sourceforge.net
diff -Nurb xosview.orig/pkg-plist xosview/pkg-plist
--- xosview.orig/pkg-plist	2013-03-24 18:37:13.000000000 +0200
+++ xosview/pkg-plist	2013-03-24 18:37:26.000000000 +0200
@@ -1,3 +1,2 @@
 @comment $FreeBSD: head/sysutils/xosview/pkg-plist 300897 2012-07-14 14:29:18Z beat $
 bin/xosview
-lib/X11/app-defaults/XOsview


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201303241645.r2OGjF1f057015>