#!/bin/bash # Packager : Jean-Philippe Guillemin NAME='shntool' #VERSION='' tarball=$(ls ${NAME}*tar*);VERSION=${tarball%.*};VERSION=${VERSION%.*}; VERSION=${VERSION##*-} BUILD=1jp arch=${arch:-x86_64} case "$arch" in i486) SLKCFLAGS="-O2 -march=i486 -mtune=i686" SLKLDFLAGS="" LIBDIRSUFFIX="" ;; x86_64) SLKCFLAGS="-O2 -fPIC" SLKLDFLAGS="-L/usr/lib64" LIBDIRSUFFIX="64" ;; esac export CFLAGS="$SLKCFLAGS" export CXXFLAGS="$SLKCFLAGS" export LDFLAGS="$SLKLDFLAGS" CWD=$(pwd) package="$NAME-$VERSION-$arch-$BUILD" PKG="/tmp/$package" rm -rf $PKG rm -f $PKG.txz mkdir -p $PKG TMP="$CWD/tmp" cd $CWD sources="${NAME}" for source in $sources ; do echo -n "Checking $source : " cd $CWD tarball="$(ls ${source}*tar* 2>/dev/null)" if [ "$tarball" == "" ] ; then echo "not found :(" exit 1 else echo "found $tarball :)" fi done for source in $sources ; do cd $CWD tarball="$(ls ${source}*tar* )" rm -rf $TMP mkdir -p $TMP if [ "$(echo $tarball | grep ".tar.bz2" )" ]; then tar jxvf $tarball -C $TMP elif [ "$(echo $tarball | grep ".tar.gz" )" ]; then tar zxvf $tarball -C $TMP fi SRC=$(ls -d $TMP/*/) cd $SRC EXTRACONFIG="--enable-maintainer-mode" chown -R root.root . find . -perm 777 -exec chmod 755 {} \; find . -perm 775 -exec chmod 755 {} \; find . -perm 666 -exec chmod 644 {} \; find . -perm 664 -exec chmod 644 {} \; # EXTRACONFIG="--enable-maintainer-mode" ./configure --prefix=/usr \ --mandir=/usr/man \ --sysconfdir=/etc \ --enable-static=no \ --enable-final \ --enable-debug=no \ $EXTRACONFIG make || exit 1 # make install make install DESTDIR=$PKG mkdir -p $PKG/usr/doc/$(basename $SRC) cp -f AUTHORS INSTALL README TODO NEWS ChangeLog $PKG/usr/doc/$(basename $SRC) # Striptease ( cd $PKG find . | xargs file | grep "executable" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . | xargs file | grep "shared object" | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null find . -name *.la | xargs rm -f for mandir in $(find ./usr/share/man -name man* -type d) ; do mkdir -p ./usr/man/$(basename $mandir) mv $mandir/*.? ./usr/man/$(basename $mandir) done rm -rf ./usr/share/man for mandir in $(find . -name man -type d) ; do if [ -d $mandir ]; then ( cd $mandir find . -type f -name "*.?" -exec gzip -9 {} \; ) fi done ) done cd $CWD # redundant , if any rm -rf $PKG/usr/share/doc # slack-desc mkdir -p $PKG/install cat > $PKG/install/slack-desc << END shntool: shntool (A multi-purpose WAVE data processing and reporting utility) shntool: shntool: A multi-purpose WAVE data processing and reporting utility. File shntool: formats are abstracted from its core, so it can process any file that shntool: contains WAVE data, compressed or not - provided there exists a format shntool: module to handle that particular file type. shntool: shntool: http://etree.org/shnutils/shntool shntool: shntool: shntool: Packager: _PACKAGER on _BUILD_DATE END mkdir -p $PKG/usr/src/$NAME-$VERSION cp $CWD/$NAME.SlackBuild $PKG/usr/src/$NAME-$VERSION/ cd $PKG makepkg -l y -c n $PKG.txz # Cleanup cd $CWD rm -rf $PKG rm -rf $TMP