diff options
Diffstat (limited to 'Build')
3 files changed, 246 insertions, 232 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/context/stubs/unix/mtxrun b/Build/source/texk/texlive/linked_scripts/context/stubs/unix/mtxrun index 6b998eb74b0..89c1565511c 100755 --- a/Build/source/texk/texlive/linked_scripts/context/stubs/unix/mtxrun +++ b/Build/source/texk/texlive/linked_scripts/context/stubs/unix/mtxrun @@ -1670,7 +1670,7 @@ do -- create closure to overcome 200 locals limit package.loaded["l-table"] = package.loaded["l-table"] or true --- original size: 39587, stripped down to: 23144 +-- original size: 39608, stripped down to: 23165 if not modules then modules={} end modules ['l-table']={ version=1.001, @@ -2003,7 +2003,7 @@ local reserved=table.tohash { 'in','local','nil','not','or','repeat','return','then','true','until','while', 'NaN','goto', } -local function is_simple_table(t) +local function is_simple_table(t,hexify) local nt=#t if nt>0 then local n=0 @@ -2121,7 +2121,7 @@ local function do_serialize(root,name,depth,level,indexed) if next(v)==nil then handle(format("%s {},",depth)) elseif inline then - local st=is_simple_table(v) + local st=is_simple_table(v,hexify) if st then handle(format("%s { %s },",depth,concat(st,", "))) else @@ -2204,7 +2204,7 @@ local function do_serialize(root,name,depth,level,indexed) handle(format("%s [%q]={},",depth,k)) end elseif inline then - local st=is_simple_table(v) + local st=is_simple_table(v,hexify) if st then if tk=="number" then if hexify then @@ -20430,7 +20430,7 @@ end -- of closure -- used libraries : l-lua.lua l-sandbox.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-fil.lua util-sac.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-tpl.lua util-sbx.lua util-mrg.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua -- skipped libraries : - --- original bytes : 841875 +-- original bytes : 841896 -- stripped bytes : 305446 -- end library merge diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index ebc97294ea4..26c3235d097 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -1,13 +1,13 @@ #!/usr/bin/env perl -# $Id: tlmgr.pl 44109 2017-04-28 23:12:11Z karl $ +# $Id: tlmgr.pl 44146 2017-05-01 22:53:26Z karl $ # # Copyright 2008-2017 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. # -my $svnrev = '$Revision: 44109 $'; -my $datrev = '$Date: 2017-04-29 01:12:11 +0200 (Sat, 29 Apr 2017) $'; +my $svnrev = '$Revision: 44146 $'; +my $datrev = '$Date: 2017-05-02 00:53:26 +0200 (Tue, 02 May 2017) $'; my $tlmgrrevision; my $prg; if ($svnrev =~ m/: ([0-9]+) /) { @@ -1145,6 +1145,7 @@ sub action_remove { # PAPER +# # ARGV can look like: # paper a4 # paper letter @@ -1335,7 +1336,7 @@ sub action_path { return ($ret | $F_NOPOSTACTION); } -# DUMP TLPDB +# DUMP-TLPDB # sub action_dumptlpdb { init_local_db(); @@ -4316,7 +4317,7 @@ sub action_option { } -# ARCH +# PLATFORM (was ARCH) # sub action_platform { my $ret = $F_OK; @@ -4817,6 +4818,7 @@ sub action_recreate_tlpdb { return; } + # CHECK # sub init_tltree { @@ -5350,7 +5352,9 @@ sub check_depends { return $ret; } + # POSTACTION +# # explictly run the various post actions, e.g., # on a client system or overriding global settings. # @@ -5458,7 +5462,9 @@ sub action_postaction { } } -# INIT USER TREE + +# INIT-USERTREE +# # sets up the user tree for tlmgr in user mode sub action_init_usertree { # init_local_db but do not die if localtlpdb is not found! @@ -5500,7 +5506,9 @@ sub action_init_usertree { return ($F_OK); } + # CONF +# # tries to mimic texconfig conf but can also set values for both tlmgr # and texmf conf files. # @@ -5550,7 +5558,7 @@ sub action_conf { if ($arg eq "texmf") { my $tmfa = 'TEXMFAUXTREES'; my $tv = $cf->value($tmfa); - if ($val eq "show") { + if (!$val || $val eq "show") { if (defined($tv)) { $tv =~ s/^\s*{//; $tv =~ s/}\s*$//; @@ -5562,7 +5570,7 @@ sub action_conf { } return($F_OK); } else { - print "No auxiliary texmf trees defined.\n"; + print "$prg: no auxiliary texmf trees defined.\n"; return($F_OK); } } elsif ($val eq "add") { @@ -5576,7 +5584,7 @@ sub action_conf { my $already = 0; for my $f (@foo) { if ($f eq $str) { - print "Already registered auxtree: $str\n"; + tlwarn("$prg: already registered auxtree: $str\n"); return ($F_WARNING); } else { push @new, $f; @@ -5588,7 +5596,7 @@ sub action_conf { $cf->value($tmfa, '{' . $str . ',}'); } } else { - warning("argument missing for auxtrees add\n"); + tlwarn("$prg: missing argument for auxtrees add\n"); return($F_ERROR); } } elsif ($val eq "remove") { @@ -5614,23 +5622,24 @@ sub action_conf { $cf->delete_key($tmfa); } } else { - print ("Not defined as auxiliary texmf tree: $str\n"); + tlwarn("$prg: not defined as auxiliary texmf tree: $str\n"); return($F_WARNING); } } else { - print "No auxiliary texmf trees defined, nothing removed\n"; + tlwarn("$prg: no auxiliary texmf trees defined, " + . "so nothing removed\n"); return($F_WARNING); } } else { - warning("argument missing for auxtrees remove\n"); + tlwarn("$prg: missing argument for auxtrees remove\n"); return($F_ERROR); } } else { - warning("unknown operation on auxtrees: $val\n"); + tlwarn("$prg: unknown auxtrees operation: $val\n"); return($F_ERROR); } } else { - warning("auxtrees not suitable for $arg\n"); + tlwarn("$prg: auxtrees not suitable for $arg\n"); return($F_ERROR); } } elsif (!defined($val)) { @@ -5662,7 +5671,7 @@ sub action_conf { } } else { if (defined($opts{'delete'})) { - warning("$arg --delete and value for key $key given, don't know what to do!\n"); + tlwarn("$arg --delete and value for key $key given, don't know what to do!\n"); $ret = $F_ERROR; } else { info("setting $arg $key to $val (in $fn)\n"); @@ -5729,14 +5738,13 @@ sub texconfig_conf_mimic { } - -# Action key -# -# general key management +# KEY # +# gpg key management: # tlmgr key list # tlmgr key add <filename> # tlmgr key remove <keyid> +# sub action_key { my $arg = shift @ARGV; @@ -5813,6 +5821,209 @@ sub action_key { } +# SHELL +# interactive shell. +# +sub action_shell { + my $protocol = 1; + sub do_prompt { + my $default_prompt = "tlmgr>"; + my $prompt = ""; + my @options; + my @guarantee; + my @savedargs = @_; + my $did_prompt = 0; + while (defined(my $arg = shift @_)) { + if ($arg =~ m/^-prompt$/) { + print shift @_, " "; + $did_prompt = 1; + } elsif ($arg =~ m/^-menu$/) { + my $options = shift @_; + @options = @$options; + print "\n"; + my $c = 1; + for my $o (@options) { + print " $c) $o\n"; + $c++; + } + } elsif ($arg =~ m/^-guarantee$/) { + my $guarantee = shift @_; + @guarantee = @$guarantee; + } elsif ($arg =~ m/^-/) { + print "ERROR unsupported prompt command, please report: $arg!\n"; + } else { + print $arg, " "; + $did_prompt = 1; + } + } + print "default_prompt " if (!$did_prompt); + my $ans = <STDIN>; + if (!defined($ans)) { + # we got Ctrl-D, just break out + return; + } + chomp($ans); + if (@options) { + $ans--; + if ($ans >= 0 && $ans <= $#options) { + $ans = $options[$ans]; + return($ans); + } else { + print "ERROR invalid answer\n"; + return; + } + } + if (@guarantee) { + my $isok = 0; + for my $g (@guarantee) { + if ($ans eq $g) { + $isok = 1; + last; + } + } + if (!$isok) { + print("Please answer one of @guarantee!\n"); + return(do_prompt(@savedargs)); + } + } + return($ans); + } + + print "protocol $protocol\n"; + while (1) { + my $ans = do_prompt('tlmgr>'); + return $F_OK if !defined($ans); # done if eof + + my ($cmd, @args) = TeXLive::TLUtils::quotewords('\s+', 0, $ans); + next if (!defined($cmd)); + if ($cmd eq "protocol") { + print "protocol $protocol\n"; + } elsif ($cmd eq "help") { + print "Please see tlmgr help or http://tug.org/texlive/tlmgr.html.\n"; + } elsif ($cmd eq "version") { + print give_version(), "\n"; + } elsif ($cmd =~ m/^(quit|end|bye(bye)?)$/i) { + return $F_OK; + } elsif ($cmd eq "setup-location") { + my $dest = shift @args; + print "ERROR not implemented: $cmd\n"; + } elsif ($cmd =~ m/^(set|get)$/) { + my @valid_keys = qw/repository debug-translation machine-readable no-execute-actions require-verification verify-downloads/; + my $key = shift @args; + my $val = shift @args; + if (!$key) { + $key = do_prompt('Choose...', -menu => \@valid_keys, '>'); + } + if (!$key) { + print("ERROR missing argument for get\n"); + next; + } + if ($cmd eq "get" && defined($val)) { + print("ERROR no argument allowed for get\n"); + next; + } + if ($cmd eq "set" && !defined($val)) { + if ($key eq "repository") { + $val = do_prompt('Enter repository:'); + } else { + $val = do_prompt('Enter 1 for on, 0 for off:', -guarantee => [0,1]); + } + # deal with Ctrl-D + if (!defined($val)) { + print("ERROR Missing value for set.\n"); + next; + } + } + + if ($key eq "repository") { + if ($cmd eq "set") { + $location = scalar($val); + } else { + if (defined($location)) { + print "repository = $location\n"; + } else { + print "repository = <UNDEFINED>\n"; + } + } + print "OK\n"; + } elsif ($key =~ m/^(debug-translation|machine-readable|no-execute-actions|require-verification|verify-downloads)$/) { + if ($cmd eq "set") { + $opts{$key} = ($val eq "1" ? 1 : 0); + # special cases + $::debug_translation = $opts{"debug-translation"}; + $::machinereadable = $opts{"machine-readable"}; + $::no_execute_actions = $opts{'no-execute-actions'}; + } else { + print "$key = ", ($opts{$key} ? 1 : 0), "\n"; + } + print "OK\n"; + } else { + print "ERROR unknown key $key\n"; + } + } elsif ($cmd eq "load") { + my $what = shift @args; + if (!defined($what)) { + $what = do_prompt("Choose...", -menu => ['local', 'remote'], '>'); + } + if ($what eq "local") { + init_local_db(); + print "OK\n"; + } elsif ($what eq "remote") { + init_tlmedia_or_die(); + print "OK\n"; + } else { + print "ERROR can only load 'local' or 'remote'\n"; + } + } elsif ($cmd eq "save") { + $localtlpdb->save; + print "OK\n"; + } elsif (defined($action_specification{$cmd})) { + # an action + if (!defined($action_specification{$cmd}{"function"})) { + print "ERROR action function not defined\n"; + next; + } + # redo the option parsing + my %optarg; + if (defined($action_specification{$cmd}{'options'})) { + my %actopts = %{$action_specification{$cmd}{'options'}}; + for my $k (keys %actopts) { + if ($actopts{$k} eq "1") { + $optarg{$k} = 1; + } else { + $optarg{"$k" . $actopts{$k}} = 1; + } + } + } + # save command line options for later restart, if necessary + @ARGV = @args; + my %savedopts = %opts; + %opts = (); + if (!GetOptions(\%opts, keys(%optarg))) { + print "ERROR unsupported arguments\n"; + next; + } + my $ret = execute_action($cmd, @ARGV); + if ($ret & $F_ERROR) { + print "ERROR\n"; + } elsif ($ret & $F_WARNING) { + print "OK\n"; + } else { + print "OK\n"; + } + # make sure that we restart after having called update --self! + if (($cmd eq 'update') && $opts{'self'}) { + print "tlmgr has been updated, restarting!\n"; + exec("tlmgr", @::SAVEDARGV); + } + %opts = %savedopts; + } else { + print "ERROR unknown command\n"; + } + } +} + + # Subroutines galore. # @@ -6589,208 +6800,6 @@ sub check_on_writable { } -########### -# tlmgr shell code -sub action_shell { - my $protocol = 1; - sub do_prompt { - my $default_prompt = "tlmgr>"; - my $prompt = ""; - my @options; - my @guarantee; - my @savedargs = @_; - my $did_prompt = 0; - while (defined(my $arg = shift @_)) { - if ($arg =~ m/^-prompt$/) { - print shift @_, " "; - $did_prompt = 1; - } elsif ($arg =~ m/^-menu$/) { - my $options = shift @_; - @options = @$options; - print "\n"; - my $c = 1; - for my $o (@options) { - print " $c) $o\n"; - $c++; - } - } elsif ($arg =~ m/^-guarantee$/) { - my $guarantee = shift @_; - @guarantee = @$guarantee; - } elsif ($arg =~ m/^-/) { - print "ERROR unsupported prompt command, please report: $arg!\n"; - } else { - print $arg, " "; - $did_prompt = 1; - } - } - print "default_prompt " if (!$did_prompt); - my $ans = <STDIN>; - if (!defined($ans)) { - # we got Ctrl-D, just break out - return; - } - chomp($ans); - if (@options) { - $ans--; - if ($ans >= 0 && $ans < $#options) { - $ans = $options[$ans]; - return($ans); - } else { - print "ERROR invalid answer\n"; - return; - } - } - if (@guarantee) { - my $isok = 0; - for my $g (@guarantee) { - if ($ans eq $g) { - $isok = 1; - last; - } - } - if (!$isok) { - print("Please answer one of @guarantee!\n"); - return(do_prompt(@savedargs)); - } - } - return($ans); - } - - print "protocol $protocol\n"; - while (1) { - # print $prompt; - # my $ans = <STDIN>; - my $ans = do_prompt('tlmgr>'); - # chomp $ans; - next if (!defined($ans)); - my ($cmd, @args) = TeXLive::TLUtils::quotewords('\s+', 0, $ans); - next if (!defined($cmd)); - if ($cmd eq "protocol") { - print "protocol $protocol\n"; - } elsif ($cmd eq "version") { - print give_version(), "\n"; - } elsif ($cmd =~ m/^(quit|end|byebye)$/i) { - return $F_OK; - } elsif ($cmd eq "setup-location") { - my $dest = shift @args; - print "ERROR not implemented: $cmd\n"; - } elsif ($cmd =~ m/^(set|get)$/) { - my @valid_keys = qw/repository debug-translation machine-readable no-execute-actions require-verification verify-downloads/; - my $key = shift @args; - my $val = shift @args; - if (!$key) { - $key = do_prompt('Choose...', -menu => \@valid_keys, '>'); - } - if (!$key) { - print("ERROR missing argument for get\n"); - next; - } - if ($cmd eq "get" && defined($val)) { - print("ERROR no argument allowed for get\n"); - next; - } - if ($cmd eq "set" && !defined($val)) { - if ($key eq "repository") { - $val = do_prompt('Enter repository:'); - } else { - $val = do_prompt('Enter 1 for on, 0 for off:', -guarantee => [0,1]); - } - # deal with Ctrl-D - if (!defined($val)) { - print('ERROR Missing value for set.\n'); - next; - } - } - - if ($key eq "repository") { - if ($cmd eq "set") { - $location = scalar($val); - } else { - if (defined($location)) { - print "repository = $location\n"; - } else { - print "repository = <UNDEFINED>\n"; - } - } - print "OK\n"; - } elsif ($key =~ m/^(debug-translation|machine-readable|no-execute-actions|require-verification|verify-downloads)$/i) { - if ($cmd eq "set") { - $opts{$key} = ($val eq "1" ? 1 : 0); ### THIS DOES NOT WORK??? TODO TODO - # special cases - $::debug_translation = $opts{"debug-translation"}; - $::machinereadable = $opts{"machine-readable"}; - $::no_execute_actions = $opts{'no-execute-actions'}; - } else { - print "$key = ", ($opts{$key} ? 1 : 0), "\n"; - } - print "OK\n"; - } else { - print "ERROR unknown key $key\n"; - } - } elsif ($cmd eq "load") { - my $what = shift @args; - if (!defined($what)) { - $what = do_prompt("Choose...", -menu => ['local', 'remote'], '>'); - } - if ($what eq "local") { - init_local_db(); - print "OK\n"; - } elsif ($what eq "remote") { - init_tlmedia_or_die(); - print "OK\n"; - } else { - print "ERROR can only load 'local' or 'remote'\n"; - } - } elsif ($cmd eq "save") { - $localtlpdb->save; - print "OK\n"; - } elsif (defined($action_specification{$cmd})) { - # an action - if (!defined($action_specification{$cmd}{"function"})) { - print "ERROR action function not defined\n"; - next; - } - # redo the option parsing - my %optarg; - if (defined($action_specification{$cmd}{'options'})) { - my %actopts = %{$action_specification{$cmd}{'options'}}; - for my $k (keys %actopts) { - if ($actopts{$k} eq "1") { - $optarg{$k} = 1; - } else { - $optarg{"$k" . $actopts{$k}} = 1; - } - } - } - # save command line options for later restart, if necessary - @ARGV = @args; - my %savedopts = %opts; - %opts = (); - if (!GetOptions(\%opts, keys(%optarg))) { - print "ERROR unsupported arguments\n"; - next; - } - my $ret = execute_action($cmd, @ARGV); - if ($ret & $F_ERROR) { - print "ERROR\n"; - } elsif ($ret & $F_WARNING) { - print "OK\n"; - } else { - print "OK\n"; - } - # make sure that we restart after having called update --self! - if (($cmd eq 'update') && $opts{'self'}) { - print "tlmgr has been updated, restarting!\n"; - exec("tlmgr", @::SAVEDARGV); - } - %opts = %savedopts; - } else { - print "ERROR unknown command\n"; - } - } -} - - 1; __END__ diff --git a/Build/source/texk/texlive/linked_scripts/texlive/updmap.pl b/Build/source/texk/texlive/linked_scripts/texlive/updmap.pl index fa78b1d5762..1077afc381d 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/updmap.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/updmap.pl @@ -1,5 +1,5 @@ #!/usr/bin/env perl -# $Id: updmap.pl 44080 2017-04-27 16:46:42Z karl $ +# $Id: updmap.pl 44149 2017-05-02 09:57:51Z preining $ # updmap - maintain map files for outline fonts. # (Maintained in TeX Live:Master/texmf-dist/scripts/texlive.) # @@ -14,7 +14,7 @@ # the original versions were licensed under the following agreement: # Anyone may freely use, modify, and/or distribute this file, without -my $svnid = '$Id: updmap.pl 44080 2017-04-27 16:46:42Z karl $'; +my $svnid = '$Id: updmap.pl 44149 2017-05-02 09:57:51Z preining $'; my $TEXMFROOT; BEGIN { @@ -27,10 +27,10 @@ BEGIN { unshift(@INC, "$TEXMFROOT/tlpkg"); } -my $lastchdate = '$Date: 2017-04-27 18:46:42 +0200 (Thu, 27 Apr 2017) $'; +my $lastchdate = '$Date: 2017-05-02 11:57:51 +0200 (Tue, 02 May 2017) $'; $lastchdate =~ s/^\$Date:\s*//; $lastchdate =~ s/ \(.*$//; -my $svnrev = '$Revision: 44080 $'; +my $svnrev = '$Revision: 44149 $'; $svnrev =~ s/^\$Revision:\s*//; $svnrev =~ s/\s*\$$//; my $version = "r$svnrev ($lastchdate)"; @@ -1323,7 +1323,12 @@ sub mkMaps { # all kind of warning messages if ($first_time_creation_in_usermode) { print_and_log(" -WARNING: you are switching to updmap's per-user mappings. +************************************************************* +* * +* WARNING: you are switching to updmap's per-user mappings. * +* Please read the following explanations. * +* * +************************************************************* You have run updmap-user (as opposed to updmap-sys) for the first time; this has created configuration files which are local to your personal account. |