# Maintainer: Antonio Rojas # Contributor: Rémy Oudompheng # Contributor: francois # ALARM: Kevin Mihelich # -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) _rev=66984 pkgver=2023.$_rev pkgrel=7 license=(GPL) arch=(x86_64) makedepends=(git cairo pixman graphite t1lib gd libsigsegv zziplib libpng libjpeg freetype2 icu harfbuzz-icu mpfr potrace libpaper perl libxcrypt subversion) url='https://tug.org/texlive/' _commit=871c7a2856d70e1a9703d1f72f0587b9995dba5f # tags/texlive-2023.0 source=(git+https://github.com/Tex-Live/texlive-source.git#commit=$_commit svn://tug.org/texlive/tags/texlive-2023.0/Master/tlpkg#revision=$_rev ptex-debug-print.patch context-luatex-1.17.patch) sha256sums=('SKIP' 'SKIP' 'aa838f09003c62c2efb5770a8de66f99b409df049fbd65098d80fd1957d06c50' 'a56838d19c3bd820781693b5a2e058e1a22378b37ea199bac426d97fcc420920') prepare() { cd texlive-source # bibtex-x needs kpathsea flags sed -i '/AC_SEARCH_LIBS/a KPSE_KPATHSEA_FLAGS' texk/bibtex-x/configure.ac (cd texk/bibtex-x && autoreconf) # t4ht expects to be un /usr/share/texmf/bin/t4ht (FS#27251) sed -i s/SELFAUTOPARENT/TEXMFROOT/ texk/tex4htk/t4ht.c # remove spurious ptex "guessed encoding" print patch -p1 -i ../ptex-debug-print.patch # update context to work with luatex 1.17 patch -p1 -i ../context-luatex-1.17.patch } build() { cd texlive-source mkdir -p build cd build ax_cv_c_float_words_bigendian=no \ ../configure --prefix=/usr -C \ --sysconfdir=/etc \ --datarootdir=/usr/share \ --datadir=/usr/share \ --mandir=/usr/share/man \ --disable-cxx-runtime-hack \ --disable-native-texlive-build \ --with-banner-add="/Arch Linux" \ --disable-multiplatform \ --disable-dialog \ --disable-psutils \ --disable-t1utils \ --disable-bibtexu \ --disable-dvisvgm \ --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-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 \ --enable-aleph \ --enable-luatex \ --with-clisp-runtime=default \ --disable-xindy --disable-xindy-rules --disable-xindy-docs make } package_libsynctex() { pkgdesc='Library for synchronization between TeX files and resulting file' depends=(glibc zlib) cd texlive-source/build make -C texk/web2c DESTDIR="$pkgdir" \ install-data-am install-libLTLIBRARIES rm "$pkgdir"/usr/share/man/man1/hi*.* } package_texlive-bin() { pkgdesc='TeX Live binaries' depends=(cairo pixman graphite t1lib gd poppler libsigsegv zziplib libpng libjpeg freetype2 libxcrypt harfbuzz-icu mpfr potrace libpaper libsynctex) provides=(lcdf-typetools kpathsea) optdepends=('ed: for texconfig' 'dialog: for texconfig' 'biber: for bibliography processing' 'ghostscript: for epstopdf, epspdf and other ConTeXt tools' 'java-runtime: for utilities like arara, texplate, pdfannotextractor' 'perl-tk: for texdoctk' 'psutils: to manipulate the output of dvips' 'python: for de-macro, dviasm, pythontex' 'python-pygments: for pygmentex' 'ruby: for old ConTeXT MkII and epspdf' 't1utils: can be useful when installing Type1 fonts' 'wdiff: for texdiff' 'fontforge: for scripts from the lilyglyphs package' 'perl-yaml-tiny: for latexindent' 'perl-file-homedir: for latexindent') cd texlive-source # 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|" '{}' \; cd build make DESTDIR="$pkgdir" texmf="$pkgdir"/usr/share/texmf install LD_LIBRARY_PATH="$pkgdir"/usr/lib \ make DESTDIR="$pkgdir" texlinks # install old ConTeXt stubs cd "$srcdir"/texlive-source for _stub in `ls texk/texlive/linked_scripts/context/stubs/unix`; do install -m755 texk/texlive/linked_scripts/context/stubs/unix/$_stub "$pkgdir"/usr/bin/$_stub done # install tlpkg files needed by texconfig install -Dm644 "$srcdir"/tlpkg/TeXLive/* -t "$pkgdir"/usr/share/perl5/vendor_perl/TeXLive/ install -Dm644 "$srcdir"/tlpkg/texlive.tlpdb -t "$pkgdir"/usr/share/tlpkg install -Dm644 "$srcdir"/tlpkg/installer/config.guess -t "$pkgdir"/usr/share/tlpkg/installer # remove stuff included in texlive-core rm -r "$pkgdir"/usr/share/texmf-dist/{bibtex,chktex,dvipdfmx,dvips,fonts,hbf2gf,scripts,texconfig,ttf2pk,web2c,xdvi} # docs are provided in texlive-doc rm -r "$pkgdir"/usr/share/texmf-dist/doc # remove libsynctex rm "$pkgdir"/usr/include/synctex/* rm "$pkgdir"/usr/lib/libsynctex.* rm "$pkgdir"/usr/lib/pkgconfig/synctex.pc rm "$pkgdir"/usr/share/man/man*/synctex.* }