aboutsummaryrefslogtreecommitdiff
path: root/system/fatrace
diff options
context:
space:
mode:
authorB. Watson <urchlay@slackware.uk>2023-05-10 00:12:39 -0400
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2023-05-13 19:27:32 +0700
commit1048b78d633e680b3851799bbf956836f25575bc (patch)
tree04a384fb0e94477519cc041884c9fb7e4128069b /system/fatrace
parentdd7f78f37ffd38b01e055f4b10f93a5ee0372cba (diff)
system/fatrace: Updated for version 0.17.0, new maintainer.
Signed-off-by: B. Watson <urchlay@slackware.uk> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
Diffstat (limited to 'system/fatrace')
-rw-r--r--system/fatrace/README15
-rw-r--r--system/fatrace/fatrace.SlackBuild74
-rw-r--r--system/fatrace/fatrace.info10
-rw-r--r--system/fatrace/slack-desc2
4 files changed, 50 insertions, 51 deletions
diff --git a/system/fatrace/README b/system/fatrace/README
index e986031f20f99..edd2a3600c1a0 100644
--- a/system/fatrace/README
+++ b/system/fatrace/README
@@ -1,10 +1,17 @@
+fatrace (file access trace)
+
fatrace reports file access events from all running processes.
Its main purpose is to find processes which keep waking up the disk
unnecessarily and thus prevent some power saving.
-Included is a python3 script called "power-usage-report", which uses
-fatrace and powertop to build a textual report from one minute of
-measuring power usage and file accesses. This does not take any
-arguments or requires any interactivity, so is very simple to use and
+Included is a python3 script called "power-usage-report", which
+uses fatrace and powertop to build a textual report from one minute
+of measuring power usage and file accesses. This does not take any
+arguments or require any interactivity, so it's very simple to use and
serves as a starting point for bug reports or optimizing a particular
installation.
+
+fatrace has self-test scripts that can be run during the build. These
+are disabled by default, because they create a file outside of the
+temp directory (/etc/test.txt). If you want to run the tests, export
+RUNTESTS=yes in the environment.
diff --git a/system/fatrace/fatrace.SlackBuild b/system/fatrace/fatrace.SlackBuild
index 17bc63d7b3a0a..da5374c384f88 100644
--- a/system/fatrace/fatrace.SlackBuild
+++ b/system/fatrace/fatrace.SlackBuild
@@ -2,30 +2,21 @@
# Slackware build script for fatrace
-# Copyright 2018-2020 Leonardo Citrolo, Italy
-# All rights reserved.
-#
-# Redistribution and use of this script, with or without modification, is
-# permitted provided that the following conditions are met:
-#
-# 1. Redistributions of this script must retain the above copyright
-# notice, this list of conditions and the following disclaimer.
-#
-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "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 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.
+# Originally written by Leonardo Citrolo.
+# Now maintained by B. Watson (urchlay@slackware.uk).
+
+# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
+
+# 20230509 bkw:
+# - new maintainer.
+# - relicense as WTFPL with permission from original author.
+# - update for v0.17.0.
+# - add RUNTESTS environment variable.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=fatrace
-VERSION=${VERSION:-0.15}
+VERSION=${VERSION:-0.17.0}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
@@ -38,9 +29,6 @@ if [ -z "$ARCH" ]; then
esac
fi
-# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
-# the name of the created package would be, and then exit. This information
-# could be useful to other scripts.
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
@@ -70,30 +58,34 @@ rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
-tar xvf $CWD/$PRGNAM-$VERSION.tar.?z*
+tar xvf $CWD/${PRGNAM}_${VERSION}.orig.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
-find -L . \
- \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
- -o -perm 511 \) -exec chmod 755 {} \; -o \
- \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
- -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+find -L . -perm /111 -a \! -perm 755 -a -exec chmod 755 {} \+ -o \
+ \! -perm /111 -a \! -perm 644 -a -exec chmod 644 {} \+
-sed -i -e "/^CFLAGS/s/?=/+=/" -e "s%share/man/man1%man/man1%" Makefile
+sed -i -e "/^CFLAGS/s,-O2,$SLKCFLAGS," \
+ -e 's,share/man,man,' \
+ -e 's,-Werror,,' \
+ Makefile
-CFLAGS="$SLKCFLAGS" make
+make
+strip $PRGNAM
make install DESTDIR=$PKG PREFIX=/usr
+gzip $PKG/usr/man/man*/*
+
+# This is disabled by default because it creates (and deletes) an
+# /etc/test.txt (outside of $TMP).
+if [ "${RUNTESTS:-no}" = "yes" ]; then
+ # Tests assume wrong path (our /usr/bin/head is a symlink to /bin/head)
+ sed -i 's,/usr/bin/,/bin/,' tests/fatrace
+ sh tests/run
+fi
-find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
- | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
-
-find $PKG/usr/man -type f -exec gzip -9 {} \;
-for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
-
-mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
-cp -a COPYING NEWS \
- $PKG/usr/doc/$PRGNAM-$VERSION
-cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
+mkdir -p $PKGDOC
+cp -a COPYING NEWS $PKGDOC
+cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
diff --git a/system/fatrace/fatrace.info b/system/fatrace/fatrace.info
index 5afad456fe0dc..4bc0b631afa61 100644
--- a/system/fatrace/fatrace.info
+++ b/system/fatrace/fatrace.info
@@ -1,10 +1,10 @@
PRGNAM="fatrace"
-VERSION="0.15"
+VERSION="0.17.0"
HOMEPAGE="https://launchpad.net/fatrace"
-DOWNLOAD="https://launchpad.net/fatrace/trunk/0.15/+download/fatrace-0.15.tar.xz"
-MD5SUM="d33ec7c650ab25a835540e802bfab09f"
+DOWNLOAD="https://launchpad.net/debian/+archive/primary/+sourcefiles/fatrace/0.17.0-1/fatrace_0.17.0.orig.tar.gz"
+MD5SUM="8671c90caebc668abfbc63efabeb89c6"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
-MAINTAINER="Leo C."
-EMAIL="leoc@gmx.com"
+MAINTAINER="B. Watson"
+EMAIL="urchlay@slackware.uk"
diff --git a/system/fatrace/slack-desc b/system/fatrace/slack-desc
index 10d928650fb91..f9527c78250c0 100644
--- a/system/fatrace/slack-desc
+++ b/system/fatrace/slack-desc
@@ -12,8 +12,8 @@ fatrace: fatrace reports file access events from all running processes.
fatrace: Its main purpose is to find processes which keep waking up the disk
fatrace: unnecessarily and thus prevent some power saving.
fatrace:
+fatrace: Homepage: https://launchpad.net/fatrace
fatrace:
fatrace:
fatrace:
-fatrace: Homepage: https://launchpad.net/fatrace
fatrace: