#!/bin/sh # Slackware build script for espeak # Written by B. Watson (yalhcru@gmail.com) # Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details. PRGNAM=espeak VERSION=${VERSION:-1.48.04} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac fi CWD=$(pwd) TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} if [ "$ARCH" = "i586" ]; then SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "x86_64" ]; then SLKCFLAGS="-O2 -fPIC" LIBDIRSUFFIX="64" else SLKCFLAGS="-O2" LIBDIRSUFFIX="" fi set -e rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION-source unzip $CWD/$PRGNAM-$VERSION-source.zip cd $PRGNAM-$VERSION-source chown -R root:root . find -L . \ \( -perm 777 -o -perm 775 -o -perm 750 -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 {} \; # Cruft... find . -type d -a -name .svn -print0 | xargs -0 rm -rf # Make the Makefile install everything stripped patch -p1 < $CWD/makefile.patch # Note: there are two executables (speak and espeak). They seem to do the same # thing, except "speak" doesn't use libespeak.so at runtime. This package only # installs "espeak" (which is how other distros do it, too). cd src if [ "${WAVONLY:-no}" = "yes" ]; then EXTRAMAKEFLAGS="AUDIO=none" else # Let this script die due to "set -e" if no portaudio installed... pkg-config --modversion portaudio-2.0 # portaudio version *should* be 19, but support 18 just in case... rm -f portaudio.h ln -s portaudio$( pkg-config --modversion portaudio-2.0 ).h portaudio.h fi make LIBDIR=/usr/lib$LIBDIRSUFFIX CXXFLAGS="$SLKCFLAGS" $EXTRAMAKEFLAGS make install LIBDIR=/usr/lib$LIBDIRSUFFIX DESTDIR=$PKG $EXTRAMAKEFLAGS rm -f $PKG/usr/lib$LIBDIRSUFFIX/*.a # guidelines say no static libs find $PKG/usr/share -type f -print0 | xargs -0 chmod 644 cd .. mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION cp -r ReadMe *.txt docs/* $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild find $PKG/usr/doc/$PRGNAM-$VERSION -type f -exec chmod 0644 {} \; # Man page from Debian mkdir -p $PKG/usr/man/man1 gzip -9c $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc if [ "${WAVONLY:-no}" = "yes" ]; then sed -i \ '19s/:/: This package lacks audio support (wav file output only)/' \ $PKG/install/slack-desc fi cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}