slackbuilds/ap/ack/ack.SlackBuild

96 lines
2 KiB
Text
Raw Normal View History

#!/bin/sh -x
#NOTE: Needs File::Next (cpan -i File::Next)
# variables
TAG=cyco
TMP=/tmp/$TAG
CWD=$(pwd)
2010-11-23 08:17:59 +01:00
OUTPUT=/tmp
2010-11-23 08:09:08 +01:00
PRGNAM=$(basename $CWD)
2010-11-16 11:11:51 +01:00
PKG=$TMP/pkg-$PRGNAM
VERSION=git$(date +%Y.%m.%d_%H.%M)
EXT=tar.xz
DOCS="AUTHORS ChangeLog COPYING INSTALL NEWS README TODO"
ARCH=$(uname -m)
2010-11-16 11:11:51 +01:00
BUILD=1
PREFIX=/usr
SLCKFLAGS="-fPIC -O2"
REPOSITORIES=/home/cycojesus/projets/packages/repositories
# nettoyage pr<70>alable
2010-11-16 11:11:51 +01:00
rm -fr $PKG $TMP/$PRGNAM-$VERSION
mkdir -p $PKG
# mise en place
cd $TMP
2010-11-16 11:11:51 +01:00
if [ ! -e $REPOSITORIES/$PRGNAM ] ; then
2010-11-23 08:09:57 +01:00
mkdir -p $REPOSITORIES
( cd $REPOSITORIES
2010-11-16 11:11:51 +01:00
git clone git://github.com/petdance/ack.git $PRGNAM
)
else
2010-11-16 11:11:51 +01:00
( cd $REPOSITORIES/$PRGNAM
git pull
)
fi
2010-11-16 11:11:51 +01:00
cp -R $REPOSITORIES/$PRGNAM $TMP/$PRGNAM-$VERSION
cd $TMP/$PRGNAM-$VERSION
# configuration
perl Makefile.PL
# compilation
make -j3 PREFIX=$PREFIX
# installation
make install DESTDIR=$PKG
mv $PKG$PREFIX/share/man $PKG$PREFIX/
rm -fr $PKG$PREFIX/share/
# correction
cd $PKG
chown -R root:root *
2010-11-16 11:11:51 +01:00
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cd $TMP/$PRGNAM-$VERSION
cp -R $DOCS $PKG/usr/doc/$PRGNAM-$VERSION
[ -d $PKG/usr/man ] && find $PKG/usr/man -type f -name "*.?" -exec gzip -9f {} \;
# Strip binaries
( 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
)
# embaumement
mkdir -p $PKG/install
cat <<EOF > $PKG/install/slack-desc
2010-11-16 11:11:51 +01:00
$PRGNAM: $PRGNAM (a power search tool for programmers)
$PRGNAM:
$PRGNAM: ack is a tool like grep, designed for programmers with large trees of
$PRGNAM: heterogeneous source code.
$PRGNAM:
$PRGNAM: ack is written purely in Perl, and takes advantage of the power of
$PRGNAM: Perl's regular expressions.
$PRGNAM:
$PRGNAM: see /usr/doc/$PRGNAM-$VERSION for more details
$PRGNAM:
$PRGNAM: http://betterthangrep.com/
EOF
# empaquetage
cd $PKG
makepkg -l y -c n $OUTPUT/$PRGNAM-$(echo $VERSION | sed 's/-//g')-$ARCH-$BUILD$TAG.txz