--- libs/icu/icu-src/source/common/Makefile.in | 2 reautoconf | 2 texk/dviljk/dvi2xx.c | 11 texk/kpathsea/c-fopen.h | 6 texk/kpathsea/c-memstr.h | 3 texk/kpathsea/cnf-to-paths.awk | 2 texk/kpathsea/db.c | 13 - texk/kpathsea/progname.c | 4 texk/kpathsea/texmf.cnf | 140 +++++++----- texk/lcdf-typetools/lcdf-typetools-src/otftotfm/otftotfm.cc | 3 texk/ps2pk/pk2bm.c | 2 texk/texlive/linked_scripts/musixtex/musixtex.lua | 17 + texk/texlive/linked_scripts/texlive/fmtutil-sys.sh | 1 texk/texlive/linked_scripts/texlive/fmtutil.pl | 24 +- texk/texlive/linked_scripts/texlive/updmap-sys.sh | 1 texk/web2c/Makefile.in | 7 texk/web2c/uptexdir/tests/gkhugeng.err | 8 texk/web2c/window/regis.c | 8 texk/web2c/window/x11-Xlib.c | 8 texk/web2c/window/x11-Xt.c | 4 texk/xdvik/psgs.c | 22 + texk/xdvik/xdvi-sh.in | 19 + 22 files changed, 224 insertions(+), 83 deletions(-) --- reautoconf +++ reautoconf 2022-04-05 13:46:43.207504121 +0000 @@ -94,7 +94,7 @@ echo "$0: TL_AUTOHEADER, T # Give users a chance to quit here # and set TL_AUTOCONF, TL_AUTOHEADER, TL_AUTOMAKE, and/or TL_ACLOCAL -$do_cmd sleep 4 +# $do_cmd sleep 4 $do_say "$0: starting at `date`." AUTOCONF=$TL_AUTOCONF --- libs/icu/icu-src/source/common/Makefile.in +++ libs/icu/icu-src/source/common/Makefile.in 2021-04-07 10:14:44.202880715 +0000 @@ -69,7 +69,7 @@ DEFS += -DU_COMMON_IMPLEMENTATION LDFLAGS += $(LDFLAGSICUUC) # for plugin configuration -CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"$(libdir)/icu\" " +CPPFLAGS += "-DDEFAULT_ICU_PLUGINS=\"/usr/lib/icu\" " # for icu data location ifeq ($(PKGDATA_MODE),common) --- texk/dviljk/dvi2xx.c +++ texk/dviljk/dvi2xx.c 2021-04-07 10:14:44.206880772 +0000 @@ -168,7 +168,18 @@ main(int argc, char *argv[]) setbuf(ERR_STREAM, NULL); #ifdef KPATHSEA +# if defined(LJ) kpse_set_program_name(argv[0], "dvilj"); +# endif +# if defined(LJ2P) + kpse_set_program_name(argv[0], "dvilj2p"); +# endif +# if defined(LJ4) && !defined(LJ4L) + kpse_set_program_name(argv[0], "dvilj4"); +# endif +# if defined(LJ4) && defined(LJ4L) + kpse_set_program_name(argv[0], "dvilj4l"); +# endif kpse_set_program_enabled (kpse_pk_format, MAKE_TEX_PK_BY_DEFAULT, kpse_src_compile); G_progname = kpse_program_name; #else --- texk/kpathsea/c-fopen.h +++ texk/kpathsea/c-fopen.h 2021-04-07 10:14:44.206880772 +0000 @@ -38,17 +38,17 @@ /* How to open a binary file for reading: */ #ifndef FOPEN_RBIN_MODE -#define FOPEN_RBIN_MODE "rb" +#define FOPEN_RBIN_MODE "r" #endif /* not FOPEN_RBIN_MODE */ /* How to open a binary file for writing: */ #ifndef FOPEN_WBIN_MODE -#define FOPEN_WBIN_MODE "wb" +#define FOPEN_WBIN_MODE "w" #endif /* not FOPEN_WBIN_MODE */ /* How to open a binary file for appending: */ #ifndef FOPEN_ABIN_MODE -#define FOPEN_ABIN_MODE "ab" +#define FOPEN_ABIN_MODE "a" #endif /* not FOPEN_ABIN_MODE */ /* How to switch an already open file handle to binary mode. --- texk/kpathsea/c-memstr.h +++ texk/kpathsea/c-memstr.h 2021-04-07 10:14:44.206880772 +0000 @@ -37,6 +37,7 @@ /* For ancient systems that lack the system V/ANSI version of the string functions we express them in terms of the BSD versions. */ +#ifndef __GNUC__ #if !defined(HAVE_STRCHR) && !defined(strchr) #define strchr index #endif @@ -60,4 +61,6 @@ extern char *strstr (); #endif #endif +#endif /* not __GNUC__ */ + #endif /* not KPATHSEA_C_MEMSTR_H */ --- texk/kpathsea/cnf-to-paths.awk +++ texk/kpathsea/cnf-to-paths.awk 2021-04-07 10:14:44.206880772 +0000 @@ -40,7 +40,7 @@ val = $0; sub(/^.*=[ \t]*/, "", val); sub(/[ \t]*$/, "", val); - #print "got ident", ident, "and val", val >"/dev/stderr"; +print "got ident", ident, "and val", val >"/dev/stderr"; if (val ~ /\$SELFAUTO/) { # Replace all semicolons with colons in the SELFAUTO paths we're keeping. --- texk/kpathsea/db.c +++ texk/kpathsea/db.c 2021-04-07 10:14:44.206880772 +0000 @@ -93,7 +93,8 @@ db_build (kpathsea kpse, hash_table_type unsigned len = strlen (db_filename) - sizeof (DB_NAME) + 1; /* Keep the /. */ string top_dir = (string)xmalloc (len + 1); string cur_dir = NULL; /* First thing in ls-R might be a filename. */ - FILE *db_file = fopen (db_filename, FOPEN_R_MODE); + struct stat statdb; + FILE *db_file; #if defined(MONOCASE_FILENAMES) string pp; #endif /* MONOCASE_FILENAMES */ @@ -101,7 +102,15 @@ db_build (kpathsea kpse, hash_table_type strncpy (top_dir, db_filename, len); top_dir[len] = 0; - if (db_file) { + if ((getenv("MKTEXLSR") == NULL) && + (stat(db_filename, &statdb) < 0 || statdb.st_size == 0)) { + char buf[PATH_MAX+1]; + snprintf(buf, PATH_MAX, "mktexlsr %s", top_dir); + xputenv("MKTEXLSR", "true"); /* fork loop detection */ + system (buf); + } + + if ((db_file = fopen (db_filename, FOPEN_R_MODE))) { while ((line = read_line (db_file)) != NULL) { len = strlen (line); --- texk/kpathsea/progname.c +++ texk/kpathsea/progname.c 2021-04-07 10:14:44.206880772 +0000 @@ -662,9 +662,9 @@ kpathsea_set_program_name (kpathsea kpse /* SELFAUTODIR is actually the parent of the invocation directory, and SELFAUTOPARENT the grandparent. This is how teTeX did it. */ kpathsea_xputenv (kpse, "SELFAUTOLOC", fix_selfdir (sdir)); - sdir_parent = xdirname (sdir); + sdir_parent = xdirname ("/usr/share"); kpathsea_xputenv (kpse, "SELFAUTODIR", fix_selfdir (sdir_parent)); - sdir_grandparent = xdirname (sdir_parent); + sdir_grandparent = xdirname ("/usr/share/texmf"); kpathsea_xputenv (kpse, "SELFAUTOPARENT", fix_selfdir (sdir_grandparent)); sdir_greatgrandparent = xdirname (sdir_grandparent); kpathsea_xputenv (kpse, "SELFAUTOGRANDPARENT", fix_selfdir (sdir_greatgrandparent)); --- texk/kpathsea/texmf.cnf +++ texk/kpathsea/texmf.cnf 2022-04-05 13:47:33.158601044 +0000 @@ -62,20 +62,20 @@ TEXMFROOT = $SELFAUTOPARENT % The main tree of distributed packages and programs: -TEXMFDIST = $TEXMFROOT/texmf-dist +TEXMFDIST = /usr/share/texmf % We used to have a separate /texmf tree with some core programs and files. % Keep the variable name. TEXMFMAIN = $TEXMFDIST % Local additions to the distribution trees. -TEXMFLOCAL = $SELFAUTOGRANDPARENT/texmf-local +TEXMFLOCAL = /usr/local/share/texmf % TEXMFSYSVAR, where *-sys store cached runtime data. -TEXMFSYSVAR = $TEXMFROOT/texmf-var +TEXMFSYSVAR = /var/lib/texmf % TEXMFSYSCONFIG, where *-sys store configuration data. -TEXMFSYSCONFIG = $TEXMFROOT/texmf-config +TEXMFSYSCONFIG = /etc/texmf % Per-user texmf tree(s) -- organized per the TDS, as usual. To define % more than one per-user tree, set this to a list of directories in @@ -84,10 +84,10 @@ TEXMFSYSCONFIG = $TEXMFROOT/texmf-config TEXMFHOME = ~/texmf % TEXMFVAR, where texconfig/updmap/fmtutil store cached runtime data. -TEXMFVAR = ~/.texlive2023/texmf-var +TEXMFVAR = ${TEXMFSYSVAR} % TEXMFCONFIG, where texconfig/updmap/fmtutil store configuration data. -TEXMFCONFIG = ~/.texlive2023/texmf-config +TEXMFCONFIG = ${TEXMFSYSCONFIG} % This is the value manipulated by tlmgr's auxtrees subcommand in the % root texmf.cnf. Kpathsea warns about a literally empty string for a @@ -108,7 +108,7 @@ TEXMFAUXTREES = {} % The odd-looking $TEXMFAUXTREES$TEXMF... construct is so that if no auxtree is % ever defined (the 99% common case), no extra elements will be added to % the search paths. tlmgr takes care to end any value with a trailing comma. -TEXMF = {$TEXMFAUXTREES$TEXMFCONFIG,$TEXMFVAR,$TEXMFHOME,!!$TEXMFLOCAL,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFDIST} +TEXMF = {$TEXMFHOME,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFLOCAL,!!$TEXMFDIST} % Where to look for, and where mktexlsr creates, ls-R files. By default, % this is all and only the !! elements of TEXMF, so that mktexlsr does not @@ -116,24 +116,23 @@ TEXMF = {$TEXMFAUXTREES$TEXMFCONFIG,$TEX % present, it will be used, and the disk will not (usually) be searched, % regardless of !!. Although in principle a directory listed here need % not contain an ls-R file, in practice they all should. -TEXMFDBS = {!!$TEXMFLOCAL,!!$TEXMFSYSCONFIG,!!$TEXMFSYSVAR,!!$TEXMFDIST} +TEXMFDBS = $TEXMF;$VARTEXFONTS;$HOMECACHE % The system trees. These are the trees that are shared by all users. % If a tree appears in this list, the mktex* scripts will use % VARTEXFONTS for generated files, if the original tree isn't writable; % otherwise the current working directory is used. -SYSTEXMF = $TEXMFSYSVAR;$TEXMFLOCAL;$TEXMFDIST +SYSTEXMF = $TEXMFSYSCONFIG;$TEXMFSYSVAR;$TEXMFLOCAL;$TEXMFDIST % First writable tree here is used by Lua(La)TeX for the font cache. % LuaLaTeX uses the value here, while ConTeXt uses the same variable but % from texmfcnf.lua; therefore the two values should be kept in sync. % (As should everything else in texmf.cnf <-> texmfcnf.lua.) -TEXMFCACHE = $TEXMFSYSVAR;$TEXMFVAR +TEXMFCACHE = $TEXMFSYSVAR;$TEXMFVAR;$HOMECACHE % Where generated fonts may be written. This tree is used when the sources % were found in a system tree and either that tree wasn't writable, or the % varfonts feature was enabled in MT_FEATURES in mktex.cnf. -VARTEXFONTS = $TEXMFVAR/fonts % On some systems, there will be a system tree which contains all the font % files that may be created as well as the formats. For example @@ -144,7 +143,8 @@ VARTEXFONTS = $TEXMFVAR/fonts % % Remove $VARTEXFONTS from TEXMFDBS if the VARTEXFONTS directory is below % one of the TEXMF directories (avoids overlapping ls-R files). - +VARTEXFONTS = /var/cache/texmf/fonts +HOMECACHE = ${HOME}/.cache/texmf/fonts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Usually you will not need to edit any of the following variables. @@ -152,7 +152,7 @@ VARTEXFONTS = $TEXMFVAR/fonts % WEB2C is for Web2C specific files. The current directory may not be % a good place to look for them. -WEB2C = $TEXMF/web2c +WEB2C = ${TEXMFHOME}/web2c;${TEXMFSYSCONFIG}/web2c;${TEXMFSYSVAR}/web2c;$TEXMF/web2c % This variable exists only to be redefined; it is used in nearly all % search paths. If a document has source files not only in the current @@ -304,7 +304,7 @@ TEXINPUTS.frpdftex = $TEXMFDOTDIR;$ TEXINPUTS = $TEXMFDOTDIR;$TEXMF/tex/{$progname,generic,latex,}// % Metafont, MetaPost inputs. -MFINPUTS = $TEXMFDOTDIR;$TEXMF/metafont//;{$TEXMF/fonts,$VARTEXFONTS}/source// +MFINPUTS = $TEXMFDOTDIR;$TEXMF/metafont//;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/source// MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost// % Dump files (fmt/base/mem) for vir{tex,mf,mp} to read. @@ -314,31 +314,31 @@ MPINPUTS = $TEXMFDOTDIR;$TEXMF/metapost/ % We repeat the same definition three times because of the way fmtutil % is implemented; if we use ${TEXFORMATS}, the mpost/mf/etc. formats % will not be found. -TEXFORMATS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} -MFBASES = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} -MPMEMS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,} +TEXFORMATS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}// +MFBASES = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}// +MPMEMS = $TEXMFDOTDIR;$TEXMF/web2c{/$engine,}// % % As of 2008, pool files don't exist any more (the strings are compiled % into the binaries), but just in case something expects to find these: -TEXPOOL = $TEXMFDOTDIR;$TEXMF/web2c +TEXPOOL = $TEXMFDOTDIR;$WEB2C MFPOOL = ${TEXPOOL} MPPOOL = ${TEXPOOL} % support the original xdvi. Must come before the generic settings. -PKFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s;$VARTEXFONTS/pk/{%m,modeless}// +PKFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s;{$HOMECACHE,$VARTEXFONTS}/pk/{%m,modeless}// VFFONTS.XDvi = $TEXMFDOTDIR;$TEXMF/%s PSHEADERS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,fonts/type1}// TEXPICTS.XDvi = $TEXMFDOTDIR;$TEXMF/%q{dvips,tex}// % Device-independent font metric files. VFFONTS = $TEXMFDOTDIR;$TEXMF/fonts/vf// -TFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/tfm// +TFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/tfm// % The $MAKETEX_MODE below means the drivers will not use a cx font when % the mode is ricoh. If no mode is explicitly specified, kpse_prog_init % sets MAKETEX_MODE to /, so all subdirectories are searched. See the manual. % The modeless part guarantees that bitmaps for PostScript fonts are found. -PKFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// +PKFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/pk/{$MAKETEX_MODE,modeless}// % Similarly for the GF format, which only remains in existence because % Metafont outputs it (and MF isn't going to change). @@ -446,8 +446,8 @@ MPSUPPORT = $TEXMFDOTDIR;$TEXMF/metapost % For xdvi to find mime.types and .mailcap, if they do not exist in % ~. These are single directories, not paths. % (But the default mime.types, at least, may well suffice.) -MIMELIBDIR = $TEXMFROOT/etc -MAILCAPLIBDIR = $TEXMFROOT/etc +MIMELIBDIR = /etc +MAILCAPLIBDIR = /etc % Default settings for the fontconfig library as used by the Windows % versions of xetex/xdvipdfmx. Not used by xetex on Unixish systems. @@ -471,10 +471,10 @@ WEBINPUTS = $TEXMFDOTDIR;$TEXMF/web// CWEBINPUTS = $TEXMFDOTDIR;$TEXMF/cweb// % Omega-related fonts and other files. -OFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ofm,tfm}// -OPLFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/opl// -OVFFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/{ovf,vf}// -OVPFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$VARTEXFONTS}/ovp// +OFMFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/{ofm,tfm}// +OPLFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/opl// +OVFFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/{ovf,vf}// +OVPFONTS = $TEXMFDOTDIR;{$TEXMF/fonts,$HOMECACHE,$VARTEXFONTS}/ovp// OTPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/otp// OCPINPUTS = $TEXMFDOTDIR;$TEXMF/omega/ocp// @@ -570,32 +570,38 @@ RUBYINPUTS = $TEXMFDOTDIR;$TEXMF/scrip % explicitly list every directory. Arguably more understandable anyway. % TEXMFCNF = {\ -$SELFAUTOLOC,\ -$SELFAUTOLOC/share/texmf-local/web2c,\ -$SELFAUTOLOC/share/texmf-dist/web2c,\ -$SELFAUTOLOC/share/texmf/web2c,\ -$SELFAUTOLOC/texmf-local/web2c,\ -$SELFAUTOLOC/texmf-dist/web2c,\ -$SELFAUTOLOC/texmf/web2c,\ -\ -$SELFAUTODIR,\ -$SELFAUTODIR/share/texmf-local/web2c,\ -$SELFAUTODIR/share/texmf-dist/web2c,\ -$SELFAUTODIR/share/texmf/web2c,\ -$SELFAUTODIR/texmf-local/web2c,\ -$SELFAUTODIR/texmf-dist/web2c,\ -$SELFAUTODIR/texmf/web2c,\ -\ -$SELFAUTOGRANDPARENT/texmf-local/web2c,\ -$SELFAUTOPARENT,\ -\ -$SELFAUTOPARENT/share/texmf-local/web2c,\ -$SELFAUTOPARENT/share/texmf-dist/web2c,\ -$SELFAUTOPARENT/share/texmf/web2c,\ -$SELFAUTOPARENT/texmf-local/web2c,\ -$SELFAUTOPARENT/texmf-dist/web2c,\ -$SELFAUTOPARENT/texmf/web2c\ +/etc/texmf,\ +/etc/texmf/web2c,\ +/var/lib/texmf/web2c,\ +/usr/share/texmf/web2c\ } +%TEXMFCNF = {\ +%$SELFAUTOLOC,\ +%$SELFAUTOLOC/share/texmf-local/web2c,\ +%$SELFAUTOLOC/share/texmf-dist/web2c,\ +%$SELFAUTOLOC/share/texmf/web2c,\ +%$SELFAUTOLOC/texmf-local/web2c,\ +%$SELFAUTOLOC/texmf-dist/web2c,\ +%$SELFAUTOLOC/texmf/web2c,\ +%\ +%$SELFAUTODIR,\ +%$SELFAUTODIR/share/texmf-local/web2c,\ +%$SELFAUTODIR/share/texmf-dist/web2c,\ +%$SELFAUTODIR/share/texmf/web2c,\ +%$SELFAUTODIR/texmf-local/web2c,\ +%$SELFAUTODIR/texmf-dist/web2c,\ +%$SELFAUTODIR/texmf/web2c,\ +%\ +%$SELFAUTOGRANDPARENT/texmf-local/web2c,\ +%$SELFAUTOPARENT,\ +%\ +%$SELFAUTOPARENT/share/texmf-local/web2c,\ +%$SELFAUTOPARENT/share/texmf-dist/web2c,\ +%$SELFAUTOPARENT/share/texmf/web2c,\ +%$SELFAUTOPARENT/texmf-local/web2c,\ +%$SELFAUTOPARENT/texmf-dist/web2c,\ +%$SELFAUTOPARENT/texmf/web2c\ +%} % % For reference, here is the old brace-using definition: %TEXMFCNF = {$SELFAUTOLOC,$SELFAUTODIR,$SELFAUTOPARENT}{,{/share,}/texmf{-local,}/web2c} @@ -921,3 +927,33 @@ guess_input_kanji_encoding = 1 % command_line_encoding = none % in a texmf.cnf prefered, for example $TEXMFLOCAL/web2c/texmf.cnf. command_line_encoding = utf-8 + +% These are xmltex specific +main_memory.xmltex = 1500000 +param_size.xmltex = 1500 +stack_size.xmltex = 1500 +hash_extra.xmltex = 50000 +string_vacancies.xmltex = 45000 +pool_free.xmltex = 47500 +nest_size.xmltex = 500 +save_size.xmltex = 10000 +pool_size.xmltex = 500000 +max_strings.xmltex = 55000 + +% These are pdfxmltex specific +main_memory.pdfxmltex = 2500000 +param_size.pdfxmltex = 1500 +stack_size.pdfxmltex = 1500 +hash_extra.pdfxmltex = 50000 +string_vacancies.pdfxmltex = 45000 +pool_free.pdfxmltex = 47500 +nest_size.pdfxmltex = 500 +save_size.pdfxmltex = 10000 +pool_size.pdfxmltex = 500000 +max_strings.pdfxmltex = 55000 + +% These are jadetex specific +main_memory.jadetex = 499999 +hash_extra.jadetex = 25000 +pool_size.jadetex = 500000 +save_size.jadetex = 15000 --- texk/lcdf-typetools/lcdf-typetools-src/otftotfm/otftotfm.cc +++ texk/lcdf-typetools/lcdf-typetools-src/otftotfm/otftotfm.cc 2021-04-07 10:14:44.206880772 +0000 @@ -67,6 +67,9 @@ # include #endif +#undef SHAREDIR +#define SHAREDIR "/usr/share/texmf/fonts/map/glyphlist" + using namespace Efont; #define VERSION_OPT 301 --- texk/ps2pk/pk2bm.c +++ texk/ps2pk/pk2bm.c 2021-04-07 10:23:07.138231549 +0000 @@ -103,7 +103,7 @@ invalid: } } - if (argc == 0) { + if (argc != 1) { msg ("pk2bm (ps2pk) version " PACKAGE_VERSION " (" TL_VERSION ")\n"); msg ("Usage: %s [-bh] {-c char|-o octchar} [-W width -H height] pkfile\n", myname); fatal("\nEmail bug reports to %s.\n", PACKAGE_BUGREPORT); --- texk/texlive/linked_scripts/musixtex/musixtex.lua +++ texk/texlive/linked_scripts/musixtex/musixtex.lua 2022-04-05 13:52:00.765759055 +0000 @@ -226,16 +226,27 @@ end local dvips = "dvips -e0" -- option -e0 suppresses dvips "feature" of adjusting location to align -- characters in words of text +local base=string.explode(arg[0], "/+") +base=string.explode(base[#base], ".+") +base=base[1] function defaults() xml2pmx = "xml2pmx" prepmx = "prepmx" pmx = "pmxab" autosp = "autosp" - tex = "etex" + if base == "pdfmusixtex" then + tex = "pdfetex" + dvips = "" + dvi = "" + ps2pdf = "" + else + tex = "etex" + dvips = "dvips -e0" + dvi = dvips + ps2pdf = "ps2pdf" + end musixflx = "musixflx" - dvi = dvips - ps2pdf = "ps2pdf" cleanup = true -- clean up intermediate and log files index = false latex = false --- texk/texlive/linked_scripts/texlive/fmtutil-sys.sh +++ texk/texlive/linked_scripts/texlive/fmtutil-sys.sh 2021-04-07 10:14:44.206880772 +0000 @@ -22,4 +22,5 @@ PATH="$mydir:$PATH"; export PATH # hack around a bug in zsh: test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"' +umask 022 exec fmtutil --sys ${1+"$@"} --- texk/texlive/linked_scripts/texlive/fmtutil.pl +++ texk/texlive/linked_scripts/texlive/fmtutil.pl 2022-04-05 13:53:52.711731787 +0000 @@ -10,16 +10,16 @@ # History: # Original shell script 2001 Thomas Esser, public domain -my $TEXMFROOT; +my $TEXMFDIST; BEGIN { $^W = 1; - $TEXMFROOT = `kpsewhich -var-value=TEXMFROOT`; + $TEXMFDIST = `kpsewhich -var-value=TEXMFDIST`; if ($?) { - die "$0: kpsewhich -var-value=TEXMFROOT failed, aborting early.\n"; + die "$0: kpsewhich -var-value=TEXMFDIST failed, aborting early.\n"; } - chomp($TEXMFROOT); - unshift(@INC, "$TEXMFROOT/tlpkg", "$TEXMFROOT/texmf-dist/scripts/texlive"); + chomp($TEXMFDIST); + unshift(@INC, "$TEXMFDIST/tlpkg", "$TEXMFDIST/scripts/texlive"); require "mktexlsr.pl"; TeX::Update->import(); } @@ -76,7 +76,7 @@ TeXLive::TLUtils::prepend_own_path(); # this function checks by itself whether it is running on windows or not reset_root_home(); -chomp(our $TEXMFDIST = `kpsewhich --var-value=TEXMFDIST`); +chomp(our $TEXMFROOT = `kpsewhich --var-value=TEXMFROOT`); chomp(our $TEXMFVAR = `kpsewhich -var-value=TEXMFVAR`); chomp(our $TEXMFSYSVAR = `kpsewhich -var-value=TEXMFSYSVAR`); chomp(our $TEXMFCONFIG = `kpsewhich -var-value=TEXMFCONFIG`); @@ -413,7 +413,14 @@ sub callback_build_formats { TeXLive::TLWinGoo::maybe_make_ro ($tmpdir); } } else { + my ($uid, $gid); $tmpdir = File::Temp::tempdir(CLEANUP => 1); + if ($> == 0 && ($uid=getpwnam("mktex")) && ($gid=getgrnam("mktex"))) { + my $cnt = chown $uid, $gid, $tmpdir; + die "could not create directory $tmpdir" if $cnt <= 0; + $cnt = chmod 0770, $tmpdir; + die "could not create directory $tmpdir" if $cnt <= 0; + } } } # set up destination directory @@ -726,6 +733,7 @@ sub rebuild_one_format { # check for existence of ini file before doing anything else if (system("kpsewhich -progname=$fmt -format=$kpsefmt $inifile >$nul 2>&1") != 0) { # we didn't find the ini file, skip + return $FMT_NOTAVAIL if (!$opts{'no-error-if-no-engine'}); print_deferred_warning("inifile $inifile for $fmt/$eng not found.\n"); # The original script just skipped it but in TeX Live we expect that # all activated formats are also buildable, thus return failure. @@ -785,11 +793,15 @@ sub rebuild_one_format { ",$opts{'no-error-if-no-engine'}," =~ m/,$eng,/) { return $FMT_NOTAVAIL; } else { + return $FMT_NOTAVAIL if (!$opts{'no-error-if-no-engine'}); print_deferred_error("not building $fmt due to missing engine: $eng\n"); return $FMT_FAILURE; } } + if ($ENV{batchmode} and $ENV{batchmode} eq "yes") { + $texargs="\\batchmode \\input $texargs" if $eng eq "tex" || $eng eq "ptex"; + } my $cmdline = "$eng -ini $tcxflag $recorderswitch $jobswitch " . "$prgswitch $texargs"; print_verbose("running \`$cmdline' ...\n"); --- texk/texlive/linked_scripts/texlive/updmap-sys.sh +++ texk/texlive/linked_scripts/texlive/updmap-sys.sh 2021-04-07 10:14:44.210880832 +0000 @@ -22,4 +22,5 @@ PATH="$mydir:$PATH"; export PATH # hack around a bug in zsh: test -n "${ZSH_VERSION+set}" && alias -g '${1+"$@"}'='"$@"' +umask 022 exec updmap --sys ${1+"$@"} --- texk/web2c/Makefile.in +++ texk/web2c/Makefile.in 2021-04-07 10:14:44.210880832 +0000 @@ -5597,7 +5597,7 @@ libmd5_a_SOURCES = libmd5/md5.c libmd5/m md5main_CPPFLAGS = -I$(srcdir)/libmd5 md5main_SOURCES = libmd5/md5main.c md5main_LDADD = libmd5.a -all: ff-config.h +all: ff-config.h w2c/config.h $(MAKE) $(AM_MAKEFLAGS) all-recursive .SUFFIXES: @@ -5644,6 +5644,11 @@ w2c/c-auto.h: w2c/stamp-h1 w2c/stamp-h1: $(srcdir)/c-auto.in $(top_builddir)/config.status @rm -f w2c/stamp-h1 cd $(top_builddir) && $(SHELL) ./config.status w2c/c-auto.h +.PHONY: w2c/config.h +w2c/config.h: + $(MKDIR_P) w2c + cp $(srcdir)/w2c/config.h $@ + $(srcdir)/c-auto.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) ($(am__cd) $(top_srcdir) && $(AUTOHEADER)) rm -f w2c/stamp-h1 --- texk/web2c/uptexdir/tests/gkhugeng.err +++ texk/web2c/uptexdir/tests/gkhugeng.err 2021-04-07 10:14:44.214880889 +0000 @@ -1,3 +1,11 @@ +warning: kpathsea: /etc/texmf/ls-R: No usable entries in ls-R. +warning: kpathsea: See the manual for how to generate ls-R. +warning: kpathsea: /var/lib/texmf/ls-R: No usable entries in ls-R. +warning: kpathsea: See the manual for how to generate ls-R. +warning: kpathsea: /usr/share/texmf/ls-R: No usable entries in ls-R. +warning: kpathsea: See the manual for how to generate ls-R. +warning: kpathsea: /var/cache/texmf/fonts/ls-R: No usable entries in ls-R. +warning: kpathsea: See the manual for how to generate ls-R. Input file is in YOKO-kumi kanji tfm format. The fifth byte of the input file exceeds 127! Sorry, but I can't go on; are you sure this is a TFM? --- texk/web2c/window/regis.c +++ texk/web2c/window/regis.c 2021-04-07 10:14:44.214880889 +0000 @@ -64,12 +64,14 @@ void mf_regis_blankrectangle (screencol screenrow top, screenrow bottom) { - printf( + const char *format = #ifdef WRITEWHITE - "%cPpP[%d,%d]W(I0)W(S1)V[%d,%d]V[%d,%d]V[%d,%d]V[%d,%d]W(S0)W(I3)%c\\", + "%cPpP[%d,%d]W(I0)W(S1)V[%d,%d]V[%d,%d]V[%d,%d]V[%d,%d]W(S0)W(I3)%c\\" #else - "%cPpP[%d,%d]W(I3)W(S1)V[%d,%d]V[%d,%d]V[%d,%d]V[%d,%d]W(S0)W(I0)%c\\", + "%cPpP[%d,%d]W(I3)W(S1)V[%d,%d]V[%d,%d]V[%d,%d]V[%d,%d]W(S0)W(I0)%c\\" #endif + ; + printf(format, ESCAPE,left,bottom,right,bottom,right,top,left,top, left,bottom,ESCAPE); } --- texk/web2c/window/x11-Xlib.c +++ texk/web2c/window/x11-Xlib.c 2021-04-07 10:14:44.214880889 +0000 @@ -73,6 +73,8 @@ static XWMHints wm_hints = { #define BORDER_WIDTH 1 /* Should get this from resource. */ #define DEFAULT_X_POSITION 0 #define DEFAULT_Y_POSITION 0 +#define DEFAULT_WIDTH 450 +#define DEFAULT_DEPTH 500 #include @@ -101,12 +103,12 @@ mf_x11_initscreen(void) sizehints.x = DEFAULT_X_POSITION; sizehints.y = DEFAULT_Y_POSITION; - sizehints.width = screenwidth; - sizehints.height = screendepth; + sizehints.width = DEFAULT_WIDTH; + sizehints.height = DEFAULT_DEPTH; sizehints.flags = PPosition|PSize; sprintf (default_geometry, "%ux%u+%u+%u", - (unsigned int) screenwidth, (unsigned int) screendepth, + (unsigned int) DEFAULT_WIDTH, (unsigned int) DEFAULT_DEPTH, DEFAULT_X_POSITION, DEFAULT_Y_POSITION); /* Look up the geometry for this window. (Section 10.2 Obtaining X --- texk/web2c/window/x11-Xt.c +++ texk/web2c/window/x11-Xt.c 2021-04-07 10:14:44.214880889 +0000 @@ -18,8 +18,8 @@ #define PLANE 0 -static unsigned int mf_defwidth = 0; -static unsigned int mf_defheight = 0; +static unsigned int mf_defwidth = 450;; +static unsigned int mf_defheight = 500; static Display *mf_display; static Window mf_window; --- texk/xdvik/psgs.c +++ texk/xdvik/psgs.c 2021-04-07 10:14:44.214880889 +0000 @@ -34,6 +34,8 @@ OTHER DEALINGS IN THE SOFTWARE. #include /* for timeval */ #include +#include +#include /* Condition for retrying a write */ #include @@ -619,6 +621,26 @@ initGS(void) perror("[xdvik] pipe"); return False; } + + if (GS_pid > 0) { /* Check if we've a running ghostscript */ + int status, n = 0; + errno = 0; +retry: + switch (waitpid(GS_pid, &status, WNOHANG)) { + case -1: + if (errno == EINTR) + goto retry; + return False; + case 0: + break; + default: + if (WIFEXITED(status) && WEXITSTATUS(status)) + return False; + if (WIFSIGNALED(status)) + return False; + break; /* Not reached */ + } + } fflush(stderr); /* to avoid double flushing */ GS_pid = vfork(); if (GS_pid == 0) { /* child */ --- texk/xdvik/xdvi-sh.in +++ texk/xdvik/xdvi-sh.in 2021-04-07 10:14:44.214880889 +0000 @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/bash # This is the xdvi wrapper script for teTeX, version 0.2. # Copyright Thomas Esser, 1998. Permission to distribute under the terms @@ -50,4 +50,19 @@ if test -n "$xdviappfile"; then XFILESEARCHPATH="$xdviapppath:${XFILESEARCHPATH-%D}"; export XFILESEARCHPATH fi -exec @final_exec_name@ $NAMEOPT ${1+"$@"} +uncompress= +filename="${1+"$@"}" +case "${filename}" in + *.gz) uncompress="gzip -d -c $filename" ;; + *.bz2) uncompress="bzip2 -d -c $filename" ;; +esac +if test -n "$uncompress" -a -r "$filename" ; then + filename="${filename##*/}" + tmpfile="`mktemp ${TMPDIR-/tmp}/${filename%.*}.XXXXXX`" || exit 1 + trap 'rc=$?; rm -f $tmpfile; exit $rc' 0 1 2 3 6 13 15 + $uncompress > $tmpfile + exec -a xdvi @final_exec_name@ $NAMEOPT $tmpfile +else + exec -a xdvi @final_exec_name@ $NAMEOPT ${1+"$@"} +fi +