#!/bin/bash
#
# html2text.SlackBuild
# code: Vicious (michal@scxd.info); improvements: Zielony (e-pl@o2.pl)
set -e
# PACKAGE GENERAL INFO [EDIT]
PKGNAME=html2text
VERSION=1.3.2a
BUILD=1X
ARCH=i686
URL=http://www.mbayer.de/html2text/downloads/html2text-$VERSION.tar.gz
CWD=`pwd`
TMP=/tmp/$PKGNAME
if [ ! -d $TMP/$PKGNAME-$VERSION ]; then
rm -rf $TMP/package
mkdir -p $TMP/package/install
# PACKAGE DESCRIPTION [EDIT]
cat << SLACKDESC | fmt -w $(( 80 - `echo $PKGNAME | wc -c` - 3 )) | perl -pe "s/^/$PKGNAME: /" > $TMP/package/install/slack-desc
html2text (HTML to text converter)
html2text is a command line utility, written in C++, that converts HTML documents into plain text. Each HTML document is loaded from a location indicated by a URI or read from standard input, and formatted into a stream of plain text characters that is written to standard output or into an output-file. The input-URI may specify a remote site, from that the documents are loaded via the Hypertext Transfer Protocol (HTTP).
Package prepared by Zielony (e-pl@o2.pl)
SLACKDESC
cd $TMP
# step 1: DOWNLOAD SOURCE
PKGFNAME=`ls -t | grep -i $PKGNAME*.t*z* | head -1`
if [ -z $PKGFNAME ]; then
( wget -c $URL -P $TMP -O $PKGNAME-$VERSION.${URL//*.} )
# step 2: UNPACK SOURCE AND COMPILE
PKGFNAME=`ls -t | grep -i $PKGNAME*.t*z* | head -1`
fi
EXTENSION=`echo ${PKGFNAME//*.}`
if [ $EXTENSION = "bz2" ]; then
tar jxvf $PKGFNAME -C $TMP
else
tar xvfz $PKGFNAME -C $TMP
fi
DIRNAME=`tar tf $PKGFNAME | head -1`
echo $DIRNAME | grep '/' && DIRNAME=${DIRNAME%${DIRNAME#*/}}
if [ $DIRNAME != $PKGNAME-$VERSION/ ]; then mv $DIRNAME $PKGNAME-$VERSION; fi
chown root:root $TMP -R
fi
cd $TMP/$PKGNAME-$VERSION
if [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
elif [ "$ARCH" = "i486" ]; then
SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "$ARCH" = "i386" ]; then
SLKCFLAGS="-O2 -march=i386 -mcpu=i686"
elif [ "$ARCH" = "s390" ]; then
SLKCFLAGS="-O2"
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2"
fi
if [ ! -e 'Makefile' ]; then
if [ -s 'configure' ]; then
./configure
fi
fi
make DEBUG="$SLKCFLAGS -g"
mkdir -p $TMP/package/usr/bin \
$TMP/package/usr/man/man{1,5} $TMP/package/usr/doc/$PKGNAME-$VERSION
make install \
BINDIR=$TMP/package/usr/bin \
MANDIR=$TMP/package/usr/man \
DOCDIR=$TMP/package/usr/doc/$PKGNAME-$VERSION
# step 3: STRIP BINARIES & GZIP MANUALS
( cd $TMP/package
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
)
( gzip $TMP/package/usr/man/man?/* )
# step 4: CREATE PACKAGE & CLEAN TMP
cd $TMP/package
if [ `ls | wc -m` -le 8 ]; then
echo "Brak plików pakietu!"
else
( requiredbuilder -y -s $TMP/package/install $TMP/$PKGNAME-$VERSION )
makepkg -l y -c n $CWD/$PKGNAME-$VERSION-$ARCH-$BUILD.tgz
rm -rf $TMP
fi