#!/bin/sh
# Set initial variables:
CWD=`pwd`
if [ "$TMP" = "" ]; then
  TMP=/tmp
fi
PKG=$TMP/package-ispell
INFO=$PKG/usr/info

if [ ! -d $TMP ]; then
  mkdir -p $TMP # location to build the source
fi
if [ ! -d $PKG ]; then
  mkdir -p $PKG # place for the package to be built
fi

# Explode the package framework:
cd $PKG
explodepkg $CWD/_ispell.tar.gz

echo "+===============+"
echo "| ispell-3.1.20 |"
echo "+===============+"
cd $TMP
tar xzvf $CWD/ispell-3.1.20.tar.gz
cd ispell-3.1
zcat $CWD/ispell-3.1.20-strcmp.patch.gz | patch -p1 -E --verbose --backup
cp $CWD/local.h .
touch /usr/dict/words
make
strip buildhash icombine ijoin ispell sq unsq
cat buildhash > $PKG/usr/bin/buildhash
cat icombine > $PKG/usr/bin/icombine
cat ijoin > $PKG/usr/bin/ijoin
cat ispell > $PKG/usr/bin/ispell
cat sq > $PKG/usr/bin/sq
cat unsq > $PKG/usr/bin/unsq
for page in ispell.1 sq.1 ; do 
  cat $page | gzip -9c > $PKG/usr/man/man1/$page.gz
done
cat fields.3 | gzip -9c > $PKG/usr/man/man3/fields.3.gz
cat ispell.4 | gzip -9c > $PKG/usr/man/man4/ispell.4.gz
cat languages/english/english.aff > $PKG/usr/lib/ispell/english.aff
cat languages/american/americanmed+.hash > $PKG/usr/lib/ispell/americanmed+.hash

# Build the package:
cd $PKG
tar czvf $TMP/ispell.tgz .

# Warn of zero-length files:
for file in `find . -type f -print` ; do
 if [ "`filesize $file`" = "0" ]; then
  echo "WARNING: zero length file $file"
 fi
 if [ "`filesize $file`" = "20" ]; then
  echo "WARNING: possible empty gzipped file $file"
 fi
done

# Clean up the extra stuff:
if [ "$1" = "--cleanup" ]; then
  rm -rf $TMP/ispell-3.1
  rm -rf $PKG
fi
