diff options
author | Robby Workman <rw@rlworkman.net> | 2010-05-13 01:00:38 +0200 |
---|---|---|
committer | David Somero <xgizzmo@slackbuilds.org> | 2010-05-13 01:00:38 +0200 |
commit | 1d39427c14970a5903e946d208e75bb22f3ca1df (patch) | |
tree | e665ba651468391110689a36d58e0e7fc2294f01 /office/texlive/texlive.SlackBuild | |
parent | 1e3c8e288506841973da94649373f506986b5ff0 (diff) |
office/texlive: Added to 13.0 repository
Diffstat (limited to 'office/texlive/texlive.SlackBuild')
-rw-r--r-- | office/texlive/texlive.SlackBuild | 214 |
1 files changed, 214 insertions, 0 deletions
diff --git a/office/texlive/texlive.SlackBuild b/office/texlive/texlive.SlackBuild new file mode 100644 index 0000000000000..bf9ccc0f71546 --- /dev/null +++ b/office/texlive/texlive.SlackBuild @@ -0,0 +1,214 @@ +#!/bin/sh + +# TeXLive build script for Slackware + +# Copyright 2009, 2010 Robby Workman, Northport, AL, USA +# Copyright 2009 Patrick J. Volkerding, Sebeka, MN, USA +# 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. + +# URL: ftp://tug.org/historic/systems/texlive/2009/ + +PRGNAM=texlive +VERSION=20091107 +ARCH=${ARCH:-i486} +BUILD=${BUILD:-2} +TAG=${TAG:-_SBo} + +SOURCE_VERS=$VERSION +TEXMF_VERS=$VERSION +EXTRA_VERS=$VERSION + +TEXI2HTML=1.82 # texi2html version - http://www.nongnu.org/texi2html/ + +CWD=$(pwd) +TMP=${TMP:-/tmp/SBo} +PKG=$TMP/package-texlive +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 -fPIC" + LIBDIRSUFFIX="64" +fi + +set -e + +rm -rf $PKG +mkdir -p $TMP $PKG $OUTPUT +cd $TMP +rm -rf texlive-$SOURCE_VERS-source +tar xvf $CWD/texlive-$SOURCE_VERS-source.tar.xz +cd texlive-$SOURCE_VERS-source +chown -R root:root . +chmod -R a-s . +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 {} \; + +# etex is something for eclipse +# Building with --disable-xindy as it requires libffcall +# "kpsewhich -var-value=SELFAUTOPARENT" strips two trailing directories +# from the location of the binaries, and this value is used by many +# things in TeXLive (including tlmgr); therefore, it seems best to just +# "go with the flow" and use "--enable-multiplatform" so the symlinks +# that are automatically created will be correct... +# Building with "--without-system-xpdf" because poppler-0.12+ API is not +# compatible with <=0.11.x. This isn't an issue on 13.0, but we'll make +# it easy for those trying to build on -current +TL_BUILD_ENV="CFLAGS=\"$SLKCFLAGS\" CXXFLAGS=\"$SLKCFLAGS\"" \ +TL_CONFIGURE_ARGS="\ + --enable-multiplatform \ + --with-tex-banner='TeX Live 2009/Slackware (unofficial)' \ + --disable-native-texlive-build \ + --disable-static \ + --enable-ipc \ + --with-x \ + --without-etex \ + --disable-xindy \ + --without-system-xpdf \ + --with-system-ncurses \ + --with-system-zlib \ + --with-system-pnglib \ + --with-system-t1lib \ + --with-system-gd \ + --with-system-freetype2 \ + --build=$ARCH-slackware-linux" \ +./Build + +mkdir -p $PKG/usr/share/texmf/bin +mv inst/bin/${ARCH}-slackware-linux-gnu/* $PKG/usr/share/texmf/bin + +# Install the README file while we're still here +mkdir -p $PKG/usr/doc/texlive-$VERSION +cp -a README $PKG/usr/doc/texlive-$VERSION + +# Now let's install the tlmgr stuff +cd $TMP +rm -rf texlive-$EXTRA_VERS-extra +tar xvf $CWD/texlive-$EXTRA_VERS-extra.tar.xz +cd texlive-$EXTRA_VERS-extra +chown -R root:root . +chmod -R a-s . +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 {} \; + +mkdir -p $PKG/usr/doc/texlive-$VERSION/tlpkg +cp -a tlpkg $PKG/usr/share/ +( cd $TMP/texlive-$EXTRA_VERS-extra + cp -a \ + readme-txt.dir/* readme-html.dir/* README* LICENSE* doc.html \ + $PKG/usr/doc/texlive-$VERSION/tlpkg + cat $CWD/README.tlpkg > $PKG/usr/doc/texlive-$VERSION/tlpkg/README.SLACKWARE +) + +# and now we'll install the texmf stuff +cd $TMP +rm -rf texlive-$TEXMF_VERS-texmf +tar xvf $CWD/texlive-$TEXMF_VERS-texmf.tar.xz +cd texlive-$TEXMF_VERS-texmf +chown -R root:root . +chmod -R a-s . +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 {} \; + +mkdir -p $PKG/usr/share/{texmf,texmf-dist} +mv texmf-dist/* $PKG/usr/share/texmf-dist +mv texmf/* $PKG/usr/share/texmf + +# Now let's add texi2hmtl - http://www.nongnu.org/texi2html/ +cd $TMP +rm -rf texi2html-$TEXI2HTML +tar xvf $CWD/texi2html-$TEXI2HTML.tar.bz2 +cd texi2html-$TEXI2HTML +chown -R root:root . +chmod -R a-s . +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 {} \; +CFLAGS="$SLKCFLAGS" \ +./configure \ + --prefix=/usr \ + --bindir=/usr/share/texmf/bin \ + --mandir=/usr/share/texmf/doc/man \ + --infodir=/usr/info \ + --build=$ARCH-slackware-linux +make +make install DESTDIR=$PKG +mkdir -p $PKG/usr/doc/texlive-$VERSION/texi2html-$TEXI2HTML +cp -a \ + AUTHORS COPYING NEWS README TODO \ + $PKG/usr/doc/texlive-$VERSION/texi2html-$TEXI2HTML + +# Compress man pages +( cd $PKG/usr/share/texmf/doc/man || exit 1 + find . -type f -name "Makefile" -exec rm -f {} \; + find . -type f -name "*.pdf" -exec rm -f {} \; + find . -type f -exec gzip -9 {} \; + for i in $(find . -type l) ; do ln -s $(readlink $i).gz $i.gz ; rm $i ; done +) + +# Handle the GNU info pages +( cd $PKG/usr/info + mv $PKG/usr/share/texmf/doc/info/* . + rm -rf $PKG/usr/share/texmf/doc/info + rm -f dir + gzip -9 * +) + +# Add profile scripts +mkdir -p $PKG/etc/profile.d +cat $CWD/profile.d/texlive.sh > $PKG/etc/profile.d/texlive.sh +cat $CWD/profile.d/texlive.csh > $PKG/etc/profile.d/texlive.csh +chmod 0755 $PKG/etc/profile.d/* + +mkdir -p $PKG/install +cat $CWD/doinst.sh > $PKG/install/doinst.sh +cat $CWD/slack-desc > $PKG/install/slack-desc + +cd $PKG +/sbin/makepkg -p -l y -c n $OUTPUT/texlive-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz} + +# Ignore this - it's for reference purposes :-) -RW +# If we turn off --enable-multiplatform and place the +# binaries only one folder deeper than texmf{,-dist} +# we should have our own configuration. +#cat > $PKG/usr/share/texmf.cnf <<EOF +#% \$SELFAUTODIR will be /usr/share +#TEXMFMAIN = \$SELFAUTODIR/texmf +#TEXMFDIST = \$SELFAUTODIR/texmf-dist +#TEXMFLOCAL = \$SELFAUTODIR/texmf-local +#TEXMFSYSVAR = \$SELFAUTODIR/texmf-var +#TEXMFSYSCONFIG = \$SELFAUTODIR/texmf-config +#EOF |