# Contributor: Isaac Dunham # Maintainer: global pkgname := 'texlive' global pkgver := '20170524' global pkgrel := '2' global pkgdesc := '"Comprehensive TeX document production system'" global url := '"http://tug.org/texlive/'" global arch := '"all'" global license := '"GPL'" global depends := '"perl'" global depends_dev := ''"" global 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'" global install := ''"" global subpackages := ""$pkgname-dev $pkgname-doc xdvik:xdvi $pkgname-xetex:xetex $pkgname-luatex:lua $pkgname-full:meta"" global source := ""ftp://ftp.tug.org/texlive/historic/$(pkgver:0:4)/texlive-$pkgver-source.tar.xz"" global builddir := ""$srcdir"/texlive-$(pkgver)-source" global _luatex := '"dvilualatex dviluatex lualollipop'" global _pdftex := '"amstex cslatex csplain eplain etex jadetex latex lollipop mex mllatex mltex pdfetex pdfcslatex pdfcsplain pdfjadetex pdflatex pdfmex pdfxmltex texsis utf8mex xmltex'" global _xetex := '"xelatex xelollipop'" proc build { cd $builddir if test $CARCH = "ppc64le" { global EXTRA := '"--disable-luajittex --disable-mfluajit'" } mkdir -p $builddir/build && cd $builddir/build ../configure -C \ --build=$CBUILD \ --host=$CHOST \ --prefix=/usr \ --sysconfdir=/etc \ --mandir=/usr/share/man \ --infodir=/usr/share/info \ --localstatedir=/var \ --enable-biber \ --enable-epsfwin \ --enable-ipc \ --enable-luatex \ --enable-mftalkwin \ --enable-regiswin \ --enable-shared \ --enable-tektronixwin \ --enable-unitermwin \ --enable-xetex \ --disable-bibtex-x \ --disable-chktex \ --disable-cjkutils \ --disable-detex \ --disable-dialog \ --disable-dvi2tty \ --disable-dvipng \ --disable-dvipsk \ --disable-dvisvgm \ --disable-largefile \ --disable-lcdf-typetools \ --disable-multiplatform \ --disable-native-texlive-build \ --disable-pdfopen \ --disable-ps2eps \ --disable-ps2pkm \ --disable-psutils \ --disable-t1utils \ --disable-tex4htk \ --disable-ttf2pk2 \ --disable-vlna \ --disable-xindy \ --with-ps=gs \ --with-banner-add="/Alpine Linux" \ --with-system-cairo \ --with-system-freetype2 \ --with-system-graphite2 \ --with-system-harfbuzz \ --with-system-icu \ --with-system-libpaper \ --with-system-libpng \ --with-system-pixman \ --with-system-poppler \ --with-system-xpdf \ --with-system-zlib \ --with-system-zziplib \ --with-x-dvi-toolkit=motif \ --without-texinfo \ $EXTRA make } proc package { cd "$builddir"/build make DESTDIR="$pkgdir" install cp -rf ../texk/tests/TeXLive \ "$pkgdir"/usr/share/texmf-dist/scripts/texlive var texcmd = ''; for texcmd in [$_pdftex] { ln -s pdftex "$pkgdir"/usr/bin/$texcmd } ln -s eptex "$pkgdir"/usr/bin/platex ln -s euptex "$pkgdir"/usr/bin/uplatex sed -i -e 's:SELFAUTOPARENT:TEXMFROOT:' \ "$pkgdir"/usr/share/texmf-dist/scripts/texlive/tlmgr.pl sed -i -e 's:^\(TEXMFROOT *= *\)$SELFAUTOPARENT$:\1/usr/share:g' \ "$pkgdir"/usr/share/texmf-dist/web2c/texmf.cnf } proc xetex { # Split off XeTeX because it depends on graphite/harfbuzz/icu global pkgdesc := '"TeX typesetting engine supporting modern typography and bidirectional text'" global depends := $pkgname install -d -m 0755 "$subpkgdir"/usr/bin mv "$pkgdir"/usr/bin/xetex "$subpkgdir"/usr/bin/ var texcmd = ''; for texcmd in [$_xetex] { ln -s xetex "$subpkgdir"/usr/bin/$texcmd } } proc meta { global pkgdesc := '"A complete TeX distribution'" global depends := ""$pkgname $pkgname-doc $pkgname-luatex $pkgname-xetex xdvik"" mkdir -p $subpkgdir } proc lua { global pkgdesc := '"LuaTeX is an extended version of pdfTeX, scriptable in Lua'" global depends := ""bash $pkgname"" # lua2dox_filter is a bash script mkdir -p $subpkgdir && cd $subpkgdir install -d -m 0755 usr/bin usr/lib \ usr/share/texmf-dist/scripts/context/stubs/unix mv "$pkgdir"/usr/bin/*lua* "$subpkgdir"/usr/bin/ mv "$pkgdir"/usr/lib/lib*lua*.so.* "$subpkgdir"/usr/lib/ mv "$pkgdir"/usr/share/texmf-dist/scripts/*lua* \ "$subpkgdir"/usr/share/texmf-dist/scripts/ mv "$pkgdir"/usr/share/texmf-dist/scripts/context/stubs/unix/luatools \ "$subpkgdir"/usr/share/texmf-dist/scripts/context/stubs/unix/luatools var texcmd = ''; for texcmd in [$_luatex] { ln -s luatex "$subpkgdir"/usr/bin/$texcmd } cd - # The following directories are used strictly for Lua scripts: # for DIR in # usr/share/texmf-dist/scripts/checkcites/ \ # usr/share/texmf-dist/scripts/getmap/ \ # usr/share/texmf-dist/scripts/m-tx/ \ # usr/share/texmf-dist/scripts/musixtex/ \ # usr/share/texmf-dist/scripts/pmx/ \ # usr/share/texmf-dist/scripts/pmxchords/ \ # usr/share/texmf-dist/scripts/ptex2pdf/ ; # do # mv "$pkgdir"/"$DIR" "$subpkgdir"/usr/share/texmf-dist/scripts/ # done } proc xdvi { # currently, xdvi needs a number of files and scripts from texlive; # we split it off so that it doesn't drag in X and Motif. global depends := '"texlive'" global pkgdesc := '"Xdvi from texlive, using the texlive libraries'" global provides := '"xdvi'" mkdir -p $subpkgdir && 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/ } global sha512sums := '"18c18940992ab94ce22e22ccd4ad798253ea14ac2ab296a10ea5e9a8da9f33989f2e2641b42b564d1d5fb53bd371da3e68726b676d706b469016ad146cd19daa texlive-20170524-source.tar.xz'" (CommandList children: [ (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgname) op:Equal rhs:{(texlive)} spids:[6])] spids: [6] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgver) op:Equal rhs:{(20170524)} spids:[9])] spids: [9] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:pkgrel) op:Equal rhs:{(2)} spids:[12])] spids: [12] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Comprehensive TeX document production system"))} spids: [15] ) ] spids: [15] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:url) op: Equal rhs: {(DQ ("http://tug.org/texlive/"))} spids: [20] ) ] spids: [20] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:arch) op:Equal rhs:{(DQ (all))} spids:[25])] spids: [25] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:license) op:Equal rhs:{(DQ (GPL))} spids:[30])] spids: [30] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends) op:Equal rhs:{(DQ (perl))} spids:[35])] spids: [35] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:depends_dev) op:Equal rhs:{(DQ )} spids:[40])] spids: [40] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:makedepends) op: Equal rhs: { (DQ ("freetype-dev libpng-dev poppler-dev icu-dev harfbuzz-dev\n") ("\tcairo-dev pixman-dev zziplib-dev libpaper-dev graphite2-dev\n") ("\tlibxmu-dev fontconfig-dev libxaw-dev motif-dev") ) } spids: [44] ) ] spids: [44] ) (Assignment keyword: Assign_None pairs: [(assign_pair lhs:(LhsName name:install) op:Equal rhs:{(DQ )} spids:[51])] spids: [51] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:subpackages) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") ("-dev ") ($ VSub_Name "$pkgname") ("-doc xdvik:xdvi ") ($ VSub_Name "$pkgname") ("-xetex:xetex ") ($ VSub_Name "$pkgname") ("-luatex:lua ") ($ VSub_Name "$pkgname") ("-full:meta") ) } spids: [55] ) ] spids: [55] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:source) op: Equal rhs: { (DQ ("ftp://ftp.tug.org/texlive/historic/") (BracedVarSub token: suffix_op: (Slice begin: (ArithWord w:{(Lit_Digits 0)}) length: (ArithWord w:{(Lit_Digits 4)}) ) spids: [72 78] ) (/texlive-) ($ VSub_Name "$pkgver") (-source.tar.xz) ) } spids: [69] ) ] spids: [69] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:builddir) op: Equal rhs: {(DQ ($ VSub_Name "$srcdir")) (/texlive-) (${ VSub_Name pkgver) (-source)} spids: [84] ) ] spids: [84] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_luatex) op: Equal rhs: {(DQ ("dvilualatex dviluatex lualollipop"))} spids: [95] ) ] spids: [95] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_pdftex) op: Equal rhs: { (DQ ("amstex cslatex csplain eplain etex jadetex latex lollipop mex\n") ("\tmllatex mltex pdfetex pdfcslatex pdfcsplain pdfjadetex pdflatex\n") ("\tpdfmex pdfxmltex texsis utf8mex xmltex") ) } spids: [100] ) ] spids: [100] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:_xetex) op: Equal rhs: {(DQ ("xelatex xelollipop"))} spids: [107] ) ] spids: [107] ) (FuncDef name: build body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir"))}) (If arms: [ (if_arm cond: [ (Sentence child: (C {(Lit_Other "[")} {(DQ ($ VSub_Name "$CARCH"))} {(Lit_Other "=")} {(DQ (ppc64le))} {(Lit_Other "]")} ) terminator: ) ] action: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:EXTRA) op: Equal rhs: {(DQ ("--disable-luajittex --disable-mfluajit"))} spids: [149] ) ] spids: [149] ) ] spids: [-1 146] ) ] spids: [-1 155] ) (AndOr children: [ (C {(mkdir)} {(-p)} {($ VSub_Name "$builddir") (/build)}) (C {(cd)} {($ VSub_Name "$builddir") (/build)}) ] op_id: Op_DAmp ) (C {(../configure)} {(-C)} {(--build) (Lit_Other "=") ($ VSub_Name "$CBUILD")} {(--host) (Lit_Other "=") ($ VSub_Name "$CHOST")} {(--prefix) (Lit_Other "=") (/usr)} {(--sysconfdir) (Lit_Other "=") (/etc)} {(--mandir) (Lit_Other "=") (/usr/share/man)} {(--infodir) (Lit_Other "=") (/usr/share/info)} {(--localstatedir) (Lit_Other "=") (/var)} {(--enable-biber)} {(--enable-epsfwin)} {(--enable-ipc)} {(--enable-luatex)} {(--enable-mftalkwin)} {(--enable-regiswin)} {(--enable-shared)} {(--enable-tektronixwin)} {(--enable-unitermwin)} {(--enable-xetex)} {(--disable-bibtex-x)} {(--disable-chktex)} {(--disable-cjkutils)} {(--disable-detex)} {(--disable-dialog)} {(--disable-dvi2tty)} {(--disable-dvipng)} {(--disable-dvipsk)} {(--disable-dvisvgm)} {(--disable-largefile)} {(--disable-lcdf-typetools)} {(--disable-multiplatform)} {(--disable-native-texlive-build)} {(--disable-pdfopen)} {(--disable-ps2eps)} {(--disable-ps2pkm)} {(--disable-psutils)} {(--disable-t1utils)} {(--disable-tex4htk)} {(--disable-ttf2pk2)} {(--disable-vlna)} {(--disable-xindy)} {(--with-ps) (Lit_Other "=") (gs)} {(--with-banner-add) (Lit_Other "=") (DQ ("/Alpine Linux"))} {(--with-system-cairo)} {(--with-system-freetype2)} {(--with-system-graphite2)} {(--with-system-harfbuzz)} {(--with-system-icu)} {(--with-system-libpaper)} {(--with-system-libpng)} {(--with-system-pixman)} {(--with-system-poppler)} {(--with-system-xpdf)} {(--with-system-zlib)} {(--with-system-zziplib)} {(--with-x-dvi-toolkit) (Lit_Other "=") (motif)} {(--without-texinfo)} {($ VSub_Name "$EXTRA")} ) (C {(make)}) ] spids: [117] ) spids: [113 116] ) (FuncDef name: package body: (BraceGroup children: [ (C {(cd)} {(DQ ($ VSub_Name "$builddir")) (/build)}) (C {(make)} {(Lit_VarLike "DESTDIR=") (DQ ($ VSub_Name "$pkgdir"))} {(install)}) (C {(cp)} {(-rf)} {(../texk/tests/TeXLive)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/scripts/texlive)} ) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:texcmd) op:Equal spids:[474])] spids: [472] ) terminator: ) (ForEach iter_name: texcmd iter_words: [{($ VSub_Name "$_pdftex")}] do_arg_iter: False body: (DoGroup children: [ (C {(ln)} {(-s)} {(pdftex)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/) ($ VSub_Name "$texcmd")} ) ] spids: [486 502] ) spids: [482 484] ) (C {(ln)} {(-s)} {(eptex)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/platex)}) (C {(ln)} {(-s)} {(euptex)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/uplatex)}) (C {(sed)} {(-i)} {(-e)} {(SQ <"s:SELFAUTOPARENT:TEXMFROOT:">)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/scripts/texlive/tlmgr.pl)} ) (C {(sed)} {(-i)} {(-e)} {(SQ <"s:^\\(TEXMFROOT *= *\\)$SELFAUTOPARENT$:\\1/usr/share:g">)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/web2c/texmf.cnf)} ) ] spids: [434] ) spids: [430 433] ) (FuncDef name: xetex body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: { (DQ ( "TeX typesetting engine supporting modern typography and bidirectional text" ) ) } spids: [579] ) ] spids: [579] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ($ VSub_Name "$pkgname"))} spids: [585] ) ] spids: [585] ) (C {(install)} {(-d)} {(-m)} {(0755)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/xetex)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)} ) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:texcmd) op:Equal spids:[622])] spids: [620] ) terminator: ) (ForEach iter_name: texcmd iter_words: [{($ VSub_Name "$_xetex")}] do_arg_iter: False body: (DoGroup children: [ (C {(ln)} {(-s)} {(xetex)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/) ($ VSub_Name "$texcmd")} ) ] spids: [634 650] ) spids: [630 632] ) ] spids: [572] ) spids: [568 571] ) (FuncDef name: meta body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("A complete TeX distribution"))} spids: [662] ) ] spids: [662] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: { (DQ ($ VSub_Name "$pkgname") (" ") ($ VSub_Name "$pkgname") ("-doc ") ($ VSub_Name "$pkgname") ("-luatex ") ($ VSub_Name "$pkgname") ("-xetex xdvik") ) } spids: [668] ) ] spids: [668] ) (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))}) ] spids: [659] ) spids: [655 658] ) (FuncDef name: lua body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("LuaTeX is an extended version of pdfTeX, scriptable in Lua"))} spids: [700] ) ] spids: [700] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ ("bash ") ($ VSub_Name "$pkgname"))} spids: [706] ) ] spids: [706] ) (AndOr children: [ (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))}) (C {(cd)} {(DQ ($ VSub_Name "$subpkgdir"))}) ] op_id: Op_DAmp ) (C {(install)} {(-d)} {(-m)} {(0755)} {(usr/bin)} {(usr/lib)} {(usr/share/texmf-dist/scripts/context/stubs/unix)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/) (Lit_Other "*") (lua) (Lit_Other "*")} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/lib/lib) (Lit_Other "*") (lua) (Lit_Other "*") (.so.) (Lit_Other "*") } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/lib/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/scripts/) (Lit_Other "*") (lua) (Lit_Other "*") } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/texmf-dist/scripts/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/scripts/context/stubs/unix/luatools) } {(DQ ($ VSub_Name "$subpkgdir")) (/usr/share/texmf-dist/scripts/context/stubs/unix/luatools)} ) (Sentence child: (Assignment keyword: Assign_Local pairs: [(assign_pair lhs:(LhsName name:texcmd) op:Equal spids:[823])] spids: [821] ) terminator: ) (ForEach iter_name: texcmd iter_words: [{($ VSub_Name "$_luatex")}] do_arg_iter: False body: (DoGroup children: [ (C {(ln)} {(-s)} {(luatex)} {(DQ ($ VSub_Name "$subpkgdir")) (/usr/bin/) ($ VSub_Name "$texcmd")} ) ] spids: [835 850] ) spids: [831 -1] ) (C {(cd)} {(-)}) ] spids: [697] ) spids: [693 696] ) (FuncDef name: xdvi body: (BraceGroup children: [ (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:depends) op: Equal rhs: {(DQ (texlive))} spids: [912] ) ] spids: [912] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:pkgdesc) op: Equal rhs: {(DQ ("Xdvi from texlive, using the texlive libraries"))} spids: [918] ) ] spids: [918] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:provides) op: Equal rhs: {(DQ (xdvi))} spids: [924] ) ] spids: [924] ) (AndOr children: [ (C {(mkdir)} {(-p)} {(DQ ($ VSub_Name "$subpkgdir"))}) (C {(cd)} {(DQ ($ VSub_Name "$subpkgdir"))}) ] op_id: Op_DAmp ) (C {(install)} {(-d)} {(-m)} {(0755)} {(usr/bin)} {(usr/share/texmf-dist/)}) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/xdvi)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/bin/xdvi-) (Lit_Other "*")} {(usr/bin/)} ) (C {(mv)} {(DQ ($ VSub_Name "$pkgdir")) (/usr/share/texmf-dist/xdvi)} {(usr/share/texmf-dist/)} ) ] spids: [901] ) spids: [897 900] ) (Assignment keyword: Assign_None pairs: [ (assign_pair lhs: (LhsName name:sha512sums) op: Equal rhs: { (DQ ( "18c18940992ab94ce22e22ccd4ad798253ea14ac2ab296a10ea5e9a8da9f33989f2e2641b42b564d1d5fb53bd371da3e68726b676d706b469016ad146cd19daa texlive-20170524-source.tar.xz" ) ) } spids: [991] ) ] spids: [991] ) ] )