From c8f732a84d7eed2d49fdc6d67606ab7cacb69b15 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 11 Aug 2011 17:05:58 +0000 Subject: thumbpdf 3.13c (10aug11) git-svn-id: svn://tug.org/texlive/trunk@23497 c570f23f-e606-0410-a88d-b1316a301751 --- .../texk/texlive/linked_scripts/texlive/tlmgr.pl | 48 ++++++++++++++++++++-- .../texlive/linked_scripts/thumbpdf/thumbpdf.pl | 22 ++++++---- 2 files changed, 59 insertions(+), 11 deletions(-) (limited to 'Build/source') diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index 411c774bb4a..8f0065442c8 100755 --- a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl +++ b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl @@ -1,12 +1,12 @@ #!/usr/bin/env perl -# $Id: tlmgr.pl 23271 2011-07-29 23:20:41Z preining $ +# $Id: tlmgr.pl 23420 2011-08-05 06:27:04Z preining $ # # Copyright 2008, 2009, 2010, 2011 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. -my $svnrev = '$Revision: 23271 $'; -my $datrev = '$Date: 2011-07-30 01:20:41 +0200 (Sat, 30 Jul 2011) $'; +my $svnrev = '$Revision: 23420 $'; +my $datrev = '$Date: 2011-08-05 08:27:04 +0200 (Fri, 05 Aug 2011) $'; my $tlmgrrevision; if ($svnrev =~ m/: ([0-9]+) /) { $tlmgrrevision = $1; @@ -555,7 +555,13 @@ sub do_cmd_and_check # tlmgr front ends (MacOSX's TeX Live Utility) can read it # and show it to the user before the possibly long delay. info("running $cmd ...\n"); - my ($out, $ret) = TeXLive::TLUtils::run_cmd("$cmd 2>&1"); + my ($out, $ret); + if ($opts{"dry-run"}) { + $ret = 0; + $out = ""; + } else { + ($out, $ret) = TeXLive::TLUtils::run_cmd("$cmd 2>&1"); + } if ($ret == 0) { info("done running $cmd.\n"); log("--output of $cmd:\n$out\n--end of output of $cmd."); @@ -665,6 +671,32 @@ sub handle_execute_actions } } + # + # check if *depending* formats have been changed + # we are currently only caring for package "latex" and "tex". If + # one of these has changed, we search for all packages *depending* + # on latex/tex and regenerate all formats in these packages. + # + # do this only if we are not in --list or --dry-run mode + if (!$opts{"list"}) { + my @check_indirect_formats; + # TODO: + # in case that hyphenation patterns are changed, ie $regenerate_language + # then maybe we don't need to update latex based ones? + push @check_indirect_formats, $localtlpdb->needed_by("latex") + if ($::latex_updated); + push @check_indirect_formats, $localtlpdb->needed_by("tex") + if ($::tex_updated); + for my $p (@check_indirect_formats) { + my $tlp = $localtlpdb->get_package($p); + if (!defined($tlp)) { + tlwarn("$p mentioned but not found in local tlpdb, strange!\n"); + next; + } + TeXLive::TLUtils::announce_execute_actions("enable", $tlp, "format"); + } + } + # format-regenerate is used when the paper size changes. In that # case, if option("create_formats") is set, we simply want to generate # all formats @@ -2832,6 +2864,14 @@ sub action_update { } } + # + # special check for depending format updates: + # if one of latex or tex has been updated, we rebuild the formats + # defined in packages *depending* on these packages. + if (!$opts{"list"}) { + TeXLive::TLUtils::announce_execute_actions("latex-updated") if ($updated{"latex"}); + TeXLive::TLUtils::announce_execute_actions("tex-updated") if ($updated{"tex"}); + } print "end-of-updates\n" if $::machinereadable; diff --git a/Build/source/texk/texlive/linked_scripts/thumbpdf/thumbpdf.pl b/Build/source/texk/texlive/linked_scripts/thumbpdf/thumbpdf.pl index 9dc544b77e8..c18e50262ba 100755 --- a/Build/source/texk/texlive/linked_scripts/thumbpdf/thumbpdf.pl +++ b/Build/source/texk/texlive/linked_scripts/thumbpdf/thumbpdf.pl @@ -5,7 +5,7 @@ $^W=1; # turn warning on # # thumbpdf.pl # -# Copyright (C) 1999-2008 Heiko Oberdiek. +# Copyright (C) 1999-2011 Heiko Oberdiek. # # This work may be distributed and/or modified under the # conditions of the LaTeX Project Public License, either version 1.3 @@ -26,10 +26,10 @@ $^W=1; # turn warning on # my $file = "thumbpdf.pl"; my $program = uc($&) if $file =~ /^\w+/; -my $version = "3.11"; -my $date = "2010/07/07"; +my $version = "3.13"; +my $date = "2011/08/10"; my $author = "Heiko Oberdiek"; -my $copyright = "Copyright (c) 1999-2010 by $author."; +my $copyright = "Copyright (c) 1999-2011 by $author."; # # Reqirements: Perl5, Ghostscript # History: @@ -147,6 +147,8 @@ my $copyright = "Copyright (c) 1999-2010 by $author."; # 2008/04/16 v3.10 # 2010/07/07 v3.11 # * \input is used with file name extension for "thumbpdf.tex". +# 2011/08/10 v3.13 +# * Use gswin64c in Windows with 64 bits. # ### program identification @@ -160,7 +162,12 @@ my $Error = "!!! Error:"; # error prefix my $GS = "gs"; $GS = "gs386" if $^O =~ /dos/i; $GS = "gsos2" if $^O =~ /os2/i; -$GS = "gswin32c" if $^O =~ /mswin32/i; +if ($^O =~ /mswin32c/i) { + # http://perldoc.perl.org/perlport.html#DOS-and-Derivatives + use Config; + $GS = "gswin32c"; + $GS = "gswin64c" if $Config{'archname'} =~ /mswin32-x64/i; +} # Windows detection (no SIGHUP) my $Win = 0; @@ -236,6 +243,7 @@ Options: (defaults:) --(no)useps `makepng' uses `.ps' instead of `.pdf' file ($bool[$::opt_useps]) --(no)level2 `.tpm' with ps level 2 features ($bool[$::opt_level2]) --(no)greek text in greek style (experimental) ($bool[$::opt_greek]) + --gscmd call of ghostscript ($GS) --antialias [num2] anti-aliasing, 0 = disable, 4 = max ($::opt_antialias) --device|png [png] Ghostscript device for thumbnails, dev = mono, gray, 16, 256, 16m ($::opt_device) @@ -243,7 +251,7 @@ Options: (defaults:) --compress thumbnail compress level, n = 0..10 ($::opt_compress) --modes [,mode] mode=pdftex|pdfmark|dvips|ps2pdf| vtexpdfmark|all ($::opt_modes) - --password apassword for an encrypted pdf file ($::opt_password) + --password for an encrypted pdf file ($::opt_password) END_OF_USAGE ### environment variable THUMBPDF @@ -378,7 +386,7 @@ my $MaxThumb = 0; if ($::opt_makepng) { print "*** make png files / run Ghostscript ***\n" - unless $::opt_quiet or $::opt_printgscmd; + unless $::opt_quiet or $::opt_printgscmd; if ($::opt_useps) { print "* ps file: $jobfile\n" if $::opt_verbose; -- cgit v1.2.3