texlive[54774] Master/tlpkg/libexec/ctan2tds:
commits+karl at tug.org
commits+karl at tug.org
Fri Apr 17 00:59:48 CEST 2020
Revision: 54774
http://tug.org/svn/texlive?view=revision&revision=54774
Author: karl
Date: 2020-04-17 00:59:48 +0200 (Fri, 17 Apr 2020)
Log Message:
-----------
(standardinsrunner_opt): separate the
-interaction=nonstopmode from the command name, so
we can keep the non-interaction by default.
Modified Paths:
--------------
trunk/Master/tlpkg/libexec/ctan2tds
Modified: trunk/Master/tlpkg/libexec/ctan2tds
===================================================================
--- trunk/Master/tlpkg/libexec/ctan2tds 2020-04-16 21:01:59 UTC (rev 54773)
+++ trunk/Master/tlpkg/libexec/ctan2tds 2020-04-16 22:59:48 UTC (rev 54774)
@@ -2843,10 +2843,25 @@
'velthuis' => 'latex', # requires interaction
'xduthesis' => 'tex',
'xecjk' => 'xecjk-xelatex',
- 'xskak' => 'latex', # requires interaction
'yathesis' => 'pdftex',
);
-$standardinsrunner="latex -interaction=nonstopmode";
+$standardinsrunner = "latex";
+$standardinsrunner_opt = "-interaction=nonstopmode";
+#
+# We separate the (non)interaction option from the command name
+# because we don't ever want interaction, regardless of the command.
+#
+# We can't pipe yes| into the command to get around the ins overwrite
+# problem since then "y" might get used as a filename, and we can exit
+# successfully when files didn't get generated as intended (e.g., in a
+# subdirectory, as required by apa7 and others). We have a special case
+# to report this in runjob, but we don't want it to happen in the first place.
+#
+# This setup fails in cases where an existing file is being generated,
+# e.g., velthuis, and LaTeX asks:
+# File ./hindi.ldf already exists on the system.
+# Overwrite it? [y/n]
+# Not sure what to do about this yet.
%specialmakeindex= (
@@ -3470,6 +3485,9 @@
$inspatt = $specialins{$package} || &specialins($package) || $standardins;
$insrunner = $specialinsrunner{$package} || $standardinsrunner;
+ $insrunner_opt = $specialinsrunner_opt{$package} || $standardinsrunner_opt;
+ $invoke_insrunner = "$insrunner $insrunner_opt";
+
$Foundry = $specialfoundry{$package} || $standardfoundry;
if (exists $special{$package}) {
@@ -3842,7 +3860,8 @@
for (grep (/$thispatt/, @filenames)) {
my $env_mktex = "env MKTEXTFM=0 MKTEXMF=0 MKTEXPK=0";
# do not infinite loop on docstrip "output directory", e.g., fltpoint.
- &runjob ("yes | sed 1000q | $env_mktex $insrunner $_");
+ #&runjob ("yes | sed 1000q | $env_mktex $insrunner $_");
+ &runjob ("$invoke_insrunner $_");
# bbold.dtx generates bbold.ins, and then does "low level hacks" to
# run the .ins itself. mathfont.dtx generates mathfont.ins to no
@@ -3854,7 +3873,8 @@
# .ins is not in @filenames), and the .ins creates the .sty.
# So we have to run the .ins.
if (! grep (/$package\.ins$/, @filenames) && -r "$package.ins") {
- &runjob ("yes | sed 10q | $env_mktex $insrunner $package.ins");
+ #&runjob ("yes | sed 10q | $env_mktex $insrunner $package.ins");
+ &runjob ("$invoke_insrunner $package.ins");
}
}
@@ -4288,7 +4308,7 @@
} else {
my $Jobid = "_$$";
chomp (my $PWD = `pwd`);
- &SYSTEM ("$job >$PWD/$Jobid.log 2>&1");
+ &SYSTEM ("$job </dev/null >$PWD/$Jobid.log 2>&1");
$status = $?;
local *TMP;
open (TMP, "$Jobid.log") || die "open($Jobid.log) failed: $!";
More information about the tex-live-commits
mailing list.