#!/bin/sh
CWD=`pwd`
TMP=/tmp
VERSION=2.2.2
DOCV=2.0.4
ARCH=alpha
BUILD=1
PKG=$TMP/package-slang
TARGET=$ARCH-alphaslack-linux

rm -rf $PKG
mkdir -p $PKG
( cd $TMP
rm -rf slang-$VERSION
tar xjf $CWD/slang-$VERSION.tar.bz2
cd slang-$VERSION
#zcat $CWD/2.0.7-slsh-makefile.in.diff.gz | patch -p0 --verbose || exit
zcat $CWD/Makefile.in.patch.gz | patch -p0 --verbose || exit
chown -R root:root .
./configure \
 --prefix=/usr \
 --sysconfdir=/etc \
 --includedir=/usr/include \
 --mandir=/usr/man \
 --infodir=/usr/info \
 --disable-static \
 --build=$TARGET
make || exit 1
make install DESTDIR=$PKG
make elf || exit 1
make install-elf DESTDIR=$PKG
chmod 755 $PKG/usr/lib/libslang.so.$VERSION
# --disable-static doesn't always work, but this is guaranteed:
rm -f $PKG/usr/lib/*.a
( 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
)
# Compress and if needed symlink the man pages:
if [ -d $PKG/usr/man ]; then
 ( cd $PKG/usr/man
  for manpagedir in $(find . -type d -name "man*") ; do
  ( cd $manpagedir
  for eachpage in $( find . -type l -maxdepth 1) ; do
  ln -s $( readlink $eachpage ).gz $eachpage.gz
  rm $eachpage
  done
  gzip -9 *.?
  )
  done
 )
fi
# Prepare the documentation:
rm -rf $PKG/usr/share/doc
mkdir -p $PKG/usr/doc/slang-$VERSION
cp -a COPYING INSTALL.pc INSTALL.unx INSTALL.vms NEWS README UPGRADE.txt $PKG/usr/doc/slang-$VERSION
# Add some additional documentation:
#tar xjf $CWD/slangdoc-$DOCV.tar.bz2
#chown -R root:root doc
#cp -a doc/html $PKG/usr/doc/slang-$VERSION
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
makepkg -l y -c n $TMP/slang-$VERSION-$ARCH-$BUILD.tgz
) 2>&1 | tee $TMP/slang.build.log
