mirror of
https://github.com/archlinuxarm/PKGBUILDs.git
synced 2024-11-28 22:57:37 +00:00
417 lines
10 KiB
Bash
417 lines
10 KiB
Bash
# Maintainer: Rémy Oudompheng <remy@archlinux.org>
|
|
# Contributor: francois <francois.archlinux.org>
|
|
|
|
# ALARM: Kevin Mihelich <kevin@archlinuxarm.org>
|
|
# -fPIC for v6 and v7
|
|
# --disable-xindy, remove xindy stuff, segfaults with clisp
|
|
# --disable-cxx-runtime-hack
|
|
# drop clisp and ffcall makedepends
|
|
|
|
pkgname=('texlive-bin' 'libsynctex')
|
|
pkgver=2018.48691
|
|
pkgrel=7
|
|
license=('GPL')
|
|
arch=('x86_64')
|
|
makedepends=('git' 'cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler'
|
|
'libsigsegv' 'zziplib' 'libpng' 'libjpeg' 'freetype2'
|
|
'icu' 'harfbuzz' 'harfbuzz-icu' 'gmp' 'mpfr' 'potrace' 'libpaper'
|
|
'perl')
|
|
url='http://tug.org/texlive/'
|
|
_commit=f68b0992e13a2e155d71beb3e016ea4139023224 # texlive-2018.2
|
|
source=("git+https://github.com/Tex-Live/texlive-source.git#commit=${_commit}"
|
|
"pdftex-poppler0.75.patch"
|
|
"luatex-poppler-fixes.patch"
|
|
"xetex-poppler-fixes.patch"
|
|
"freetype-pkgconfig.patch"
|
|
"synctex-missing-header.patch")
|
|
sha256sums=('SKIP'
|
|
'e3f9efc7303cdd0a90f01b02f32ff749eec745afec2ec9c7f5dde300cf6517b3'
|
|
'72f0deec8687feeaad7b4ca5565f0a2ddec0ec7d03b5ae4c1d8ede56a1bc9a5d'
|
|
'7deb8bd50640b0f4ff9b4c11985fe6153906384b62cb9b5a3c4b52397fb941ca'
|
|
'bed44f4ccda369410e90eac527cf44b8c1afda7d987ae521b4fd5edb425eef3e'
|
|
'b6c81eb091b5910226e0359768edd178680debee56b63ab0a3753c3429c28ab0')
|
|
|
|
prepare() {
|
|
cd "$srcdir/texlive-source"
|
|
|
|
# Synctex "make install" misses synctex_version.h
|
|
patch -Np1 -i "${srcdir}/synctex-missing-header.patch"
|
|
|
|
# Freetype2 2.9.1 package no longer has freetype-config
|
|
patch -Np1 -i "${srcdir}/freetype-pkgconfig.patch"
|
|
|
|
./reautoconf
|
|
|
|
# t4ht expects to be un /usr/share/texmf/bin/t4ht (FS#27251)
|
|
sed -i s/SELFAUTOPARENT/TEXMFROOT/ texk/tex4htk/t4ht.c
|
|
|
|
# luatex switched from poppler to pplib in newer versions so
|
|
# upstream fixes aren't available; hopefully this is correct
|
|
patch -Np1 -i "${srcdir}/luatex-poppler-fixes.patch"
|
|
find texk/web2c/luatexdir -type f -exec sed -i \
|
|
-e 's|gTrue|true|g' \
|
|
-e 's|gFalse|false|g' \
|
|
-e 's|GBool|bool|g' \
|
|
-e 's|getCString|c_str|g' \
|
|
-e 's|Guint|unsigned int|g' \
|
|
-e 's|Guchar|unsigned char|g' \
|
|
{} +
|
|
# xetex poppler compatibility
|
|
patch -Np1 -i "${srcdir}/xetex-poppler-fixes.patch"
|
|
# pdftex poppler compatibility (upstream patches)
|
|
patch -Np1 -i "${srcdir}/pdftex-poppler0.75.patch"
|
|
cp -pv texk/web2c/pdftexdir/pdftoepdf{-poppler0.75.0,}.cc
|
|
cp -pv texk/web2c/pdftexdir/pdftosrc{-poppler0.75.0,}.cc
|
|
}
|
|
|
|
build() {
|
|
cd "$srcdir/texlive-source"
|
|
|
|
#############################################################
|
|
### configure
|
|
mkdir -p Work
|
|
cd Work
|
|
echo "--> Initial configuration..."
|
|
# we use temporary prefix to avoid messing the existing
|
|
# $pkgdir/usr/share/texmf tree
|
|
../configure --prefix=/usr -C \
|
|
--sysconfdir=/etc \
|
|
--datarootdir=/usr/share \
|
|
--datadir=/usr/share \
|
|
--mandir=/usr/share/man \
|
|
--disable-native-texlive-build \
|
|
--with-banner-add="/Arch Linux" \
|
|
--disable-cxx-runtime-hack \
|
|
--disable-multiplatform \
|
|
--disable-dialog \
|
|
--disable-psutils \
|
|
--disable-t1utils \
|
|
--disable-bibtexu \
|
|
--disable-xz \
|
|
--enable-shared \
|
|
--disable-static \
|
|
--with-system-zlib \
|
|
--with-system-zziplib \
|
|
--with-system-pnglib \
|
|
--with-system-ncurses \
|
|
--with-system-t1lib \
|
|
--with-system-gd \
|
|
--with-system-poppler \
|
|
--with-system-xpdf \
|
|
--with-system-freetype2 \
|
|
--with-system-pixman \
|
|
--with-system-cairo \
|
|
--with-system-harfbuzz \
|
|
--with-system-graphite \
|
|
--with-system-icu \
|
|
--with-system-gmp \
|
|
--with-system-mpfr \
|
|
--with-system-potrace \
|
|
--with-system-libpaper \
|
|
--with-freetype2-libdir=/usr/lib \
|
|
--with-freetype2-include=/usr/include/freetype2 \
|
|
--with-xdvi-x-toolkit=xaw \
|
|
--disable-dump-share \
|
|
--disable-aleph \
|
|
--enable-luatex \
|
|
--with-clisp-runtime=default \
|
|
--disable-xindy --disable-xindy-rules --disable-xindy-docs
|
|
#############################################################
|
|
### make
|
|
echo "-------------------------------------------------------"
|
|
echo "--> Building the whole beast ..."
|
|
echo "-------------------------------------------------------"
|
|
make
|
|
}
|
|
|
|
package_libsynctex() {
|
|
pkgdesc='Library for synchronization between TeX files and resulting file'
|
|
depends=('glibc' 'zlib')
|
|
|
|
cd "${srcdir}/texlive-source/Work"
|
|
make -C texk/web2c DESTDIR="${pkgdir}" \
|
|
install-data-am install-libLTLIBRARIES
|
|
}
|
|
|
|
package_texlive-bin() {
|
|
pkgdesc="TeX Live binaries"
|
|
depends=('cairo' 'pixman' 'graphite' 't1lib' 'gd' 'poppler'
|
|
'libsigsegv' 'zziplib' 'libpng' 'libjpeg' 'freetype2'
|
|
'icu' 'harfbuzz' 'harfbuzz-icu' 'gmp' 'mpfr' 'potrace' 'libpaper'
|
|
'libsynctex')
|
|
provides=('lcdf-typetools' 'kpathsea' 'xindy')
|
|
optdepends=('ed: for texconfig'
|
|
'biber: for bibliography processing')
|
|
options=('!strip')
|
|
|
|
cd "$srcdir/texlive-source"
|
|
|
|
#############################################################
|
|
### install
|
|
# fixes for xindy
|
|
find utils/xindy -name Makefile -exec sed -i -e "s|^prefix =.\+$|prefix = $pkgdir/usr|" -e "s|^mandir =.\+$|mandir = \${prefix}/share/man|" -e "s|^datadir =.\+$|datadir = \${datarootdir}/texmf|" -e "s|^docdir =.\+$|docdir = \${datadir}/doc/xindy|" '{}' \;
|
|
|
|
echo "-------------------------------------------------------"
|
|
echo "--> Proceeding with make install ..."
|
|
echo "-------------------------------------------------------"
|
|
cd Work
|
|
make DESTDIR="${pkgdir}" texmf="$pkgdir"/usr/share/texmf install
|
|
rm -rf "${pkgdir}"/usr/{texmf,share/texmf-dist}
|
|
|
|
## symlink engines by hand. texlinks has moved to texlive-core...
|
|
mkdir -p ${pkgdir}/usr/bin
|
|
ln -s eptex ${pkgdir}/usr/bin/platex
|
|
ln -s euptex ${pkgdir}/usr/bin/uplatex
|
|
ln -s luatex ${pkgdir}/usr/bin/dvilualatex
|
|
ln -s luatex ${pkgdir}/usr/bin/dviluatex
|
|
ln -s luatex ${pkgdir}/usr/bin/lualatex
|
|
ln -s pdftex ${pkgdir}/usr/bin/amstex
|
|
ln -s pdftex ${pkgdir}/usr/bin/cslatex
|
|
ln -s pdftex ${pkgdir}/usr/bin/csplain
|
|
ln -s pdftex ${pkgdir}/usr/bin/eplain
|
|
ln -s pdftex ${pkgdir}/usr/bin/etex
|
|
ln -s pdftex ${pkgdir}/usr/bin/jadetex
|
|
ln -s pdftex ${pkgdir}/usr/bin/latex
|
|
ln -s tex ${pkgdir}/usr/bin/lollipop
|
|
ln -s pdftex ${pkgdir}/usr/bin/mex
|
|
ln -s pdftex ${pkgdir}/usr/bin/mllatex
|
|
ln -s pdftex ${pkgdir}/usr/bin/mltex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfetex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfcslatex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfcsplain
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfjadetex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdflatex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfmex
|
|
ln -s pdftex ${pkgdir}/usr/bin/pdfxmltex
|
|
ln -s pdftex ${pkgdir}/usr/bin/texsis
|
|
ln -s pdftex ${pkgdir}/usr/bin/utf8mex
|
|
ln -s pdftex ${pkgdir}/usr/bin/xmltex
|
|
ln -s xetex ${pkgdir}/usr/bin/xelatex
|
|
|
|
#############################################################
|
|
# remove dangling symlinks
|
|
_bibtexextra_scripts="
|
|
bbl2bib
|
|
bib2gls
|
|
bibdoiadd
|
|
bibexport
|
|
bibmradd
|
|
biburl2doi
|
|
bibzbladd
|
|
convertgls2bib
|
|
listbib
|
|
ltx2crossrefxml
|
|
multibibliography
|
|
urlbst
|
|
"
|
|
_core_scripts="
|
|
a2ping
|
|
a5toa4
|
|
adhocfilelist
|
|
afm2afm
|
|
allcm
|
|
allec
|
|
allneeded
|
|
arara
|
|
arlatex
|
|
autoinst
|
|
bundledoc
|
|
checkcites
|
|
checklistings
|
|
chkweb
|
|
cjk-gs-integrate
|
|
context
|
|
contextjit
|
|
ctanify
|
|
ctanupload
|
|
ctan-o-mat
|
|
de-macro
|
|
depythontex
|
|
deweb
|
|
dosepsbin
|
|
dtxgen
|
|
dvi2fax
|
|
dviasm
|
|
dviinfox
|
|
dvired
|
|
e2pall
|
|
epstopdf
|
|
findhyph
|
|
fmtutil
|
|
fmtutil-sys
|
|
fmtutil-user
|
|
fontinst
|
|
fragmaster
|
|
ht
|
|
htcontext
|
|
htlatex
|
|
htmex
|
|
httex
|
|
httexi
|
|
htxelatex
|
|
htxetex
|
|
installfont-tl
|
|
jfmutil
|
|
kpsepath
|
|
kpsetool
|
|
kpsewhere
|
|
kpsexpand
|
|
latex-git-log
|
|
latex-papersize
|
|
latex2man
|
|
latex2nemeth
|
|
latexdef
|
|
latexdiff
|
|
latexdiff-vc
|
|
latexfileversion
|
|
latexindent
|
|
latexmk
|
|
latexpand
|
|
latexrevise
|
|
listings-ext.sh
|
|
ltxfileinfo
|
|
ltximg
|
|
lua2dox_filter
|
|
luaotfload-tool
|
|
luatools
|
|
lwarpmk
|
|
make4ht
|
|
match_parens
|
|
mf2pt1
|
|
mk4ht
|
|
mkjobtexmf
|
|
mkt1font
|
|
mktexfmt
|
|
mptopdf
|
|
mtxrun
|
|
mtxrunjit
|
|
ot2kpx
|
|
pdf180
|
|
pdf270
|
|
pdf90
|
|
pdfatfi
|
|
pdfbook
|
|
pdfbook2
|
|
pdfcrop
|
|
pdfflip
|
|
pdfjam
|
|
pdfjam-pocketmod
|
|
pdfjam-slides3up
|
|
pdfjam-slides6up
|
|
pdfjoin
|
|
pdflatexpicscale
|
|
pdfnup
|
|
pdfpun
|
|
pdfxup
|
|
pfarrei
|
|
pkfix
|
|
pkfix-helper
|
|
ps2eps
|
|
ps2frag
|
|
pslatex
|
|
purifyeps
|
|
pythontex
|
|
repstopdf
|
|
rpdfcrop
|
|
rungs
|
|
simpdftex
|
|
srcredact
|
|
sty2dtx
|
|
tex4ebook
|
|
texconfig
|
|
texconfig-dialog
|
|
texconfig-sys
|
|
texcount
|
|
texdef
|
|
texdiff
|
|
texdirflatten
|
|
texdoc
|
|
texdoctk
|
|
texexec
|
|
texfot
|
|
texlinks
|
|
texliveonfly
|
|
texloganalyser
|
|
texmfstart
|
|
texosquery
|
|
texosquery-jre5
|
|
texosquery-jre8
|
|
thumbpdf
|
|
tlcockpit
|
|
tlshell
|
|
typeoutfileinfo
|
|
updmap
|
|
updmap-sys
|
|
updmap-user
|
|
vpl2ovp
|
|
vpl2vpl
|
|
xhlatex
|
|
"
|
|
_games_scripts="rubikrotation"
|
|
_humanities_scripts="diadia"
|
|
_langcyrillic_scripts="rubibtex rumakeindex"
|
|
_langextra_scripts="ebong"
|
|
_langgreek_scripts="mkgrkindex"
|
|
_langjapanese_scripts="convbkmk ptex2pdf
|
|
kanji-fontmap-creator
|
|
kanji-config-updmap
|
|
kanji-config-updmap-sys
|
|
kanji-config-updmap-user
|
|
"
|
|
_langkorean_scripts="jamo-normalize komkindex ttf2kotexfont"
|
|
_latexextra_scripts="
|
|
authorindex
|
|
exceltex
|
|
l3build
|
|
makedtx
|
|
makeglossaries
|
|
makeglossaries-lite
|
|
pdfannotextractor
|
|
perltex
|
|
ps4pdf
|
|
splitindex
|
|
svn-multi
|
|
vpe
|
|
wordcount
|
|
yplan"
|
|
_music_scripts="lily-glyph-commands lily-image-commands lily-rebuild-pdfs
|
|
m-tx musixtex musixflx pmxchords"
|
|
_pictures_scripts="
|
|
cachepic
|
|
epspdf
|
|
epspdftk
|
|
fig4latex
|
|
getmapdl
|
|
mathspic
|
|
mkpic
|
|
pn2pdf"
|
|
_pstricks_scripts="pedigree pst2pdf"
|
|
_science_scripts="pygmentex ulqda"
|
|
for s in \
|
|
${_bibtexextra_scripts} \
|
|
${_core_scripts} \
|
|
${_games_scripts} \
|
|
${_htmlxml_scripts} \
|
|
${_humanities_scripts} \
|
|
${_langcyrillic_scripts} \
|
|
${_langextra_scripts} \
|
|
${_langgreek_scripts} \
|
|
${_langjapanese_scripts} \
|
|
${_langkorean_scripts} \
|
|
${_latexextra_scripts} \
|
|
${_music_scripts} \
|
|
${_pictures_scripts} \
|
|
${_pstricks_scripts} \
|
|
${_science_scripts} \
|
|
tlmgr; do
|
|
! readlink -e "$pkgdir"/usr/bin/$s && rm "$pkgdir"/usr/bin/$s
|
|
done
|
|
###################################################################
|
|
|
|
# remove libsynctex
|
|
rm -f "$pkgdir"/usr/include/synctex/*
|
|
rm -f "$pkgdir"/usr/lib/libsynctex.*
|
|
rm -f "$pkgdir"/usr/lib/pkgconfig/synctex.pc
|
|
rm -f "$pkgdir"/usr/share/man/man*/synctex.*
|
|
}
|
|
|