ports/146709: Update port: sysutils/psmisc Upgrade to 22.11

Douglas William Thrift douglas at douglasthrift.net
Tue May 18 16:30:05 UTC 2010


>Number:         146709
>Category:       ports
>Synopsis:       Update port: sysutils/psmisc Upgrade to 22.11
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Tue May 18 16:30:04 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Douglas William Thrift
>Release:        FreeBSD 7.3-RELEASE amd64
>Organization:
>Environment:
System: FreeBSD justonenight.douglasthrift.net 7.3-RELEASE FreeBSD 7.3-RELEASE #25: Tue Mar 23 21:24:09 PDT 2010 root at justonenight.douglasthrift.net:/usr/obj/usr/src/sys/FURTHERONUPTHEROAD amd64
>Description:
Upgraded to psmisc to 22.11. Took maintainership. Fixed pstree so it actually
outputs arguments when the -a (or --arguments) option is specified and fixed
its UTF-8 detection.
>How-To-Repeat:
>Fix:
--- psmisc.patch begins here ---
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/Makefile psmisc/Makefile
--- /usr/ports/sysutils/psmisc/Makefile	2010-01-02 08:40:09.000000000 -0800
+++ psmisc/Makefile	2010-05-18 08:37:45.668699414 -0700
@@ -6,12 +6,12 @@
 #
 
 PORTNAME=	psmisc
-PORTVERSION=	22.9
+PORTVERSION=	22.11
 CATEGORIES=	sysutils
 MASTER_SITES=	SF
 MASTER_SITE_SUBDIR=	${PORTNAME}/${PORTNAME}
 
-MAINTAINER=	ports at FreeBSD.org
+MAINTAINER=	douglas at douglasthrift.net
 COMMENT=	A port of the Linux pstree, killall and pidof commands
 
 GNU_CONFIGURE=	yes
@@ -19,7 +19,7 @@
 USE_GMAKE=	yes
 
 CONFLICTS=	pstree-2.* \
-		pidof-*
+		pidof-[0-9]*
 
 PLIST_FILES=	bin/killall \
 		bin/pidof \
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/distinfo psmisc/distinfo
--- /usr/ports/sysutils/psmisc/distinfo	2010-01-02 08:40:09.000000000 -0800
+++ psmisc/distinfo	2010-05-18 04:02:47.141686600 -0700
@@ -1,3 +1,3 @@
-MD5 (psmisc-22.9.tar.gz) = c242530de46b951ab10a2237a6048a9c
-SHA256 (psmisc-22.9.tar.gz) = c98aef4bc379790229c54c8e7d97b1d1ab898346bfffcde54fcf585a3e353edd
-SIZE (psmisc-22.9.tar.gz) = 316530
+MD5 (psmisc-22.11.tar.gz) = b5d32aa285b75c59dee96d3ea26a4881
+SHA256 (psmisc-22.11.tar.gz) = 8fff37557f5150d89ef9afc03133731da3eaa2bad1a94f64355218a68b884536
+SIZE (psmisc-22.11.tar.gz) = 375038
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/files/patch-src-pstree.c psmisc/files/patch-src-pstree.c
--- /usr/ports/sysutils/psmisc/files/patch-src-pstree.c	2010-01-02 08:40:10.000000000 -0800
+++ psmisc/files/patch-src-pstree.c	2010-05-18 07:21:54.752390269 -0700
@@ -1,14 +1,17 @@
---- src/pstree.c.orig	2009-12-27 15:46:47.000000000 +0900
-+++ src/pstree.c	2010-01-03 00:52:21.437862505 +0900
-@@ -37,6 +37,7 @@
+--- src/pstree.c.orig	2010-04-08 05:20:10.000000000 -0700
++++ src/pstree.c	2010-05-18 07:20:57.583839746 -0700
+@@ -37,6 +37,10 @@
  #include <term.h>
  #include <termios.h>
  #include <langinfo.h>
