diff --git a/office/lout/README b/office/lout/README new file mode 100644 index 0000000000..fde8727d7a --- /dev/null +++ b/office/lout/README @@ -0,0 +1,22 @@ +Lout - a document formatting system + +Lout is a document formatting system designed and implemented by +Jeffrey Kingston at the Basser Department of Computer Science, +University of Sydney, Australia. + +The system reads a high-level description of a document similar in +style to LaTeX and produces a PostScript file which can be printed +on most laser printers and graphic display devices. A plain text +output option is available, as is a highly experimental PDF output +mode (users are encouraged to generate PostScript, then convert to +PDF using GhostScript instead.) + +Lout is inherently multilingual. Adding new languages is easy. The +following languages are currently supported (in alphabetical order): +Czech, Danish, Dutch, English, Finnish, French, German, Hungarian, +Italian, Norwegian, Polish, Portuguese, Russian, Slovenian, Spanish, +Swedish. + +The Lout language, in which most document typesetting and layout +tasks are implemented, is a purely functional language, which +simplifies reasoning about the operations performed. diff --git a/office/lout/doinst.sh b/office/lout/doinst.sh new file mode 100644 index 0000000000..832dd6e9c0 --- /dev/null +++ b/office/lout/doinst.sh @@ -0,0 +1,3 @@ +( /usr/bin/lout -x -s /usr/share/lout/include/init; + chmod 644 /usr/share/lout/data/*; + chmod 644 /usr/share/lout/hyph/* ) diff --git a/office/lout/install-fix.patch b/office/lout/install-fix.patch new file mode 100644 index 0000000000..00b75ebbe9 --- /dev/null +++ b/office/lout/install-fix.patch @@ -0,0 +1,15 @@ +--- lout-3.39-org/makefile 2010-04-21 15:52:47.000000000 -0700 ++++ lout-3.39/makefile 2012-05-14 14:26:11.095459297 -0700 +@@ -386,12 +386,6 @@ + mkdir $(LOUTLIBDIR)/$(LIBLOCA) + chmod 755 $(LOUTLIBDIR)/$(LIBLOCA) + @echo "" +- @echo "(c) Initializing run (should be silent, no errors expected)" +- $(BINDIR)/lout -x -s $(LOUTLIBDIR)/$(LIBINCL)/init +- @echo "" +- @echo "(d) Changing mode of files just created by initializing run" +- chmod 644 $(LOUTLIBDIR)/$(LIBDATA)/* +- chmod 644 $(LOUTLIBDIR)/$(LIBHYPH)/* + + installman: + @echo "" diff --git a/office/lout/lout.SlackBuild b/office/lout/lout.SlackBuild new file mode 100644 index 0000000000..173cf82e1f --- /dev/null +++ b/office/lout/lout.SlackBuild @@ -0,0 +1,128 @@ +#!/bin/sh + +# Slackware build script for lout + +# Copyright 2013 Zhu Qun-Ying (zhu.qunying at gmail.com) +# All rights reserved. +# +# Redistribution and use of this script, with or without modification, is +# permitted provided that the following conditions are met: +# +# 1. Redistributions of this script must retain the above copyright +# notice, this list of conditions and the following disclaimer. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED +# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO +# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + +PRGNAM=lout +VERSION=${VERSION:-3.40} +BUILD=${BUILD:-1} +TAG=${TAG:-_SBo} + +# Automatically determine the architecture we're building on: +if [ -z "$ARCH" ]; then + case "$( uname -m )" in + i?86) ARCH=i486 ;; + arm*) ARCH=arm ;; + # Unless $ARCH is already set, use uname -m for all other archs: + *) ARCH=$( uname -m ) ;; + esac +fi + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-$PRGNAM +OUTPUT=${OUTPUT:-/tmp} + +if [ "$ARCH" = "i486" ]; then + SLKCFLAGS="-O2 -march=i486 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "i686" ]; then + SLKCFLAGS="-O2 -march=i686 -mtune=i686" + LIBDIRSUFFIX="" +elif [ "$ARCH" = "x86_64" ]; then + SLKCFLAGS="-O2" + LIBDIRSUFFIX="64" +else + SLKCFLAGS="-O2" + LIBDIRSUFFIX="" +fi + +set -e # Exit on most errors + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf $PRGNAM-$VERSION +tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +cd $PRGNAM-$VERSION +chown -R root:root . +find . \ + \( -perm 777 -o -perm 775 -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 {} \; + +patch -p1 < $CWD/install-fix.patch + +# fixed man page content +sed -i "s/local\/lib/share/g" man/$PRGNAM.1 + +export OS_UNIX=1 +export USESTAT=1 + +export PREFIX=/usr +export BINDIR=$PREFIX/bin +export LOUTLIBDIR=$PREFIX/share/$PRGNAM +export LOUTDOCDIR=$PREFIX/doc/$PRGNAM-$VERSION +export MANDIR=$PREFIX/man/man1/ + +export CHARIN=1 +export CHAROUT=0 + +export COLLATE=1 + +export PDF_COMPRESSION=1 +export ZLIB=-lz +export ZLIBPATH= + +make -e all + +export PREFIX=$PKG/usr +export BINDIR=$PREFIX/bin +export LOUTLIBDIR=$PREFIX/share/$PRGNAM +export LOUTDOCDIR=$PREFIX/doc/$PRGNAM-$VERSION +export MANDIR=$PREFIX/man/man1/ + +mkdir -p $BINDIR +mkdir -p $LOUTDOCDIR +mkdir -p $MANDIR +mkdir -p $PREFIX/share + +make -e allinstall + +find $PKG | xargs file | grep -e "executable" -e "shared object" | grep ELF \ + | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true + +find $PKG/usr/man -type f -exec gzip -9 {} \; +for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done + +cp $CWD/$PRGNAM.SlackBuild $PKG/usr/doc/$PRGNAM-$VERSION/ +cp $CWD/$PRGNAM-$VERSION-user.ps.gz $PKG/usr/doc/$PRGNAM-$VERSION/ +find $PKG/usr/doc/$PRGNAM-$VERSION -name "*.ps" | xargs gzip + +mkdir -p $PKG/install +cat $CWD/slack-desc > $PKG/install/slack-desc +cat $CWD/doinst.sh > $PKG/install/doinst.sh + +cd $PKG +/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} diff --git a/office/lout/lout.info b/office/lout/lout.info new file mode 100644 index 0000000000..d86cf98a45 --- /dev/null +++ b/office/lout/lout.info @@ -0,0 +1,12 @@ +PRGNAM="lout" +VERSION="3.40" +HOMEPAGE="http://savannah.nongnu.org/projects/lout" +DOWNLOAD="http://download.savannah.gnu.org/releases/lout/lout-3.40.tar.gz \ + http://download.savannah.gnu.org/releases/lout/lout-3.40-user.ps.gz" +MD5SUM="fd0fe084cebd07fc209d392a2d380755 \ + 07fea75d0d03a3cd783646f638747f18" +DOWNLOAD_x86_64="" +MD5SUM_x86_64="" +REQUIRES="" +MAINTAINER="Zhu Qun-Ying" +EMAIL="zhu.qunying@gmail.com" diff --git a/office/lout/slack-desc b/office/lout/slack-desc new file mode 100644 index 0000000000..eb71f0b126 --- /dev/null +++ b/office/lout/slack-desc @@ -0,0 +1,19 @@ +# HOW TO EDIT THIS FILE: +# The "handy ruler" below makes it easier to edit a package description. Line +# up the first '|' above the ':' following the base package name, and the '|' on +# the right side marks the last column you can put a character in. You must make +# exactly 11 lines for the formatting to be correct. It's also customary to +# leave one space after the ':'. + + |-----handy-ruler------------------------------------------------------| +lout: Lout - a document formatting system +lout: +lout: Lout is a document formatting system designed and implemented by +lout: Jeffrey Kingston at the Basser Department of Computer Science, +lout: University of Sydney, Australia. +lout: +lout: The system reads a high-level description of a document similar in +lout: style to LaTeX and produces a PostScript file which can be printed +lout: on most laser printers and graphic display devices. +lout: +lout: homepage: http://savannah.nongnu.org/projects/lout