- Update to 1.0.0

PR:		148603
Submitted by:	Olivier Duchateau <duchateau.olivier@gmail.com>
This commit is contained in:
Martin Wilke 2010-07-15 04:48:02 +00:00
parent 6c0c769850
commit f8b8a8b2fc
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=257768
7 changed files with 129 additions and 290 deletions

View file

@ -6,24 +6,29 @@
#
PORTNAME= xfce4-taskmanager
PORTVERSION= 0.4.0.r2
PORTREVISION= 16
PORTVERSION= 1.0.0
CATEGORIES= x11 xfce
MASTER_SITES= http://freebsd.unixfreunde.de/sources/
DISTNAME= ${PORTNAME}-${PORTVERSION:S/.r/-rc/}
MASTER_SITES= ${MASTER_SITE_XFCE}
MASTER_SITE_SUBDIR= src/apps/${PORTNAME}/${PORTVERSION:R}
DIST_SUBDIR= xfce4
MAINTAINER= miwi@FreeBSD.org
COMMENT= A task manager for XFCE
LIB_DEPENDS= cairo.2:${PORTSDIR}/graphics/cairo \
wnck-1.22:${PORTSDIR}/x11-toolkits/libwnck
GNU_CONFIGURE= yes
USE_BZIP2= yes
USE_GETTEXT= yes
USE_GMAKE= yes
USE_GNOME= gnometarget gtk20 intltool intlhack pkgconfig
USE_XFCE= configenv libgui
USE_GNOME= gnometarget gtk20 desktopfileutils intltool intlhack pkgconfig
post-patch:
@${REINPLACE_CMD} -e 's|linux|freebsd|g; s|^CFLAGS = |&-lkvm -lm |' ${WRKSRC}/src/Makefile.in
@${REINPLACE_CMD} -e 's|prefix)/$$(DATADIRNAME)|datadir)|' \
${WRKSRC}/po/Makefile.in.in
post-install:
@-update-desktop-database
.include <bsd.port.mk>

View file

@ -1,3 +1,3 @@
MD5 (xfce4/xfce4-taskmanager-0.4.0-rc2.tar.bz2) = 6111d36a743ecef817b5589f90a3f869
SHA256 (xfce4/xfce4-taskmanager-0.4.0-rc2.tar.bz2) = d481eee66ebbedffcc82b7f83889c12793b868deefcf15c49eaeb3c2a41c6721
SIZE (xfce4/xfce4-taskmanager-0.4.0-rc2.tar.bz2) = 270453
MD5 (xfce4/xfce4-taskmanager-1.0.0.tar.bz2) = cd205366ae771d2cbe72b5ca7b1257b0
SHA256 (xfce4/xfce4-taskmanager-1.0.0.tar.bz2) = c0ef9f9c98b045be45af54850082b03977d35d3cae710bdba5f259220f7fa9ee
SIZE (xfce4/xfce4-taskmanager-1.0.0.tar.bz2) = 339854

View file

