#!/bin/sh -x

# variables

TAG=cyco
TMP=/tmp/$TAG
OUTPUT=/tmp
CWD=$(pwd)
REPOSITORIES=/home/installs/SlackBuilds/repositories

PRGNAM=$(basename $CWD)
PKG=$TMP/pkg-$PRGNAM

VERSION=$(date +%Y.%m%d_%H.%M)

ARCH=$(uname -m)
BUILD=1

PREFIX=/usr

SLCKFLAGS="-fPIC -O2"

# nettoyage préalable
rm -fr $PKG $TMP/$PRGNAM-$VERSION

mkdir -p $PKG

# mise en place
cd $TMP
if [ ! -e $REPOSITORIES/$PRGNAM ]; then
    git clone https://github.com/postmodern/chruby $REPOSITORIES/$PRGNAM
else
    ( cd $REPOSITORIES/$PRGNAM
      git pull
    )
fi
cp -R $REPOSITORIES/$PRGNAM $TMP/$PRGNAM-$VERSION
cd $PRGNAM-$VERSION


# compilation
make -j3 PREFIX=$PREFIX

# installation
make install PREFIX=$PREFIX DOC_DIR=$PREFIX/doc/$PRGNAM DESTDIR=$PKG
mv $PKG$PREFIX/share/man $PKG$PREFIX/man

# correction
cd $PKG
chown -R root:root *

[ -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
$PRGNAM: $PRGNAM (Changes the current Ruby)
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM:
$PRGNAM: https://github.com/postmodern/chruby
$PRGNAM:
EOF

# empaquetage
cd $PKG
makepkg -l y -c n $OUTPUT/$PRGNAM-$(echo $VERSION | sed 's/-//g')-$ARCH-$BUILD$TAG.txz