testing/texlive: improve abuild

This commit is contained in:
Jakub Jirutka 2016-06-09 21:29:20 +02:00
parent 9b0ffa0c0a
commit e4505dfac7

View File

@ -10,32 +10,23 @@ license="GPL"
depends="perl"
depends_dev=""
makedepends="freetype-dev libpng-dev poppler-dev icu-dev harfbuzz-dev
cairo-dev pixman-dev zziplib-dev libpaper-dev graphite2-dev
libxmu-dev fontconfig-dev libxaw-dev motif-dev"
cairo-dev pixman-dev zziplib-dev libpaper-dev graphite2-dev
libxmu-dev fontconfig-dev libxaw-dev motif-dev"
install=""
subpackages="$pkgname-dev $pkgname-doc xdvik:xdvi $pkgname-xetex:xetex $pkgname-luatex:lua $pkgname-full:meta"
source="ftp://ftp.tug.org/historic/systems/$pkgname/${pkgver%????}/$pkgname-$pkgver-source.tar.xz"
builddir="$srcdir"/texlive-${pkgver}-source
_LUATEX="dvilualatex dviluatex lualollipop"
_PDFTEX="amstex cslatex csplain eplain etex jadetex latex lollipop mex
_luatex="dvilualatex dviluatex lualollipop"
_pdftex="amstex cslatex csplain eplain etex jadetex latex lollipop mex
mllatex mltex pdfetex pdfcslatex pdfcsplain pdfjadetex pdflatex
pdfmex pdfxmltex texsis utf8mex xmltex"
_XETEX="xelatex xelollipop"
_builddir="$srcdir"/texlive-${pkgver}-source
prepare() {
local i
cd "$_builddir"
for i in $source; do
case $i in
*.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;;
esac
done
}
_xetex="xelatex xelollipop"
build() {
cd "$_builddir"
mkdir -p $_builddir/build && cd $_builddir/build
cd "$builddir"
mkdir -p $builddir/build && cd $builddir/build
../configure -C \
--build=$CBUILD \
--host=$CHOST \
@ -97,57 +88,67 @@ build() {
}
package() {
cd "$_builddir"/build
cd "$builddir"/build
make DESTDIR="$pkgdir" install || return 1
cp -rf ../texk/tests/TeXLive \
"$pkgdir"/usr/share/texmf-dist/scripts/texlive || return 1
for TEXCMD in $_PDFTEX; do
ln -s pdftex "$pkgdir"/usr/bin/$TEXCMD || return 1
local texcmd; for texcmd in $_pdftex; do
ln -s pdftex "$pkgdir"/usr/bin/$texcmd || return 1
done
ln -s eptex "$pkgdir"/usr/bin/platex && \
ln -s eptex "$pkgdir"/usr/bin/platex || return 1
ln -s euptex "$pkgdir"/usr/bin/uplatex || return 1
sed -i -e 's:SELFAUTOPARENT:TEXMFROOT:' \
"$pkgdir"/usr/share/texmf-dist/scripts/texlive/tlmgr.pl || return 1
"$pkgdir"/usr/share/texmf-dist/scripts/texlive/tlmgr.pl || return 1
sed -i -e 's:^\(TEXMFROOT *= *\)$SELFAUTOPARENT$:\1/usr/share:g' \
"$pkgdir"/usr/share/texmf-dist/web2c/texmf.cnf || return 1
"$pkgdir"/usr/share/texmf-dist/web2c/texmf.cnf || return 1
}
xetex() {
# Split off XeTeX because it depends on graphite/harfbuzz/icu
pkgdesc="TeX typesetting engine supporting modern typography and bidirectional text"
depends="$pkgname"
mkdir -p "$subpkgdir" || return 1
install -d -m 0755 "$subpkgdir"/usr/bin || return 1
mv "$pkgdir"/usr/bin/xetex "$subpkgdir"/usr/bin/ || return 1
for TEXCMD in $_XETEX; do
ln -s xetex "$subpkgdir"/usr/bin/$TEXCMD || return 1
local texcmd; for texcmd in $_xetex; do
ln -s xetex "$subpkgdir"/usr/bin/$texcmd || return 1
done
}
meta() {
pkgdesc="A complete TeX distribution"
depends="$pkgname $pkgname-doc $pkgname-luatex $pkgname-xetex xdvik"
mkdir -p "$subpkgdir" || return 1
mkdir -p "$subpkgdir"
}
lua() {
pkgdesc="LuaTeX is an extended version of pdfTeX, scriptable in Lua"
depends="bash $pkgname" # lua2dox_filter is a bash script
mkdir -p "$subpkgdir" || return 1
cd "$subpkgdir" || return 1
depends="bash $pkgname" # lua2dox_filter is a bash script
mkdir -p "$subpkgdir" && cd "$subpkgdir" || return 1
install -d -m 0755 usr/bin usr/lib \
usr/share/texmf-dist/scripts/context/stubs/unix || return 1
mv "$pkgdir"/usr/bin/*lua* "$subpkgdir"/usr/bin/ && \
mv "$pkgdir"/usr/bin/*lua* "$subpkgdir"/usr/bin/ || return 1
mv "$pkgdir"/usr/lib/lib*lua*.so.* "$subpkgdir"/usr/lib/ || return 1
mv "$pkgdir"/usr/share/texmf-dist/scripts/*lua* \
"$subpkgdir"/usr/share/texmf-dist/scripts/ || return 1
mv "$pkgdir"/usr/share/texmf-dist/scripts/context/stubs/unix/luatools \
"$subpkgdir"/usr/share/texmf-dist/scripts/context/stubs/unix/luatools \
"$subpkgdir"/usr/share/texmf-dist/scripts/context/stubs/unix/luatools \
|| return 1
for TEXCMD in $_LUATEX
do ln -s luatex "$subpkgdir"/usr/bin/$TEXCMD || return 1
done
local texcmd; for texcmd in $_luatex
do ln -s luatex "$subpkgdir"/usr/bin/$texcmd || return 1
done
cd -
# The following directories are used strictly for Lua scripts:
# for DIR in
# usr/share/texmf-dist/scripts/checkcites/ \
@ -168,13 +169,13 @@ xdvi() {
depends="texlive"
pkgdesc="Xdvi from texlive, using the texlive libraries"
provides="xdvi"
mkdir -p "$subpkgdir" || return 1
cd "$subpkgdir" && \
install -d -m 0755 usr/bin usr/share/texmf-dist/ && \
mv "$pkgdir"/usr/bin/xdvi "$pkgdir"/usr/bin/xdvi-* usr/bin/ && \
mv "$pkgdir"/usr/share/texmf-dist/xdvi usr/share/texmf-dist/ \
|| return 1
cd -
mkdir -p "$subpkgdir" && cd "$subpkgdir" || return 1
install -d -m 0755 usr/bin usr/share/texmf-dist/ || return 1
mv "$pkgdir"/usr/bin/xdvi "$pkgdir"/usr/bin/xdvi-* usr/bin/ || return 1
mv "$pkgdir"/usr/share/texmf-dist/xdvi usr/share/texmf-dist/ || return 1
}
md5sums="527a6a3ef119c501a4c8ed0b3bd254bc texlive-20160523-source.tar.xz"