slackbuilds/d/coffee-script/coffee-script.SlackBuild
Gwenhael Le Moine 27707ade90 correct libdir
2010-12-03 16:20:08 +07:00

90 lines
2.4 KiB
Bash
Executable file

#!/bin/sh -x
CWD=$(pwd)
PACKAGER=cyco
TMP=${TMP:-/tmp/$PACKAGER}
OUTPUT=/tmp
PRGNAM=$(basename $CWD)
VERSION=git$(date +%Y.%m.%d_%H.%M)
ARCH=${ARCH:-$(uname -m)}
BUILD=${BUILD:-1}
NUMJOBS=${NUMJOBS:-" -j2 "}
REPOSITORIES=/home/cycojesus/projets/packages/repositories
PREFIX=/usr
PKG=$TMP/pkg-$PRGNAM
rm -rf $PKG
mkdir -p $TMP $PKG
if [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
fi
cd $TMP
rm -rf $PRGNAM-$VERSION
cd $TMP
if [ -e $CWD/$PRGNAM-$VERSION.$EXT ] ; then
tar xf $CWD/$PRGNAM-$VERSION.$EXT
else
if [ ! -e $REPOSITORIES/$PRGNAM ] ; then
git clone http://github.com/jashkenas/coffee-script.git $REPOSITORIES/$PRGNAM
fi
( cd $REPOSITORIES/$PRGNAM
git pull
)
cp -R $REPOSITORIES/$PRGNAM $TMP/$PRGNAM-$VERSION
fi
cd $PRGNAM-$VERSION || exit 1
chown -R root:root .
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 {} \;
sed -i "s|#{base}/lib/coffee-script|#{base}/lib$LIBDIRSUFFIX/coffee-script|g" Cakefile
./bin/cake --prefix $PKG$PREFIX install
( cd $PKG$PREFIX/bin
rm cake coffee
ln -s ../lib$(echo $ARCH | grep -o 64)/coffee-script/bin/coffee
ln -s ../lib$(echo $ARCH | grep -o 64)/coffee-script/bin/cake
)
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
mv LICENSE README* $PKG/usr/doc/$PRGNAM-$VERSION
find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null
mkdir -p $PKG/install
cat <<EOF > $PKG/install/slack-desc
$PRGNAM: $PRGNAM (Programming language)
$PRGNAM:
$PRGNAM: CoffeeScript is a little language that compiles into JavaScript.
$PRGNAM: Think of it as JavaScript's less ostentatious kid brother — the same genes,
$PRGNAM: roughly the same height, but a different sense of style. Apart from a
$PRGNAM: handful of bonus goodies, statements in CoffeeScript correspond one-to-one
$PRGNAM: with their equivalent in JavaScript, it's just another way of saying it.
$PRGNAM:
$PRGNAM: http://jashkenas.github.com/coffee-script/
$PRGNAM:
EOF
cd $PKG
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$PACKAGER.txz