diff options
author | wiz <wiz@pkgsrc.org> | 2007-09-20 21:12:04 +0000 |
---|---|---|
committer | wiz <wiz@pkgsrc.org> | 2007-09-20 21:12:04 +0000 |
commit | 179070a57e970617b66a0d1bfe1033836574cec1 (patch) | |
tree | b4185a9eb19f8e143ede900b0f54448ab2e53a59 /sysutils/libgtop | |
parent | 1f9fdbf7f8c91b79a3958758e68f873d16eafdeb (diff) | |
download | pkgsrc-179070a57e970617b66a0d1bfe1033836574cec1.tar.gz |
Rename libgtop2 to libgtop, to match upstream name.
Diffstat (limited to 'sysutils/libgtop')
27 files changed, 1573 insertions, 0 deletions
diff --git a/sysutils/libgtop/DESCR b/sysutils/libgtop/DESCR new file mode 100644 index 00000000000..55f3012d616 --- /dev/null +++ b/sysutils/libgtop/DESCR @@ -0,0 +1,4 @@ +libgtop is a library that fetches system information about the running +system such as cpu and memory usage, active processes etc. It +provides a setgid server that fetches the information and a +client-side library that talks to this server. diff --git a/sysutils/libgtop/Makefile b/sysutils/libgtop/Makefile new file mode 100644 index 00000000000..c81c2cf7a5b --- /dev/null +++ b/sysutils/libgtop/Makefile @@ -0,0 +1,99 @@ +# $NetBSD: Makefile,v 1.11 2007/09/20 21:12:04 wiz Exp $ + +DISTNAME= libgtop-2.14.2 +PKGREVISION= 5 +CATEGORIES= sysutils gnome +MASTER_SITES= ${MASTER_SITE_GNOME:=sources/libgtop/2.14/} +EXTRACT_SUFX= .tar.bz2 + +MAINTAINER= pkgsrc-users@NetBSD.org +HOMEPAGE= http://www.gnome.org/ +COMMENT= Library to retrieve system information, used in GNOME2 + +OSVERSION_SPECIFIC= YES + +USE_PKGLOCALEDIR= YES +USE_TOOLS+= gmake makeinfo msgfmt perl pkg-config intltool +USE_LIBTOOL= YES +PKGCONFIG_OVERRIDE= libgtop-2.0.pc.in +PKGCONFIG_OVERRIDE+= support/gnome-support-2.0.pc.in +INFO_FILES= YES +TEXINFO_REQD= 4.6 +CONFLICTS+= libgtop2-[0-9]* + +# The following flags are for debugging purposes. They don't need to +# be used unless you are actively developing/debugging libgtop. +#CPPFLAGS+= -DLIBGTOP_ENABLE_DEBUG -DLIBGTOP_FATAL_WARNINGS +#CFLAGS+= -g +#LDFLAGS+= -g + +GNU_CONFIGURE= YES +CONFIGURE_ARGS+= --with-glib-prefix=${BUILDLINK_PREFIX.glib2} +CONFIGURE_ARGS+= --with-catgets --with-libgtop-guile=no +CONFIGURE_ARGS+= --without-x +CONFIGURE_ENV+= LN_S="${LN} -s" + +PRINT_PLIST_AWK+= /^bin\/libgtop_server2$$/ \ + { print "$${LIBGTOP_SERVER}" $$0; next } +PRINT_PLIST_AWK+= /^include\/libgtop-2.0\/glibtop_suid.h$$/ \ + { print "$${LIBGTOP_SUID_H}" $$0; next } + +.include "../../mk/bsd.prefs.mk" + +.if ${OPSYS} == NetBSD +. if (${MACHINE_ARCH} != alpha) && \ + (${MACHINE_ARCH} != arm) && (${MACHINE_ARCH} != arm32) && \ + (${MACHINE_ARCH} != i386) && (${MACHINE_ARCH} != m68k) && \ + (${MACHINE_ARCH} != mipsel) && (${MACHINE_ARCH} != powerpc) && \ + (${MACHINE_ARCH} != sparc) && (${MACHINE_ARCH} != sparc64) && \ + (${MACHINE_ARCH} != x86_64) +PKG_FAIL_REASON+= "${PKGNAME} has not yet been ported to ${MACHINE_ARCH}." +PKG_FAIL_REASON+= "Please look at /usr/include/${MACHINE_ARCH}/pcb.h" +PKG_FAIL_REASON+= "and update ${WRKSRC}/sysdeps/freebsd/prockernel.c appropriately." +PKG_FAIL_REASON+= "(More information can be found in libgtop.info.)" +. endif +.endif + +.if ${OPSYS} == "Linux" +PLIST_SUBST+= LIBGTOP_SERVER="@comment " +PLIST_SUBST+= LIBGTOP_SUID_H="@comment " +.elif ${OPSYS} == "SunOS" +PLIST_SUBST+= LIBGTOP_SERVER="" +PLIST_SUBST+= LIBGTOP_SUID_H="@comment " +.else +PLIST_SUBST+= LIBGTOP_SERVER="" +PLIST_SUBST+= LIBGTOP_SUID_H="" +.endif + +.if ${OPSYS} != "Linux" +post-install: + ${CHMOD} g+s ${PREFIX}/bin/libgtop_server2 +.endif + +# XXX This needs a check in the configure script, which should be clean +# enough to be integrated in the mainstream sources. +statvfs_h= /usr/include/sys/statvfs.h +.if exists(${statvfs_h}) +reads_count!= if ${GREP} f_syncreads ${statvfs_h} >/dev/null; then \ + ${ECHO} yes; else ${ECHO} no; fi +. if ${reads_count} == "yes" +CPPFLAGS+= -DHAVE_STATVFS_READS_COUNT +. endif +. undef reads_count + +writes_count!= if ${GREP} f_syncwrites ${statvfs_h} >/dev/null; then \ + ${ECHO} yes; else ${ECHO} no; fi +. if ${writes_count} == "yes" +CPPFLAGS+= -DHAVE_STATVFS_WRITES_COUNT +. endif +. undef writes_count +.endif +.undef statvfs_h + +BUILDLINK_API_DEPENDS.glib2+= glib2>=2.6.0 + +.include "../../devel/gettext-lib/buildlink3.mk" +.include "../../devel/glib2/buildlink3.mk" +.include "../../devel/libgnome/buildlink3.mk" +.include "../../devel/popt/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/sysutils/libgtop/PLIST b/sysutils/libgtop/PLIST new file mode 100644 index 00000000000..8e9bf4e98a0 --- /dev/null +++ b/sysutils/libgtop/PLIST @@ -0,0 +1,121 @@ +@comment $NetBSD: PLIST,v 1.4 2007/09/20 21:12:05 wiz Exp $ +${LIBGTOP_SERVER}bin/libgtop_daemon2 +${LIBGTOP_SERVER}bin/libgtop_server2 +include/libgtop-2.0/glibtop.h +include/libgtop-2.0/glibtop/close.h +include/libgtop-2.0/glibtop/command.h +include/libgtop-2.0/glibtop/cpu.h +include/libgtop-2.0/glibtop/fsusage.h +include/libgtop-2.0/glibtop/global.h +include/libgtop-2.0/glibtop/gnuserv.h +include/libgtop-2.0/glibtop/inodedb.h +include/libgtop-2.0/glibtop/loadavg.h +include/libgtop-2.0/glibtop/mem.h +include/libgtop-2.0/glibtop/mountlist.h +include/libgtop-2.0/glibtop/msg_limits.h +include/libgtop-2.0/glibtop/netlist.h +include/libgtop-2.0/glibtop/netload.h +include/libgtop-2.0/glibtop/open.h +include/libgtop-2.0/glibtop/parameter.h +include/libgtop-2.0/glibtop/ppp.h +include/libgtop-2.0/glibtop/procargs.h +include/libgtop-2.0/glibtop/prockernel.h +include/libgtop-2.0/glibtop/proclist.h +include/libgtop-2.0/glibtop/procmap.h +include/libgtop-2.0/glibtop/procmem.h +include/libgtop-2.0/glibtop/procopenfiles.h +include/libgtop-2.0/glibtop/procsegment.h +include/libgtop-2.0/glibtop/procsignal.h +include/libgtop-2.0/glibtop/procstate.h +include/libgtop-2.0/glibtop/proctime.h +include/libgtop-2.0/glibtop/procuid.h +include/libgtop-2.0/glibtop/sem_limits.h +include/libgtop-2.0/glibtop/shm_limits.h +include/libgtop-2.0/glibtop/signal.h +include/libgtop-2.0/glibtop/swap.h +include/libgtop-2.0/glibtop/sysdeps.h +include/libgtop-2.0/glibtop/sysinfo.h +include/libgtop-2.0/glibtop/union.h +include/libgtop-2.0/glibtop/uptime.h +include/libgtop-2.0/glibtop/version.h +include/libgtop-2.0/glibtop_machine.h +include/libgtop-2.0/glibtop_server.h +${LIBGTOP_SUID_H}include/libgtop-2.0/glibtop_suid.h +include/libgtop-2.0/libgtopconfig.h +info/libgtop2.info +lib/libgtop-2.0.la +lib/pkgconfig/libgtop-2.0.pc +share/locale/am/LC_MESSAGES/libgtop-2.0.mo +share/locale/ar/LC_MESSAGES/libgtop-2.0.mo +share/locale/az/LC_MESSAGES/libgtop-2.0.mo +share/locale/be/LC_MESSAGES/libgtop-2.0.mo +share/locale/bg/LC_MESSAGES/libgtop-2.0.mo +share/locale/bn/LC_MESSAGES/libgtop-2.0.mo +share/locale/bn_IN/LC_MESSAGES/libgtop-2.0.mo +share/locale/bs/LC_MESSAGES/libgtop-2.0.mo +share/locale/ca/LC_MESSAGES/libgtop-2.0.mo +share/locale/cs/LC_MESSAGES/libgtop-2.0.mo +share/locale/cy/LC_MESSAGES/libgtop-2.0.mo +share/locale/da/LC_MESSAGES/libgtop-2.0.mo +share/locale/de/LC_MESSAGES/libgtop-2.0.mo +share/locale/el/LC_MESSAGES/libgtop-2.0.mo +share/locale/en_CA/LC_MESSAGES/libgtop-2.0.mo +share/locale/en_GB/LC_MESSAGES/libgtop-2.0.mo +share/locale/eo/LC_MESSAGES/libgtop-2.0.mo +share/locale/es/LC_MESSAGES/libgtop-2.0.mo +share/locale/et/LC_MESSAGES/libgtop-2.0.mo +share/locale/eu/LC_MESSAGES/libgtop-2.0.mo +share/locale/fa/LC_MESSAGES/libgtop-2.0.mo +share/locale/fi/LC_MESSAGES/libgtop-2.0.mo +share/locale/fr/LC_MESSAGES/libgtop-2.0.mo +share/locale/ga/LC_MESSAGES/libgtop-2.0.mo +share/locale/gl/LC_MESSAGES/libgtop-2.0.mo +share/locale/gu/LC_MESSAGES/libgtop-2.0.mo +share/locale/he/LC_MESSAGES/libgtop-2.0.mo +share/locale/hi/LC_MESSAGES/libgtop-2.0.mo +share/locale/hr/LC_MESSAGES/libgtop-2.0.mo +share/locale/hu/LC_MESSAGES/libgtop-2.0.mo +share/locale/id/LC_MESSAGES/libgtop-2.0.mo +share/locale/it/LC_MESSAGES/libgtop-2.0.mo +share/locale/ja/LC_MESSAGES/libgtop-2.0.mo +share/locale/ka/LC_MESSAGES/libgtop-2.0.mo +share/locale/ko/LC_MESSAGES/libgtop-2.0.mo +share/locale/ku/LC_MESSAGES/libgtop-2.0.mo +share/locale/ky/LC_MESSAGES/libgtop-2.0.mo +share/locale/lt/LC_MESSAGES/libgtop-2.0.mo +share/locale/lv/LC_MESSAGES/libgtop-2.0.mo +share/locale/mg/LC_MESSAGES/libgtop-2.0.mo +share/locale/mi/LC_MESSAGES/libgtop-2.0.mo +share/locale/mk/LC_MESSAGES/libgtop-2.0.mo +share/locale/ml/LC_MESSAGES/libgtop-2.0.mo +share/locale/mn/LC_MESSAGES/libgtop-2.0.mo +share/locale/ms/LC_MESSAGES/libgtop-2.0.mo +share/locale/nb/LC_MESSAGES/libgtop-2.0.mo +share/locale/ne/LC_MESSAGES/libgtop-2.0.mo +share/locale/nl/LC_MESSAGES/libgtop-2.0.mo +share/locale/nn/LC_MESSAGES/libgtop-2.0.mo +share/locale/or/LC_MESSAGES/libgtop-2.0.mo +share/locale/pa/LC_MESSAGES/libgtop-2.0.mo +share/locale/pl/LC_MESSAGES/libgtop-2.0.mo +share/locale/pt/LC_MESSAGES/libgtop-2.0.mo +share/locale/pt_BR/LC_MESSAGES/libgtop-2.0.mo +share/locale/ro/LC_MESSAGES/libgtop-2.0.mo +share/locale/ru/LC_MESSAGES/libgtop-2.0.mo +share/locale/rw/LC_MESSAGES/libgtop-2.0.mo +share/locale/sk/LC_MESSAGES/libgtop-2.0.mo +share/locale/sl/LC_MESSAGES/libgtop-2.0.mo +share/locale/sq/LC_MESSAGES/libgtop-2.0.mo +share/locale/sr/LC_MESSAGES/libgtop-2.0.mo +share/locale/sr@Latn/LC_MESSAGES/libgtop-2.0.mo +share/locale/sv/LC_MESSAGES/libgtop-2.0.mo +share/locale/ta/LC_MESSAGES/libgtop-2.0.mo +share/locale/th/LC_MESSAGES/libgtop-2.0.mo +share/locale/tr/LC_MESSAGES/libgtop-2.0.mo +share/locale/uk/LC_MESSAGES/libgtop-2.0.mo +share/locale/vi/LC_MESSAGES/libgtop-2.0.mo +share/locale/xh/LC_MESSAGES/libgtop-2.0.mo +share/locale/zh_CN/LC_MESSAGES/libgtop-2.0.mo +share/locale/zh_HK/LC_MESSAGES/libgtop-2.0.mo +share/locale/zh_TW/LC_MESSAGES/libgtop-2.0.mo +@dirrm include/libgtop-2.0/glibtop +@dirrm include/libgtop-2.0 diff --git a/sysutils/libgtop/buildlink3.mk b/sysutils/libgtop/buildlink3.mk new file mode 100644 index 00000000000..eec7d85b026 --- /dev/null +++ b/sysutils/libgtop/buildlink3.mk @@ -0,0 +1,23 @@ +# $NetBSD: buildlink3.mk,v 1.4 2007/09/20 21:12:05 wiz Exp $ + +BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+ +LIBGTOP_BUILDLINK3_MK:= ${LIBGTOP_BUILDLINK3_MK}+ + +.if !empty(BUILDLINK_DEPTH:M+) +BUILDLINK_DEPENDS+= libgtop +.endif + +BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nlibgtop} +BUILDLINK_PACKAGES+= libgtop +BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}libgtop + +.if !empty(LIBGTOP_BUILDLINK3_MK:M+) +BUILDLINK_API_DEPENDS.libgtop+= libgtop>=2.14.0 +BUILDLINK_PKGSRCDIR.libgtop?= ../../sysutils/libgtop +.endif # LIBGTOP_BUILDLINK3_MK + +.include "../../devel/gettext-lib/buildlink3.mk" +.include "../../devel/glib2/buildlink3.mk" +.include "../../devel/popt/buildlink3.mk" + +BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//} diff --git a/sysutils/libgtop/distinfo b/sysutils/libgtop/distinfo new file mode 100644 index 00000000000..8fb19f4aa52 --- /dev/null +++ b/sysutils/libgtop/distinfo @@ -0,0 +1,27 @@ +$NetBSD: distinfo,v 1.4 2007/09/20 21:12:06 wiz Exp $ + +SHA1 (libgtop-2.14.2.tar.bz2) = 20e79a58c08e06e5f5e68d8ebbd575471f754e96 +RMD160 (libgtop-2.14.2.tar.bz2) = cb51f7252e015e17dcf3f1f991b36bf3e5496efe +Size (libgtop-2.14.2.tar.bz2) = 664817 bytes +SHA1 (patch-aa) = 01f43f6786e1d2727b68acb0083283e33cbc9ae5 +SHA1 (patch-ab) = 3a00a1c4f0d895d0e2ecc2bceabc4bbc5dbaa422 +SHA1 (patch-ac) = c645307376eddb5c469ab00bd7ec8217feb3e2d5 +SHA1 (patch-ad) = ada3c0128c0b7d3b670f8d30c910fe4c1e2e351a +SHA1 (patch-ae) = 035419a4e8a505c672f727c843dbd977acd8ce35 +SHA1 (patch-af) = 520dbdec4a8cba6e82b08c169d97c3caebacd419 +SHA1 (patch-ag) = 2329761a8f0278e8f04a5704b4ab2f63d6b24576 +SHA1 (patch-ah) = 57d112d551149190a6b9c24074427457f8591691 +SHA1 (patch-ai) = 57d891785a45ec532757a48e77adafec091f3953 +SHA1 (patch-aj) = c244b5c60e61594c3d2c0bc95e05e12ad68938db +SHA1 (patch-ak) = b8365370cd25da8626fc636d4c9faf91a626067d +SHA1 (patch-al) = 5f7fb52914005c089c72589e8883bc062d3f14ab +SHA1 (patch-am) = 42bfab5f3e65734e98cee0c4035b17dc515514cf +SHA1 (patch-an) = 57a79bddc3f0e8237b72486aa8f8906f318ca38d +SHA1 (patch-ao) = 456feb151050332f1bc6577363329da175499dbc +SHA1 (patch-ap) = 1b842a59b821b2703b68935f59a65ffb6db3a68f +SHA1 (patch-aq) = bb44484df341a009aa269fbaf5039e351e105e6c +SHA1 (patch-ba) = fc99c68ec9765439bc82a38223a74bde319d26d5 +SHA1 (patch-bb) = 2940eeb9468f34683bd6d8adca196b669c412bfd +SHA1 (patch-bc) = 3638dfee30a4f10bc9662c23063df3f6a8cdc914 +SHA1 (patch-bd) = 7825fd4d2e6c06510fa3d76b4efa4d2ffab2a7d8 +SHA1 (patch-bg) = f4adb1f60c777a92e63f4ad0fef6d9addea5f856 diff --git a/sysutils/libgtop/patches/patch-aa b/sysutils/libgtop/patches/patch-aa new file mode 100644 index 00000000000..d04d24882ce --- /dev/null +++ b/sysutils/libgtop/patches/patch-aa @@ -0,0 +1,241 @@ +$NetBSD: patch-aa,v 1.5 2007/09/20 21:12:06 wiz Exp $ + +--- configure.orig 2006-07-27 18:43:37.000000000 +0000 ++++ configure +@@ -20112,17 +20112,17 @@ echo $ECHO_N "checking for libgtop sysde + libgtop_have_sysinfo=yes + libgtop_need_server=no + ;; +- freebsd*|netbsd*|openbsd*|bsdi*) ++ freebsd*|netbsd*|openbsd*|bsdi*|dragonfly*) + libgtop_sysdeps_dir=freebsd + libgtop_use_machine_h=yes + libgtop_need_server=yes +- libgtop_postinstall='chgrp kmem $(bindir)/libgtop_server && chmod 2755 $(bindir)/libgtop_server' ++ libgtop_postinstall='chgrp kmem $(bindir)/libgtop_server2 && chmod 2755 $(bindir)/libgtop_server' + ;; + solaris*) + libgtop_sysdeps_dir=solaris + libgtop_use_machine_h=yes + libgtop_need_server=yes +- libgtop_postinstall='chgrp sys $(bindir)/libgtop_server && chmod 2755 $(bindir)/libgtop_server' ++ libgtop_postinstall='chgrp sys $(bindir)/libgtop_server2 && chmod 2755 $(bindir)/libgtop_server' + ;; + aix*) + libgtop_sysdeps_dir=aix +@@ -20170,7 +20170,7 @@ echo "${ECHO_T}$libgtop_sysdeps_dir" >&6 + + + case "$host_os" in +- *bsd*) ++ *bsd* | *dragonfly*) + echo "$as_me:$LINENO: checking for kvm_open in -lkvm" >&5 + echo $ECHO_N "checking for kvm_open in -lkvm... $ECHO_C" >&6 + if test "${ac_cv_lib_kvm_kvm_open+set}" = set; then +@@ -20413,7 +20413,9 @@ cat >>conftest.$ac_ext <<_ACEOF + #include <net/netisr.h> + #include <net/route.h> + +-#if defined(__FreeBSD__) || defined(__NetBSD__) ++#if defined(__DragonFly__) ++#include <net/sppp/if_sppp.h> ++#elif defined(__FreeBSD__) || defined(__NetBSD__) + #include <net/if_sppp.h> + #else + #include <i4b/sppp/if_sppp.h> +@@ -20488,7 +20490,9 @@ cat >>conftest.$ac_ext <<_ACEOF + #include <net/netisr.h> + #include <net/route.h> + +-#if defined(__FreeBSD__) || defined(__NetBSD__) ++#if defined(__DragonFly__) ++#include <net/sppp/if_sppp.h> ++#elif defined(__FreeBSD__) || defined(__NetBSD__) + #include <net/if_sppp.h> + #else + #include <i4b/sppp/if_sppp.h> +@@ -20561,9 +20565,10 @@ echo $ECHO_N "checking what we need to d + echo $ECHO_N "(cached) $ECHO_C" >&6 + else + msginfo_needs= +- for def in nothing KERNEL _KERNEL; do ++ for def in nothing KERNEL _KERNEL_STRUCTURES _KERNEL; do + cat >conftest.$ac_ext <<_ACEOF + #define $def ++#include <sys/types.h> + #include <sys/ipc.h> + #include <sys/msg.h> + #include <stdio.h> +@@ -23925,6 +23930,146 @@ fi + esac + + ++echo "$as_me:$LINENO: checking for kvm_open in -lkvm" >&5 ++echo $ECHO_N "checking for kvm_open in -lkvm... $ECHO_C" >&6 ++if test "${ac_cv_lib_mach_kvm_open+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-lkvm $LIBS" ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++ ++/* Override any gcc2 internal prototype to avoid an error. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++/* We use char because int might match the return type of a gcc2 ++ builtin and then its argument prototype would still apply. */ ++char kvm_open (); ++int ++main () ++{ ++kvm_open (); ++ ; ++ return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext conftest$ac_exeext ++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 ++ (eval $ac_link) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest$ac_exeext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_cv_lib_mach_kvm_open=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_cv_lib_mach_kvm_open=no ++fi ++rm -f conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++echo "$as_me:$LINENO: result: $ac_cv_lib_mach_kvm_open" >&5 ++echo "${ECHO_T}$ac_cv_lib_mach_kvm_open" >&6 ++if test $ac_cv_lib_mach_kvm_open = yes; then ++ cat >>confdefs.h <<_ACEOF ++#define HAVE_LIBMACH 1 ++_ACEOF ++ ++ KVM_LIBS="-lkvm $KVM_LIBS" ++ ++fi ++ ++echo "$as_me:$LINENO: checking for kinfo_get_sched_hz in -lkinfo" >&5 ++echo $ECHO_N "checking for kinfo_get_sched_hz in -lkinfo... $ECHO_C" >&6 ++if test "${ac_cv_lib_kinfo_kinfo_get_sched_gz+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ ac_check_lib_save_LIBS=$LIBS ++LIBS="-lkinfo $LIBS" ++cat >conftest.$ac_ext <<_ACEOF ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++ ++/* Override any gcc2 internal prototype to avoid an error. */ ++#ifdef __cplusplus ++extern "C" ++#endif ++/* We use char because int might match the return type of a gcc2 ++ builtin and then its argument prototype would still apply. */ ++char kinfo_get_sched_hz (); ++int ++main () ++{ ++kinfo_get_sched_hz (); ++ ; ++ return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext conftest$ac_exeext ++if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 ++ (eval $ac_link) 2>conftest.er1 ++ ac_status=$? ++ grep -v '^ *+' conftest.er1 >conftest.err ++ rm -f conftest.er1 ++ cat conftest.err >&5 ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -z "$ac_c_werror_flag" || test ! -s conftest.err' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; } && ++ { ac_try='test -s conftest$ac_exeext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ ac_cv_lib_kinfo_kinfo_get_sched_hz=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++ac_cv_lib_kinfo_kinfo_get_sched_hz=no ++fi ++rm -f conftest.err conftest.$ac_objext \ ++ conftest$ac_exeext conftest.$ac_ext ++LIBS=$ac_check_lib_save_LIBS ++fi ++echo "$as_me:$LINENO: result: $ac_cv_lib_kinfo_kinfo_get_sched_hz" >&5 ++echo "${ECHO_T}$ac_cv_lib_kinfo_kinfo_get_sched_hz" >&6 ++if test $ac_cv_lib_kinfo_kinfo_get_sched_hz = yes; then ++ ++ LIBS="-lkinfo $LIBS" # we need kvm as well ++fi ++ + echo "$as_me:$LINENO: checking for vm_statistics in -lmach" >&5 + echo $ECHO_N "checking for vm_statistics in -lmach... $ECHO_C" >&6 + if test "${ac_cv_lib_mach_vm_statistics+set}" = set; then +@@ -29952,7 +30097,7 @@ if test x$cross_compiling = xyes ; then + sunos*) + fu_cv_sys_stat_statfs4=yes + ;; +- freebsd*) ++ freebsd* | dragonfly*) + fu_cv_sys_stat_statfs2_bsize=yes + ;; + osf*) +@@ -30603,7 +30748,7 @@ cat >>conftest.$ac_ext <<_ACEOF + + _ACEOF + if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | +- $EGREP "f_type;" >/dev/null 2>&1; then ++ $EGREP "f_type;|struct statvfs" >/dev/null 2>&1; then + ok=yes + fi + rm -f conftest* +@@ -32141,6 +32290,7 @@ s,@ECHO_C@,$ECHO_C,;t t + s,@ECHO_N@,$ECHO_N,;t t + s,@ECHO_T@,$ECHO_T,;t t + s,@LIBS@,$LIBS,;t t ++s,@KVM_LIBS@,$KVM_LIBS,;t t + s,@build@,$build,;t t + s,@build_cpu@,$build_cpu,;t t + s,@build_vendor@,$build_vendor,;t t diff --git a/sysutils/libgtop/patches/patch-ab b/sysutils/libgtop/patches/patch-ab new file mode 100644 index 00000000000..26d01995973 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ab @@ -0,0 +1,94 @@ +$NetBSD: patch-ab,v 1.6 2007/09/20 21:12:06 wiz Exp $ + +--- sysdeps/freebsd/proctime.c.orig 2006-04-04 20:01:43.000000000 +0000 ++++ sysdeps/freebsd/proctime.c +@@ -32,6 +32,10 @@ + #include <osreldate.h> + #endif + ++#ifdef __NetBSD__ ++#include <sys/resourcevar.h> ++#endif ++ + static const unsigned long _glibtop_sysdeps_proc_time = + (1L << GLIBTOP_PROC_TIME_RTIME) + (1L << GLIBTOP_PROC_TIME_FREQUENCY); + +@@ -58,7 +62,7 @@ glibtop_init_proc_time_p (glibtop *serve + * system, and interrupt time usage. + */ + +-#ifndef __FreeBSD__ ++#if !defined(__FreeBSD__) && !defined(__DragonFly__) + + #ifndef __FreeBSD__ + static void +@@ -125,7 +129,9 @@ glibtop_get_proc_time_p (glibtop *server + #else + struct user *u_addr = (struct user *)USRSTACK; + #endif ++#if !defined(__DragonFly__) + struct pstats pstats; ++#endif + int count; + + glibtop_init_p (server, (1L << GLIBTOP_SYSDEPS_PROC_TIME), 0); +@@ -142,11 +148,15 @@ glibtop_get_proc_time_p (glibtop *server + + /* Get the process information */ + pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, &count); +- if ((pinfo == NULL) || (count != 1)) +- glibtop_error_io_r (server, "kvm_getprocs (%d)", pid); ++ if ((pinfo == NULL) || (count != 1)) { ++ glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid); ++ return; ++ } + + #if defined(__FreeBSD__) && (__FreeBSD_version >= 500013) + buf->rtime = pinfo [0].ki_runtime; ++#elif defined(__DragonFly__) ++ buf->rtime = pinfo [0].kp_eproc.e_uticks / 100000; + #elif (defined __FreeBSD__) && (__FreeBSD_version <= 500013) + buf->rtime = pinfo [0].kp_proc.p_runtime; + #else +@@ -189,16 +199,38 @@ glibtop_get_proc_time_p (glibtop *server + if ((pinfo [0].ki_flag & P_INMEM)) { + #endif + buf->utime = pinfo [0].ki_runtime; +- buf->stime = 0; /* XXX */ ++ buf->stime = tv2sec (pinfo [0].ki_rusage.ru_stime); + buf->cutime = tv2sec (pinfo [0].ki_childtime); +- buf->cstime = 0; /* XXX */ ++#if __FreeBSD_version >= 600000 ++ buf->cstime = tv2sec (pinfo [0].ki_rusage_ch.ru_stime); ++#else ++ buf->cstime = 0; ++#endif + buf->start_time = tv2sec (pinfo [0].ki_start); + buf->flags = _glibtop_sysdeps_proc_time_user; + } + + glibtop_suid_enter (server); + +-#elif (__FreeBSD_version <= 500013) ++#elif defined(__DragonFly__) ++ ++ if ((pinfo [0].kp_proc.p_flag & P_SWAPPEDOUT) == 0) ++ { ++ ++ buf->utime = pinfo[0].kp_eproc.e_uticks / 1000000; ++ buf->stime = pinfo[0].kp_eproc.e_sticks / 1000000; ++#if __DragonFly_version >= 180000 ++ buf->cutime = 0; /* XXX no idea about this */ ++ buf->cstime = 0; ++#else ++ buf->cutime = tv2sec (pinfo[0].kp_eproc.e_stats.p_cru.ru_utime); ++ buf->cstime = tv2sec (pinfo[0].kp_eproc.e_stats.p_cru.ru_stime); ++#endif ++ buf->start_time = tv2sec (pinfo[0].kp_thread.td_start); ++ buf->flags = _glibtop_sysdeps_proc_time_user; ++ glibtop_suid_leave (server); ++ } ++#elif defined(__FreeBSD__) && (__FreeBSD_version <= 500013) + + if ((pinfo [0].kp_proc.p_flag & P_INMEM) && + kvm_uread (server->machine.kd, &(pinfo [0]).kp_proc, diff --git a/sysutils/libgtop/patches/patch-ac b/sysutils/libgtop/patches/patch-ac new file mode 100644 index 00000000000..0e07b0f12d5 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ac @@ -0,0 +1,34 @@ +$NetBSD: patch-ac,v 1.5 2007/09/20 21:12:07 wiz Exp $ + +--- sysdeps/common/mountlist.c.orig 2003-10-20 09:29:03.000000000 -0500 ++++ sysdeps/common/mountlist.c +@@ -106,7 +106,7 @@ static struct mount_entry *read_filesyst + #endif + + +-#if defined (MOUNTED_GETMNTINFO) && !defined (__NetBSD__) && !defined (__OpenBSD__) && !defined(__FreeBSD__) ++#if defined (MOUNTED_GETMNTINFO) && !defined (__NetBSD__) && !defined (__OpenBSD__) && !defined(__FreeBSD__) && !defined(__DragonFly__) + static const char * + fstype_to_string (short t) + { +@@ -298,7 +298,11 @@ read_filesystem_list (void) + + #ifdef MOUNTED_GETMNTINFO /* 4.4BSD. */ + { ++#if defined(STAT_STATVFS) && !defined(__DragonFly__) ++ struct statvfs *fsp; ++#else + struct statfs *fsp; ++#endif + int entries; + + entries = getmntinfo (&fsp, MNT_NOWAIT); +@@ -309,7 +313,7 @@ read_filesystem_list (void) + me = (struct mount_entry *) g_malloc (sizeof (struct mount_entry)); + me->me_devname = g_strdup (fsp->f_mntfromname); + me->me_mountdir = g_strdup (fsp->f_mntonname); +-#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) ++#if defined(__NetBSD__) || defined(__OpenBSD__) || defined(__FreeBSD__) || defined(__DragonFly__) + me->me_type = g_strdup (fsp->f_fstypename); + #else + me->me_type = g_strdup (fstype_to_string (fsp->f_type)); diff --git a/sysutils/libgtop/patches/patch-ad b/sysutils/libgtop/patches/patch-ad new file mode 100644 index 00000000000..d4945f851bc --- /dev/null +++ b/sysutils/libgtop/patches/patch-ad @@ -0,0 +1,19 @@ +$NetBSD: patch-ad,v 1.5 2007/09/20 21:12:07 wiz Exp $ + +--- sysdeps/freebsd/fsusage.c.orig 2006-04-09 18:52:45.000000000 +0200 ++++ sysdeps/freebsd/fsusage.c +@@ -47,8 +47,12 @@ _glibtop_freebsd_get_fsusage_read_write( + return; + } + ++#ifdef HAVE_STATVFS_READS_COUNT + buf->read = sfs.f_syncreads + sfs.f_asyncreads; ++ buf->flags |= (1 << GLIBTOP_FSUSAGE_READ); ++#endif ++#ifdef HAVE_STATVFS_WRITES_COUNT + buf->write = sfs.f_syncwrites + sfs.f_asyncwrites; +- +- buf->flags |= (1 << GLIBTOP_FSUSAGE_READ) | (1 << GLIBTOP_FSUSAGE_WRITE); ++ buf->flags |= (1 << GLIBTOP_FSUSAGE_WRITE); ++#endif + } diff --git a/sysutils/libgtop/patches/patch-ae b/sysutils/libgtop/patches/patch-ae new file mode 100644 index 00000000000..ec08de45b8e --- /dev/null +++ b/sysutils/libgtop/patches/patch-ae @@ -0,0 +1,87 @@ +$NetBSD: patch-ae,v 1.5 2007/09/20 21:12:08 wiz Exp $ + +--- sysdeps/freebsd/cpu.c.orig 2005-07-08 19:49:56.000000000 +0000 ++++ sysdeps/freebsd/cpu.c +@@ -27,16 +27,73 @@ + + #include <glibtop_suid.h> + +-#ifdef __NetBSD__ +-#include <sys/sched.h> +-#endif +- + static const unsigned long _glibtop_sysdeps_cpu = + (1L << GLIBTOP_CPU_TOTAL) + (1L << GLIBTOP_CPU_USER) + + (1L << GLIBTOP_CPU_NICE) + (1L << GLIBTOP_CPU_SYS) + + (1L << GLIBTOP_CPU_IDLE) + (1L << GLIBTOP_CPU_FREQUENCY) + + (1L << GLIBTOP_CPU_IOWAIT); + ++#if defined(__DragonFly__) ++#include <kinfo.h> ++ ++/* Init function. */ ++ ++void ++glibtop_init_cpu_p (glibtop *server) ++{ ++ server->sysdeps.cpu = _glibtop_sysdeps_cpu; ++} ++ ++/* Provides information about cpu usage. */ ++void ++glibtop_get_cpu_p (glibtop *server, glibtop_cpu *buf) ++{ ++ struct kinfo_cputime cp_time; ++ int hz; ++ ++ glibtop_init_p (server, (1L << GLIBTOP_SYSDEPS_CPU), 0); ++ ++ memset (buf, 0, sizeof (glibtop_cpu)); ++ ++ /* If this fails, the module was not setuped. */ ++ if (server->sysdeps.cpu == 0) ++ return; ++ ++ if (kinfo_get_sched_cputime(&cp_time)) { ++ glibtop_warn_io_r (server, "kinfo_get_sched_cputime"); ++ return; ++ } ++ if (kinfo_get_sched_hz(&hz)) { ++ glibtop_warn_io_r (server, "kinfo_get_sched hz"); ++ return; ++ } ++ /* set user time */ ++ buf->user = cp_time.cp_user; ++ /* set nice time */ ++ buf->nice = cp_time.cp_nice; ++ /* set sys time */ ++ buf->sys = cp_time.cp_sys; ++ /* set idle time */ ++ buf->idle = cp_time.cp_idle; ++ /* set iowait (really just interrupt) time */ ++ buf->iowait = cp_time.cp_idle; ++ ++ /* set frequency */ ++ buf->frequency = hz; ++ /* set total */ ++ buf->total = cp_time.cp_user + cp_time.cp_sys + cp_time.cp_nice + ++ cp_time.cp_idle; ++ ++ /* Set the flags last. */ ++ buf->flags = _glibtop_sysdeps_cpu; ++} ++ ++#else ++ ++#ifdef __NetBSD__ ++#include <sys/sched.h> ++#endif ++ + #ifndef KERN_CP_TIME + /* nlist structure for kernel access */ + static struct nlist nlst [] = { +@@ -141,3 +198,4 @@ glibtop_get_cpu_p (glibtop *server, glib + /* Set the flags last. */ + buf->flags = _glibtop_sysdeps_cpu; + } ++#endif diff --git a/sysutils/libgtop/patches/patch-af b/sysutils/libgtop/patches/patch-af new file mode 100644 index 00000000000..377d489ff19 --- /dev/null +++ b/sysutils/libgtop/patches/patch-af @@ -0,0 +1,14 @@ +$NetBSD: patch-af,v 1.5 2007/09/20 21:12:08 wiz Exp $ + +--- sysdeps/freebsd/glibtop_machine.h.orig 2005-07-08 19:00:00.000000000 +0000 ++++ sysdeps/freebsd/glibtop_machine.h +@@ -27,7 +27,9 @@ + #include <sys/param.h> + #include <nlist.h> + #include <kvm.h> ++#ifndef __DragonFly__ + #include <sys/dkstat.h> ++#endif + #include <time.h> + #include <sys/user.h> + #include <sys/types.h> diff --git a/sysutils/libgtop/patches/patch-ag b/sysutils/libgtop/patches/patch-ag new file mode 100644 index 00000000000..e71cc708693 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ag @@ -0,0 +1,159 @@ +$NetBSD: patch-ag,v 1.5 2007/09/20 21:12:08 wiz Exp $ + +--- sysdeps/freebsd/mem.c.orig 2005-12-12 11:09:39.000000000 +0100 ++++ sysdeps/freebsd/mem.c +@@ -28,6 +28,10 @@ + + #include <glibtop_suid.h> + ++#if defined(__DragonFly__) ++#include <kinfo.h> ++#endif ++ + #include <sys/sysctl.h> + #include <sys/vmmeter.h> + #if defined(__NetBSD__) && (__NetBSD_Version__ < 105020000) +@@ -58,6 +62,7 @@ static int pageshift; /* log base 2 of + /* define pagetok in terms of pageshift */ + #define pagetok(size) ((size) << pageshift) + ++#if !defined(__DragonFly__) + /* nlist structure for kernel access */ + static struct nlist nlst [] = { + #if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) +@@ -75,6 +80,7 @@ static struct nlist nlst [] = { + { 0 } + #endif + }; ++#endif + + /* MIB array for sysctl */ + #ifdef __bsdi__ +@@ -83,7 +89,9 @@ static int mib [] = { CTL_VM, VM_TOTAL } + static int mib [] = { CTL_VM, VM_METER }; + #endif + +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) ++#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) ++static int mib_uvmexp [] = { CTL_VM, VM_UVMEXP2 }; ++#elif defined(__OpenBSD__) + static int mib_uvmexp [] = { CTL_VM, VM_UVMEXP }; + #endif + +@@ -94,10 +102,12 @@ glibtop_init_mem_p (glibtop *server) + { + register int pagesize; + ++#if !defined(__DragonFly__) + if (kvm_nlist (server->machine.kd, nlst) < 0) { + glibtop_warn_io_r (server, "kvm_nlist (mem)"); + return; + } ++#endif + + /* get the page size with "getpagesize" and calculate pageshift + * from it */ +@@ -119,9 +129,15 @@ glibtop_get_mem_p (glibtop *server, glib + { + struct vmtotal vmt; + size_t length_vmt; +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) ++#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) ++ struct uvmexp_sysctl uvmexp; ++ size_t length_uvmexp; ++#elif defined(__OpenBSD__) + struct uvmexp uvmexp; + size_t length_uvmexp; ++#elif defined(__DragonFly__) ++ struct vmstats vms; ++ size_t vms_size; + #else + struct vmmeter vmm; + #endif +@@ -142,11 +158,19 @@ glibtop_get_mem_p (glibtop *server, glib + * here.] */ + + /* Get the data from sysctl */ ++#if defined(__DragonFly__) ++ length_vmt = sizeof (vmt); ++ if (sysctlbyname ("vm.vmtotal", &vmt, &length_vmt, NULL, 0)) { ++ glibtop_warn_io_r (server, "sysctl (vmt)"); ++ return; ++ } ++#else + length_vmt = sizeof (vmt); + if (sysctl (mib, 2, &vmt, &length_vmt, NULL, 0)) { + glibtop_warn_io_r (server, "sysctl (vmt)"); + return; + } ++#endif + + #if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) + length_uvmexp = sizeof (uvmexp); +@@ -154,6 +178,12 @@ glibtop_get_mem_p (glibtop *server, glib + glibtop_warn_io_r (server, "sysctl (uvmexp)"); + return; + } ++#elif defined(__DragonFly__) ++ vms_size = sizeof(vms); ++ if (sysctlbyname("vm.vmstats", &vms, &vms_size, NULL, 0)) { ++ glibtop_warn_io_r (server, "kvm_read (vms)"); ++ return; ++ } + #else + /* Get the data from kvm_* */ + if (kvm_read (server->machine.kd, nlst[1].n_value, +@@ -163,15 +193,24 @@ glibtop_get_mem_p (glibtop *server, glib + } + #endif + ++#if defined(__DragonFly__) ++ if (kinfo_get_vfs_bufspace(&bufspace)) { ++ glibtop_warn_io_r (server, "kinfo_get_vfs_bufspace"); ++ return; ++ } ++#else + if (kvm_read (server->machine.kd, nlst[0].n_value, + &bufspace, sizeof (bufspace)) != sizeof (bufspace)) { + glibtop_warn_io_r (server, "kvm_read (bufspace)"); + return; + } ++#endif + + /* convert memory stats to Kbytes */ + +-#if defined(__FreeBSD__) ++#if defined(__DragonFly__) ++ v_total_count = vms.v_page_count; ++#elif defined(__FreeBSD__) + v_total_count = vmm.v_page_count; + #else + #if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) +@@ -189,6 +228,9 @@ glibtop_get_mem_p (glibtop *server, glib + #if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) + v_used_count = uvmexp.active + uvmexp.inactive; + v_free_count = uvmexp.free; ++#elif defined(__DragonFly__) ++ v_used_count = vms.v_active_count + vms.v_inactive_count; ++ v_free_count = vms.v_free_count; + #else + v_used_count = vmm.v_active_count + vmm.v_inactive_count; + v_free_count = vmm.v_free_count; +@@ -198,12 +240,16 @@ glibtop_get_mem_p (glibtop *server, glib + buf->used = (guint64) pagetok (v_used_count) << LOG1024; + buf->free = (guint64) pagetok (v_free_count) << LOG1024; + +-#ifdef __FreeBSD__ ++#if defined(__DragonFly__) ++ buf->cached = (guint64) pagetok (vms.v_cache_count) << LOG1024; ++#elif defined(__FreeBSD__) + buf->cached = (guint64) pagetok (vmm.v_cache_count) << LOG1024; + #endif + + #if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) || defined(__OpenBSD__) + buf->locked = (guint64) pagetok (uvmexp.wired) << LOG1024; ++#elif defined(__DragonFly__) ++ buf->locked = (guint64) pagetok (vms.v_wire_count) << LOG1024; + #else + buf->locked = (guint64) pagetok (vmm.v_wire_count) << LOG1024; + #endif diff --git a/sysutils/libgtop/patches/patch-ah b/sysutils/libgtop/patches/patch-ah new file mode 100644 index 00000000000..26fbce1068b --- /dev/null +++ b/sysutils/libgtop/patches/patch-ah @@ -0,0 +1,12 @@ +$NetBSD: patch-ah,v 1.3 2007/09/20 21:12:09 wiz Exp $ + +--- sysdeps/freebsd/open.c.orig 2005-12-12 11:09:39.000000000 +0100 ++++ sysdeps/freebsd/open.c +@@ -23,6 +23,7 @@ + + #include <config.h> + #include <glibtop.h> ++#include <glibtop/error.h> + #include <glibtop/open.h> + #include <glibtop/init_hooks.h> + diff --git a/sysutils/libgtop/patches/patch-ai b/sysutils/libgtop/patches/patch-ai new file mode 100644 index 00000000000..34b62efa818 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ai @@ -0,0 +1,46 @@ +$NetBSD: patch-ai,v 1.3 2007/09/20 21:12:09 wiz Exp $ + +--- sysdeps/freebsd/prockernel.c.orig 2004-09-24 22:49:06.000000000 +0000 ++++ sysdeps/freebsd/prockernel.c +@@ -35,7 +35,7 @@ + #include <sys/user.h> + #endif + #if !defined(__bsdi__) && !(defined(__FreeBSD__) && defined(__alpha__)) && \ +- !defined(__NetBSD__) ++ !defined(__NetBSD__) && !defined(__DragonFly__) + #include <machine/pcb.h> + #endif + +@@ -93,7 +93,7 @@ glibtop_get_proc_kernel_p (glibtop *serv + pid_t pid) + { + struct kinfo_proc *pinfo; +-#ifndef __FreeBSD__ ++#if !defined(__FreeBSD__) && !defined(__DragonFly__) + struct user *u_addr = (struct user *)USRSTACK; + struct pstats pstats; + struct pcb pcb; +@@ -126,9 +126,14 @@ glibtop_get_proc_kernel_p (glibtop *serv + + #else + ++#ifdef __DragonFly__ ++#define PROC_WCHAN kp_thread.td_wchan ++#define PROC_WMESG kp_thread.td_wmesg ++#else + #define PROC_WCHAN kp_proc.p_wchan + #define PROC_WMESG kp_proc.p_wmesg + #define PROC_WMESG kp_eproc.e_wmesg ++#endif + + #endif + +@@ -146,7 +151,7 @@ glibtop_get_proc_kernel_p (glibtop *serv + } + #endif + +-#ifndef __FreeBSD__ ++#if !defined(__FreeBSD__) && !defined(__DragonFly__) + + /* Taken from `saveuser ()' in `/usr/src/bin/ps/ps.c'. */ + diff --git a/sysutils/libgtop/patches/patch-aj b/sysutils/libgtop/patches/patch-aj new file mode 100644 index 00000000000..9c31f6e43ef --- /dev/null +++ b/sysutils/libgtop/patches/patch-aj @@ -0,0 +1,16 @@ +$NetBSD: patch-aj,v 1.3 2007/09/20 21:12:09 wiz Exp $ + +--- sysdeps/freebsd/proclist.c.orig 2004-09-23 22:44:19.000000000 +0000 ++++ sysdeps/freebsd/proclist.c +@@ -92,7 +92,11 @@ glibtop_get_proclist_p (glibtop *server, + + #else + #define PROC_STAT kp_proc.p_stat ++#ifdef __DragonFly__ ++#define PROC_RUID kp_eproc.e_ucred.cr_ruid ++#else + #define PROC_RUID kp_eproc.e_pcred.p_ruid ++#endif + #define PROC_PID kp_proc.p_pid + + #endif diff --git a/sysutils/libgtop/patches/patch-ak b/sysutils/libgtop/patches/patch-ak new file mode 100644 index 00000000000..d3b0728effc --- /dev/null +++ b/sysutils/libgtop/patches/patch-ak @@ -0,0 +1,70 @@ +$NetBSD: patch-ak,v 1.3 2007/09/20 21:12:10 wiz Exp $ + +--- sysdeps/freebsd/procmap.c.orig 2005-12-12 10:09:39.000000000 +0000 ++++ sysdeps/freebsd/procmap.c +@@ -21,6 +21,10 @@ + Boston, MA 02111-1307, USA. + */ + ++#ifdef __DragonFly__ ++#define _KERNEL_STRUCTURES ++#endif ++ + #include <config.h> + #include <glibtop.h> + #include <glibtop/error.h> +@@ -41,7 +45,7 @@ + #else + #include <vm/vm_object.h> + #include <vm/vm_map.h> +-#if (__FreeBSD_version >= 400011) ++#if defined(__DragonFly__) || (defined(__FreeBSD__) && __FreeBSD_version >= 400011) + #include <vm/vm.h> + #else + #include <vm/vm_prot.h> +@@ -109,9 +113,9 @@ glibtop_get_proc_map_p (glibtop *server, + struct vm_object object; + #endif + glibtop_map_entry *maps; +-#if defined __FreeBSD__ ++#if defined(__FreeBSD__) || defined(__DragonFly__) + struct vnode vnode; +-#if __FreeBSD_version < 500039 ++#if (defined(__FreeBSD__) && __FreeBSD_version < 500039) || defined(__DragonFly__) + struct inode inode; + #endif + #endif +@@ -130,7 +134,7 @@ glibtop_get_proc_map_p (glibtop *server, + /* Get the process data */ + pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, &count); + if ((pinfo == NULL) || (count < 1)) { +- glibtop_error_io_r (server, "kvm_getprocs (%d)", pid); ++ glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid); + return NULL; + } + +@@ -178,9 +182,12 @@ glibtop_get_proc_map_p (glibtop *server, + } else { + update = 1; + } +- +-#ifdef __FreeBSD__ +-#if __FreeBSD__ >= 4 ++#if defined(__FreeBSD__) || defined(__DragonFly__) ++#if defined(__DragonFly__) && __DragonFly_version >= 180000 ++ if (entry.eflags != VM_MAPTYPE_NORMAL && ++ entry.eflags != VM_MAPTYPE_VPAGETABLE) ++ continue; ++#elif (defined(__FreeBSD__) && __FreeBSD__ >= 4) || defined(__DragonFly__) + if (entry.eflags & (MAP_ENTRY_IS_SUB_MAP)) + continue; + #else +@@ -256,7 +263,7 @@ glibtop_get_proc_map_p (glibtop *server, + #endif + + +-#ifdef __FreeBSD__ ++#if defined(__FreeBSD__) || defined(__DragonFly__) + /* If the object is of type vnode, add its size */ + + if (object.type != OBJT_VNODE) diff --git a/sysutils/libgtop/patches/patch-al b/sysutils/libgtop/patches/patch-al new file mode 100644 index 00000000000..aae582128eb --- /dev/null +++ b/sysutils/libgtop/patches/patch-al @@ -0,0 +1,39 @@ +$NetBSD: patch-al,v 1.5 2007/09/20 21:12:10 wiz Exp $ + +--- sysdeps/freebsd/procmem.c.orig 2005-12-12 10:09:39.000000000 +0000 ++++ sysdeps/freebsd/procmem.c +@@ -41,7 +41,9 @@ + + #include <sys/vnode.h> + #include <ufs/ufs/quota.h> ++#if !defined(__DragonFly__) + #include <ufs/ufs/inode.h> ++#endif + + #include <sys/ucred.h> + #if (!defined __OpenBSD__) && (!defined __bsdi__) +@@ -63,6 +65,10 @@ + #include <uvm/uvm.h> + #endif + ++#ifdef __NetBSD__ ++#include <sys/resourcevar.h> ++#endif ++ + static const unsigned long _glibtop_sysdeps_proc_mem = + (1L << GLIBTOP_PROC_MEM_SIZE) + + (1L << GLIBTOP_PROC_MEM_VSIZE) + +@@ -214,8 +220,11 @@ glibtop_get_proc_mem_p (glibtop *server, + return; + } + +-#ifdef __FreeBSD__ +-#if __FreeBSD__ >= 4 ++#if defined(__DragonFly__) && (__DragonFly_version >= 180000) ++ if (entry.maptype != VM_MAPTYPE_NORMAL && entry.maptype != VM_MAPTYPE_VPAGETABLE) ++ continue; ++#elif defined(__FreeBSD__) || defined(__DragonFly__) ++#if defined(__DragonFly__) || (defined(__FreeBSD__) && __FreeBSD__ >= 4) + if (entry.eflags & (MAP_ENTRY_IS_SUB_MAP)) + continue; + #else diff --git a/sysutils/libgtop/patches/patch-am b/sysutils/libgtop/patches/patch-am new file mode 100644 index 00000000000..1bc3876fd89 --- /dev/null +++ b/sysutils/libgtop/patches/patch-am @@ -0,0 +1,111 @@ +$NetBSD: patch-am,v 1.4 2007/09/20 21:12:11 wiz Exp $ + +--- sysdeps/freebsd/procsignal.c.orig 2005-12-12 10:09:39.000000000 +0000 ++++ sysdeps/freebsd/procsignal.c +@@ -53,7 +53,11 @@ glibtop_get_proc_signal_p (glibtop *serv + glibtop_proc_signal *buf, + pid_t pid) + { ++#if defined(KERN_PROC2) ++ struct kinfo_proc2 *pinfo; ++#else + struct kinfo_proc *pinfo; ++#endif + int count = 0; + + glibtop_init_p (server, (1L << GLIBTOP_SYSDEPS_PROC_SIGNAL), 0); +@@ -64,7 +68,12 @@ glibtop_get_proc_signal_p (glibtop *serv + if (pid == 0) return; + + /* Get the process information */ ++#if defined(KERN_PROC2) ++ pinfo = kvm_getproc2 (server->machine.kd, KERN_PROC_PID, pid, ++ sizeof(struct kinfo_proc2), &count); ++#else + pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, &count); ++#endif + if ((pinfo == NULL) || (count != 1)) { + glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid); + return; +@@ -77,6 +86,13 @@ glibtop_get_proc_signal_p (glibtop *serv + #define PROC_SIGIGNORE ki_sigignore + #define PROC_SIGCATCH ki_sigcatch + ++#elif defined(KERN_PROC2) ++ ++#define PROC_SIGLIST p_siglist ++#define PROC_SIGMASK p_sigmask ++#define PROC_SIGIGNORE p_sigignore ++#define PROC_SIGCATCH p_sigcatch ++ + #else + + #define PROC_SIGLIST kp_proc.p_siglist +@@ -89,11 +105,12 @@ glibtop_get_proc_signal_p (glibtop *serv + /* signal: mask of pending signals. + * pinfo [0].kp_proc.p_siglist + */ +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) +- buf->signal [0] = pinfo [0].kp_proc.p_sigctx.ps_siglist.__bits[0]; +-#elif (defined(__NetBSD__) && (NSIG > 32)) || \ +- (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) ++#if (defined(__NetBSD__) && (NSIG > 32)) || \ ++ (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) || \ ++ defined(__DragonFly__) + buf->signal [0] = pinfo [0].PROC_SIGLIST.__bits[0]; ++#elif defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) ++ buf->signal [0] = pinfo [0].kp_proc.p_sigctx.ps_siglist.__bits[0]; + #else + buf->signal [0] = pinfo [0].kp_proc.p_siglist; + #endif +@@ -101,11 +118,12 @@ glibtop_get_proc_signal_p (glibtop *serv + /* blocked: mask of blocked signals. + * pinfo [0].kp_proc.p_sigmask + */ +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) +- buf->blocked [0] = pinfo [0].kp_proc.p_sigctx.ps_sigmask.__bits[0]; +-#elif (defined(__NetBSD__) && (NSIG > 32)) || \ +- (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) ++#if (defined(__NetBSD__) && (NSIG > 32)) || \ ++ (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) || \ ++ defined(__DragonFly__) + buf->blocked [0] = pinfo [0].PROC_SIGMASK.__bits[0]; ++#elif defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) ++ buf->blocked [0] = pinfo [0].kp_proc.p_sigctx.ps_sigmask.__bits[0]; + #else + buf->blocked [0] = pinfo [0].kp_proc.p_sigmask; + #endif +@@ -113,11 +131,12 @@ glibtop_get_proc_signal_p (glibtop *serv + /* sigignore: mask of ignored signals. + * pinfo [0].kp_proc.p_sigignore + */ +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) +- buf->sigignore [0] = pinfo [0].kp_proc.p_sigctx.ps_sigignore.__bits[0]; +-#elif (defined(__NetBSD__) && (NSIG > 32)) || \ +- (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) ++#if (defined(__NetBSD__) && (NSIG > 32)) || \ ++ (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) || \ ++ defined(__DragonFly__) + buf->sigignore [0] = pinfo [0].PROC_SIGIGNORE.__bits[0]; ++#elif defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) ++ buf->sigignore [0] = pinfo [0].kp_proc.p_sigctx.ps_sigignore.__bits[0]; + #else + buf->sigignore [0] = pinfo [0].kp_proc.p_sigignore; + #endif +@@ -125,11 +144,12 @@ glibtop_get_proc_signal_p (glibtop *serv + /* sigcatch: mask of caught signals. + * pinfo [0].kp_proc.p_sigcatch + */ +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) +- buf->sigcatch [0] = pinfo [0].kp_proc.p_sigctx.ps_sigcatch.__bits[0]; +-#elif (defined(__NetBSD__) && (NSIG > 32)) || \ +- (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) ++#if (defined(__NetBSD__) && (NSIG > 32)) || \ ++ (defined(__FreeBSD__) && (__FreeBSD_version >= 400011)) || \ ++ defined(__DragonFly__) + buf->sigcatch [0] = pinfo [0].PROC_SIGCATCH.__bits[0]; ++#elif defined(__NetBSD__) && (__NetBSD_Version__ >= 105150000) ++ buf->sigcatch [0] = pinfo [0].kp_proc.p_sigctx.ps_sigcatch.__bits[0]; + #else + buf->sigcatch [0] = pinfo [0].kp_proc.p_sigcatch; + #endif diff --git a/sysutils/libgtop/patches/patch-an b/sysutils/libgtop/patches/patch-an new file mode 100644 index 00000000000..abf29aebeeb --- /dev/null +++ b/sysutils/libgtop/patches/patch-an @@ -0,0 +1,19 @@ +$NetBSD: patch-an,v 1.3 2007/09/20 21:12:11 wiz Exp $ + +--- sysdeps/freebsd/procstate.c.orig 2004-09-24 22:49:06.000000000 +0000 ++++ sysdeps/freebsd/procstate.c +@@ -80,6 +80,14 @@ glibtop_get_proc_state_p (glibtop *serve + #define PROC_RGID ki_rgid + #define PROC_STAT ki_stat + ++#elif defined(__DragonFly__) ++#define PROC_COMM kp_thread.td_comm ++#define PROC_SVUID kp_eproc.e_ucred.cr_svuid ++#define PROC_SVGID kp_eproc.e_ucred.cr_svgid ++#define PROC_RUID kp_eproc.e_ucred.cr_ruid ++#define PROC_RGID kp_eproc.e_ucred.cr_rgid ++#define PROC_STAT kp_proc.p_stat ++ + #else + #define PROC_COMM kp_proc.p_comm + #define PROC_SVUID kp_eproc.e_pcred.p_svuid diff --git a/sysutils/libgtop/patches/patch-ao b/sysutils/libgtop/patches/patch-ao new file mode 100644 index 00000000000..72637764a62 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ao @@ -0,0 +1,74 @@ +$NetBSD: patch-ao,v 1.3 2007/09/20 21:12:11 wiz Exp $ + +--- sysdeps/freebsd/procuid.c.orig 2005-12-12 10:09:39.000000000 +0000 ++++ sysdeps/freebsd/procuid.c +@@ -53,11 +53,16 @@ void + glibtop_get_proc_uid_p (glibtop *server, glibtop_proc_uid *buf, + pid_t pid) + { ++#if defined(KERN_PROC2) ++ struct kinfo_proc2 *pinfo; ++#else + struct kinfo_proc *pinfo; ++#endif + int count = 0; + + #if LIBGTOP_VERSION_CODE >= 1001000 +-#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) ++#if defined(__NetBSD__) && (__NetBSD_Version__ >= 104000000) \ ++ && !defined(KERN_PROC2) + struct ucred ucred; + void *ucred_ptr; + #endif +@@ -71,7 +76,12 @@ glibtop_get_proc_uid_p (glibtop *server, + if (pid == 0) return; + + /* Get the process information */ ++#if defined(KERN_PROC2) ++ pinfo = kvm_getproc2 (server->machine.kd, KERN_PROC_PID, pid, ++ sizeof(struct kinfo_proc2), &count); ++#else + pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, &count); ++#endif + if ((pinfo == NULL) || (count != 1)) { + glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid); + return; +@@ -92,8 +102,28 @@ glibtop_get_proc_uid_p (glibtop *server, + #else + #define PROC_PRIORITY ki_priority + #endif +-#else ++#elif defined(__DragonFly__) ++#define PROC_RUID kp_eproc.e_ucred.cr_ruid ++#define PROC_SVUID kp_eproc.e_ucred.cr_svuid ++#define PROC_RGID kp_eproc.e_ucred.cr_rgid ++#define PROC_SVGID kp_eproc.e_ucred.cr_svgid ++#define PROC_PPID kp_eproc.e_ppid ++#define PROC_PGID kp_eproc.e_pgid ++#define PROC_TPGID kp_eproc.e_tpgid ++#define PROC_NICE kp_proc.p_nice ++ ++#elif defined(KERN_PROC2) /* && defined(__NetBSD__) ? */ ++#define PROC_RUID p_ruid ++#define PROC_SVUID p_svuid ++#define PROC_RGID p_rgid ++#define PROC_SVGID p_svgid ++#define PROC_PPID p_ppid ++#define PROC_PGID p__pgid ++#define PROC_TPGID p_tpgid ++#define PROC_NICE p_nice ++#define PROC_PRIORITY p_priority + ++#else + #define PROC_RUID kp_eproc.e_pcred.p_ruid + #define PROC_SVUID kp_eproc.e_pcred.p_svuid + #define PROC_RGID kp_eproc.e_pcred.p_rgid +@@ -116,7 +146,7 @@ glibtop_get_proc_uid_p (glibtop *server, + buf->tpgid = pinfo [0].PROC_TPGID; + + buf->nice = pinfo [0].PROC_NICE; +-#if defined(__NetBSD__) && defined(SACTIVE) ++#if defined(__DragonFly__) || (defined(__NetBSD__) && defined(SACTIVE)) + buf->priority = 0; + #else + buf->priority = pinfo [0].PROC_PRIORITY; diff --git a/sysutils/libgtop/patches/patch-ap b/sysutils/libgtop/patches/patch-ap new file mode 100644 index 00000000000..fa113bcf882 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ap @@ -0,0 +1,69 @@ +$NetBSD: patch-ap,v 1.3 2007/09/20 21:12:12 wiz Exp $ + +--- sysdeps/freebsd/swap.c.orig 2004-09-24 22:49:06.000000000 +0000 ++++ sysdeps/freebsd/swap.c +@@ -32,7 +32,10 @@ static const unsigned long _glibtop_sysd + (1L << GLIBTOP_SWAP_FREE) + (1L << GLIBTOP_SWAP_PAGEIN) + + (1L << GLIBTOP_SWAP_PAGEOUT); + +-#if defined(__FreeBSD__) || defined(__bsdi__) ++#if defined(__DragonFly__) ++#include <sys/vmmeter.h> ++ ++#elif defined(__FreeBSD__) || defined(__bsdi__) + + #include <sys/conf.h> + #ifdef __bsdi__ +@@ -93,8 +96,8 @@ static struct nlist nlst2 [] = { + void + glibtop_init_swap_p (glibtop *server) + { +-#if defined(__FreeBSD__) || defined(__bsdi__) +-#if __FreeBSD__ < 4 || defined(__bsdi__) ++#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__bsdi__) ++#if !defined(__DragonFly__) && (__FreeBSD__ < 4 || defined(__bsdi__)) + if (kvm_nlist (server->machine.kd, nlst) < 0) { + glibtop_warn_io_r (server, "kvm_nlist (swap)"); + return; +@@ -129,9 +132,9 @@ glibtop_init_swap_p (glibtop *server) + void + glibtop_get_swap_p (glibtop *server, glibtop_swap *buf) + { +-#if defined(__FreeBSD__) ++#if defined(__FreeBSD__) || defined(__DragonFly__) + +-# if __FreeBSD__ < 4 ++# if defined(__FreeBSD__) && __FreeBSD__ < 4 + char *header; + int hlen, nswdev, dmmax; + int div, nfree, npfree; +@@ -193,7 +196,7 @@ glibtop_get_swap_p (glibtop *server, gli + buf->pagein = 0; + buf->pageout = 0; + } else { +-#ifdef __FreeBSD__ ++#if defined(__FreeBSD__) || defined(__DragonFly__) + buf->pagein = vmm.v_swappgsin - swappgsin; + buf->pageout = vmm.v_swappgsout - swappgsout; + #else +@@ -207,7 +210,7 @@ glibtop_get_swap_p (glibtop *server, gli + #endif + } + +-#ifdef __FreeBSD__ ++#if defined(__FreeBSD__) || defined(__DragonFly__) + swappgsin = vmm.v_swappgsin; + swappgsout = vmm.v_swappgsout; + #else +@@ -220,9 +223,9 @@ glibtop_get_swap_p (glibtop *server, gli + #endif + #endif + +-#if defined(__FreeBSD__) ++#if defined(__FreeBSD__) || defined(__DragonFly__) + +-#if __FreeBSD__ < 4 ++#if defined(__FreeBSD__) && __FreeBSD__ < 4 + + /* Size of largest swap device. */ + diff --git a/sysutils/libgtop/patches/patch-aq b/sysutils/libgtop/patches/patch-aq new file mode 100644 index 00000000000..b79ae12a297 --- /dev/null +++ b/sysutils/libgtop/patches/patch-aq @@ -0,0 +1,13 @@ +$NetBSD: patch-aq,v 1.3 2007/09/20 21:12:12 wiz Exp $ + +--- sysdeps/common/fsusage.c.orig 2006-09-22 16:31:47.000000000 +0200 ++++ sysdeps/common/fsusage.c +@@ -270,7 +270,7 @@ glibtop_get_fsusage_s (glibtop *server, + return; + + #if (defined(sun) || defined(__sun)) && (defined(__SVR4) || defined(__svr4__)) \ +- || defined(__FreeBSD__) ++ || defined(__FreeBSD__) || defined(__NetBSD__) + /* Solaris but not SunOS and FreeBSD */ + buf->block_size = fsd.f_frsize; + #else diff --git a/sysutils/libgtop/patches/patch-ba b/sysutils/libgtop/patches/patch-ba new file mode 100644 index 00000000000..c8a6499f258 --- /dev/null +++ b/sysutils/libgtop/patches/patch-ba @@ -0,0 +1,34 @@ +$NetBSD: patch-ba,v 1.1 2007/09/20 21:12:13 wiz Exp $ + +From FreeBSD's GNOME development repository. + +--- lib/read.c.orig 2006-04-10 10:41:46.000000000 +0200 ++++ lib/read.c +@@ -22,6 +22,7 @@ + */ + + #include <config.h> ++#include <errno.h> + #include <glibtop/read.h> + #include <glibtop/error.h> + #include <glib/gi18n-lib.h> +@@ -56,14 +57,18 @@ glibtop_read_l (glibtop *server, size_t + fprintf (stderr, "LIBRARY: really reading %d bytes.\n", (int)size); + #endif + ++retry: + if (server->socket) { + do_read (server->socket, buf, size); + } else { +- if(read (server->input [0], buf, size) < 0) ++ if(read (server->input [0], buf, size) < 0) { ++ if (errno == EINTR) ++ goto retry; + glibtop_error_io_r ( + server, + ngettext ("read %d byte", + "read %d bytes", size), + (int)size); ++ } + } + } diff --git a/sysutils/libgtop/patches/patch-bb b/sysutils/libgtop/patches/patch-bb new file mode 100644 index 00000000000..1ec47ecc761 --- /dev/null +++ b/sysutils/libgtop/patches/patch-bb @@ -0,0 +1,35 @@ +$NetBSD: patch-bb,v 1.1 2007/09/20 21:12:13 wiz Exp $ + +From FreeBSD's GNOME development repository. + +--- lib/write.c.orig 2006-04-10 10:41:46.000000000 +0200 ++++ lib/write.c +@@ -22,6 +22,7 @@ + */ + + #include <config.h> ++#include <errno.h> + + #include <glibtop/write.h> + #include <glibtop/error.h> +@@ -42,15 +43,19 @@ glibtop_write_l (glibtop *server, size_t + fprintf (stderr, "LIBRARY: really writing %d bytes.\n", (int)size); + #endif + ++retry: + if (server->socket) { + ret = send (server->socket, buf, size, 0); + } else { + ret = write (server->output [1], buf, size); + } + +- if (ret < 0) ++ if (ret < 0) { ++ if (errno == EINTR) ++ goto retry; + glibtop_error_io_r (server, + ngettext("wrote %d byte", + "wrote %d bytes", size), + (int) size); ++ } + } diff --git a/sysutils/libgtop/patches/patch-bc b/sysutils/libgtop/patches/patch-bc new file mode 100644 index 00000000000..822bbde914a --- /dev/null +++ b/sysutils/libgtop/patches/patch-bc @@ -0,0 +1,61 @@ +$NetBSD: patch-bc,v 1.1 2007/09/20 21:12:13 wiz Exp $ + +From FreeBSD's GNOME development repository. + +--- src/daemon/io.c.orig 2005-12-12 11:09:38.000000000 +0100 ++++ src/daemon/io.c +@@ -22,6 +22,7 @@ + */ + + #include <config.h> ++#include <errno.h> + #include "daemon.h" + #include <glibtop/error.h> + +@@ -37,9 +38,13 @@ do_output (int s, glibtop_response *resp + resp->offset = offset; + resp->data_size = data_size; + ++retry1: + if (s == 0) { +- if (write (1, (const void *) resp, sizeof (glibtop_response)) < 0) ++ if (write (1, (const void *) resp, sizeof (glibtop_response)) < 0) { ++ if (errno == EINTR) ++ goto retry1; + glibtop_warn_io ("write"); ++ } + } else { + if (send (s, (const void *) resp, sizeof (glibtop_response), 0) < 0) + glibtop_warn_io ("send"); +@@ -50,9 +55,13 @@ do_output (int s, glibtop_response *resp + fprintf (stderr, "Writing %d bytes of data.\n", resp->data_size); + #endif + ++retry2: + if (s == 0) { +- if (write (1, data, resp->data_size) < 0) ++ if (write (1, data, resp->data_size) < 0) { ++ if (errno == EINTR) ++ goto retry2; + glibtop_warn_io ("write"); ++ } + } else { + if (send (s, data, resp->data_size, 0) , 0) + glibtop_warn_io ("send"); +@@ -68,6 +77,7 @@ do_read (int s, void *ptr, size_t total_ + size_t already_read = 0, remaining = total_size; + + while (already_read < total_size) { ++retry: + if (s) + nread = recv (s, ptr, remaining, 0); + else +@@ -79,6 +89,8 @@ do_read (int s, void *ptr, size_t total_ + } + + if (nread <= 0) { ++ if (errno == EINTR) ++ goto retry; + glibtop_warn_io ("recv"); + return 0; + } diff --git a/sysutils/libgtop/patches/patch-bd b/sysutils/libgtop/patches/patch-bd new file mode 100644 index 00000000000..3fa5b05a0dc --- /dev/null +++ b/sysutils/libgtop/patches/patch-bd @@ -0,0 +1,22 @@ +$NetBSD: patch-bd,v 1.1 2007/09/20 21:12:14 wiz Exp $ + +From FreeBSD's GNOME development repository. + +--- src/daemon/server.c.orig 2004-06-09 20:52:21.000000000 +0200 ++++ src/daemon/server.c +@@ -88,11 +88,13 @@ main(int argc, char *argv[]) + if (strcmp (uts.sysname, LIBGTOP_COMPILE_SYSTEM) || + strcmp (uts.release, LIBGTOP_COMPILE_RELEASE) || + strcmp (uts.machine, LIBGTOP_COMPILE_MACHINE)) { +- fprintf (stderr, "Can only run on %s %s %s\n", ++ fprintf (stderr, "This libgtop was compiled on %s %s %s\n", + LIBGTOP_COMPILE_SYSTEM, + LIBGTOP_COMPILE_RELEASE, + LIBGTOP_COMPILE_MACHINE); +- _exit (1); ++ fprintf (stderr, "If you see strange problems caused by it,\n"); ++ fprintf (stderr, "you should recompile libgtop and dependent" ++ "applications.\n"); + } + #endif + diff --git a/sysutils/libgtop/patches/patch-bg b/sysutils/libgtop/patches/patch-bg new file mode 100644 index 00000000000..b60c1d5c36a --- /dev/null +++ b/sysutils/libgtop/patches/patch-bg @@ -0,0 +1,30 @@ +$NetBSD: patch-bg,v 1.1 2007/09/20 21:12:14 wiz Exp $ + +--- sysdeps/freebsd/prockernel.c.orig 2006-06-13 22:20:53.000000000 +0200 ++++ sysdeps/freebsd/prockernel.c +@@ -56,11 +56,7 @@ + #endif + + #ifdef __NetBSD__ +-#include <machine/vmparam.h> +-#include <machine/pmap.h> +-#ifdef __arm32__ +-#define KERNBASE KERNEL_BASE +-#endif ++#include <sys/resourcevar.h> + #endif + + +@@ -116,8 +112,10 @@ glibtop_get_proc_kernel_p (glibtop *serv + + /* Get the process information */ + pinfo = kvm_getprocs (server->machine.kd, KERN_PROC_PID, pid, &count); +- if ((pinfo == NULL) || (count != 1)) +- glibtop_error_io_r (server, "kvm_getprocs (%d)", pid); ++ if ((pinfo == NULL) || (count != 1)) { ++ glibtop_warn_io_r (server, "kvm_getprocs (%d)", pid); ++ return; ++ } + + #if defined(__FreeBSD__) && (__FreeBSD_version >= 500013) + |