@ -1,12 +0,0 @@
--- src/functions.c.orig Wed Aug 23 20:55:58 2006
+++ src/functions.c Thu Feb 1 11:04:42 2007
@@ -45,7 +45,9 @@
tmp->time = new_tmp->time;
+#ifndef __FreeBSD__
tmp->time_percentage = (gdouble)(tmp->time - tmp->old_time) * (gdouble)(1000.0 / REFRESH_INTERVAL);
+#endif
if((gint)tmp->ppid != (gint)new_tmp->ppid || strcmp(tmp->state,new_tmp->state) || (unsigned int)tmp->size != (unsigned int)new_tmp->size || (unsigned int)tmp->rss != (unsigned int)new_tmp->rss || (unsigned int)tmp->time != (unsigned int)tmp->old_time)
{

View file

@ -1,62 +0,0 @@
--- src/interface.c.orig Wed Aug 23 20:55:38 2006
+++ src/interface.c Thu Mar 1 16:20:58 2007
@@ -359,12 +359,9 @@
gint compare_int_list_item(GtkTreeModel *model, GtkTreeIter *iter1, GtkTreeIter *iter2, gpointer column)
{
- gchar *s1 = NULL;
- gchar *s2 = NULL;
-
- s1 = (gchar*)malloc(sizeof(char) * 100);
- s2 = (gchar*)malloc(sizeof(char) * 100);
-
+ gchar s1[256];
+ gchar s2[256];
+
gint ret = 0;
gtk_tree_model_get(model, iter1, column, &s1, -1);
@@ -380,40 +377,19 @@
i2 = atoi(s2);
ret = i1 - i2;
-
- if(s1 != NULL)
- g_free(s1);
- if(s2 != NULL)
- g_free(s2);
-
return ret;
}
gint compare_string_list_item(GtkTreeModel *model, GtkTreeIter *iter1, GtkTreeIter *iter2, gpointer column)
{
- gchar *s1 = NULL;
- gchar *s2 = NULL;
-
- s1 = (gchar*)malloc(sizeof(gchar) * 100);
- s2 = (gchar*)malloc(sizeof(gchar) * 100);
-
+ gchar s1[256];
+ gchar s2[256];
+
gint ret = 0;
gtk_tree_model_get(model, iter1, GPOINTER_TO_INT(column), &s1, -1);
gtk_tree_model_get(model, iter2, GPOINTER_TO_INT(column), &s2, -1);
-
- if(s1 == NULL)
- s1 = "";
- if(s2 == NULL)
- s2 = "";
-
ret = strcmp(s1, s2);
-
- if(s1 != NULL)
- g_free(s1);
- if(s2 != NULL)
- g_free(s2);
-
return ret;
}

View file

@ -1,175 +0,0 @@
--- src/xfce-taskmanager-freebsd.c.orig Thu Mar 1 16:17:09 2007
+++ src/xfce-taskmanager-freebsd.c Thu Mar 1 16:18:01 2007
@@ -0,0 +1,172 @@
+/*
+ Copyright (c) 2006 Oliver Lehmann <oliver@FreeBSD.org>
+ All rights reserved.
+
+ Redistribution and use in source and binary forms, with or without
+ modification, are permitted provided that the following conditions
+ are met:
+ 1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+ ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+ OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+ LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+ OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ SUCH DAMAGE.
+
+ $Id: index.php,v 1.24 2006/12/21 23:09:25 olivleh1 Exp $
+*/
+
+
+#include "xfce-taskmanager-freebsd.h"
+
+#define fxtofl(fixpt) ((double)(fixpt) / fscale)
+
+struct task get_task_details(struct kinfo_proc *kp)
+{
+ struct task task;
+ size_t size;
+ fixpt_t ccpu;
+ long fracmem;
+ int pagesize, flag, sflag, tdflags, fscale;
+ char *cp;
+ char buf[16];
+
+ task.pid = -1;
+ task.checked = FALSE;
+
+ size = sizeof(ccpu);
+ if (sysctlbyname("kern.ccpu", &ccpu, &size, NULL, 0) == -1)
+ return (task);
+ size = sizeof(fscale);
+ if (sysctlbyname("kern.fscale", &fscale, &size, NULL, 0) == -1)
+ return (task);
+ size = sizeof(pagesize);
+ if (sysctlbyname("hw.pagesize",&pagesize,&size,NULL,0) == -1)
+ return (task);
+
+ task.pid = kp->ki_pid;
+ task.ppid = kp->ki_ppid;
+ task.size = (kp->ki_size/1024);
+ task.rss = (kp->ki_rssize*pagesize)/1024;
+ task.time_percentage = 100.0 * fxtofl(kp->ki_pctcpu) / (1.0 - exp(kp->ki_swtime * log(fxtofl(ccpu))));
+ task.uid = kp->ki_uid;
+ g_strlcpy(task.uname, user_from_uid(kp->ki_uid, 0), sizeof task.uname);
+
+
+ flag = kp->ki_flag;
+ sflag = kp->ki_sflag;
+ tdflags = kp->ki_tdflags;
+ cp = buf;
+
+ switch (kp->ki_stat) {
+
+ case SSTOP:
+ *cp = 'T';
+ break;
+
+ case SSLEEP:
+ if (tdflags & TDF_SINTR)
+ *cp = kp->ki_slptime >= MAXSLP ? 'I' : 'S';
+ else
+ *cp = 'D';
+ break;
+
+ case SRUN:
+ case SIDL:
+ *cp = 'R';
+ break;
+
+ case SWAIT:
+ *cp = 'W';
+ break;
+
+ case SLOCK:
+ *cp = 'L';
+ break;
+
+ case SZOMB:
+ *cp = 'Z';
+ break;
+
+ default:
+ *cp = '?';
+ }
+ cp++;
+ if (!(sflag & PS_INMEM))
+ *cp++ = 'W';
+ if (kp->ki_nice < NZERO)
+ *cp++ = '<';
+ else if (kp->ki_nice > NZERO)
+ *cp++ = 'N';
+ if (flag & P_TRACED)
+ *cp++ = 'X';
+ if (flag & P_WEXIT && kp->ki_stat != SZOMB)
+ *cp++ = 'E';
+ if (flag & P_PPWAIT)
+ *cp++ = 'V';
+ if ((flag & P_SYSTEM) || kp->ki_lock > 0)
+ *cp++ = 'L';
+ if (kp->ki_kiflag & KI_SLEADER)
+ *cp++ = 's';
+ if ((flag & P_CONTROLT) && kp->ki_pgid == kp->ki_tpgid)
+ *cp++ = '+';
+ if (flag & P_JAILED)
+ *cp++ = 'J';
+ *cp = '\0';
+
+ g_strlcpy(task.state, buf, sizeof task.state);
+ g_strlcpy(task.name, kp->ki_comm, sizeof task.name);
+
+ if(g_str_has_suffix(task.name, ")"))
+ *g_strrstr(task.name, ")") = '\0';
+
+ return task;
+}
+
+GArray *get_task_list()
+{
+ GArray *task_list;
+ struct task task;
+ int nentries, what, flag, i;
+ struct kinfo_proc *kp;
+ const char *nlistf, *memf;
+ static kvm_t *kd;
+ char *state;
+ char errbuf[_POSIX2_LINE_MAX];
+
+ nentries = -1;
+ memf = nlistf = _PATH_DEVNULL;
+ kd = kvm_openfiles(nlistf, memf, NULL, O_RDONLY, errbuf);
+ if (kd == 0) {
+ fprintf(stderr, "Error: %s\n", errbuf);
+ return NULL;
+ }
+ kp = kvm_getprocs(kd, KERN_PROC_PROC, 0, &nentries);
+ if ((kp == NULL && nentries > 0) || (kp != NULL && nentries < 0)) {
+ fprintf(stderr, "Error: %s\n", kvm_geterr(kd));
+ return NULL;
+ }
+
+ task_list = g_array_new (FALSE, FALSE, sizeof (struct task));
+ if (nentries > 0) {
+
+ for (i = nentries; --i >= 0; ++kp) {
+ struct task task = get_task_details(kp);
+ if(task.pid != -1)
+ g_array_append_val(task_list, task);
+ }
+
+ }
+ kvm_close(kd);
+ return task_list;
+}

View file

@ -1,27 +0,0 @@
--- src/xfce-taskmanager-freebsd.h.orig Thu Jan 1 01:00:00 1970
+++ src/xfce-taskmanager-freebsd.h Thu Feb 1 11:54:05 2007
@@ -0,0 +1,24 @@
+#ifndef FREEBSD_H
+#define FREEBSD_H
+
+#include <glib.h>
+#include <pwd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <stdlib.h>
+#include <string.h>
+#include <limits.h>
+#include <fcntl.h>
+#include <paths.h>
+#include <nlist.h>
+#include <kvm.h>
+#include <sys/param.h>
+#include <sys/sysctl.h>
+#include <sys/user.h>
+
+#include "types.h"
+
+struct task get_task_details(struct kinfo_proc *);
+GArray *get_task_list();
+
+#endif

View file

@ -1,14 +1,124 @@
bin/xfce4-taskmanager
share/applications/xfce4-taskmanager.desktop
share/locale/ar/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ast/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/be/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ca/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/cs/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/da/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/de/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/el/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/en_GB/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/es/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/eu/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/fi/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/fr/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/gl/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/hr/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/hu/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/id/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/it/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ja/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/kk/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/lv/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/nb/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/nl/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/pa/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/pl/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/pt/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/pt_BR/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ru/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/si/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/sk/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/sq/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/sv/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/tr/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ug/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/uk/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ur/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/ur_PK/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/vi/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/fi/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/gl/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/pl/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/zh_CN/LC_MESSAGES/xfce4-taskmanager.mo
share/locale/zh_TW/LC_MESSAGES/xfce4-taskmanager.mo
@dirrmtry share/locale/zh_TW/LC_MESSAGES
@dirrmtry share/locale/zh_TW
@dirrmtry share/locale/zh_CN/LC_MESSAGES
@dirrmtry share/locale/zh_CN
@dirrmtry share/locale/vi/LC_MESSAGES
@dirrmtry share/locale/vi
@dirrmtry share/locale/ur_PK/LC_MESSAGES
@dirrmtry share/locale/ur_PK
@dirrmtry share/locale/ur/LC_MESSAGES
@dirrmtry share/locale/ur
@dirrmtry share/locale/uk/LC_MESSAGES
@dirrmtry share/locale/uk
@dirrmtry share/locale/ug/LC_MESSAGES
@dirrmtry share/locale/ug
@dirrmtry share/locale/tr/LC_MESSAGES
@dirrmtry share/locale/tr
@dirrmtry share/locale/sv/LC_MESSAGES
@dirrmtry share/locale/sv
@dirrmtry share/locale/sq/LC_MESSAGES
@dirrmtry share/locale/sq
@dirrmtry share/locale/sk/LC_MESSAGES
@dirrmtry share/locale/sk
@dirrmtry share/locale/si/LC_MESSAGES
@dirrmtry share/locale/si
@dirrmtry share/locale/ru/LC_MESSAGES
@dirrmtry share/locale/ru
@dirrmtry share/locale/pt_BR/LC_MESSAGES
@dirrmtry share/locale/pt_BR
@dirrmtry share/locale/pt/LC_MESSAGES
@dirrmtry share/locale/pt
@dirrmtry share/locale/pl/LC_MESSAGES
@dirrmtry share/locale/pl
@dirrmtry share/locale/pa/LC_MESSAGES
@dirrmtry share/locale/pa
@dirrmtry share/locale/nl/LC_MESSAGES
@dirrmtry share/locale/nl
@dirrmtry share/locale/nb/LC_MESSAGES
@dirrmtry share/locale/nb
@dirrmtry share/locale/lv/LC_MESSAGES
@dirrmtry share/locale/lv
@dirrmtry share/locale/kk/LC_MESSAGES
@dirrmtry share/locale/kk
@dirrmtry share/locale/ja/LC_MESSAGES
@dirrmtry share/locale/ja
@dirrmtry share/locale/it/LC_MESSAGES
@dirrmtry share/locale/it
@dirrmtry share/locale/id/LC_MESSAGES
@dirrmtry share/locale/id
@dirrmtry share/locale/hu/LC_MESSAGES
@dirrmtry share/locale/hu
@dirrmtry share/locale/hr/LC_MESSAGES
@dirrmtry share/locale/hr
@dirrmtry share/locale/gl/LC_MESSAGES
@dirrmtry share/locale/gl
@dirrmtry share/locale/fr/LC_MESSAGES
@dirrmtry share/locale/fr
@dirrmtry share/locale/fi/LC_MESSAGES
@dirrmtry share/locale/fi
@dirrmtry share/locale/eu/LC_MESSAGES
@dirrmtry share/locale/eu
@dirrmtry share/locale/es/LC_MESSAGES
@dirrmtry share/locale/es
@dirrmtry share/locale/en_GB/LC_MESSAGES
@dirrmtry share/locale/en_GB
@dirrmtry share/locale/el/LC_MESSAGES
@dirrmtry share/locale/el
@dirrmtry share/locale/de/LC_MESSAGES
@dirrmtry share/locale/de
@dirrmtry share/locale/da/LC_MESSAGES
@dirrmtry share/locale/da
@dirrmtry share/locale/cs/LC_MESSAGES
@dirrmtry share/locale/cs
@dirrmtry share/locale/ca/LC_MESSAGES
@dirrmtry share/locale/ca
@dirrmtry share/locale/be/LC_MESSAGES
@dirrmtry share/locale/be
@dirrmtry share/locale/ast/LC_MESSAGES
@dirrmtry share/locale/ast
@dirrmtry share/locale/ar/LC_MESSAGES
@dirrmtry share/locale/ar
@exec %%LOCALBASE%%/bin/update-desktop-database > /dev/null || /usr/bin/true
@unexec %%LOCALBASE%%/bin/update-desktop-database > /dev/null || /usr/bin/true