[103301] trunk/dports/sysutils/watch

larryv at macports.org larryv at macports.org
Wed Feb 20 20:52:50 PST 2013


Revision: 103301
          https://trac.macports.org/changeset/103301
Author:   larryv at macports.org
Date:     2013-02-20 20:52:50 -0800 (Wed, 20 Feb 2013)
Log Message:
-----------
watch: Update to 3.3.6 + patches; switch upstream to procps-ng (#38137).

Modified Paths:
--------------
    trunk/dports/sysutils/watch/Portfile

Added Paths:
-----------
    trunk/dports/sysutils/watch/files/
    trunk/dports/sysutils/watch/files/0001-configure-check-for-program_invocation_name.patch
    trunk/dports/sysutils/watch/files/0002-watch-Remove-unused-header.patch
    trunk/dports/sysutils/watch/files/0003-configure-Check-for-stdio_ext.h.patch
    trunk/dports/sysutils/watch/files/0004-configure-Check-for-error.h.patch

Modified: trunk/dports/sysutils/watch/Portfile
===================================================================
--- trunk/dports/sysutils/watch/Portfile	2013-02-21 02:51:57 UTC (rev 103300)
+++ trunk/dports/sysutils/watch/Portfile	2013-02-21 04:52:50 UTC (rev 103301)
@@ -2,9 +2,9 @@
 
 PortSystem 1.0
 name	   	watch
-version	    	3.2.8
-revision	1
+version	    	3.3.6
 categories  	sysutils
+platforms	darwin
 license		GPL-2
 maintainers 	yahoo.com:mjhsieh
 description    	watch executes a program periodically, showing output fullscreen
@@ -14,17 +14,26 @@
 			output change over time. This is part of the  linux \
 			"procps" package
 
-homepage	http://sourceforge.net/projects/procps/
-master_sites	http://procps.sourceforge.net/
-distname	procps-${version}
-platforms	darwin
-checksums	md5 9532714b6846013ca9898984ba4cd7e0 \
-		sha1 a0c86790569dec26b5d9037e8868ca907acc9829
+homepage	http://sourceforge.net/projects/procps-ng/
+master_sites	sourceforge:procps-ng
+distname	procps-ng-${version}
+use_xz yes
 
-use_configure	no
+checksums       rmd160  44b6abdbf6e6fdebdf2f1848207392314b542c05 \
+                sha256  d09ac4df3793f632d481f6547c39c6d835a7aa7bd5a302fcb0885ff7691c124c
 
 depends_lib	port:ncurses
 
+patchfiles      0001-configure-check-for-program_invocation_name.patch \
+                0002-watch-Remove-unused-header.patch \
+                0003-configure-Check-for-stdio_ext.h.patch \
+                0004-configure-Check-for-error.h.patch
+patch.pre_args  -p1
+
+# Disable gettext due to linking problems
+# and we are not going to install any catalogs anyway
+configure.args  --disable-nls
+
 variant universal {}
 if {[variant_isset universal]} {
 	set archflags ${configure.universal_cflags}
@@ -35,7 +44,7 @@
 build.target	watch
 build.args	CC="${configure.cc} ${archflags}" \
 		LDFLAGS="${configure.ldflags}" \
-		PKG_LDFLAGS=""
+		AM_LDFLAGS=""
 
 pre-build {
     build.args-append   CPPFLAGS="[exec ${prefix}/bin/ncurses5-config --cflags]"
@@ -47,5 +56,4 @@
 		${destroot}${prefix}/share/man/man1
 }
 
-livecheck.url	[lindex ${master_sites} 0]
-livecheck.regex	procps-(\[0-9.\]*)${extract.suffix}
+livecheck.regex	procps-ng-(\[0-9.\]*)${extract.suffix}

Added: trunk/dports/sysutils/watch/files/0001-configure-check-for-program_invocation_name.patch
===================================================================
--- trunk/dports/sysutils/watch/files/0001-configure-check-for-program_invocation_name.patch	                        (rev 0)
+++ trunk/dports/sysutils/watch/files/0001-configure-check-for-program_invocation_name.patch	2013-02-21 04:52:50 UTC (rev 103301)
@@ -0,0 +1,222 @@
+From 6cc925329f22bb3b7a4beefadb2e7e73450a594b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rainer=20M=C3=BCller?= <raimue at codingfarm.de>
+Date: Wed, 20 Feb 2013 18:31:48 +0100
+Subject: [PATCH 1/4] configure: check for program_invocation_name
+
+For portabiliy, check for program_invocation_name during configure and
+define HAVE_PROGRAM_INVOCATION_NAME accordingly. Use of this symbol is
+now enclosed with the appropriate #ifdef block.
+
+The symbol program_invocation_name is only used for error message
+handling using error(), so it's safe to omit this if it is not
+available.
+---
+ configure.ac | 8 ++++++++
+ free.c       | 4 +++-
+ pgrep.c      | 2 ++
+ pmap.c       | 4 +++-
+ pwdx.c       | 4 +++-
+ skill.c      | 4 +++-
+ slabtop.c    | 2 ++
+ sysctl.c     | 2 ++
+ tload.c      | 2 ++
+ uptime.c     | 2 ++
+ vmstat.c     | 2 ++
+ w.c          | 2 ++
+ watch.c      | 2 ++
+ 13 files changed, 36 insertions(+), 4 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index 711be2a..afb24ce 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -137,6 +137,14 @@ dnl else
+ dnl	ALL_LINGUAS="af am ar as be bg bn_IN bn ca cs cy da de el en_GB es et eu_ES fa fi fr gl gu he hi hr hu hy id is it ja ka kn ko ku lo lt lv mk ml mr ms my nb nl nn no nso or pa pl pt_BR pt ro ru si sk sl sq sr at Latn sr sv ta te th tr uk ur vi zh_CN zh_TW zu"
+ dnl fi
+ 
++AC_MSG_CHECKING(whether program_invocation_name is defined)
++AC_TRY_COMPILE([#include <errno.h>],
++		[program_invocation_name = "test";],
++		AC_DEFINE(HAVE_PROGRAM_INVOCATION_NAME, 1,
++			[Define if program_invocation_name is defined])
++		AC_MSG_RESULT(yes),
++		AC_MSG_RESULT(no))
++
+ AC_MSG_CHECKING(whether program_invocation_short_name is defined)
+ AC_TRY_COMPILE([#include <errno.h>],
+ 		[program_invocation_short_name = "test";],
+diff --git a/free.c b/free.c
+index ecaeccd..ffc4b86 100644
+--- a/free.c
++++ b/free.c
+@@ -223,7 +223,9 @@ int main(int argc, char **argv)
+ 	args.repeat_interval = 1000000;
+ 	args.repeat_counter = 0;
+ 
+-    program_invocation_name = program_invocation_short_name;
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
++	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/pgrep.c b/pgrep.c
+index f08d89f..e849f9e 100644
+--- a/pgrep.c
++++ b/pgrep.c
+@@ -788,7 +788,9 @@ int main (int argc, char **argv)
+ 	struct el *procs;
+ 	int num;
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/pmap.c b/pmap.c
+index 79c17b2..fd0363b 100644
+--- a/pmap.c
++++ b/pmap.c
+@@ -657,7 +657,9 @@ int main(int argc, char **argv)
+ 		{NULL, 0, NULL, 0}
+ 	};
+ 
+-    program_invocation_name = program_invocation_short_name;
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
++	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/pwdx.c b/pwdx.c
+index 4aee389..214275a 100644
+--- a/pwdx.c
++++ b/pwdx.c
+@@ -74,7 +74,9 @@ int main(int argc, char *argv[])
+ 		{NULL, 0, 0, 0}
+ 	};
+ 
+-    program_invocation_name = program_invocation_short_name;
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
++	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/skill.c b/skill.c
+index 03df229..fb57305 100644
+--- a/skill.c
++++ b/skill.c
+@@ -629,7 +629,9 @@ static void skillsnice_parse(int argc,
+ /* main body */
+ int main(int argc, char ** argv)
+ {
+-    program_invocation_name = program_invocation_short_name;
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
++	program_invocation_name = program_invocation_short_name;
++#endif
+ 	struct run_time_conf_t run_time;
+ 	memset(&run_time, 0, sizeof(struct run_time_conf_t));
+ 	my_pid = getpid();
+diff --git a/slabtop.c b/slabtop.c
+index 9e535d4..ebdae8d 100644
+--- a/slabtop.c
++++ b/slabtop.c
+@@ -300,7 +300,9 @@ int main(int argc, char *argv[])
+ 		{  NULL, 0, NULL, 0 }
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/sysctl.c b/sysctl.c
+index 0756878..2eeacd9 100644
+--- a/sysctl.c
++++ b/sysctl.c
+@@ -675,7 +675,9 @@ int main(int argc, char *argv[])
+ 		{NULL, 0, NULL, 0}
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale(LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/tload.c b/tload.c
+index 765ed17..a5fe14a 100644
+--- a/tload.c
++++ b/tload.c
+@@ -114,7 +114,9 @@ int main(int argc, char **argv)
+ 		{NULL, 0, NULL, 0}
+ 	};
+  
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/uptime.c b/uptime.c
+index ac4579c..2742189 100644
+--- a/uptime.c
++++ b/uptime.c
+@@ -77,7 +77,9 @@ int main(int argc, char **argv)
+ 		{NULL, 0, NULL, 0}
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/vmstat.c b/vmstat.c
+index a2627b8..6f95f09 100644
+--- a/vmstat.c
++++ b/vmstat.c
+@@ -724,7 +724,9 @@ int main(int argc, char *argv[])
+ 		{NULL, 0, NULL, 0}
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/w.c b/w.c
+index 6352d69..5db1064 100644
+--- a/w.c
++++ b/w.c
+@@ -483,7 +483,9 @@ int main(int argc, char **argv)
+ 		{NULL, 0, NULL, 0}
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale (LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+diff --git a/watch.c b/watch.c
+index 0fe0a8f..5a22952 100644
+--- a/watch.c
++++ b/watch.c
+@@ -590,7 +590,9 @@ int main(int argc, char *argv[])
+ 		{0, 0, 0, 0}
+ 	};
+ 
++#ifdef HAVE_PROGRAM_INVOCATION_NAME
+ 	program_invocation_name = program_invocation_short_name;
++#endif
+ 	setlocale(LC_ALL, "");
+ 	bindtextdomain(PACKAGE, LOCALEDIR);
+ 	textdomain(PACKAGE);
+-- 
+1.8.1.3
+

Added: trunk/dports/sysutils/watch/files/0002-watch-Remove-unused-header.patch
===================================================================
--- trunk/dports/sysutils/watch/files/0002-watch-Remove-unused-header.patch	                        (rev 0)
+++ trunk/dports/sysutils/watch/files/0002-watch-Remove-unused-header.patch	2013-02-21 04:52:50 UTC (rev 103301)
@@ -0,0 +1,25 @@
+From 59fce95047d598ca78587544d2af23bd8eab862e Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rainer=20M=C3=BCller?= <raimue at codingfarm.de>
+Date: Wed, 20 Feb 2013 19:09:54 +0100
+Subject: [PATCH 2/4] watch: Remove unused header
+
+No declaration from proc/procps.h is actually used for watch.
+---
+ watch.c | 1 -
+ 1 file changed, 1 deletion(-)
+
+diff --git a/watch.c b/watch.c
+index 5a22952..0713448 100644
+--- a/watch.c
++++ b/watch.c
+@@ -31,7 +31,6 @@
+ #include "config.h"
+ #include "fileutils.h"
+ #include "nls.h"
+-#include "proc/procps.h"
+ #include "strutils.h"
+ #include "xalloc.h"
+ #include <ctype.h>
+-- 
+1.8.1.3
+

Added: trunk/dports/sysutils/watch/files/0003-configure-Check-for-stdio_ext.h.patch
===================================================================
--- trunk/dports/sysutils/watch/files/0003-configure-Check-for-stdio_ext.h.patch	                        (rev 0)
+++ trunk/dports/sysutils/watch/files/0003-configure-Check-for-stdio_ext.h.patch	2013-02-21 04:52:50 UTC (rev 103301)
@@ -0,0 +1,51 @@
+From 26012822ac6fb1c8064bed35e92f93b0cbce44a8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rainer=20M=C3=BCller?= <raimue at codingfarm.de>
+Date: Wed, 20 Feb 2013 20:10:40 +0100
+Subject: [PATCH 3/4] configure: Check for stdio_ext.h
+
+For portability, check for stdio_ext.h during configure and define
+HAVE_STDIO_EXT_H accordingly.
+
+If the current system does not provide this header, use a fallback for
+__fpending(). This definition will not work on all systems as it relies
+on internal data structures of libc. A more portable solution should be
+preferred, for example by using gnulib.
+---
+ configure.ac    | 2 ++
+ lib/fileutils.c | 8 +++++++-
+ 2 files changed, 9 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index afb24ce..08f59e3 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -137,6 +137,8 @@ dnl else
+ dnl	ALL_LINGUAS="af am ar as be bg bn_IN bn ca cs cy da de el en_GB es et eu_ES fa fi fr gl gu he hi hr hu hy id is it ja ka kn ko ku lo lt lv mk ml mr ms my nb nl nn no nso or pa pl pt_BR pt ro ru si sk sl sq sr at Latn sr sv ta te th tr uk ur vi zh_CN zh_TW zu"
+ dnl fi
+ 
++AC_CHECK_HEADERS(stdio_ext.h, [], [], AC_INCLUDES_DEFAULT)
++
+ AC_MSG_CHECKING(whether program_invocation_name is defined)
+ AC_TRY_COMPILE([#include <errno.h>],
+ 		[program_invocation_name = "test";],
+diff --git a/lib/fileutils.c b/lib/fileutils.c
+index fe56cb8..c50d6aa 100644
+--- a/lib/fileutils.c
++++ b/lib/fileutils.c
+@@ -1,6 +1,12 @@
+ #include <errno.h>
+ #include <error.h>
+-#include <stdio_ext.h>
++#ifdef HAVE_STDIO_EXT_H
++# include <stdio_ext.h>
++#else
++/* FIXME: use a more portable definition of __fpending() (from gnulib?) */
++# include <stdio.h>
++# define __fpending(fp) ((fp)->_p - (fp)->_bf._base)
++#endif
+ #include <stdlib.h>
+ #include <unistd.h>
+ 
+-- 
+1.8.1.3
+

Added: trunk/dports/sysutils/watch/files/0004-configure-Check-for-error.h.patch
===================================================================
--- trunk/dports/sysutils/watch/files/0004-configure-Check-for-error.h.patch	                        (rev 0)
+++ trunk/dports/sysutils/watch/files/0004-configure-Check-for-error.h.patch	2013-02-21 04:52:50 UTC (rev 103301)
@@ -0,0 +1,95 @@
+From e31855d7e670438402e7a05f1ef8067476bf563b Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Rainer=20M=C3=BCller?= <raimue at codingfarm.de>
+Date: Wed, 20 Feb 2013 20:14:29 +0100
+Subject: [PATCH 4/4] configure: Check for error.h
+
+For portability, check for error.h during configure and define
+HAVE_ERROR_H accordingly.
+
+If this header is not available, emulate the functionality of error()
+from glibc with an inline wrapper in include/c.h.
+---
+ configure.ac    |  2 ++
+ include/c.h     | 21 +++++++++++++++++++++
+ lib/fileutils.c |  7 ++++++-
+ 3 files changed, 29 insertions(+), 1 deletion(-)
+
+diff --git a/configure.ac b/configure.ac
+index 08f59e3..6e0883b 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -137,6 +137,8 @@ dnl else
+ dnl	ALL_LINGUAS="af am ar as be bg bn_IN bn ca cs cy da de el en_GB es et eu_ES fa fi fr gl gu he hi hr hu hy id is it ja ka kn ko ku lo lt lv mk ml mr ms my nb nl nn no nso or pa pl pt_BR pt ro ru si sk sl sq sr at Latn sr sv ta te th tr uk ur vi zh_CN zh_TW zu"
+ dnl fi
+ 
++AC_CHECK_HEADERS(error.h, [], [], AC_INCLUDES_DEFAULT)
++
+ AC_CHECK_HEADERS(stdio_ext.h, [], [], AC_INCLUDES_DEFAULT)
+ 
+ AC_MSG_CHECKING(whether program_invocation_name is defined)
+diff --git a/include/c.h b/include/c.h
+index 737630b..6bcdf5f 100644
+--- a/include/c.h
++++ b/include/c.h
+@@ -16,7 +16,11 @@
+ #include <stdlib.h>
+ #include <string.h>
+ #include <errno.h>
++#ifdef HAVE_ERROR_H
+ #include <error.h>
++#else
++#include <stdarg.h>
++#endif
+ 
+ /*
+  * Compiler specific stuff
+@@ -103,6 +107,23 @@ static inline char *prog_inv_sh_nm_from_file(char *f, char stripext)
+ /*
+  * Error printing.
+  */
++#ifndef HAVE_ERROR_H
++/* Emulate the error() function from glibc */
++__attribute__((__format__(__printf__, 3, 4)))
++static void error(int status, int errnum, const char *format, ...)
++{
++        va_list argp;
++        fprintf(stderr, "%s: ", program_invocation_short_name);
++        va_start(argp, format);
++        vfprintf(stderr, format, argp);
++        va_end(argp);
++        if (errnum != 0)
++                fprintf(stderr, ": error code %d", errnum);
++        fprintf(stderr, "\n");
++        if (status != 0)
++                exit(status);
++}
++#endif
+ #define xwarn(...) error(0, errno, __VA_ARGS__)
+ #define xwarnx(...) error(0, 0, __VA_ARGS__)
+ #define xerr(STATUS, ...) error(STATUS, errno, __VA_ARGS__)
+diff --git a/lib/fileutils.c b/lib/fileutils.c
+index c50d6aa..a9ef2ff 100644
+--- a/lib/fileutils.c
++++ b/lib/fileutils.c
+@@ -1,5 +1,7 @@
+ #include <errno.h>
+-#include <error.h>
++#ifdef HAVE_ERROR_H
++# include <error.h>
++#endif
+ #ifdef HAVE_STDIO_EXT_H
+ # include <stdio_ext.h>
+ #else
+@@ -12,6 +14,9 @@
+ 
+ #include "nls.h"
+ #include "fileutils.h"
++#ifndef HAVE_ERROR_H
++# include "c.h" /* for error() emulation */
++#endif
+ 
+ int close_stream(FILE * stream)
+ {
+-- 
+1.8.1.3
+
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130220/6e98e8b7/attachment-0001.html>


More information about the macports-changes mailing list