summaryrefslogtreecommitdiff
path: root/Master/tlpkg/bin/tl-check-fmttriggers
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/bin/tl-check-fmttriggers')
-rwxr-xr-xMaster/tlpkg/bin/tl-check-fmttriggers28
1 files changed, 11 insertions, 17 deletions
diff --git a/Master/tlpkg/bin/tl-check-fmttriggers b/Master/tlpkg/bin/tl-check-fmttriggers
index 4f46229fd85..060e9893d23 100755
--- a/Master/tlpkg/bin/tl-check-fmttriggers
+++ b/Master/tlpkg/bin/tl-check-fmttriggers
@@ -7,6 +7,10 @@
# then map those files to TL packages,
# then check that exactly those packages are listed as triggers in the
# corresponding tlpsrc files.
+#
+# Cleaner approach: should output exact list of deps for each format,
+# and then use it. That would be easier to maintain than the current
+# complicated set of variables.
my $vc_id = '$Id$';
my $Master;
@@ -33,6 +37,7 @@ my $opt_analyze = 0;
my $opt_fmtargs = "--all";
my $opt_fmtdir = "/tmp/fmttriggers";
my $opt_rerecord = 1;
+my $opt_tlpdb = undef;
my $opt_help = 0;
my $opt_version = 0;
@@ -40,8 +45,9 @@ TeXLive::TLUtils::process_logging_options ();
GetOptions (
"analyze" => \$opt_analyze,
"fmtargs=s" => \$opt_fmtargs,
- "fmtdir" => \$opt_fmtdir,
+ "fmtdir=s" => \$opt_fmtdir,
"rerecord!" => \$opt_rerecord,
+ "tlpdb=s" => \$opt_tlpdb,
"version" => \$opt_version,
"help|?" => \$help) || pod2usage(1);
@@ -71,7 +77,7 @@ sub main {
#system ("bytime $opt_fmtdir");
# read tlpdb.
- my $tlpdb_file = "$Master/tlpkg/texlive.tlpdb";
+ my $tlpdb_file = $opt_tlpdb || "$Master/tlpkg/texlive.tlpdb";
my ($tlpdb,$fmttriggers,$fmtpkgcontainers) = &tlpdb_by_file ($tlpdb_file);
# if reporting on the trigger subsets, just do that and we're done.
@@ -248,7 +254,8 @@ sub tlpdb_by_file {
close ($tlpdb) || warn "close($tlpdb_file) failed: $!";
&info ("TLPDB files: " . scalar (keys %tlpfiles)
- . " triggers: " . scalar (keys %fmttriggers) . "\n");
+ . " triggers: " . scalar (keys %fmttriggers)
+ . " file: $tlpdb_file\n" );
return (\%tlpfiles, \%fmttriggers, \%fmtpkgcontainers);
}
@@ -302,15 +309,6 @@ sub compare_pkgs_and_triggers {
my $bad_p = 0;
my $all_pkgs = 0;
- # we don't include these as fmttriggers since when they meaningfully
- # change, fmtutil should get called anyway due to language.* changing.
- my @skip_recorded = qw(dehyph-exptl ruhyphen ukrhyph);
- #
- # similarly for this engine.
- push (@skip_recorded, "pdftex");
- #
- # Anything matching hyphen-.* is also ignored, but not hyph-utf8.
-
for my $ef (sort keys %$pkgs_per_format) {
my @recorded_pkgs = @{$pkgs_per_format->{$ef}};
$all_pkgs += @recorded_pkgs;
@@ -331,11 +329,7 @@ sub compare_pkgs_and_triggers {
if (exists $tlpdb_pkgs{$r}) {
delete $tlpdb_pkgs{$r}; # ok, in both
} else {
- # sometimes we like to include the hyphenation packages as
- # triggers in the tlpdb, for no particular reason. Let that be
- # ok, and only check for the skipped packages when making the
- # trigger list for an engine.format not in tlpdb.
- next if grep ($_ eq $r, @skip_recorded);
+ # The hyphen-* packages get loaded anyway? Not sure.
next if $r =~ /hyphen-.*/;
push (@recorded_only, $r);
}