texlive: update to 20230313.

This commit is contained in:
fosslinux 2023-11-09 14:40:37 +11:00 committed by Andrew J. Hesford
parent 2d6611936d
commit ee6b3e602c
7 changed files with 89 additions and 94 deletions

View File

@ -3,14 +3,11 @@ do_build() {
# Extract the source files # Extract the source files
mkdir -p "build/usr/share/texmf-dist" mkdir -p "build/usr/share/texmf-dist"
find . -maxdepth 1 -print -name "*.tar.xz" \ find . -maxdepth 1 -print -name "*.tar.xz" \
-exec bsdtar -C "build/usr/share/texmf-dist" -xf {} \; -exec bsdtar \
-s '|^texmf-dist/||' \
-C "build/usr/share/texmf-dist" \
-xf {} \;
cd "build/usr/share/texmf-dist/" cd "build/usr/share/texmf-dist/"
# Everything in usr/share/texmf-dist/texmf-dist should really be in
# usr/share/texmf-dist, so we move it
if [ -d "texmf-dist" ] ; then
rsync -ar texmf-dist/ ./
rm -rf texmf-dist/
fi
# LICENSEs are unneeded # LICENSEs are unneeded
rm -f LICENSE* rm -f LICENSE*

View File

@ -1,4 +1,2 @@
# rsync isn't needed for everything but it's far easier to just put it here
hostmakedepends+=" rsync"
# python_version isn't needed for everything either # python_version isn't needed for everything either
python_version=3 python_version=3

View File

@ -37,13 +37,6 @@ scripts/cjk-gs-integrate/cjk-gs-integrate.pl texlive
scripts/clojure-pamphlet/pamphletangler texlive scripts/clojure-pamphlet/pamphletangler texlive
scripts/cluttex/cluttex.lua texlive scripts/cluttex/cluttex.lua texlive
scripts/context/perl/mptopdf.pl texlive scripts/context/perl/mptopdf.pl texlive
scripts/context/stubs/unix/contextjit texlive
scripts/context/stubs/unix/context texlive
scripts/context/stubs/unix/luatools texlive
scripts/context/stubs/unix/mtxrunjit texlive
scripts/context/stubs/unix/mtxrun texlive
scripts/context/stubs/unix/texexec texlive
scripts/context/stubs/unix/texmfstart texlive
scripts/convbkmk/convbkmk.rb texlive-langjapanese scripts/convbkmk/convbkmk.rb texlive-langjapanese
scripts/crossrefware/bbl2bib.pl texlive scripts/crossrefware/bbl2bib.pl texlive
scripts/crossrefware/bibdoiadd.pl texlive scripts/crossrefware/bibdoiadd.pl texlive
@ -185,8 +178,8 @@ scripts/texlive/mktexlsr texlive
scripts/texlive/mktexmf texlive scripts/texlive/mktexmf texlive
scripts/texlive/mktexpk texlive scripts/texlive/mktexpk texlive
scripts/texlive/mktextfm texlive scripts/texlive/mktextfm texlive
scripts/texlive/rungs.lua texlive
scripts/texliveonfly/texliveonfly.py texlive scripts/texliveonfly/texliveonfly.py texlive
scripts/texlive/rungs.tlu texlive
scripts/texlive/tlmgr.pl texlive scripts/texlive/tlmgr.pl texlive
scripts/texlive/updmap.pl texlive scripts/texlive/updmap.pl texlive
scripts/texlive/updmap-sys.sh texlive scripts/texlive/updmap-sys.sh texlive

View File

@ -0,0 +1,13 @@
--- a/texk/web2c/Makefile.in 2023-12-19 16:13:41.579311491 +1100
+++ b/texk/web2c/Makefile.in 2023-12-19 16:14:01.587311491 +1100
@@ -22095,10 +22095,6 @@
hitex-tangle: ctangle$(EXEEXT) hitexdir/hitex.w tangle-sh
$(hi_ctangle_sh) hitex
-# Generating hitables.c using himktables.
-hitables.c: himktables$(EXEEXT)
- ./himktables$(EXEEXT) > $@ || { rm -f hitables.c; exit 1; }
-
# hitex, histretch, and hishrink all need (at least) some
# of the sources generated from hiformat.w.
#

View File

@ -9,24 +9,25 @@ Author: q66 <daniel@octaforge.org>
--- a/libs/luajit/configure --- a/libs/luajit/configure
+++ b/libs/luajit/configure +++ b/libs/luajit/configure
@@ -14243,7 +14243,7 @@ else @@ -15267,7 +15267,7 @@
fi if grep 'LJ_ARCH_BITS 64' conftest.i >/dev/null 2>&1
if grep 'LJ_ARCH_BITS 64' conftest.i >/dev/null 2>&1; then : then :
echo '-D P64' >>dynasm_flags echo '-D P64' >>dynasm_flags
- if test "x$LJHOST" = xLinux; then : - if test "x$LJHOST" = xLinux
+ if test "x$LJHOST" = xLinux -a "x$LJARCH" = xx64; then : + if test "x$LJHOST" = xLinux -a "x$LJARCH" = xx64
then :
LUAJIT_DEFINES="$LUAJIT_DEFINES -DMAP_32BIT=0x40" LUAJIT_DEFINES="$LUAJIT_DEFINES -DMAP_32BIT=0x40"
fi fi
fi @@ -15331,6 +15331,10 @@
@@ -14294,6 +14294,9 @@ fi then :
fi
if grep 'LJ_ARCH_PPC32ON64 1' conftest.i >/dev/null 2>&1; then :
echo '-D GPR64' >>dynasm_flags echo '-D GPR64' >>dynasm_flags
+fi
+ if grep 'LJ_ARCH_PPC_ELFV2 1' conftest.i >/dev/null 2>&1; then :
+ echo '-D ELFV2' >>dynasm_flags
fi fi
if grep 'LJ_ARCH_PPC64 ' conftest.i >/dev/null 2>&1; then : + if grep 'LJ_ARCH_PPC_ELFV2 1' conftest.i >/dev/null 2>&1
+then :
+ echo '-D ELFV2' >>dynasm_flags
+fi
if grep 'LJ_ARCH_PPC64 ' conftest.i >/dev/null 2>&1
then :
DASM_ARCH=ppc64 DASM_ARCH=ppc64
--- a/libs/luajit/m4/lj-system.m4 --- a/libs/luajit/m4/lj-system.m4
+++ b/libs/luajit/m4/lj-system.m4 +++ b/libs/luajit/m4/lj-system.m4

View File

@ -1,31 +1,19 @@
Modified from Debian's tlmgr patch. --- a/texk/texlive/linked_scripts/texlive/tlmgr.pl 2023-03-09 08:31:49.000000000 +1100
Src: https://raw.githubusercontent.com/debian-tex/texlive-nonbin/9767c8ba4ea64d671eb98ddff550498cd2ac3d51/texlive-base/debian/patches/debian-tlmgr-usermode. +++ b/texk/texlive/linked_scripts/texlive/tlmgr.pl 2023-12-18 22:20:18.634173357 +1100
@@ -13,7 +13,7 @@
Modifications: my $tlmgrrevision;
my $tlmgrversion;
* Drop Debian specific wording. my $prg;
* Drop unnessecary manpage changes. -my $bindir;
* Change /usr/share path to what we use. +my $bindir = '/usr/bin';
if ($svnrev =~ m/: ([0-9]+) /) {
Modified by fosslinux. $tlmgrrevision = $1;
} else {
--- a/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -44,43 +44,12 @@
+++ b/texk/texlive/linked_scripts/texlive/tlmgr.pl
@@ -20,7 +20,7 @@ $datrev =~ s/^.*Date: //;
$datrev =~ s/ \(.*$//;
$tlmgrversion = "$tlmgrrevision ($datrev)";
-our $Master;
+our $Master = "/usr/share/texmf-dist";
our $loadmediasrcerror;
our $packagelogfile;
our $packagelogged;
@@ -39,38 +39,9 @@ END {
}
BEGIN { BEGIN {
- $^W = 1; $^W = 1;
# make subprograms (including kpsewhich) have the right path: - # make subprograms (including kpsewhich) have the right path:
- my $kpsewhichname; - my $kpsewhichname;
- if ($^O =~ /^MSWin/i) { - if ($^O =~ /^MSWin/i) {
- # on w32 $0 and __FILE__ point directly to tlmgr.pl; they can be relative - # on w32 $0 and __FILE__ point directly to tlmgr.pl; they can be relative
@ -33,7 +21,7 @@ Modified by fosslinux.
- $Master =~ s!\\!/!g; - $Master =~ s!\\!/!g;
- $Master =~ s![^/]*$!../../..! - $Master =~ s![^/]*$!../../..!
- unless ($Master =~ s!/texmf-dist/scripts/texlive/tlmgr\.pl$!!i); - unless ($Master =~ s!/texmf-dist/scripts/texlive/tlmgr\.pl$!!i);
- $bindir = "$Master/bin/win32"; - $bindir = "$Master/bin/windows";
- $kpsewhichname = "kpsewhich.exe"; - $kpsewhichname = "kpsewhich.exe";
- # path already set by wrapper batchfile - # path already set by wrapper batchfile
- } else { - } else {
@ -47,7 +35,7 @@ Modified by fosslinux.
- } - }
- if (-r "$bindir/$kpsewhichname") { - if (-r "$bindir/$kpsewhichname") {
- # if not in bootstrapping mode => kpsewhich exists, so use it to get $Master - # if not in bootstrapping mode => kpsewhich exists, so use it to get $Master
- chomp($Master = `kpsewhich -var-value=SELFAUTOPARENT`); - chomp($Master = `kpsewhich -var-value=TEXMFROOT`);
- } - }
- -
- # if we have no directory in which to find our modules, - # if we have no directory in which to find our modules,
@ -56,43 +44,49 @@ Modified by fosslinux.
- die ("Could not determine directory of tlmgr executable, " - die ("Could not determine directory of tlmgr executable, "
- . "maybe shared library woes?\nCheck for error messages above"); - . "maybe shared library woes?\nCheck for error messages above");
- } - }
+ $bindir = $Master; -
+ $ENV{"PATH"} = "$bindir:$ENV{PATH}"; + $Master = "/usr/share/texmf-dist";
$::installerdir = $Master; # for config.guess et al., see TLUtils.pm $::installerdir = $Master; # for config.guess et al., see TLUtils.pm
@@ -615,6 +586,13 @@ for the full story.\n"; # make Perl find our packages first:
unshift (@INC, "$Master/tlpkg");
- unshift (@INC, "$Master/texmf-dist/scripts/texlive");
+ unshift (@INC, "$Master/scripts/texlive");
}
use Cwd qw/abs_path/;
@@ -622,6 +591,13 @@
tldie("$prg: Try --help if you need it.\n"); tldie("$prg: Try --help if you need it.\n");
} }
+ # automatically switch to user mode on Void, and warn + # automatically switch to user mode, and warn
+ if (!$opts{"usermode"} && $action ne "init-usertree") { + if (!$opts{"usermode"} && $action ne "init-usertree") {
+ $opts{"usermode"} = 1; + $opts{"usermode"} = 1;
+ print "WARNING: switching to user mode!\n"; + print "(running on Void Linux, switching to user mode!)\n";
+ print "WARNING: normal mode unsupported on Void Linux.\n"; + print "(see https://docs.voidlinux.org/config/texlive.html)\n";
+ } + }
+ +
# #
# the main tree we will be working on # the main tree we will be working on
$::maintree = $Master; $::maintree = $Master;
@@ -6118,7 +6096,9 @@ sub action_postaction { @@ -6260,7 +6236,9 @@
# sets up the user tree for tlmgr in user mode # sets up the user tree for tlmgr in user mode
sub action_init_usertree { sub action_init_usertree {
# init_local_db but do not die if localtlpdb is not found! # init_local_db but do not die if localtlpdb is not found!
- init_local_db(2); - init_local_db(2);
+ # we don't ship tlpdb in the system, so don't even + # we don't ship tlpdb for system files, so don't even
+ # try to initialize it. + # try to initialize it.
+ # init_local_db(2); + # init_local_db(2);
my $tlpdb = TeXLive::TLPDB->new; my $tlpdb = TeXLive::TLPDB->new;
my $usertree; my $usertree;
if ($opts{"usertree"}) { if ($opts{"usertree"}) {
@@ -6758,7 +6738,11 @@ sub init_local_db { @@ -6900,7 +6878,11 @@
if ($should_i_die == 2) { if ($should_i_die == 2) {
return undef; return undef;
} else { } else {
- die("cannot setup TLPDB in $::maintree"); - die("cannot setup TLPDB in $::maintree");
+ if ($opts{'usermode'}) { + if ($opts{'usermode'}) {
+ die("$prg: user mode not initialized, please run `tlmgr init-usertree`\n"); + die("$prg: user mode not initialized, please read https://docs.voidlinux.org/config/texlive.html!\n");
+ } else { + } else {
+ die("cannot setup TLPDB in $::maintree"); + die("cannot setup TLPDB in $::maintree");
+ } + }

View File

@ -1,7 +1,7 @@
# Template file for 'texlive' # Template file for 'texlive'
pkgname=texlive pkgname=texlive
version=20210325 version=20230313
revision=8 revision=1
build_wrksrc="build" build_wrksrc="build"
build_style=gnu-configure build_style=gnu-configure
configure_script="../configure" configure_script="../configure"
@ -64,7 +64,7 @@ configure_args="
--with-system-zlib --with-system-zlib
--with-system-zziplib --with-system-zziplib
--with-xdvi-x-toolkit=Xaw" --with-xdvi-x-toolkit=Xaw"
hostmakedepends="pkg-config perl lua52-BitOp texinfo" hostmakedepends="pkg-config perl lua52-BitOp texinfo libXaw-devel"
makedepends="cairo-devel freetype-devel gd-devel graphite-devel gmp-devel makedepends="cairo-devel freetype-devel gd-devel graphite-devel gmp-devel
harfbuzz-devel icu-devel libpaper-devel libpng-devel mpfr-devel harfbuzz-devel icu-devel libpaper-devel libpng-devel mpfr-devel
pixman-devel libteckit-devel zlib-devel zziplib-devel libXaw-devel" pixman-devel libteckit-devel zlib-devel zziplib-devel libXaw-devel"
@ -73,8 +73,8 @@ short_desc="TeX Live"
maintainer="fosslinux <fosslinux@aussies.space>" maintainer="fosslinux <fosslinux@aussies.space>"
license="GPL-2.0-or-later" license="GPL-2.0-or-later"
homepage="https://tug.org/texlive/" homepage="https://tug.org/texlive/"
distfiles="ftp://tug.org/texlive/historic/2021/texlive-${version}-source.tar.xz" distfiles="ftp://tug.org/texlive/historic/2023/texlive-${version}-source.tar.xz"
checksum=7aefd96608d72061970f2d73f275be5648ea8ae815af073016d3106acc0d584b checksum=3878aa0e1ed0301c053b0e2ee4e9ad999c441345f4882e79bdd1c8f4ce9e79b9
python_version=3 python_version=3
# Virtual package cares only about year part of version # Virtual package cares only about year part of version
provides="tex-${version%${version#????}}_1" provides="tex-${version%${version#????}}_1"
@ -207,6 +207,15 @@ EOF
#!/bin/sh #!/bin/sh
printf "already complete\\n" printf "already complete\\n"
EOF EOF
# himktables needs to be built on host
if [ -n "${CROSS_BUILD}" ]; then
cd "${wrksrc}/build/texk/web2c"
ctangle ../../../texk/web2c/hitexdir/hiformat.w
gcc -o himktables himktables.c
./himktables > hitables.c
patch -d "${wrksrc}" -Np1 -i ${FILESDIR}/remove-himktables.patch
fi
} }
post_install() { post_install() {
@ -251,7 +260,9 @@ texlive-XeTeX_package() {
depends="${sourcepkg}>=${version}_${revision}" depends="${sourcepkg}>=${version}_${revision}"
short_desc+=" - engine supporting modern typography" short_desc+=" - engine supporting modern typography"
pkg_install() { pkg_install() {
vmove usr/share/texmf-dist/scripts/texlive-extra/xe*.sh
vmove usr/bin/xetex vmove usr/bin/xetex
vmove usr/share/man/man1/xe*.1
ln -s xetex "${PKGDESTDIR}/usr/bin/xelatex" ln -s xetex "${PKGDESTDIR}/usr/bin/xelatex"
} }
} }
@ -279,14 +290,14 @@ texlive-LuaTeX_package() {
vmove "usr/bin/${i}" vmove "usr/bin/${i}"
done done
fi fi
for i in checkcites cllualatex cluttex diadia getmapdl l3build luahbtex \ for i in checkcites cllualatex cluttex diadia digestif getmapdl l3build luafindfont luahbtex \
luaotfload-tool luatools luatex lwarpmk m-tx \ luaotfload-tool luatex lwarpmk m-tx \
makeglossaries-lite mflua mflua-nowin musixflx musixtex pmxchords \ makeglossaries-lite mflua mflua-nowin musixflx musixtex pmxchords \
ptex2pdf texlua texluac xindex ; do ptex2pdf texlua texluac xindex ; do
vmove "usr/bin/${i}" vmove "usr/bin/${i}"
done done
for i in checkcites cluttex diadia getmap glossaries/makeglossaries-lite.lua \ for i in checkcites cluttex diadia digestif getmap glossaries/makeglossaries-lite.lua \
l3build luaotfload lwarp m-tx musixtex pmxchords ptex2pdf xindex ; do l3build luafindfont luaotfload lwarp m-tx musixtex pmxchords ptex2pdf xindex ; do
vmove "usr/share/texmf-dist/scripts/${i}" vmove "usr/share/texmf-dist/scripts/${i}"
done done
for i in luatex texlua texluac ; do for i in luatex texlua texluac ; do
@ -356,7 +367,7 @@ texlive-BibTeX_package() {
for i in bbl2bib ctanbib ; do for i in bbl2bib ctanbib ; do
vmove "usr/bin/${i}" vmove "usr/bin/${i}"
done done
for i in bib2gls bibexport ; do for i in bib2gls bibcop bibexport ; do
vmove "usr/share/texmf-dist/scripts/${i}" vmove "usr/share/texmf-dist/scripts/${i}"
done done
vmove usr/bin/bib* vmove usr/bin/bib*
@ -365,21 +376,9 @@ texlive-BibTeX_package() {
} }
texlive-ConTeXt_package() { texlive-ConTeXt_package() {
depends="${sourcepkg}>=${version}_${revision} perl ghostscript" build_style=meta
short_desc+=" - alternative general-purpose document processor" short_desc+=" (transitional package)"
pkg_install() { depends="texlive>=${version}_${revision}"
for i in context contextjit mptopdf mtxrun mtxrunjit texexec \
texmfstart dosepsbin epspdf epspdftk purifyeps repstopdf \
ps2eps tl-epsffit ; do
vmove "usr/bin/${i}"
done
for i in context dosepsbin epspdf epstopdf ps2eps purifyeps ; do
vmove "usr/share/texmf-dist/scripts/${i}"
done
for i in tl-epsffit ps2eps ; do
vmove "usr/share/man/man1/${i}.1"
done
}
} }
texlive-PythonTeX_package() { texlive-PythonTeX_package() {