diff options
Diffstat (limited to 'development/asl/asl.SlackBuild')
-rw-r--r-- | development/asl/asl.SlackBuild | 125 |
1 files changed, 84 insertions, 41 deletions
diff --git a/development/asl/asl.SlackBuild b/development/asl/asl.SlackBuild index 0724e96455f7f..3734cc0b46522 100644 --- a/development/asl/asl.SlackBuild +++ b/development/asl/asl.SlackBuild @@ -1,18 +1,32 @@ #!/bin/sh # Slackware build script for asl -# Written by Oleg O. Chukaev <oleg.chukaev@mail.ru> +# Originally written by Oleg O. Chukaev <email removed> + +# Modified and currently maintained by B. Watson <yalhcru@gmail.com>. +# Original version had no license. Modified version released under the +# WTFPL. See http://www.wtfpl.net/txt/copying/ for details. + +# 20170926 bkw: +# - take over maintenance +# - update for 142_bld119 +# - i486 => i586 +# - clean up the documentation mess, add DOCTYPES with sane default +# - don't install compile instructions in /usr/doc +# - add UTF8 option (default off) +# - nitpick README and slack-desc +# - run test suite, include results in doc dir PRGNAM=asl SRCNAM=asl-current -VERSION=${VERSION:-142_bld98} +VERSION=${VERSION:-142_bld119} SRCVER=$(echo $VERSION | tr _ -) BUILD=${BUILD:-1} TAG=${TAG:-_SBo} if [ -z "$ARCH" ]; then case "$( uname -m )" in - i?86) ARCH=i486 ;; + i?86) ARCH=i586 ;; arm*) ARCH=arm ;; *) ARCH=$( uname -m ) ;; esac @@ -23,8 +37,8 @@ TMP=${TMP:-/tmp/SBo} PKG=$TMP/package-$PRGNAM OUTPUT=${OUTPUT:-/tmp} -if [ "$ARCH" = "i486" ]; then - SLKCFLAGS="-O2 -march=i486 -mtune=i686" +if [ "$ARCH" = "i586" ]; then + SLKCFLAGS="-O2 -march=i586 -mtune=i686" LIBDIRSUFFIX="" elif [ "$ARCH" = "i686" ]; then SLKCFLAGS="-O2 -march=i686 -mtune=i686" @@ -52,46 +66,75 @@ find -L . \ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \; -mv Makefile.def.tmpl Makefile.def - -make \ - CFLAGS="$SLKCFLAGS" \ - BINDIR=/usr/bin \ - INCDIR=/usr/include/asl \ - MANDIR=/usr/man \ - LIBDIR=/usr/lib${LIBDIRSUFFIX}/asl \ - DOCDIR=/usr/doc/$PRGNAM-$VERSION -j1 -make docs \ - CFLAGS="$SLKCFLAGS" \ - BINDIR=/usr/bin \ - INCDIR=/usr/include/asl \ - MANDIR=/usr/man \ - LIBDIR=/usr/lib${LIBDIRSUFFIX}/asl \ - DOCDIR=/usr/doc/$PRGNAM-$VERSION -j1 -make install \ - CFLAGS="$SLKCFLAGS" \ - PREFIX=$PKG \ - BINDIR=/usr/bin \ - INCDIR=/usr/include/asl \ - MANDIR=/usr/man \ - LIBDIR=/usr/lib${LIBDIRSUFFIX}/asl \ - DOCDIR=/usr/doc/$PRGNAM-$VERSION - -find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ - | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true - -( cd $PKG/usr/man - find . -type f -exec gzip -9 {} \; - for i in $( find . -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done -) - -cp -a \ - BENCHES INSTALL README* TODO changelog \ +sed -e "/^CFLAGS/s,=.*,= $SLKCFLAGS," \ + -e 's,/local,,' \ + -e "s,/lib,&$LIBDIRSUFFIX," \ + -e "s,doc/.*,doc/$PRGNAM-$VERSION," \ + < Makefile.def.tmpl \ + > Makefile.def + +# Slackware standard is still non-utf8 locales in 14.2. +UTF8="${UTF8:-no}" +[ "$UTF8" = "yes" ] && \ + sed -i 's/CHARSET_ISO8859_1/CHARSET_UTF8/' Makefile.def + +# binaries are already stripped, no symlinks in man pages. +make -j1 binaries install PREFIX=$PKG DOCDIR="" +gzip -9 $PKG/usr/man/man?/*.? + +mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION + +[ "${TESTS:-yes}" = "yes" ] && \ + make -j1 test > $PKG/usr/doc/$PRGNAM/test_suite.log 2>&1 + +# Don't use 'make docs', we don't need to waste time converting the +# same documentation into multiple formats (html, ps, pdf, plain text) +# unless the user really wants to. Also, "make docs" followed by "make +# install" results in a mess, the /usr/doc dir ends up containing all +# the converted formats, plus the TeX source, plus all the temporary +# files created during the doc build. The stuff below is more work than +# I really wanted to do, but... + +DOCTYPES="${DOCTYPES:-html}" + +for doctype in $DOCTYPES; do + for lang in EN DE; do + case "$doctype" in + html) + make tex2html + make -C doc_$lang as.html TEX2HTML=../tex2html + cat doc_$lang/as.html > $PKG/usr/doc/$PRGNAM-$VERSION/as-$lang.html + ;; + pdf) + make -C doc_$lang as.pdf TEX2HTML=../tex2html + cat doc_$lang/as.pdf > $PKG/usr/doc/$PRGNAM-$VERSION/as-$lang.pdf + ;; + ps) + make -C doc_$lang as.ps TEX2HTML=../tex2html + cat doc_$lang/as.ps > $PKG/usr/doc/$PRGNAM-$VERSION/as-$lang.ps + ;; + txt) + make tex2doc + make -C doc_$lang as.doc TEX2DOC=../tex2doc + cat doc_$lang/as.doc > $PKG/usr/doc/$PRGNAM-$VERSION/as-$lang.txt + ;; + *) + echo "Unknown value for DOCTYPES, valid types are: html pdf ps txt" 1>&2 + exit 1 + ;; + esac + done +done + +cp -a BENCHES README README.LANGS TODO changelog \ $PKG/usr/doc/$PRGNAM-$VERSION cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild mkdir -p $PKG/install -cat $CWD/slack-desc > $PKG/install/slack-desc +sed -e "s,@UTF8@,$UTF8," \ + -e "s,@DOCTYPES@,$DOCTYPES," \ + $CWD/slack-desc \ + > $PKG/install/slack-desc cd $PKG /sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} |