# Get the tarball
cd
test -f installed/autoconf-2.72.tar.xz &&
mv installed/autoconf-2.72.tar.xz .
test ! -f autoconf-2.72.tar.xz &&
wget http://ftpmirror.gnu.org/autoconf/autoconf-2.72.tar.xz
# Verify tarball against base64 encoded SHA256 checksum using sha256sum and
# base64 from coreutils and xxd from vim
echo "uohcExlXjWyU1G6bDc60AUyq/iSQ5Deg28o/JwoiP1o" ; \
sha256sum autoconf-2.72.tar.xz | xxd -r -p | base64
# Extract it
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "autoconf-*" -exec rm -r {} \;
tar xJvf ~/autoconf-2.72.tar.xz
cd autoconf-2.72
test $UID = 0 && chown -R root:root .
# Configure the build
./configure --prefix=/usr --infodir=/usr/info --mandir=/usr/man
# Build it
make
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg autoconf
# Install it
make install
# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .
# Become yourself again
exit
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/autoconf-*.tar.*
mv autoconf-2.72.tar.xz installed/
# If you ever want to uninstall autoconf, this should do it:
# ('make uninstall' in the source dir as root should do it, the
# rest is just in case...)
cd
su
test -d src/autoconf-* && ( cd src/autoconf-* ; make uninstall )
( cd /usr/bin ; rm -f autoconf autoheader autom4te autoreconf \
autoscan autoupdate ifnames )
test -d /usr/info &&
( cd /usr/info ; rm -f autoconf.info standards.info )
( cd /usr/man/man1
rm -f autoconf.1 autoheader.1 autom4te.1 autoreconf.1 autoscan.1 \
autoupdate.1 config.guess.1 config.sub.1 )
test -d /usr/share/autoconf && rm -r /usr/share/autoconf
test -d /usr/share/emacs/site-lisp &&
( cd /usr/share/emacs/site-lisp ; rm -f autoconf-mode.el autotest-mode.el )
test -d /usr/share/info &&
( cd /usr/share/info ; rm -f autoconf.info standards.info )
test -d /usr/share/man/man1 &&
( cd /usr/share/man/man1 ; rm -f autoconf.1 autoheader.1 autom4te.1 \
autoreconf.1 autoscan.1 autoupdate.1 config.guess.1 config.sub.1 \
ifnames.1 )
exit
find ~/src -maxdepth 1 -type d -name "autoconf-*" -exec rm -r {} \;
rm -f ~/installed/autoconf-*.tar.*