# procps 3.2.8
# ============
# Slack bundles procps, psmisc, and procinfo together in the 'procps'
# package. If you're replacing it with the source versions of each one,
# run through each howto in that order.
# Originally there was this procps:
# http://sources.redhat.com/procps/ (Michael Johnson's - the original author)
# Then after a period of inactivity, two different branches of the original
# code became active. I don't know who came first, I don't care. One was
# this one (the two co-authors both have a page for it):
# http://tech9.net/rml/procps/ (Robert Love)
# http://surriel.com/procps/ (Rik van Riel)
# and there was this one:
# http://procps.sourceforge.net/ (Albert Calahan)
#
# From what I understand, some distributions were using one, others were
# using another. Slackware 8.1 ran the Rik van Riel/Robert Love one,
# Slackware 9.0 changed to the Albert Calahan one, Slackware 9.1 switched
# back again, and Slackware 10.0 now runs the Albert Calahan one again. Due
# to all of the confusion, I previously had both versions covered here.
#
# A while back I went through the howto and noticed that the Rik van
# Riel/Robert Love version's download URL came up 404 (file not found). I
# looked around, couldn't find an alternate download locatation. I wrote
# Robert Love asking about it, never got a reply. At one point Albert
# Calahan wrote to me giving me his thoughts on the matter and a few
# pointers. So, as of right now, I've dropped the Rik van Riel/Robert Love
# version. It appears to have finally died and become inactive.
# If you have Slack 7.0 (upgrade!), you may need to "make -i" to build this.
# Doing that will most likely skip compiling top, but everything else should
# be OK. I no longer have access to anything that old, so this may no
# longer be true.
# Below I just blow away existing library files before running 'make
# install' to ensure that extra files aren't left behind that are no longer
# needed. If you run a production system with multiple local users (or some
# daemon) that may be using something linked with libproc, you'll want to
# skip that part below and you should clean up old files manually after
# you're done installing procps.
# Below we skip the installation of procps' 'kill' because util-linux also
# has one.
cd
test -f installed/procps-3.2.8.tar.gz && mv installed/procps-3.2.8.tar.gz .
test ! -f procps-3.2.8.tar.gz &&
wget http://procps.sourceforge.net/procps-3.2.8.tar.gz
mkdir -p -m 0700 src
cd src
find -maxdepth 1 -type d -name "procps-*" -exec rm -r {} \;
tar xzvf ~/procps-3.2.8.tar.gz
cd procps-3.2.8
test $UID = 0 && chown -R root:root .
# Build it, telling it to build 'w' showing the FROM column
make W_SHOWFROM=\-DW_SHOWFROM
# If make failed and you use a recent version of make, like >= 3.81,
# you may need to make a change to the Makefile to get it to build.
cat Makefile | \
sed 's%^-include \*/module.mk%-include proc/module.mk ps/module.mk%' \
> Makefile.new
test -s Makefile.new &&
(mv -f Makefile Makefile.old
mv -f Makefile.new Makefile
make)
# Become root to install it
su
# Older versions of this (and the other) procps used to include 'oldps':
rm -f /usr/bin/oldps /usr/man/man1/oldps.1
# Remove the Slackware package and old shared library files
test -x /sbin/removepkg && /sbin/removepkg procps
rm -f /lib/libproc.so* /lib/libproc-*.so
# Install it
make SKIP='/bin/kill /usr/share/man/man1/kill.1' install
mv -f /usr/bin/free /bin/
( cd /usr/bin ; ln -sf /bin/free ; ln -sf /bin/ps )