diff options
Diffstat (limited to 'system/tiger/tiger.SlackBuild')
-rw-r--r-- | system/tiger/tiger.SlackBuild | 136 |
1 files changed, 69 insertions, 67 deletions
diff --git a/system/tiger/tiger.SlackBuild b/system/tiger/tiger.SlackBuild index 61172fa4d06c8..4c38f9922ce7d 100644 --- a/system/tiger/tiger.SlackBuild +++ b/system/tiger/tiger.SlackBuild @@ -1,13 +1,15 @@ #!/bin/sh -# Slackware build script for tiger -# Written by Menno E. Duursma <druiloor@zonnet.nl +# Slackware build script for Tiger -# Exit on most errors -set -e +# Written by Menno Duursma <druiloor@zonnet.nl> + +# This program is free software. It comes without any warranty. +# Granted WTFPL, Version 2, as published by Sam Hocevar. See +# http://sam.zoy.org/wtfpl/COPYING for more details. PRGNAM=tiger -VERSION=3.2.1 +VERSION=${VERSION:-3.2.3} ARCH=${ARCH:-i486} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} @@ -17,92 +19,92 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2 -fPIC" + LIBDIRSUFFIX="64" +fi + +set -e # Exit on most errors + rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP -rm -rf $PRGNAM -tar -xzvf $CWD/$PRGNAM-$VERSION.tar.gz -cd $PRGNAM +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION 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 +find . \ + \( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \ + -exec chmod 755 {} \; -o \ + \( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \ + -exec chmod 644 {} \; + +CFLAGS="$SLKCFLAGS" \ +CXXFLAGS="$SLKCFLAGS" +export CFLAGS CXXFLAGS ./configure \ - --with-tigerhome=/usr/share/tiger \ + --prefix=/usr \ + --libdir=/usr/lib${LIBDIRSUFFIX} \ + --mandir=/usr/man \ + --with-tigerhome=/usr/libexec/tiger \ + --with-tigerbin=/usr/sbin \ --with-tigerconfig=/etc/tiger \ - --with-tigerwork=/var/tiger \ - --with-tigerlog=/var/log/tiger \ - --with-tigerbin=/usr/bin + --with-tigerwork=/var/lib/tiger/work \ + --with-tigerlog=/var/log/tiger 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 || true +) + +install -D -m 0644 debian/cron.d $PKG/etc/cron.d/tiger.new +install -D -m 0640 debian/debian.ignore $PKG/etc/tiger/tiger.ignore.new + +# From the .spec: 3.- This should be done by the Makefile, grumble... +install -D -m 0644 version.h $PKG/usr/lib/tiger/version.h +# Remove unnecesary stuff ( 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 + for system in AIX HPUX IRIX NeXT SunOS UNICOS UNICOSMK Tru64 MacOSX ; do + rm -rf ./usr/libexec/tiger/systems/$system + done + find . -type d -name CVS | xargs -iX rm -rf "X" ) -mkdir -p $PKG/usr/man/man8 -cp -a $PKG/usr/share/tiger/man/*.8 $PKG/usr/man/man8 +( cd $PKG/etc/tiger + mv -v cronrc cronrc.new + mv -v tigerrc tigerrc.new +) ( 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 + 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 +cp -a [A-Z][A-Z]* site-* tigerrc* $PKG/usr/doc/$PRGNAM-$VERSION 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 +cp $PKG/usr/libexec/tiger/doc/*.txt $PKG/usr/doc/$PRGNAM-$VERSION/txt +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/html +cp $PKG/usr/libexec/tiger/html/*.html $PKG/usr/doc/$PRGNAM-$VERSION/html +# Delete the redundant stuff +rm -rf $PKG/usr/libexec/tiger/doc $PKG/usr/libexec/tiger/html 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 +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 - +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |