diff options
author | Karl Berry <karl@freefriends.org> | 2023-02-27 18:45:24 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2023-02-27 18:45:24 +0000 |
commit | 03455e0c2cf3f72d34026071f889510ed47ff98c (patch) | |
tree | b136bfafb0785e02534006dcdf2ac2147431c8dd /Build/source/texk | |
parent | 715a7beb52e172f6cb2084f6672935a858b3f4f1 (diff) |
linked_scripts updates for context and windows; other syncs,doc
git-svn-id: svn://tug.org/texlive/trunk@66220 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk')
-rw-r--r-- | Build/source/texk/tests/TeXLive/TLConfig.pm | 12 | ||||
-rw-r--r-- | Build/source/texk/tests/TeXLive/TLUtils.pm | 102 | ||||
-rw-r--r-- | Build/source/texk/texlive/linked_scripts/Makefile.am | 53 | ||||
-rw-r--r-- | Build/source/texk/texlive/linked_scripts/Makefile.in | 31 | ||||
-rw-r--r-- | Build/source/texk/texlive/linked_scripts/scripts.lst | 7 | ||||
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl | 82 | ||||
-rw-r--r-- | Build/source/texk/texlive/tl_support/fmtutil.cnf | 11 |
7 files changed, 117 insertions, 181 deletions
diff --git a/Build/source/texk/tests/TeXLive/TLConfig.pm b/Build/source/texk/tests/TeXLive/TLConfig.pm index 92d32f5638a..64a13f30333 100644 --- a/Build/source/texk/tests/TeXLive/TLConfig.pm +++ b/Build/source/texk/tests/TeXLive/TLConfig.pm @@ -1,12 +1,12 @@ # TeXLive::TLConfig.pm - module exporting configuration values -# Copyright 2007-2023 Norbert Preining +# Copyright 2007-2022 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. use strict; use warnings; package TeXLive::TLConfig; -my $svnrev = '$Revision: 65950 $'; +my $svnrev = '$Revision: 63068 $'; my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown"; sub module_revision { return $_modulerevision; } @@ -61,7 +61,7 @@ BEGIN { # the year of our release, will be used in the location of the # network packages, and in menu names, and other places. -our $ReleaseYear = 2023; +our $ReleaseYear = 2022; # users can upgrade from this year to the current year; might be the # same as the release year, or any number of releases earlier. @@ -118,8 +118,8 @@ our $RelocPrefix = "RELOC"; our @CriticalPackagesList = qw/texlive.infra/; our $CriticalPackagesRegexp = '^(texlive\.infra)'; if ($^O =~ /^MSWin/i) { - push (@CriticalPackagesList, "tlperl.windows"); - $CriticalPackagesRegexp = '^(texlive\.infra|tlperl\.windows$)'; + push (@CriticalPackagesList, "tlperl.win32"); + $CriticalPackagesRegexp = '^(texlive\.infra|tlperl\.win32$)'; } @@ -366,7 +366,7 @@ C<systems/texlive/tlnet/>. =item C<@TeXLive::TLConfig::CriticalPackagesRegexp> A list of all those packages which we do not update regularly since they -are too central, currently texlive.infra and (for Windows) tlperl.windows. +are too central, currently texlive.infra and (for Windows) tlperl.win32. =item C<@TeXLive::TLConfig::InstallExtraRequiredPackages> diff --git a/Build/source/texk/tests/TeXLive/TLUtils.pm b/Build/source/texk/tests/TeXLive/TLUtils.pm index 7b7bb8cc760..12130936c64 100644 --- a/Build/source/texk/tests/TeXLive/TLUtils.pm +++ b/Build/source/texk/tests/TeXLive/TLUtils.pm @@ -1,5 +1,5 @@ # TeXLive::TLUtils.pm - the inevitable utilities for TeX Live. -# Copyright 2007-2023 Norbert Preining, Reinhard Kotucha +# Copyright 2007-2022 Norbert Preining, Reinhard Kotucha # This file is licensed under the GNU General Public License version 2 # or any later version. @@ -7,7 +7,7 @@ use strict; use warnings; package TeXLive::TLUtils; -my $svnrev = '$Revision: 65994 $'; +my $svnrev = '$Revision: 64503 $'; my $_modulerevision = ($svnrev =~ m/: ([0-9]+) /) ? $1 : "unknown"; sub module_revision { return $_modulerevision; } @@ -26,7 +26,7 @@ C<TeXLive::TLUtils> - TeX Live infrastructure miscellany TeXLive::TLUtils::platform(); TeXLive::TLUtils::platform_name($canonical_host); TeXLive::TLUtils::platform_desc($platform); - TeXLive::TLUtils::wndws(); + TeXLive::TLUtils::win32(); TeXLive::TLUtils::unix(); =head2 System tools @@ -264,7 +264,7 @@ BEGIN { @EXPORT = qw(setup_programs download_file process_logging_options tldie tlwarn info log debug ddebug dddebug debug debug_hash_str debug_hash - wndws xchdir xsystem run_cmd system_pipe sort_archs); + win32 xchdir xsystem run_cmd system_pipe sort_archs); } use Cwd; @@ -284,7 +284,7 @@ our $SshURIRegex = '^((ssh|scp)://([^@]*)@([^/]*)/|([^@]*)@([^:]*):).*$'; =item C<platform> If C<$^O =~ /MSWin/i> is true we know that we're on -Windows and we set the global variable C<$::_platform_> to C<windows>. +Windows and we set the global variable C<$::_platform_> to C<win32>. Otherwise we call C<platform_name> with the output of C<config.guess> as argument. @@ -296,16 +296,13 @@ understands the C<$(...)> construct. This means that on old-enough systems, such as Solaris, we have to look for a shell. We use the value of the C<CONFIG_SHELL> environment variable if it is set, else C</bin/ksh> if it exists, else C</bin/bash> if it exists, else give up. -Happily, C<config.guess> later reverted this change, but we keep our -shell-finding code anyway to defend against future mistakes of the same ilk. =cut sub platform { - if (! defined $::_platform_) { + unless (defined $::_platform_) { if ($^O =~ /^MSWin/i) { - print STDERR "\$^O is $^O\n"; - $::_platform_ = "windows"; + $::_platform_ = "win32"; } else { my $config_guess = "$::installerdir/tlpkg/installer/config.guess"; @@ -530,8 +527,7 @@ sub platform_desc { 'sparc-linux' => 'GNU/Linux on Sparc', 'sparc-solaris' => 'Solaris on Sparc', 'universal-darwin' => 'MacOSX current (10.14-) on ARM/x86_64', - 'win32' => 'Windows (32-bit)', - 'windows' => 'Windows (64-bit)', + 'win32' => 'Windows', 'x86_64-cygwin' => 'Cygwin on x86_64', 'x86_64-darwinlegacy' => 'MacOSX legacy (10.6-) on x86_64', 'x86_64-dragonfly' => 'DragonFlyBSD on x86_64', @@ -554,21 +550,21 @@ sub platform_desc { } -=item C<wndws> +=item C<win32> Return C<1> if platform is Windows and C<0> otherwise. The test is currently based on the value of Perl's C<$^O> variable. =cut -sub wndws { +sub win32 { if ($^O =~ /^MSWin/i) { return 1; } else { return 0; } # the following needs config.guess, which is quite bad ... - # return (&platform eq "windows")? 1:0; + # return (&platform eq "win32")? 1:0; } @@ -579,7 +575,7 @@ Return C<1> if platform is UNIX and C<0> otherwise. =cut sub unix { - return (&platform eq "windows")? 0:1; + return (&platform eq "win32")? 0:1; } @@ -603,7 +599,7 @@ sub getenv { my $envvar=shift; my $var=$ENV{"$envvar"}; return 0 unless (defined $var); - if (&wndws) { + if (&win32) { $var=~s!\\!/!g; # change \ -> / (required by Perl) } return "$var"; @@ -625,7 +621,7 @@ sub which { my @PATH; my $PATH = getenv('PATH'); - if (&wndws) { + if (&win32) { my @PATHEXT = split (';', getenv('PATHEXT')); push (@PATHEXT, ''); # in case argument contains an extension @PATH = split (';', $PATH); @@ -792,7 +788,7 @@ sub system_pipe { my ($prog, $infile, $outfile, $removeIn, @extraargs) = @_; my $progQuote = quotify_path_with_spaces($prog); - if (wndws()) { + if (win32()) { $infile =~ s!/!\\!g; $outfile =~ s!/!\\!g; } @@ -825,7 +821,7 @@ computing the disk space. sub diskfree { my $td = shift; my ($output, $retval); - if (wndws()) { + if (win32()) { # the powershell one-liner only works from win8 on. my @winver = Win32::GetOSVersion(); if ($winver[1]<=6 && $winver[2]<=1) { @@ -908,7 +904,7 @@ my $user_home_dir; sub get_user_home { return $user_home_dir if ($user_home_dir); - $user_home_dir = getenv (wndws() ? 'USERPROFILE' : 'HOME') || '~'; + $user_home_dir = getenv (win32() ? 'USERPROFILE' : 'HOME') || '~'; return $user_home_dir; } @@ -943,7 +939,7 @@ Return both C<dirname> and C<basename>. Example: sub dirname_and_basename { my $path=shift; my ($share, $base) = ("", ""); - if (wndws()) { + if (win32) { $path=~s!\\!/!g; } # do not try to make sense of paths ending with /.. @@ -952,7 +948,7 @@ sub dirname_and_basename { # eliminate `/.' path components while ($path =~ s!/\./!/!) {}; # UNC path? => first split in $share = //xxx/yy and $path = /zzzz - if (wndws() and $path =~ m!^(//[^/]+/[^/]+)(.*)$!) { + if (win32() and $path =~ m!^(//[^/]+/[^/]+)(.*)$!) { ($share, $path) = ($1, $2); if ($path =~ m!^/?$!) { $path = $share; @@ -1010,7 +1006,7 @@ sub basename { sub tl_abs_path { my $path = shift; - if (wndws()) { + if (win32) { $path=~s!\\!/!g; } if (-e $path) { @@ -1020,13 +1016,13 @@ sub tl_abs_path { } else{ # collapse /./ components $path =~ s!/\./!/!g; - # no support for .. path components or for windows long-path syntax + # no support for .. path components or for win32 long-path syntax # (//?/ path prefix) die "Unsupported path syntax" if $path =~ m!/\.\./! || $path =~ m!/\.\.$! || $path =~ m!^\.\.!; - die "Unsupported path syntax" if wndws() && $path =~ m!^//\?/!; + die "Unsupported path syntax" if win32() && $path =~ m!^//\?/!; if ($path !~ m!^(.:)?/!) { # relative path - if (wndws() && $path =~ /^.:/) { # drive letter + if (win32() && $path =~ /^.:/) { # drive letter my $dcwd; # starts with drive letter: current dir on drive $dcwd = Cwd::getdcwd ($1); @@ -1060,7 +1056,7 @@ sub dir_slash { sub dir_creatable { my $path=shift; #print STDERR "testing $path\n"; - $path =~ s!\\!/!g if wndws; + $path =~ s!\\!/!g if win32; return 0 unless -d $path; $path .= '/' unless $path =~ m!/$!; #print STDERR "testing $path\n"; @@ -1102,7 +1098,7 @@ a fileserver. sub dir_writable { my ($path) = @_; return 0 unless -d $path; - $path =~ s!\\!/!g if wndws; + $path =~ s!\\!/!g if win32; $path .= '/' unless $path =~ m!/$!; my $i = 0; my $f; @@ -1146,9 +1142,9 @@ sub mkdirhier { $ret = 1; } else { my $subdir = ""; - # windows is special as usual: we need to separate //servername/ part + # win32 is special as usual: we need to separate //servername/ part # from the UNC path, since (! -d //servername/) tests true - $subdir = $& if ( wndws() && ($tree =~ s!^//[^/]+/!!) ); + $subdir = $& if ( win32() && ($tree =~ s!^//[^/]+/!!) ); my @dirs = split (/[\/\\]/, $tree); for my $dir (@dirs) { @@ -1621,13 +1617,13 @@ sub removed_dirs { # what should we do with not existing entries???? next if (! -r "$f"); my $abs_f = Cwd::abs_path ($f); - # the following is necessary because on windows, + # the following is necessary because on win32, # abs_path("tl-portable") # returns # c:\tl test\... # and not forward slashes, while, if there is already a forward / # in the path, also the rest is done with forward slashes. - $abs_f =~ s!\\!/!g if wndws(); + $abs_f =~ s!\\!/!g if win32(); if (!$abs_f) { warn ("oops, no abs_path($f) from " . `pwd`); next; @@ -1887,7 +1883,7 @@ sub do_postaction { sub _do_postaction_fileassoc { my ($how, $mode, $tlpobj, $pa) = @_; - return 1 unless wndws(); + return 1 unless win32(); my ($errors, %keyval) = parse_into_keywords($pa, qw/extension filetype/); @@ -1925,7 +1921,7 @@ sub _do_postaction_fileassoc { sub _do_postaction_filetype { my ($how, $tlpobj, $pa) = @_; - return 1 unless wndws(); + return 1 unless win32(); my ($errors, %keyval) = parse_into_keywords($pa, qw/name cmd/); @@ -1970,7 +1966,7 @@ sub _do_postaction_filetype { # associated program shows up in `open with' menu sub _do_postaction_progid { my ($how, $tlpobj, $pa) = @_; - return 1 unless wndws(); + return 1 unless win32(); my ($errors, %keyval) = parse_into_keywords($pa, qw/extension filetype/); @@ -2020,7 +2016,7 @@ sub _do_postaction_script { return 0; } my $file = $keyval{'file'}; - if (wndws() && defined($keyval{'filew32'})) { + if (win32() && defined($keyval{'filew32'})) { $file = $keyval{'filew32'}; } my $texdir = `kpsewhich -var-value=TEXMFROOT`; @@ -2050,7 +2046,7 @@ sub _do_postaction_script { sub _do_postaction_shortcut { my ($how, $tlpobj, $do_menu, $do_desktop, $pa) = @_; - return 1 unless wndws(); + return 1 unless win32(); my ($errors, %keyval) = parse_into_keywords($pa, qw/type name icon cmd args hide/); @@ -2321,7 +2317,7 @@ sub add_remove_symlinks { my $plat_bindir = "$Master/bin/$arch"; # nothing to do with symlinks on Windows, of course. - return if wndws(); + return if win32(); my $info_dir = "$Master/texmf-dist/doc/info"; if ($mode eq "add") { @@ -2407,7 +2403,7 @@ be called to make the changes immediately visible. sub w32_add_to_path { my ($bindir, $multiuser) = @_; - return if (!wndws()); + return if (!win32()); my $path = TeXLive::TLWinGoo::get_system_env() -> {'/Path'}; $path =~ s/[\s\x00]+$//; @@ -2652,7 +2648,7 @@ sub untar { # on w32 don't extract file modified time, because AV soft can open # files in the mean time causing time stamp modification to fail - my $taropt = wndws() ? "xmf" : "xf"; + my $taropt = win32() ? "xmf" : "xf"; if (system($tar, $taropt, $tarfile) != 0) { tlwarn("TLUtils::untar: $tar $taropt $tarfile failed (in $targetdir)\n"); $ret = 0; @@ -3150,7 +3146,7 @@ sub _download_file_lwp { sub _download_file_program { my ($url, $dest, $type) = @_; - if (wndws()) { + if (win32()) { $dest =~ s!/!\\!g; } @@ -3199,7 +3195,7 @@ Return C</dev/null> on Unix and C<nul> on Windows. =cut sub nulldev { - return (&wndws()) ? 'nul' : '/dev/null'; + return (&win32()) ? 'nul' : '/dev/null'; } =item C<get_full_line ($fh)> @@ -4062,7 +4058,7 @@ sub texdir_check { # Unfortunately we have lots of special characters. # On Windows, backslashes are normal but will already have been changed # to slashes by tl_abs_path. And we should only check for : on Unix. - my $colon = wndws() ? "" : ":"; + my $colon = win32() ? "" : ":"; if ($texdir =~ /[,$colon;\\{}\$]/) { if ($warn) { print " !! TEXDIR value has problematic characters: $orig_texdir\n"; @@ -4075,7 +4071,7 @@ sub texdir_check { return 0; } # w32: for now, reject the root of a samba share - return 0 if wndws() && $texdir =~ m!^//[^/]+/[^/]+$!; + return 0 if win32() && $texdir =~ m!^//[^/]+/[^/]+$!; # if texdir already exists, make sure we can write into it. return dir_writable($texdir) if (-d $texdir); @@ -4106,7 +4102,7 @@ are (erroneously) eradicated. sub quotify_path_with_spaces { my $p = shift; - my $m = wndws() ? '[+=^&();,!%\s]' : '.'; + my $m = win32() ? '[+=^&();,!%\s]' : '.'; if ( $p =~ m/$m/ ) { $p =~ s/"//g; # remove any existing double quotes $p = "\"$p\""; @@ -4154,13 +4150,13 @@ slashes after reading a path. They both are no-ops on Unix. sub native_slashify { my ($r) = @_; - $r =~ s!/!\\!g if wndws(); + $r =~ s!/!\\!g if win32(); return $r; } sub forward_slashify { my ($r) = @_; - $r =~ s!\\!/!g if wndws(); + $r =~ s!\\!/!g if win32(); return $r; } @@ -4242,7 +4238,7 @@ END_NO_SSL # sub query_ctan_mirror_curl { my $max_trial = 3; - my $warg = (wndws() ? '-w "%{url_effective}" ' : "-w '%{url_effective}' "); + my $warg = (win32() ? '-w "%{url_effective}" ' : "-w '%{url_effective}' "); for (my $i = 1; $i <= $max_trial; $i++) { # -L -> follow redirects # -s -> silent @@ -4849,7 +4845,7 @@ sub mktexupd { die "mktexupd: exec file does not exist: $file" if (! -f $file); } } - my $delim= (&wndws)? ';' : ':'; + my $delim= (&win32)? ';' : ':'; my $TEXMFDBS; chomp($TEXMFDBS=`kpsewhich --show-path="ls-R"`); @@ -4859,8 +4855,8 @@ sub mktexupd { foreach my $path (keys %files) { foreach my $db (@texmfdbs) { $db=substr($db, -1) if ($db=~m|/$|); # strip leading / - $db = lc($db) if wndws(); - my $up = (wndws() ? lc($path) : $path); + $db = lc($db) if win32(); + my $up = (win32() ? lc($path) : $path); if (substr($up, 0, length("$db/")) eq "$db/") { # we appended a / because otherwise "texmf" is recognized as a # substring of "texmf-dist". @@ -4992,7 +4988,7 @@ directory for PATH. sub prepend_own_path { my $bindir = dirname(Cwd::abs_path(which('kpsewhich'))); - if (wndws()) { + if (win32()) { $bindir =~ s!\\!/!g; $ENV{'PATH'} = "$bindir;$ENV{PATH}"; } else { diff --git a/Build/source/texk/texlive/linked_scripts/Makefile.am b/Build/source/texk/texlive/linked_scripts/Makefile.am index 71a562a6f68..a431f1d70e0 100644 --- a/Build/source/texk/texlive/linked_scripts/Makefile.am +++ b/Build/source/texk/texlive/linked_scripts/Makefile.am @@ -1,7 +1,7 @@ ## $Id$ ## Makefile.am for the TeX Live subdirectory texk/texlive/linked_scripts/ ## -## Copyright 2016-2022 Karl Berry <tex-live@tug.org> +## Copyright 2016-2023 Karl Berry <tex-live@tug.org> ## Copyright 2009-2015 Peter Breitenlohner <tex-live@tug.org> ## You may freely use, modify and/or distribute this file. ## @@ -38,23 +38,20 @@ installdirs-local: # dangling symlinks produced by `make install'. # The instances in texmf* are the masters (except when it is CTAN). # -## We distinguish several classes of scripts according to their -## type: `shell', `context', or `other'. +## We distinguish classes of scripts: `shell' and `other'. ## ## On Unix systems a symlink from $(bindir) to the script is installed ## for all of them; on Windows nothing is installed in $(bindir) for ## `shell' scripts whereas for `other' (usually perl, lua, ...) scripts -## the standard wrapper ../$(WIN_WRAPPER)/runscript.exe is installed or -## the ConTeXt wrapper ../$(WIN_WRAPPER)/context/mtxrun.exe for -## `context' scripts. +## the standard wrapper ../$(WIN_WRAPPER)/runscript.exe is installed. ## -## WIN_WRAPPER is w32_wrapper for 32-bit or w64_wrapper for 64-bit. +## WIN_WRAPPER is windows_wrapper (64-bit). ## -## The "shell" list aren't just shell scripts, in either direction. -## Some /bin/sh scripts are listed as `other' or `context' -## scripts because they are correctly handled by the wrapper binaries. -## Conversely, some non-sh scripts are listed as `shell' because they -## depend on shell scripts or otherwise aren't useful on Windows. +## The "shell" list aren't just shell scripts, in either direction. Some +## /bin/sh scripts are listed as `other' scripts because they are +## correctly handled by the wrapper binaries. Conversely, some non-sh +## scripts are listed as `shell' because they depend on shell scripts or +## otherwise aren't useful on Windows. ## texmf_scriptsdir = $(datarootdir)/texmf-dist/scripts texmf_shell_scripts = \ @@ -254,23 +251,9 @@ texmf_other_scripts = \ xindex/xindex.lua \ yplan/yplan -texmf_context_scripts = \ - context/stubs/unix/context \ - context/stubs/unix/contextjit \ - context/stubs/unix/luatools \ - context/stubs/unix/mtxrun \ - context/stubs/unix/mtxrunjit \ - context/stubs/unix/texexec \ - context/stubs/unix/texmfstart - -EXTRA_DIST += \ - context/stubs/unix/ctxtools \ - context/stubs/unix/pstopdf - nobase_dist_texmf_scripts_SCRIPTS = \ $(texmf_shell_scripts) \ - $(texmf_other_scripts) \ - $(texmf_context_scripts) + $(texmf_other_scripts) ## Symlinks within $(bindir): FILE:LINK here means "ln -s FILE LINK" is done. bin_links = \ @@ -309,7 +292,6 @@ bin_links = \ EXTRA_DIST += ../../../build-aux/relpath relpath = $(SHELL) $(top_srcdir)/../../build-aux/relpath runscript = $(top_srcdir)/$(WIN_WRAPPER)/runscript.exe -ctxscript = $(top_srcdir)/$(WIN_WRAPPER)/context/mtxrun.exe install-data-hook: installdirs-local if WIN32 @for s in $(texmf_other_scripts); do \ @@ -319,19 +301,8 @@ if WIN32 done $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.dll $(DESTDIR)$(bindir) $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.exe $(DESTDIR)$(bindir) - $(INSTALL_SCRIPT) $(top_srcdir)/w32_wrapper/runscript.tlu $(DESTDIR)$(bindir) - @for s in $(texmf_context_scripts); do \ - t=`basename $$s | sed 's,\.[^/]*$$,,' | tr '[A-Z]' '[a-z]'`; \ - echo "$(INSTALL_SCRIPT) '$(ctxscript)' '$(DESTDIR)$(bindir)/$$t.exe'"; \ - $(INSTALL_SCRIPT) $(ctxscript) $(DESTDIR)$(bindir)/$$t.exe; \ - done + $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.tlu $(DESTDIR)$(bindir) $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/context/mtxrun.dll $(DESTDIR)$(bindir) - $(INSTALL_SCRIPT) $(srcdir)/context/stubs/unix/mtxrun $(DESTDIR)$(bindir)/mtxrun.lua - @for s in $(bin_links); do \ - link=`echo $$s | sed 's,.*:,,'`; \ - echo "$(INSTALL_SCRIPT) '$(runscript)' '$(DESTDIR)$(bindir)/$$link.exe'"; \ - $(INSTALL_SCRIPT) $(runscript) $(DESTDIR)$(bindir)/$$link.exe || exit 1; \ - done else !WIN32 ## Name the link as the basename, removing any extension, ## except for listings-ext.sh, which is documented as that name. @@ -397,6 +368,6 @@ endif !WIN32 ## ## This target is invoked by check-wrapper-consistency (run from cron). .PHONY: echo-shell-scripts -shell_scripts = $(texmf_shell_scripts) $(texmf_context_scripts) +shell_scripts = $(texmf_shell_scripts) echo-shell-scripts: @echo $(shell_scripts) diff --git a/Build/source/texk/texlive/linked_scripts/Makefile.in b/Build/source/texk/texlive/linked_scripts/Makefile.in index eceeb3b2880..eb1a95e1d57 100644 --- a/Build/source/texk/texlive/linked_scripts/Makefile.in +++ b/Build/source/texk/texlive/linked_scripts/Makefile.in @@ -263,8 +263,7 @@ DISTCLEANFILES = scripts-list # # We support native builds, multiplatform or not, as well as distro builds. # -EXTRA_DIST = scripts.lst context/stubs/unix/ctxtools \ - context/stubs/unix/pstopdf ../../../build-aux/relpath +EXTRA_DIST = scripts.lst ../../../build-aux/relpath # Copies of these scripts exist here for the sake of avoiding # dangling symlinks produced by `make install'. @@ -468,19 +467,9 @@ texmf_other_scripts = \ xindex/xindex.lua \ yplan/yplan -texmf_context_scripts = \ - context/stubs/unix/context \ - context/stubs/unix/contextjit \ - context/stubs/unix/luatools \ - context/stubs/unix/mtxrun \ - context/stubs/unix/mtxrunjit \ - context/stubs/unix/texexec \ - context/stubs/unix/texmfstart - nobase_dist_texmf_scripts_SCRIPTS = \ $(texmf_shell_scripts) \ - $(texmf_other_scripts) \ - $(texmf_context_scripts) + $(texmf_other_scripts) bin_links = \ allcm:allec \ @@ -496,9 +485,8 @@ bin_links = \ relpath = $(SHELL) $(top_srcdir)/../../build-aux/relpath runscript = $(top_srcdir)/$(WIN_WRAPPER)/runscript.exe -ctxscript = $(top_srcdir)/$(WIN_WRAPPER)/context/mtxrun.exe @WIN32_TRUE@WINEXT = $(EXEEXT) -shell_scripts = $(texmf_shell_scripts) $(texmf_context_scripts) +shell_scripts = $(texmf_shell_scripts) all: all-am .SUFFIXES: @@ -762,19 +750,8 @@ install-data-hook: installdirs-local @WIN32_TRUE@ done @WIN32_TRUE@ $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.dll $(DESTDIR)$(bindir) @WIN32_TRUE@ $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.exe $(DESTDIR)$(bindir) -@WIN32_TRUE@ $(INSTALL_SCRIPT) $(top_srcdir)/w32_wrapper/runscript.tlu $(DESTDIR)$(bindir) -@WIN32_TRUE@ @for s in $(texmf_context_scripts); do \ -@WIN32_TRUE@ t=`basename $$s | sed 's,\.[^/]*$$,,' | tr '[A-Z]' '[a-z]'`; \ -@WIN32_TRUE@ echo "$(INSTALL_SCRIPT) '$(ctxscript)' '$(DESTDIR)$(bindir)/$$t.exe'"; \ -@WIN32_TRUE@ $(INSTALL_SCRIPT) $(ctxscript) $(DESTDIR)$(bindir)/$$t.exe; \ -@WIN32_TRUE@ done +@WIN32_TRUE@ $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/runscript.tlu $(DESTDIR)$(bindir) @WIN32_TRUE@ $(INSTALL_SCRIPT) $(top_srcdir)/$(WIN_WRAPPER)/context/mtxrun.dll $(DESTDIR)$(bindir) -@WIN32_TRUE@ $(INSTALL_SCRIPT) $(srcdir)/context/stubs/unix/mtxrun $(DESTDIR)$(bindir)/mtxrun.lua -@WIN32_TRUE@ @for s in $(bin_links); do \ -@WIN32_TRUE@ link=`echo $$s | sed 's,.*:,,'`; \ -@WIN32_TRUE@ echo "$(INSTALL_SCRIPT) '$(runscript)' '$(DESTDIR)$(bindir)/$$link.exe'"; \ -@WIN32_TRUE@ $(INSTALL_SCRIPT) $(runscript) $(DESTDIR)$(bindir)/$$link.exe || exit 1; \ -@WIN32_TRUE@ done @WIN32_FALSE@ @REL=`$(relpath) '$(DESTDIR)' '$(bindir)' '$(datarootdir)'`; \ @WIN32_FALSE@ if test -z "$$REL"; then \ @WIN32_FALSE@ echo 'unable to compute relative path for linked scripts' >&2; \ diff --git a/Build/source/texk/texlive/linked_scripts/scripts.lst b/Build/source/texk/texlive/linked_scripts/scripts.lst index 69930bbcab4..2e005ab1c3a 100644 --- a/Build/source/texk/texlive/linked_scripts/scripts.lst +++ b/Build/source/texk/texlive/linked_scripts/scripts.lst @@ -192,11 +192,4 @@ vpe/vpe.pl webquiz/webquiz.py xindex/xindex.lua yplan/yplan -context/stubs/unix/context -context/stubs/unix/contextjit -context/stubs/unix/luatools -context/stubs/unix/mtxrun -context/stubs/unix/mtxrunjit -context/stubs/unix/texexec -context/stubs/unix/texmfstart ' diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index 44854cee54c..39eec873627 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# $Id: tlmgr.pl 65998 2023-02-21 01:33:24Z karl $ +# $Id: tlmgr.pl 66218 2023-02-27 17:09:29Z karl $ # Copyright 2008-2023 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. @@ -8,8 +8,8 @@ use strict; use warnings; -my $svnrev = '$Revision: 65998 $'; -my $datrev = '$Date: 2023-02-21 02:33:24 +0100 (Tue, 21 Feb 2023) $'; +my $svnrev = '$Revision: 66218 $'; +my $datrev = '$Date: 2023-02-27 18:09:29 +0100 (Mon, 27 Feb 2023) $'; my $tlmgrrevision; my $tlmgrversion; my $prg; @@ -246,7 +246,7 @@ my %action_specification = ( "function" => \&action_paper }, "path" => { - "options" => { "w32mode" => "=s" }, + "options" => { "windowsmode|w32mode" => "=s" }, "run-post" => 0, "function" => \&action_path }, @@ -264,7 +264,7 @@ my %action_specification = ( "options" => { "all" => 1, "fileassocmode" => "=i", - "w32mode" => "=s", + "windowsmode|w32mode" => "=s", }, "run-post" => 0, "function" => \&action_postaction @@ -883,7 +883,6 @@ sub handle_execute_actions { my $status_file = TeXLive::TLUtils::tl_tmpfile(); my $fmtutil_args = "$common_fmtutil_args --status-file=$status_file"; - # if create_formats is false (NOT the default) we add --refresh so that # only existing formats are recreated if (!$localtlpdb->option("create_formats")) { @@ -894,9 +893,10 @@ sub handle_execute_actions { if ($::files_changed) { $errors += do_cmd_and_check("mktexlsr"); if (defined($localtlpdb->get_package('context')) - && (-x "$bindir/texlua" || -x "$bindir/texlua.exe")) { - $errors += do_cmd_and_check("mtxrun --generate"); - $errors += do_cmd_and_check("context --luatex --generate"); + && (-x "$bindir/luametatex" || -x "$bindir/luametatex.exe")) { +; # x86_64-linux binary too new +# $errors += do_cmd_and_check("mtxrun --generate"); +# $errors += do_cmd_and_check("context --luatex --generate"); } $::files_changed = 0; } @@ -1506,56 +1506,56 @@ sub action_path { my $winadminmode = 0; if (wndws()) { # - # for w32 we do system wide vs user setting detection as follows: - # - if --w32mode is NOT given, + # for windows we do system wide vs. user setting detection as follows: + # - if --windowsmode is NOT given, # - if admin # --> honor opt_w32_multi_user setting in tlpdb # - if not admin # - if opt_w32_multi_user == NO # --> do user path adjustment # - if opt_w32_multi_user == YES - # --> do nothing, warn that the setting is on, suggest --w32mode user - # - if --w32mode admin + # --> do nothing, warn the setting is on, suggest --windowsmode user + # - if --windowsmode admin # - if admin # --> ignore opt_w32_multi_user and do system path adjustment # - if non-admin # --> do nothing but warn that user does not have privileges - # - if --w32mode user + # - if --windowsmode user # - if admin # --> ignore opt_w32_multi_user and do user path adjustment # - if non-admin # --> ignore opt_w32_multi_user and do user path adjustment - if (!$opts{"w32mode"}) { + if (!$opts{"windowsmode"}) { $winadminmode = $localtlpdb->option("w32_multi_user"); if (!TeXLive::TLWinGoo::admin()) { if ($winadminmode) { - tlwarn("The TLPDB specifies system wide path adjustments\nbut you don't have admin privileges.\nFor user path adjustment please use\n\t--w32mode user\n"); + tlwarn("The TLPDB specifies system wide path adjustments\nbut you don't have admin privileges.\nFor user path adjustment please use\n\t--windowsmode user\n"); # and do nothing return ($F_ERROR); } } } else { - # we are in the block where a --w32mode argument is given + # we are in the block where a --windowsmode argument is given # we reverse the tests: if (TeXLive::TLWinGoo::admin()) { # in admin mode we simply use what is given on the cmd line - if ($opts{"w32mode"} eq "user") { + if ($opts{"windowsmode"} eq "user") { $winadminmode = 0; - } elsif ($opts{"w32mode"} eq "admin") { + } elsif ($opts{"windowsmode"} eq "admin") { $winadminmode = 1; } else { - tlwarn("$prg: unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); + tlwarn("$prg: unknown --windowsmode mode: $opts{windowsmode}, should be 'admin' or 'user'\n"); return ($F_ERROR); } } else { # we are non-admin - if ($opts{"w32mode"} eq "user") { + if ($opts{"windowsmode"} eq "user") { $winadminmode = 0; - } elsif ($opts{"w32mode"} eq "admin") { - tlwarn("$prg: You don't have the privileges to work in --w32mode admin\n"); + } elsif ($opts{"windowsmode"} eq "admin") { + tlwarn("$prg: You don't have the privileges to work in --windowsmode admin\n"); return ($F_ERROR); } else { - tlwarn("$prg: unknown --w32admin mode: $opts{w32mode}, should be 'admin' or 'user'\n"); + tlwarn("$prg: unknown --windowsmode mode: $opts{windowsmode}, should be 'admin' or 'user'\n"); return ($F_ERROR); } } @@ -6145,7 +6145,7 @@ sub check_texmfdbs { # explicitly run the various post actions, e.g., # on a client system or overriding global settings. # -# tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] +# tlmgr postaction [--windowsmode=user|admin] [--fileassocmode=1|2] [--all] # [install|remove] [shortcut|fileassoc|script] [<pkg>...] sub action_postaction { @@ -6166,8 +6166,8 @@ sub action_postaction { return; } if (wndws()) { - if ($opts{"w32mode"}) { - if ($opts{"w32mode"} eq "user") { + if ($opts{"windowsmode"}) { + if ($opts{"windowsmode"} eq "user") { if (TeXLive::TLWinGoo::admin()) { debug("Switching to user mode on user request\n"); TeXLive::TLWinGoo::non_admin(); @@ -6175,13 +6175,13 @@ sub action_postaction { # in user mode we also switch TEXMFSYSVAR to TEXMFVAR since # xetex.pl, but maybe others are writing to TEXMFSYSVAR chomp($ENV{"TEXMFSYSVAR"} = `kpsewhich -var-value TEXMFVAR`); - } elsif ($opts{"w32mode"} eq "admin") { + } elsif ($opts{"windowsmode"} eq "admin") { if (!TeXLive::TLWinGoo::admin()) { - tlwarn("$prg: you don't have the permissions for --w32mode=admin\n"); + tlwarn("$prg: you don't have permission for --windowsmode=admin\n"); return; } } else { - tlwarn("$prg: action postaction --w32mode can only be 'admin' or 'user'\n"); + tlwarn("$prg: action postaction --windowsmode can only be 'admin' or 'user'\n"); return; } } @@ -8789,9 +8789,9 @@ settings. =over 4 -=item B<path [--w32mode=user|admin] add> +=item B<path [--windowsmode=user|admin] add> -=item B<path [--w32mode=user|admin] remove> +=item B<path [--windowsmode=user|admin] remove> On Unix, adds or removes symlinks for executables, man pages, and info pages in the system directories specified by the respective options (see @@ -8803,21 +8803,21 @@ command must be rerun as needed. On Windows, the registry part where the binary directory is added or removed is determined in the following way: -If the user has admin rights, and the option C<--w32mode> is not given, +If the user has admin rights, and the option C<--windowsmode> is not given, the setting I<w32_multi_user> determines the location (i.e., if it is on then the system path, otherwise the user path is changed). -If the user has admin rights, and the option C<--w32mode> is given, this +If the user has admin rights, and the option C<--windowsmode> is given, this option determines the path to be adjusted. -If the user does not have admin rights, and the option C<--w32mode> +If the user does not have admin rights, and the option C<--windowsmode> is not given, and the setting I<w32_multi_user> is off, the user path is changed, while if the setting I<w32_multi_user> is on, a warning is issued that the caller does not have enough privileges. -If the user does not have admin rights, and the option C<--w32mode> +If the user does not have admin rights, and the option C<--windowsmode> is given, it must be C<user> and the user path will be adjusted. If a -user without admin rights uses the option C<--w32mode admin> a warning +user without admin rights uses the option C<--windowsmode admin> a warning is issued that the caller does not have enough privileges. =back @@ -8916,13 +8916,13 @@ Options: =over 4 -=item B<--w32mode=[user|admin]> +=item B<--windowsmode=[user|admin]> -If the option C<--w32mode> is given the value C<user>, all actions will +If the option C<--windowsmode> is given the value C<user>, all actions will only be carried out in the user-accessible parts of the registry/filesystem, while the value C<admin> selects the system-wide parts of the registry for the file associations. If you do not have -enough permissions, using C<--w32mode=admin> will not succeed. +enough permissions, using C<--windowsmode=admin> will not succeed. =item B<--fileassocmode=[1|2]> @@ -10249,7 +10249,7 @@ This script and its documentation were written for the TeX Live distribution (L<https://tug.org/texlive>) and both are licensed under the GNU General Public License Version 2 or later. -$Id: tlmgr.pl 65998 2023-02-21 01:33:24Z karl $ +$Id: tlmgr.pl 66218 2023-02-27 17:09:29Z karl $ =cut # test HTML version: pod2html --cachedir=/tmp tlmgr.pl >/tmp/tlmgr.html diff --git a/Build/source/texk/texlive/tl_support/fmtutil.cnf b/Build/source/texk/texlive/tl_support/fmtutil.cnf index fb9e1f10bdf..f51bb4a0f72 100644 --- a/Build/source/texk/texlive/tl_support/fmtutil.cnf +++ b/Build/source/texk/texlive/tl_support/fmtutil.cnf @@ -1,5 +1,4 @@ -# Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Sun Feb 19 17:24:45 2023 -# $Id: fmtutil-hdr.cnf 53804 2020-02-16 17:57:32Z karl $ +# Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Sun Dec 18 22:44:08 2022 # Originally written by Thomas Esser, 1998. Public domain. # # For guidance on how to support local formats, see the man @@ -70,7 +69,7 @@ pdfcsplain xetex - -etex csplain.ini eplain pdftex language.dat -translate-file=cp227.tcx *eplain.ini # # from hitex: -hilatex hitex language.dat -etex -ltx hilatex.ini +#! hilatex hitex language.dat -etex -ltx hilatex.ini hitex hitex language.def -etex -ltx hitex.ini # # from jadetex: @@ -131,11 +130,11 @@ pdftex pdftex language.def -translate-file=cp227.tcx *pdfetex.ini # # from platex: platex eptex language.dat *platex.ini -platex-dev euptex language.dat *platex.ini +platex-dev eptex language.dat *platex.ini # # from ptex: eptex eptex language.def *eptex.ini -ptex eptex - ptex.ini +ptex ptex - ptex.ini # # from tex: tex tex - tex.ini @@ -149,7 +148,7 @@ uplatex-dev euptex language.dat *uplatex.ini # # from uptex: euptex euptex language.def *euptex.ini -uptex euptex - uptex.ini +uptex uptex - uptex.ini # # from xelatex-dev: xelatex-dev xetex language.dat -etex xelatex.ini |