About | Home | Search


HOWTO: make
Description: GNU make utility to maintain groups of programs
Click here for ChangeLog
NOTE: I use GNU tar >= 1.13.25 so it's -j for .tar.bz2 files,
it's safe to assume that make, gcc, binutils, fileutils/coreutils, gawk, sed, and grep are prerequisites for almost everything


# GNU make 3.81
# =============
# Slackware 8.0's package is named 'gmake', 8.1 and up are named 'make'.
# Slackware 8.0 and 8.1 include make version 3.79.1  Slackware 9.0, 9.1,
# 10.0, 10.1, and 10.2 include make 3.80

# If you ever want to uninstall make, or if you want to clean up files
# from an old version before installing a new one, skip down to the
# bottom for instructions.

# If ftp.gnu.org is busy, try ibiblio instead

# Below I use --disable-nls because I only read/write (well) English, if
# this is not the case for you, leave that off

# Prerequisites:
# gawk
# perl
# grep
# gettext

cd
test -f installed/make-3.81.tar.bz2 && mv installed/make-3.81.tar.bz2 .
test ! -f make-3.81.tar.bz2 &&
 wget http://ftp.gnu.org/gnu/make/make-3.81.tar.bz2

# Verify tarball w/ md5sum:
echo "354853e0b2da90c527e35aabb8d6f1e6  make-3.81.tar.bz2" | md5sum -c

# Verify tarball w/ sha1sum:
echo "41ed86d941b9c8025aee45db56c0283169dcab3d  make-3.81.tar.bz2" | \
 sha1sum -c

# Verify tarball w/ gpg:
( gpg --list-keys 6338B6D4 > /dev/null 2>&1 || gpg --recv-keys 6338B6D4 ) &&
 wget -nc http://ftp.gnu.org/gnu/make/make-3.81.tar.bz2.sig &&
  gpg --verify make-3.81.tar.bz2.sig && rm make-3.81.tar.bz2.sig

mkdir -p -m 0700 src
cd src
find -maxdepth 1 -type d -name "make-*" -exec rm -r {} \;
tar xjvf ~/make-3.81.tar.bz2
cd make-3.81
test $UID = 0 && chown -R root:root .
./configure --prefix=/usr --disable-nls
make

# Become root to install it
su

test -x /sbin/removepkg && /sbin/removepkg gmake make
find /usr/share/locale -type f -name "make.mo" -exec rm {} \;
./make install-strip

# Become yourself again
exit

cd
mkdir -p -m 0700 installed
rm -f installed/make-*.tar.*
mv make-3.81.tar.bz2 installed/


# I can't imagine why you'd want to, but if you ever want to uninstall
# make, this should do it:
cd
su
test -d src/make-* && ( cd src/make-* ; ./make uninstall )
rm -f /usr/bin/make /usr/info/make.info /usr/man/man1/make.1
exit
find ~/src -maxdepth 1 -type d -name "make-*" -exec rm -r {} \;
rm -f ~/installed/make-*.tar.*

Back to the list


Last updated: Fri, 26 Mar 2010 13:18:56 -0400
Jason Englander <jason at englanders dot us>