++#ifdef __FreeBSD__
++#include <locale.h>
 +#include <limits.h>
++#endif
  #include <assert.h>
  #include <sys/types.h>
  #include <sys/stat.h>
-@@ -590,7 +591,11 @@
+@@ -590,7 +594,11 @@
    struct dirent *de;
    FILE *file;
    struct stat st;
@@ -20,31 +23,64 @@
    char *buffer;
    size_t buffer_size;
    char readbuf[BUFSIZ + 1];
-@@ -623,7 +628,7 @@
+@@ -623,7 +631,11 @@
      if ((pid = (pid_t) atoi(de->d_name)) != 0) {
        if (! (path = malloc(strlen(PROC_BASE) + strlen(de->d_name) + 10)))
          exit(2);
--      sprintf(path, "%s/%d/stat", PROC_BASE, pid);
-+      sprintf (path, "%s/%d/status", PROC_BASE, pid);
++#ifdef __FreeBSD__
++      sprintf(path, "%s/%d/status", PROC_BASE, pid);
++#else
+       sprintf(path, "%s/%d/stat", PROC_BASE, pid);
++#endif
        if ((file = fopen(path, "r")) != NULL) {
          empty = 0;
          sprintf(path, "%s/%d", PROC_BASE, pid);
-@@ -638,6 +643,10 @@
+@@ -638,6 +650,29 @@
            perror(path);
            exit(1);
          }
 +#ifdef __FreeBSD__
-+        if (fscanf(file, "%s %*d %d", comm, &ppid) == 2)
-+          add_proc(comm, pid, ppid, st.st_uid, NULL, 0, 0);
++        /* Read comm and ppid */
++        if (fscanf(file, "%s %*d %d", readbuf, &ppid) == 2) {
++          tmpptr = readbuf;
++          size = 0;
++          /* Unescape comm */
++          do {
++            if (*tmpptr == '\\')
++            {
++              char tmp = tmpptr[4];
++              tmpptr[4] = 0;
++              comm[size++] = strtol(++tmpptr, NULL, 8);
++              tmpptr += 2;
++              tmpptr[1] = tmp;
++            }
++            else
++              comm[size++] = *tmpptr;
++          } while (*++tmpptr);
++          comm[size] = 0;
++          /* Balance braces */
++          {
++            {
 +#else
          size = fread(readbuf, 1, BUFSIZ, file);
          if (ferror(file) == 0) {
            readbuf[size] = 0;
-@@ -725,6 +734,7 @@
-             }
-           }
-         }
+@@ -692,6 +727,7 @@
+                   (void) closedir(taskdir);
+                 }
+               free(taskpath);
 +#endif /*__FreeBSD__*/
-         (void) fclose(file);
-       }
-       free(path);
+               if (!print_args)
+ #ifdef WITH_SELINUX
+                 add_proc(comm, pid, ppid, st.st_uid, NULL, 0, 0, scontext);
+@@ -860,6 +896,10 @@
+      * command-line options, if given.
+      */
+ 
++#ifdef __FreeBSD__
++    /* Actually set the locale because nl_langinfo won't do it. */
++    setlocale(LC_CTYPE, "");
++#endif
+     if (isatty(1) && !strcmp(nl_langinfo(CODESET), "UTF-8")) {
+         /* Use UTF-8 symbols if the locale's character set is UTF-8. */
+         sym = &sym_utf;
diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/pkg-descr psmisc/pkg-descr
--- /usr/ports/sysutils/psmisc/pkg-descr	2005-10-05 00:49:45.000000000 -0700
+++ psmisc/pkg-descr	2010-05-18 07:57:55.280442813 -0700
@@ -1,4 +1,4 @@
 A port of the Linux pstree, killall and pidof commands.
 Does not include the 'fuser' command.
 
-WWW: http://psmisc.sourceforge.net
+WWW: http://psmisc.sourceforge.net/
--- psmisc.patch ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list