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 22:39:22.883081611 -0700 @@ -6,28 +6,41 @@ # PORTNAME= psmisc -PORTVERSION= 22.9 +PORTVERSION= 22.11 CATEGORIES= sysutils MASTER_SITES= SF MASTER_SITE_SUBDIR= ${PORTNAME}/${PORTNAME} -MAINTAINER= ports@FreeBSD.org +MAINTAINER= douglas@douglasthrift.net COMMENT= A port of the Linux pstree, killall and pidof commands +BUILD_DEPENDS= gsed:${PORTSDIR}/textproc/gsed + GNU_CONFIGURE= yes -CONFIGURE_ARGS= --disable-nls USE_GMAKE= yes CONFLICTS= pstree-2.* \ - pidof-* + pidof-[0-9]* + +OPTIONS= NLS "Native Language Support via gettext utilities" On + +.include -PLIST_FILES= bin/killall \ - bin/pidof \ - bin/pstree bin/pstree.x11 +.if defined(WITHOUT_NLS) +CONFIGURE_ARGS+=--disable-nls +PLIST_SUB+= NLS="@comment " +.else +USE_GETTEXT= yes +CONFIGURE_ARGS+=--enable-nls +CPPFLAGS+= -I${LOCALBASE}/include +LDFLAGS+= -L${LOCALBASE}/lib +CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS}" LDFLAGS="${LDFLAGS}" +PLIST_SUB+= NLS="" +.endif MAN1= pstree.1 killall.1 post-install: @${LN} -sf killall ${PREFIX}/bin/pidof -.include +.include 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-Makefile.in psmisc/files/patch-src-Makefile.in --- /usr/ports/sysutils/psmisc/files/patch-src-Makefile.in 2010-01-02 08:40:10.000000000 -0800 +++ psmisc/files/patch-src-Makefile.in 2010-05-18 21:35:53.776313591 -0700 @@ -1,5 +1,5 @@ ---- src/Makefile.in.orig 2009-12-27 16:19:06.000000000 +0900 -+++ src/Makefile.in 2010-01-03 00:25:56.093987293 +0900 +--- src/Makefile.in.orig 2010-04-08 05:41:34.000000000 -0700 ++++ src/Makefile.in 2010-05-18 21:30:06.746914197 -0700 @@ -34,8 +34,8 @@ POST_UNINSTALL = : build_triplet = @build@ @@ -26,44 +26,37 @@ ETAGS = etags CTAGS = ctags DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -@@ -208,10 +208,10 @@ - $(am__append_4) $(am__append_6) - fuser_SOURCES = fuser.c comm.h signals.c signals.h i18n.h fuser.h - killall_SOURCES = killall.c comm.h signals.c signals.h i18n.h --killall_LDADD = @SELINUX_LIB@ -+killall_LDADD = - peekfd_SOURCES = peekfd.c - pstree_SOURCES = pstree.c comm.h i18n.h --pstree_LDADD = @TERMCAP_LIB@ @SELINUX_LIB@ -+pstree_LDADD = @TERMCAP_LIB@ - prtstat_SOURCES = prtstat.c prtstat.h - BUILT_SOURCES = signames.h - EXTRA_DIST = signames.c -@@ -537,13 +537,20 @@ +@@ -290,19 +290,19 @@ + -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) + fuser$(EXEEXT): $(fuser_OBJECTS) $(fuser_DEPENDENCIES) + @rm -f fuser$(EXEEXT) +- $(LINK) $(fuser_OBJECTS) $(fuser_LDADD) $(LIBS) ++ $(LINK) $(fuser_OBJECTS) $(fuser_LDADD) $(LIBS) $(INTLLIBS) + killall$(EXEEXT): $(killall_OBJECTS) $(killall_DEPENDENCIES) + @rm -f killall$(EXEEXT) +- $(LINK) $(killall_OBJECTS) $(killall_LDADD) $(LIBS) ++ $(LINK) $(killall_OBJECTS) $(killall_LDADD) $(LIBS) $(INTLLIBS) + peekfd$(EXEEXT): $(peekfd_OBJECTS) $(peekfd_DEPENDENCIES) + @rm -f peekfd$(EXEEXT) +- $(LINK) $(peekfd_OBJECTS) $(peekfd_LDADD) $(LIBS) ++ $(LINK) $(peekfd_OBJECTS) $(peekfd_LDADD) $(LIBS) $(INTLLIBS) + prtstat$(EXEEXT): $(prtstat_OBJECTS) $(prtstat_DEPENDENCIES) + @rm -f prtstat$(EXEEXT) +- $(LINK) $(prtstat_OBJECTS) $(prtstat_LDADD) $(LIBS) ++ $(LINK) $(prtstat_OBJECTS) $(prtstat_LDADD) $(LIBS) $(INTLLIBS) + pstree$(EXEEXT): $(pstree_OBJECTS) $(pstree_DEPENDENCIES) + @rm -f pstree$(EXEEXT) +- $(LINK) $(pstree_OBJECTS) $(pstree_LDADD) $(LIBS) ++ $(LINK) $(pstree_OBJECTS) $(pstree_LDADD) $(LIBS) $(INTLLIBS) + mostlyclean-compile: + -rm -f *.$(OBJEXT) +@@ -538,7 +538,7 @@ signames.h: signames.c Makefile export LC_ALL=C ; \ -- @CPP@ -dM $< |\ + @CPP@ -dM $< |\ - tr -s '\t ' ' ' | sort -n -k 3 | sed \ -- 's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\ \2,"\1" },:p;d' | \ -- grep -v '[0-9][0-9][0-9]' >signames.h || \ -- { rm -f signames.h; exit 1; } -- grep '^{ 1,"HUP" },$$' signames.h >/dev/null || \ -- { rm -f signames.h; exit 1; } -+ @CPP@ -dM $< | {\ -+ signames=`kill -l | tr a-z A-Z`; \ -+ while read define name value; do \ -+ [ "$$define" = '#define' ] || continue; \ -+ case "$$value" in \ -+ *[!0-9]*) continue; \ -+ esac; \ -+ for signame in $$signames; do \ -+ if [ "$$name" = "SIG$$signame" ]; then \ -+ echo "{ $$value, \"$$signame\" },"; \ -+ fi; \ -+ done; \ -+ done; \ -+ } | sort -n -k 2 > signames.h - - install-exec-hook: - cd $(DESTDIR)$(bindir) && \ ++ tr -s '\t ' ' ' | sort -n -k 3 | gsed \ + 's:#define SIG\([A-Z]\+[0-9]*\) \([0-9]\+\) *\(\|/\*.*\)$$:{\ \2,"\1" },:p;d' | \ + grep -v '[0-9][0-9][0-9]' >signames.h || \ + { rm -f signames.h; exit 1; } 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 20:03:36.709489357 -0700 @@ -1,14 +1,16 @@ ---- 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,9 @@ #include #include #include ++#ifdef __FreeBSD__ +#include ++#endif #include #include #include -@@ -590,7 +591,11 @@ +@@ -590,7 +594,11 @@ struct dirent *de; FILE *file; struct stat st; @@ -20,31 +22,53 @@ 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); 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/ diff -Nrux .svn -x work /usr/ports/sysutils/psmisc/pkg-plist psmisc/pkg-plist --- /usr/ports/sysutils/psmisc/pkg-plist 1969-12-31 16:00:00.000000000 -0800 +++ psmisc/pkg-plist 2010-05-18 22:11:15.201428734 -0700 @@ -0,0 +1,26 @@ +bin/killall +bin/pidof +bin/pstree +bin/pstree.x11 +%%NLS%%share/locale/bg/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/ca/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/cs/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/de/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/el/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/eu/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/fi/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/fr/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/hu/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/id/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/it/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/ja/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/nb/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/nl/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/pl/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/pt/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/ro/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/ru/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/sv/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/vi/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/zh_CN/LC_MESSAGES/psmisc.mo +%%NLS%%share/locale/zh_TW/LC_MESSAGES/psmisc.mo