109 lines
2.9 KiB
Bash
109 lines
2.9 KiB
Bash
#!/bin/sh
|
|
|
|
# Slackware build script for tiger
|
|
# Written by Menno E. Duursma <druiloor@zonnet.nl
|
|
|
|
# Exit on most errors
|
|
set -e
|
|
|
|
PRGNAM=tiger
|
|
VERSION=3.2.1
|
|
ARCH=${ARCH:-i486}
|
|
BUILD=${BUILD:-1}
|
|
TAG=${TAG:-_SBo}
|
|
|
|
CWD=$(pwd)
|
|
TMP=${TMP:-/tmp/SBo}
|
|
PKG=$TMP/package-$PRGNAM
|
|
OUTPUT=${OUTPUT:-/tmp}
|
|
|
|
rm -rf $PKG
|
|
mkdir -p $TMP $PKG $OUTPUT
|
|
cd $TMP
|
|
rm -rf $PRGNAM
|
|
tar -xzvf $CWD/$PRGNAM-$VERSION.tar.gz
|
|
cd $PRGNAM
|
|
chown -R root:root .
|
|
chmod -R u+w,go+r-w,a-s .
|
|
|
|
# To compile it i686 or whatever you would have to patch the Makefile
|
|
# to be found in the c/ subdirectory; however i see no need to do that
|
|
./configure \
|
|
--with-tigerhome=/usr/share/tiger \
|
|
--with-tigerconfig=/etc/tiger \
|
|
--with-tigerwork=/var/tiger \
|
|
--with-tigerlog=/var/log/tiger \
|
|
--with-tigerbin=/usr/bin
|
|
|
|
make
|
|
make install DESTDIR=$PKG
|
|
|
|
# Copy bin-files to system standard dir
|
|
cp -a $PKG/usr/share/tiger/bin/* $PKG/usr/bin
|
|
|
|
( cd $PKG
|
|
find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
|
find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
|
|
)
|
|
|
|
mkdir -p $PKG/usr/man/man8
|
|
cp -a $PKG/usr/share/tiger/man/*.8 $PKG/usr/man/man8
|
|
|
|
( cd $PKG/usr/man
|
|
find . -type f -exec gzip -9 {} \;
|
|
for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done
|
|
)
|
|
|
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
|
cp -a [A-Z][A-Z]* tigerrc-* site-* other/*.txt $PKG/usr/doc/$PRGNAM-$VERSION
|
|
|
|
# Copy script-plugin documentation
|
|
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/txt
|
|
cp -a $PKG/usr/share/tiger/doc/* $PKG/usr/doc/$PRGNAM-$VERSION/txt
|
|
# And in HTML format
|
|
cp -a $PKG/usr/share/tiger/html $PKG/usr/doc/$PRGNAM-$VERSION
|
|
|
|
# Also, include the SlackBuild script in the documentation directory
|
|
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
|
|
|
# Remove leftover junk
|
|
( cd $PKG
|
|
find . -type d -name CVS | xargs rm -rf
|
|
)
|
|
( cd $PKG/man
|
|
find . -type f -name '*in.gz' | xargs rm -f
|
|
)
|
|
( cd $PKG/usr/share/tiger
|
|
rm -rf bin ; rm -rf man ; rm -rf doc ; rm -rf html
|
|
)
|
|
( cd $PKG/usr/share/tiger/systems
|
|
find . -type d -maxdepth 1 \( ! -name default -a ! -name Linux \) \
|
|
| xargs rm -rf
|
|
)
|
|
( cd $PKG/usr/share/tiger/systems/Linux
|
|
rm -rf 0
|
|
rm -rf 1
|
|
)
|
|
|
|
# Move configration files to .new and have doinst.sh decide
|
|
mv $PKG/etc/tiger/cronrc $PKG/etc/tiger/cronrc.new
|
|
mv $PKG/etc/tiger/tigerrc $PKG/etc/tiger/tigerrc.new
|
|
mv $PKG/usr/share/tiger/initdefs $PKG/usr/share/tiger/initdefs.new
|
|
mv $PKG/usr/share/tiger/check.tbl $PKG/usr/share/tiger/check.tbl.new
|
|
mv $PKG/usr/share/tiger/syslist $PKG/usr/share/tiger/syslist.new
|
|
mv $PKG/usr/share/tiger/config $PKG/usr/share/tiger/config.new
|
|
|
|
mkdir -p $PKG/install
|
|
cat $CWD/slack-desc > $PKG/install/slack-desc
|
|
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
|
|
|
cd $PKG
|
|
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.tgz
|
|
|
|
# Clean up the temp stuff
|
|
if [ "$1" = "--cleanup" ]; then
|
|
rm -rf $PKG
|
|
rm -rf $TMP/$PRGNAM-$VERSION
|
|
fi
|
|
|