summaryrefslogtreecommitdiff
path: root/Master/tlpkg/bin/tl-check-fmttriggers
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-12-03 18:37:40 +0000
committerKarl Berry <karl@freefriends.org>2019-12-03 18:37:40 +0000
commitb6e5cf8a177685cf1050de7d1ab60182d67db558 (patch)
treecb6e7ecfa4810690830c181e3c35bc53d1160d2e /Master/tlpkg/bin/tl-check-fmttriggers
parentb6684ce4580d49d77511ce18417502e7976cd0f1 (diff)
sync fmttriggers with packages split from oberdiek
git-svn-id: svn://tug.org/texlive/trunk@53009 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/tlpkg/bin/tl-check-fmttriggers')
-rwxr-xr-xMaster/tlpkg/bin/tl-check-fmttriggers17
1 files changed, 14 insertions, 3 deletions
diff --git a/Master/tlpkg/bin/tl-check-fmttriggers b/Master/tlpkg/bin/tl-check-fmttriggers
index eca92140763..16dcce72a7d 100755
--- a/Master/tlpkg/bin/tl-check-fmttriggers
+++ b/Master/tlpkg/bin/tl-check-fmttriggers
@@ -49,6 +49,9 @@ if ($opt_version) { print "$vc_id\n"; exit 0; }
$::installerdir = $Master; # TLUtils.pm should be smarter
$ENV{'PATH'} = "$Master/bin/" . TeXLive::TLUtils::platform() . ":$ENV{PATH}";
+# These don't have triggers, and that's ok.
+my $no_triggers_ok = '^(mf-nowin\.mf|(pdf|xe)tex\.cont-en)$';
+
exit (&main());
@@ -203,8 +206,11 @@ sub tlpdb_by_file {
tldie ("$prg: parse_AddFormat_line failed: $af{error}\n"
. "line = $_\n");
}
+
+ next if $af{"mode"} == 0; # skip disabled.
+
+ my $ef = "$af{engine}.$af{name}";
if ($af{"fmttriggers"}) {
- my $ef = "$af{engine}.$af{name}";
if (exists ($fmttriggers{$ef})) {
tldie ("$prg: already saw triggers for $ef ($fmttriggers{$ef}),"
. " triggers now = $af{fmttriggers}\n");
@@ -213,7 +219,7 @@ sub tlpdb_by_file {
$fmtpkgcontainers{$ef} = $pkg;
#warn " fmtpkgcontainers{$ef} = $pkg\n";
} else {
- tlwarn ("$prg: no fmttriggers: $_\n");
+ tlwarn ("$prg: no fmttriggers: $_\n") unless $ef =~ /$no_triggers_ok/;
}
} elsif (s/^ //) { # notice file names
@@ -249,6 +255,7 @@ sub pkgs_per_format {
my %pkgs_for_this_format;
my $files_ref = $files_per_format{$format};
for my $f (@$files_ref) {
+ next if $f eq "/dev/null";
if (exists $tlpdb->{$f}) {
my $pkg = $tlpdb->{$f};
$pkgs_for_this_format{$pkg} = 1;
@@ -300,6 +307,10 @@ sub compare_pkgs_and_triggers {
my %tlpdb_pkgs;
@tlpdb_pkgs{@tlpdb_pkgs} = (); # hash slice for tlpdb pkgs
+ # This does not show up in the recorder output, unfortunately.
+ # It's used in the lualatex formats.
+ delete $tlpdb_pkgs{"luaotfload"};
+
my @recorded_only = ();
for my $r (keys %recorded_pkgs) {
# no need for a package to include itself as a fmttrigger.
@@ -333,7 +344,7 @@ sub compare_pkgs_and_triggers {
} else {
# not in tlpdb at all; in a few cases, that is expected.
# Otherwise, complain and output needed fmttriggers directive.
- if ($ef =~ /^(mf-nowin\.mf|(pdf|xe)tex\.cont-en)$/) {
+ if ($ef =~ /$no_triggers_ok/) {
delete $fmttriggers->{$ef}; # ok
} else {
tlwarn ("$prg: no fmttriggers in tlpdb: $ef\n"