aboutsummaryrefslogtreecommitdiff
path: root/system/tiger/tiger.SlackBuild
blob: 61172fa4d06c8c4ee81b082547a267e2e7b9bfd8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
#!/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