diff options
author | Karl Berry <karl@freefriends.org> | 2011-12-02 23:38:35 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-12-02 23:38:35 +0000 |
commit | 67a387806bdc03e8435afd1dcf8848030fe70c03 (patch) | |
tree | c30bc11e8304b4cf1b2e1f5d4a599bf82a565915 | |
parent | b542b56a84b9580a92376753e00682edc04e4ea1 (diff) |
latexmk (1dec11)
git-svn-id: svn://tug.org/texlive/trunk@24722 c570f23f-e606-0410-a88d-b1316a301751
-rwxr-xr-x | Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl | 73 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/CHANGES | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/INSTALL | 2 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/README | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/latexmk.pdf | bin | 103044 -> 102990 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/support/latexmk/latexmk.txt | 74 | ||||
-rwxr-xr-x | Master/texmf-dist/scripts/latexmk/latexmk.pl | 73 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/latexmk.1 | 4 | ||||
-rw-r--r-- | Master/texmf/doc/man/man1/latexmk.man1.pdf | bin | 116395 -> 116268 bytes |
9 files changed, 139 insertions, 99 deletions
diff --git a/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl b/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl index b77f379993f..2d9bbcf9cab 100755 --- a/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl +++ b/Build/source/texk/texlive/linked_scripts/latexmk/latexmk.pl @@ -1,9 +1,5 @@ #!/usr/bin/env perl -## ????????????????????? biber source file issue fatal or not: -## Check generation of retcode 4, and ITS USE, which is source of latexmk stop. - - # On a UNIX-like system, the above enables latexmk to run independently # of the location of the perl executable. This line relies on the # existence of the program /usr/bin/env @@ -113,8 +109,8 @@ use warnings; $my_name = 'latexmk'; $My_name = 'Latexmk'; -$version_num = '4.28a'; -$version_details = "$My_name, John Collins, 28 November 2011"; +$version_num = '4.28c'; +$version_details = "$My_name, John Collins, 1 December 2011"; use Config; @@ -183,6 +179,11 @@ else { ## ## Modification log from 1 Jan 2011 onwards in detail ## +## 1 Dec 2011, John Collins Correct biber-no-bib problem +## (biber gives an error message, but latexmk +## should treat that only as a warning). +## Deal correctly with error messages +## from biber 0.9.7. ## 28 Nov 2011, John Collins Correct duplicate making of view file ## (in subroutine do_viewfile) ## 14 Nov 2011, John Collins Extend bibtex treatment of missing files @@ -1207,6 +1208,10 @@ if (!$TEXINPUTS) { $TEXINPUTS = '.'; } # 1 if last run was successful, but # failed to create an output file # 2 if last run failed + # 200 if last run gave a warning that is + # important enough to be reported with + # the error summary. The warning + # message is stored in last_message. # last_message is error message for last run # default_extra_generated is a reference to an array # of specifications of extra generated files (beyond @@ -3093,21 +3098,22 @@ sub check_biber_log { $have_warning = 1; $warning_count ++; } - elsif (/> FATAL /) { + elsif (/> (FATAL|ERROR) /) { print "Biber error: $_"; - if ( /> FATAL - Cannot find file '([^']+)'/ ) { #' + if ( /> (FATAL|ERROR) - Cannot find file '([^']+)'/ #' + || /> (FATAL|ERROR) - Cannot find '([^']+)'/ ) { #' $not_found_count++; - push @$Pbiber_source, $1; + push @$Pbiber_source, $2; } - elsif ( /> FATAL - Cannot find control file '([^']+)'/ ) { #' + elsif ( /> (FATAL|ERROR) - Cannot find control file '([^']+)'/ ) { #' $not_found_count++; $control_file_missing = 1; - push @$Pbiber_source, $1; + push @$Pbiber_source, $2; } else { $have_error = 1; $error_count ++; - if ( /> FATAL - The file '[^']+' does not contain any citations!/ ) { #' + if ( /> (FATAL|ERROR) - The file '[^']+' does not contain any citations!/ ) { #' $no_citations++; } } @@ -5228,31 +5234,42 @@ sub rdb_makeB { #------------------- sub rdb_show_rule_errors { - local @messages = (); + local @errors = (); + local @warnings = (); rdb_for_all( sub{ if ($$Plast_message ne '') { - push @messages, "$rule: $$Plast_message"; + if ($$Plast_result == 200) { + push @warnings, "$rule: $$Plast_message"; + } + else { + push @errors, "$rule: $$Plast_message"; + } } elsif ($$Plast_result == 1) { - push @messages, "$rule: failed to create output file"; + push @errors, "$rule: failed to create output file"; } elsif ($$Plast_result == 2) { - push @messages, "$rule: gave an error"; + push @errors, "$rule: gave an error"; } elsif ($$Prun_time == 0) { -# This can have innocuous causes. So don't report -# push @messages, "$rule: never run"; + # This can have innocuous causes. So don't report } } ); - if ($#messages > -1) { + if ($#warnings > -1) { + warn "Collected warning summary (may duplicate other messages):\n"; + foreach (@warnings){ + warn " $_\n"; + } + } + if ($#errors > -1) { warn "Collected error summary (may duplicate other messages):\n"; - foreach (@messages){ + foreach (@errors){ warn " $_\n"; } } - return $#messages+1; + return $#errors+1; } #------------------- @@ -5574,11 +5591,12 @@ sub rdb_run1 { # Assumes contexts for: rule. # Unconditionally apply the rule # Returns return code from applying the rule. - # Otherwise: 0 on other kind of success, -1 on error, -2 when missing dest_file - # is to be ignored + # Otherwise: 0 on other kind of success, + # -1 on error, + # -2 when missing dest_file is to be ignored - # Source file data, by definition, correspond to the file state just before - # the latest run, and the run_time to the time just before the run: + # Source file data, by definition, correspond to the file state just + # before the latest run, and the run_time to the time just before the run: &rdb_update_filesA; $$Prun_time = time; $$Pchanged = 0; # No special changes in files @@ -5621,10 +5639,9 @@ sub rdb_run1 { if ($retcode == 5) { # Special treatment if sole missing file is bib file # I don't want to treat that as an error - warn " =============== bib missing special case\n"; -# $return = 0; + $return = 0; $$Plast_result = 200; -# $$Plast_message = "Could not find bib file for '$$Pbase'"; + $$Plast_message = "Could not find bib file for '$$Pbase'"; push @warnings, "Bib file not found for '$$Pbase'"; } elsif ($retcode == 6) { diff --git a/Master/texmf-dist/doc/support/latexmk/CHANGES b/Master/texmf-dist/doc/support/latexmk/CHANGES index 531a5cd6ab8..a9a05979adc 100644 --- a/Master/texmf-dist/doc/support/latexmk/CHANGES +++ b/Master/texmf-dist/doc/support/latexmk/CHANGES @@ -285,3 +285,9 @@ From v. 4.27a to 4.28 From v. 4.28 to 4.28a Correct duplicate making of view file +From v. 4.28a to 4.28c + When biber doesn't find the bib file, latexmk treats this as a + warning rather than a fatal error, so further processing + can continue normally. + Latexmk now parses correctly error messages from biber v. 0.9.7. + diff --git a/Master/texmf-dist/doc/support/latexmk/INSTALL b/Master/texmf-dist/doc/support/latexmk/INSTALL index e7a48085381..7de5cc93524 100644 --- a/Master/texmf-dist/doc/support/latexmk/INSTALL +++ b/Master/texmf-dist/doc/support/latexmk/INSTALL @@ -1,6 +1,6 @@ INSTALLING latexmk ================== - (Version 4.28a, 28 November 2011) + (Version 4.28c, 1 December 2011) John Collins Physics Department diff --git a/Master/texmf-dist/doc/support/latexmk/README b/Master/texmf-dist/doc/support/latexmk/README index f6752ba33f5..715b1b080fc 100644 --- a/Master/texmf-dist/doc/support/latexmk/README +++ b/Master/texmf-dist/doc/support/latexmk/README @@ -1,5 +1,5 @@ -Latexmk, version 4.28a, 28 November 2011 ----------------------------------------- +Latexmk, version 4.28c, 1 December 2011 +--------------------------------------- Latexmk completely automates the process of generating a LaTeX document. Essentially, it is a highly specialized cousin of the @@ -92,7 +92,7 @@ NOTES:- John Collins ---------------------------- "latexmk -h" ---------------------------- -Latexmk 4.28a: Automatic LaTeX document generation routine +Latexmk 4.28c: Automatic LaTeX document generation routine Usage: latexmk [latexmk_options] [filename ...] diff --git a/Master/texmf-dist/doc/support/latexmk/latexmk.pdf b/Master/texmf-dist/doc/support/latexmk/latexmk.pdf Binary files differindex 046bb197e9c..4dac1c4082f 100644 --- a/Master/texmf-dist/doc/support/latexmk/latexmk.pdf +++ b/Master/texmf-dist/doc/support/latexmk/latexmk.pdf diff --git a/Master/texmf-dist/doc/support/latexmk/latexmk.txt b/Master/texmf-dist/doc/support/latexmk/latexmk.txt index e44c1b50f05..475e43b765b 100644 --- a/Master/texmf-dist/doc/support/latexmk/latexmk.txt +++ b/Master/texmf-dist/doc/support/latexmk/latexmk.txt @@ -127,7 +127,7 @@ LATEXMK OPTIONS AND ARGUMENTS ON COMMAND LINE - 28 November 2011 2 + 1 December 2011 2 @@ -195,7 +195,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 3 + 1 December 2011 3 @@ -263,7 +263,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 4 + 1 December 2011 4 @@ -331,7 +331,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 5 + 1 December 2011 5 @@ -400,7 +400,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 6 + 1 December 2011 6 @@ -469,7 +469,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 7 + 1 December 2011 7 @@ -539,7 +539,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 8 + 1 December 2011 8 @@ -609,7 +609,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 9 + 1 December 2011 9 @@ -679,7 +679,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 10 + 1 December 2011 10 @@ -749,7 +749,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 11 + 1 December 2011 11 @@ -819,7 +819,7 @@ CONFIGURATION/INITIALIZATION (RC) FILES - 28 November 2011 12 + 1 December 2011 12 @@ -889,7 +889,7 @@ HOW TO SET VARIABLES IN INITIALIZATION FILES - 28 November 2011 13 + 1 December 2011 13 @@ -959,7 +959,7 @@ FORMAT OF COMMAND SPECIFICATIONS - 28 November 2011 14 + 1 December 2011 14 @@ -1029,7 +1029,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 15 + 1 December 2011 15 @@ -1099,7 +1099,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 16 + 1 December 2011 16 @@ -1169,7 +1169,7 @@ LIST OF CONFIGURATION VARIABLES USABLE IN INITIALIZATION FILES - 28 November 2011 17 + 1 December 2011 17 @@ -1239,7 +1239,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 18 + 1 December 2011 18 @@ -1309,7 +1309,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 19 + 1 December 2011 19 @@ -1379,7 +1379,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 20 + 1 December 2011 20 @@ -1449,7 +1449,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 21 + 1 December 2011 21 @@ -1519,7 +1519,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 22 + 1 December 2011 22 @@ -1589,7 +1589,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 23 + 1 December 2011 23 @@ -1659,7 +1659,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 24 + 1 December 2011 24 @@ -1729,7 +1729,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 25 + 1 December 2011 25 @@ -1801,7 +1801,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 26 + 1 December 2011 26 @@ -1873,7 +1873,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 27 + 1 December 2011 27 @@ -1945,7 +1945,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 28 + 1 December 2011 28 @@ -2018,7 +2018,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 29 + 1 December 2011 29 @@ -2091,7 +2091,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 30 + 1 December 2011 30 @@ -2164,7 +2164,7 @@ CUSTOM DEPENDENCIES - 28 November 2011 31 + 1 December 2011 31 @@ -2237,7 +2237,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 32 + 1 December 2011 32 @@ -2310,7 +2310,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 33 + 1 December 2011 33 @@ -2383,7 +2383,7 @@ USING latexmk WITH make - 28 November 2011 34 + 1 December 2011 34 @@ -2456,7 +2456,7 @@ LATEXMK(1L) LATEXMK(1L) - 28 November 2011 35 + 1 December 2011 35 @@ -2531,7 +2531,7 @@ BUGS - 28 November 2011 36 + 1 December 2011 36 @@ -2564,7 +2564,7 @@ THANKS TO AUTHOR Current version, by John Collins (username collins at node - phys.psu.edu). (Version 4.28a). + phys.psu.edu). (Version 4.28c). Released version can be obtained from CTAN: <http://www.tug.org/tex- archive/support/latexmk/>, and from the author's website @@ -2606,6 +2606,6 @@ AUTHOR - 28 November 2011 37 + 1 December 2011 37 diff --git a/Master/texmf-dist/scripts/latexmk/latexmk.pl b/Master/texmf-dist/scripts/latexmk/latexmk.pl index b77f379993f..2d9bbcf9cab 100755 --- a/Master/texmf-dist/scripts/latexmk/latexmk.pl +++ b/Master/texmf-dist/scripts/latexmk/latexmk.pl @@ -1,9 +1,5 @@ #!/usr/bin/env perl -## ????????????????????? biber source file issue fatal or not: -## Check generation of retcode 4, and ITS USE, which is source of latexmk stop. - - # On a UNIX-like system, the above enables latexmk to run independently # of the location of the perl executable. This line relies on the # existence of the program /usr/bin/env @@ -113,8 +109,8 @@ use warnings; $my_name = 'latexmk'; $My_name = 'Latexmk'; -$version_num = '4.28a'; -$version_details = "$My_name, John Collins, 28 November 2011"; +$version_num = '4.28c'; +$version_details = "$My_name, John Collins, 1 December 2011"; use Config; @@ -183,6 +179,11 @@ else { ## ## Modification log from 1 Jan 2011 onwards in detail ## +## 1 Dec 2011, John Collins Correct biber-no-bib problem +## (biber gives an error message, but latexmk +## should treat that only as a warning). +## Deal correctly with error messages +## from biber 0.9.7. ## 28 Nov 2011, John Collins Correct duplicate making of view file ## (in subroutine do_viewfile) ## 14 Nov 2011, John Collins Extend bibtex treatment of missing files @@ -1207,6 +1208,10 @@ if (!$TEXINPUTS) { $TEXINPUTS = '.'; } # 1 if last run was successful, but # failed to create an output file # 2 if last run failed + # 200 if last run gave a warning that is + # important enough to be reported with + # the error summary. The warning + # message is stored in last_message. # last_message is error message for last run # default_extra_generated is a reference to an array # of specifications of extra generated files (beyond @@ -3093,21 +3098,22 @@ sub check_biber_log { $have_warning = 1; $warning_count ++; } - elsif (/> FATAL /) { + elsif (/> (FATAL|ERROR) /) { print "Biber error: $_"; - if ( /> FATAL - Cannot find file '([^']+)'/ ) { #' + if ( /> (FATAL|ERROR) - Cannot find file '([^']+)'/ #' + || /> (FATAL|ERROR) - Cannot find '([^']+)'/ ) { #' $not_found_count++; - push @$Pbiber_source, $1; + push @$Pbiber_source, $2; } - elsif ( /> FATAL - Cannot find control file '([^']+)'/ ) { #' + elsif ( /> (FATAL|ERROR) - Cannot find control file '([^']+)'/ ) { #' $not_found_count++; $control_file_missing = 1; - push @$Pbiber_source, $1; + push @$Pbiber_source, $2; } else { $have_error = 1; $error_count ++; - if ( /> FATAL - The file '[^']+' does not contain any citations!/ ) { #' + if ( /> (FATAL|ERROR) - The file '[^']+' does not contain any citations!/ ) { #' $no_citations++; } } @@ -5228,31 +5234,42 @@ sub rdb_makeB { #------------------- sub rdb_show_rule_errors { - local @messages = (); + local @errors = (); + local @warnings = (); rdb_for_all( sub{ if ($$Plast_message ne '') { - push @messages, "$rule: $$Plast_message"; + if ($$Plast_result == 200) { + push @warnings, "$rule: $$Plast_message"; + } + else { + push @errors, "$rule: $$Plast_message"; + } } elsif ($$Plast_result == 1) { - push @messages, "$rule: failed to create output file"; + push @errors, "$rule: failed to create output file"; } elsif ($$Plast_result == 2) { - push @messages, "$rule: gave an error"; + push @errors, "$rule: gave an error"; } elsif ($$Prun_time == 0) { -# This can have innocuous causes. So don't report -# push @messages, "$rule: never run"; + # This can have innocuous causes. So don't report } } ); - if ($#messages > -1) { + if ($#warnings > -1) { + warn "Collected warning summary (may duplicate other messages):\n"; + foreach (@warnings){ + warn " $_\n"; + } + } + if ($#errors > -1) { warn "Collected error summary (may duplicate other messages):\n"; - foreach (@messages){ + foreach (@errors){ warn " $_\n"; } } - return $#messages+1; + return $#errors+1; } #------------------- @@ -5574,11 +5591,12 @@ sub rdb_run1 { # Assumes contexts for: rule. # Unconditionally apply the rule # Returns return code from applying the rule. - # Otherwise: 0 on other kind of success, -1 on error, -2 when missing dest_file - # is to be ignored + # Otherwise: 0 on other kind of success, + # -1 on error, + # -2 when missing dest_file is to be ignored - # Source file data, by definition, correspond to the file state just before - # the latest run, and the run_time to the time just before the run: + # Source file data, by definition, correspond to the file state just + # before the latest run, and the run_time to the time just before the run: &rdb_update_filesA; $$Prun_time = time; $$Pchanged = 0; # No special changes in files @@ -5621,10 +5639,9 @@ sub rdb_run1 { if ($retcode == 5) { # Special treatment if sole missing file is bib file # I don't want to treat that as an error - warn " =============== bib missing special case\n"; -# $return = 0; + $return = 0; $$Plast_result = 200; -# $$Plast_message = "Could not find bib file for '$$Pbase'"; + $$Plast_message = "Could not find bib file for '$$Pbase'"; push @warnings, "Bib file not found for '$$Pbase'"; } elsif ($retcode == 6) { diff --git a/Master/texmf/doc/man/man1/latexmk.1 b/Master/texmf/doc/man/man1/latexmk.1 index 617c5c56042..91406c85195 100644 --- a/Master/texmf/doc/man/man1/latexmk.1 +++ b/Master/texmf/doc/man/man1/latexmk.1 @@ -1,4 +1,4 @@ -.TH LATEXMK 1L "28 November 2011" "" +.TH LATEXMK 1L "1 December 2011" "" .SH NAME latexmk \- generate LaTeX document .SH SYNOPSIS @@ -2169,7 +2169,7 @@ e-mail addresses are not written in their standard form to avoid being harvested by worms and viruses.) .SH AUTHOR Current version, by John Collins (username collins at node phys.psu.edu). -(Version 4.28a). +(Version 4.28c). Released version can be obtained from CTAN: <http://www.tug.org/tex-archive/support/latexmk/>, and from the diff --git a/Master/texmf/doc/man/man1/latexmk.man1.pdf b/Master/texmf/doc/man/man1/latexmk.man1.pdf Binary files differindex edc5a333362..484717ed34b 100644 --- a/Master/texmf/doc/man/man1/latexmk.man1.pdf +++ b/Master/texmf/doc/man/man1/latexmk.man1.pdf |