summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl')
-rwxr-xr-xMaster/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl199
1 files changed, 0 insertions, 199 deletions
diff --git a/Master/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl b/Master/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl
deleted file mode 100755
index b3866f0512c..00000000000
--- a/Master/texmf-dist/source/latex/latex-tds/lib/adjust_checksum.pl
+++ /dev/null
@@ -1,199 +0,0 @@
-eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' && eval 'exec perl -S $0 $argv:q'
- if 0;
-use strict;
-$^W=1; # turn warning on
-#
-# adjust_checksum.pl
-#
-# Copyright (C) 2006-2013 by Heiko Oberdiek <heiko.oberdiek at googlemail.com>
-#
-# This work may be distributed and/or modified under the
-# conditions of the LaTeX Project Public License, either
-# version 1.3 of this license or (at your option) any later
-# version. The latest version of this license is in
-# http://www.latex-project.org/lppl.txt
-# and version 1.3 or later is part of all distributions of
-# LaTeX version 2005/12/01 or later.
-#
-# This work has the LPPL maintenance status "maintained".
-#
-# This Current Maintainer of this work is Heiko Oberdiek.
-#
-# This work consists of this file.
-#
-# This file "adjust_checksum.pl" may be renamed to "adjust_checksum"
-# for installation purposes.
-#
-my $file = "adjust_checksum.pl";
-my $program = uc($&) if $file =~ /^\w+/;
-my $version = "1.6";
-my $date = "2013/01/24";
-my $author = "Heiko Oberdiek";
-my $copyright = "Copyright (c) 2002, 2006-2013 by $author.";
-#
-# Reqirements: Perl5, Linux
-# History:
-# 2002/03/15 v1.0: First release.
-# 2006/02/12 v1.1: Fix for \Checksum{0}.
-# 2007/06/15 v1.2: -draftmode added.
-# 2007/09/25 v1.3: ltxdoc.cfg added to speed up.
-# 2008/07/16 v1.4: Use of package `syntonly' for speed.
-# 2011/04/15 v1.5: Email address updated.
-# 2013/01/26 v1.6: License updated.
-#
-
-my $prg_latex = 'latex -draftmode';
-
-my $tempdir = "tmp_\L$program\E_$$";
-
-### program identification
-my $title = "$program $version, $date - $copyright\n";
-
-my $usage = <<"END_OF_USAGE";
-${title}Syntax: \L$program\E <file.dtx>
-Function: Correction of "\\Checksum{...}" entry in <file.dtx>.
-END_OF_USAGE
-
-### error strings
-my $Error = "!!! Error:"; # error prefix
-
-### parse command line arguments
-@ARGV == 1 or die $usage;
-my $dtxfile = $ARGV[0];
-
-print $title;
-
-### check dtx file
--f $dtxfile or die "$Error File not found: '$dtxfile'!\n";
-
-### signals
-$SIG{__DIE__} = \&clean;
-$SIG{'HUP'} = \&clean;
-$SIG{'INT'} = \&clean;
-$SIG{'QUIT'} = \&clean;
-$SIG{'TERM'} = \&clean;
-
-### make temp dir
-mkdir $tempdir;
--d $tempdir or die "$Error Cannot create directory '$tempdir'!\n";
-
-### copy dtx file
-my $tempdtxfile = $dtxfile;
-$tempdtxfile =~ s/.*\///;
-my $latexfile = $tempdtxfile;
-$tempdtxfile = $tempdir . "/" . $tempdtxfile;
-
-system("cp $dtxfile $tempdtxfile");
--f $tempdtxfile or die "$Error Cannot copy dtx file!\n";
-
-### create ltxdoc.cfg
-my $ltxdocfile = $tempdir . "/" . 'ltxdoc.cfg';
-open(OUT, '>', $ltxdocfile)
- or die "!!! Error: Cannot open file `$ltxdocfile'!\n";
-print OUT <<'__END__LTXDOC_CFG__';
-\typeout{* version for adjust_checksum}
-\AtEndOfClass{%
- \DontCheckModules
- \DisableCrossrefs
- \def\DisableCrossrefs{\@bsphack\@esphack}%
- \let\EnableCrossrefs\DisableCrossrefs
- \let\CodelineIndex\relax
- \let\PageIndex\relax
- \let\CodelineNumbered\relax
- \let\PrintChanges\relax
- \let\PrintIndex\relax
- \let\tableofcontents\relax
- \PassOptionsToPackage{hyperref}{bookmarks=false}%
- \PassOptionsToPackage{hypdoc}{numbered}%
- \expandafter\xdef\csname ver@hypdoc.sty\endcsname{}%
- \expandafter\xdef\csname ver@bmhydoc.sty\endcsname{}%
- \nofiles
- \hfuzz\maxdimen
- \pretolerance10000 %
- \tolerance10000 %
-}
-\endinput
-__END__LTXDOC_CFG__
-close(OUT);
-
-### run latex
-print "*** Running LaTeX ...\n";
-my $argcode = "'\\AtBeginDocument{\\usepackage{syntonly}\\syntaxonly}"
- . "\\input{$latexfile}'";
-system("(cd $tempdir; $prg_latex --interaction=batchmode $argcode)");
-
-my $logfile = $tempdtxfile;
-$logfile =~ s/\.[^\.]+$//;
-$logfile .= ".log";
--f $logfile or die "$Error Cannot find log file '$logfile'!\n";
-
-### parse log file for CheckSum
-print "*** Looking for checksum statement ...\n";
-my $found = 0;
-my $changed = 0;
-my $old = 0;
-my $new = 0;
-open(LOG, $logfile) or die "$Error Cannot open log file '$logfile'!\n";
-while (<LOG>) {
- if (/\* Checksum passed \*/) {
- $found = 1;
- $changed = 0;
- print "==> Checksum passed.\n";
- last;
- }
- if (/Checksum not passed \((\d+)<>(\d+)\)/) {
- $found = 1;
- $changed = 1;
- $old = $1;
- $new = $2;
- last;
- }
- if (/The checksum should be (\d+)!/) {
- $found = 1;
- $changed = 1;
- $old = 0;
- $new = $1;
- last;
- }
-}
-close(LOG);
-
-$found or die "$Error Checksum statement not found in log file!\n";
-
-if ($changed) {
- print "==> Checksum not passed ($old<>$new).\n";
-
- ### write changed dtx file
- print "*** Fixing Checksum ...\n";
- my $fixed = 0;
- open(IN, $tempdtxfile) or die "$Error Cannot open '$tempdtxfile'!\n";
- open(OUT, ">$dtxfile") or die "$Error Cannot write '$dtxfile'!\n";
- while (<IN>) {
- if (s/\\CheckSum\{\d+\}/\\CheckSum{$new}/) {
- $fixed++;
- print "==> Checksum fixed:\n$_";
- }
- print OUT;
- }
- close(IN);
- close(OUT);
-
- $fixed > 0 or
- die "$Error: \"\\CheckSum{...}\" not found!\n";
- $fixed == 1 or
- die "$Error: More than one \"\\CheckSum\" command found!\n";
-}
-
-### cleaning
-sub clean {
- if (-d $tempdir) {
- unlink glob("$tempdir/*");
- rmdir $tempdir;
- }
-}
-
-clean();
-
-print "*** Ready.\n";
-
-__END__