summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorNorbert Preining <preining@logic.at>2017-11-21 07:07:45 +0000
committerNorbert Preining <preining@logic.at>2017-11-21 07:07:45 +0000
commit8d25e79ce3e59649f5e4747cbfd15f0a8eb53cc9 (patch)
tree2e03682d5677db02856bfec8e2d9b60ab861c251 /Master/texmf-dist
parent1d432b6cf721927af3d7121d1d38e2f7bda7a905 (diff)
fmtutil missing/refresh part 3: support missing and refresh
git-svn-id: svn://tug.org/texlive/trunk@45872 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rwxr-xr-xMaster/texmf-dist/scripts/texlive/fmtutil.pl13
1 files changed, 8 insertions, 5 deletions
diff --git a/Master/texmf-dist/scripts/texlive/fmtutil.pl b/Master/texmf-dist/scripts/texlive/fmtutil.pl
index 293208c1ef2..606eb34f854 100755
--- a/Master/texmf-dist/scripts/texlive/fmtutil.pl
+++ b/Master/texmf-dist/scripts/texlive/fmtutil.pl
@@ -436,9 +436,12 @@ sub callback_build_formats {
}
}
- # if the user asked to rebuild something, but we did nothing, report.
- if ($err + $suc == 0) {
- print_info("did not find entry for $what=$whatarg, skipped\n");
+ # if the user asked to rebuild something, but we did nothing, report
+ # unless we tried to rebuild only missing formats.
+ if ($what ne "missing") {
+ if ($err + $suc == 0) {
+ print_info("did not find entry for $what=$whatarg, skipped\n");
+ }
}
my $stdo = ($mktexfmtMode ? \*STDERR : \*STDOUT);
for (@deferred_stdout) { print $stdo $_; }
@@ -474,8 +477,8 @@ sub select_and_rebuild_format {
# we just identify 'all', 'refresh', 'missing'
# I don't see much point in keeping all of them
$doit = 1 if ($what eq 'all');
- $doit = 1 if ($what eq 'refresh');
- $doit = 1 if ($what eq 'missing');
+ $doit = 1 if ($what eq 'refresh' && -r "$destdir/$fmtfile");
+ $doit = 1 if ($what eq 'missing' && ! -r "$destdir/$fmtfile");
$doit = 1 if ($what eq 'byengine' && $eng eq $whatarg);
$doit = 1 if ($what eq 'byfmt' && $fmt eq $whatarg);
# TODO