From 8b2c7dfa75b8296bcb312b594a4c597d7b6c3e7f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Tue, 3 Jan 2012 00:44:49 +0000 Subject: new (renamed) script latexfileversion 0.3 (2jan12) git-svn-id: svn://tug.org/texlive/trunk@25012 c570f23f-e606-0410-a88d-b1316a301751 --- Master/bin/alpha-linux/latexfileversion | 1 + Master/bin/amd64-freebsd/latexfileversion | 1 + Master/bin/amd64-kfreebsd/latexfileversion | 1 + Master/bin/i386-cygwin/latexfileversion | 1 + Master/bin/i386-freebsd/latexfileversion | 1 + Master/bin/i386-kfreebsd/latexfileversion | 1 + Master/bin/i386-linux/latexfileversion | 1 + Master/bin/i386-netbsd/latexfileversion | 1 + Master/bin/i386-solaris/latexfileversion | 1 + Master/bin/mips-irix/latexfileversion | 1 + Master/bin/powerpc-aix/latexfileversion | 1 + Master/bin/powerpc-linux/latexfileversion | 1 + Master/bin/sparc-linux/latexfileversion | 1 + Master/bin/sparc-solaris/latexfileversion | 1 + Master/bin/universal-darwin/latexfileversion | 1 + Master/bin/x86_64-darwin/latexfileversion | 1 + Master/bin/x86_64-linux/latexfileversion | 1 + Master/bin/x86_64-solaris/latexfileversion | 1 + .../doc/support/latexfileversion/ChangeLog | 9 ++ .../texmf-dist/doc/support/latexfileversion/README | 29 +++++ .../scripts/latexfileversion/latexfileversion | 118 +++++++++++++++++++++ Master/tlpkg/bin/check-files-by-format | 2 +- Master/tlpkg/bin/check-wrapper-consistency | 14 ++- Master/tlpkg/bin/tlpkg-ctan-check | 3 +- Master/tlpkg/libexec/ctan2tds | 3 +- Master/tlpkg/tlpsrc/collection-binextra.tlpsrc | 1 + Master/tlpkg/tlpsrc/latexfileversion.tlpsrc | 1 + 27 files changed, 187 insertions(+), 11 deletions(-) create mode 120000 Master/bin/alpha-linux/latexfileversion create mode 120000 Master/bin/amd64-freebsd/latexfileversion create mode 120000 Master/bin/amd64-kfreebsd/latexfileversion create mode 120000 Master/bin/i386-cygwin/latexfileversion create mode 120000 Master/bin/i386-freebsd/latexfileversion create mode 120000 Master/bin/i386-kfreebsd/latexfileversion create mode 120000 Master/bin/i386-linux/latexfileversion create mode 120000 Master/bin/i386-netbsd/latexfileversion create mode 120000 Master/bin/i386-solaris/latexfileversion create mode 120000 Master/bin/mips-irix/latexfileversion create mode 120000 Master/bin/powerpc-aix/latexfileversion create mode 120000 Master/bin/powerpc-linux/latexfileversion create mode 120000 Master/bin/sparc-linux/latexfileversion create mode 120000 Master/bin/sparc-solaris/latexfileversion create mode 120000 Master/bin/universal-darwin/latexfileversion create mode 120000 Master/bin/x86_64-darwin/latexfileversion create mode 120000 Master/bin/x86_64-linux/latexfileversion create mode 120000 Master/bin/x86_64-solaris/latexfileversion create mode 100644 Master/texmf-dist/doc/support/latexfileversion/ChangeLog create mode 100644 Master/texmf-dist/doc/support/latexfileversion/README create mode 100755 Master/texmf-dist/scripts/latexfileversion/latexfileversion create mode 100644 Master/tlpkg/tlpsrc/latexfileversion.tlpsrc (limited to 'Master') diff --git a/Master/bin/alpha-linux/latexfileversion b/Master/bin/alpha-linux/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/alpha-linux/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/amd64-freebsd/latexfileversion b/Master/bin/amd64-freebsd/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/amd64-freebsd/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/amd64-kfreebsd/latexfileversion b/Master/bin/amd64-kfreebsd/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/amd64-kfreebsd/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-cygwin/latexfileversion b/Master/bin/i386-cygwin/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-cygwin/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-freebsd/latexfileversion b/Master/bin/i386-freebsd/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-freebsd/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-kfreebsd/latexfileversion b/Master/bin/i386-kfreebsd/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-kfreebsd/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-linux/latexfileversion b/Master/bin/i386-linux/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-linux/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-netbsd/latexfileversion b/Master/bin/i386-netbsd/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-netbsd/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/i386-solaris/latexfileversion b/Master/bin/i386-solaris/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/i386-solaris/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/mips-irix/latexfileversion b/Master/bin/mips-irix/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/mips-irix/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/powerpc-aix/latexfileversion b/Master/bin/powerpc-aix/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/powerpc-aix/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/powerpc-linux/latexfileversion b/Master/bin/powerpc-linux/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/powerpc-linux/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/sparc-linux/latexfileversion b/Master/bin/sparc-linux/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/sparc-linux/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/sparc-solaris/latexfileversion b/Master/bin/sparc-solaris/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/sparc-solaris/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/universal-darwin/latexfileversion b/Master/bin/universal-darwin/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/universal-darwin/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/x86_64-darwin/latexfileversion b/Master/bin/x86_64-darwin/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/x86_64-darwin/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/x86_64-linux/latexfileversion b/Master/bin/x86_64-linux/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/x86_64-linux/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/bin/x86_64-solaris/latexfileversion b/Master/bin/x86_64-solaris/latexfileversion new file mode 120000 index 00000000000..a18f79465fc --- /dev/null +++ b/Master/bin/x86_64-solaris/latexfileversion @@ -0,0 +1 @@ +../../texmf-dist/scripts/latexfileversion/latexfileversion \ No newline at end of file diff --git a/Master/texmf-dist/doc/support/latexfileversion/ChangeLog b/Master/texmf-dist/doc/support/latexfileversion/ChangeLog new file mode 100644 index 00000000000..c99b4da24a3 --- /dev/null +++ b/Master/texmf-dist/doc/support/latexfileversion/ChangeLog @@ -0,0 +1,9 @@ +2011-12-31 v0.3 Harald Harders + - Rename from getfileversion to latexfileversion + - Add support for arbitrary tex input file types + +2011-12-30 v0.2 Harald Harders + - Avoid special characters as guillemets + +2005-04-30 v0.1 Harald Harders + - Initial version. diff --git a/Master/texmf-dist/doc/support/latexfileversion/README b/Master/texmf-dist/doc/support/latexfileversion/README new file mode 100644 index 00000000000..82c7ef6e925 --- /dev/null +++ b/Master/texmf-dist/doc/support/latexfileversion/README @@ -0,0 +1,29 @@ + +This simple shell script prints the version and date of a LaTeX input +files (e.g., class or style files). + +Syntax: +latexfileversion + +This programme handles style files (extension .sty), +class files (extension .cls), and other tex input files. +The file extension must be given. + + +Copyright 2005, 2011 Harald Harders, h.harders@tu-bs.de + +This programme may be distributed and/or modified under the +conditions of the LaTeX Project Public License, either version 1.2 +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.2 or later is part of all distributions of LaTeX +version 1999/12/01 or later. + +This programme consists of the files latexfileversion, README, and ChangeLog. + +Before version 0.3, this tool used to be named getfileversion. + +Harald Harders +harald.harders@gmx.de +2011-12-31 diff --git a/Master/texmf-dist/scripts/latexfileversion/latexfileversion b/Master/texmf-dist/scripts/latexfileversion/latexfileversion new file mode 100755 index 00000000000..bae05f520aa --- /dev/null +++ b/Master/texmf-dist/scripts/latexfileversion/latexfileversion @@ -0,0 +1,118 @@ +#!/usr/bin/env bash +## latexfileversion +## +## This simple shell script prints the version and date of a LaTeX class or +## style file. +## +## Version 0.3, 2011-12-31, Add support for arbitrary tex input file types +## Rename from getfileversion to latexfileversion +## Version 0.2, 2011-12-30, Avoid special characters as guillemots +## Version 0.1, 2005-04-30, Initial version +## +## Copyright 2005, 2011 Harald Harders, harald.harders@gmx.de +## +## This programme may be distributed and/or modified under the +## conditions of the LaTeX Project Public License, either version 1.2 +## 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.2 or later is part of all distributions of LaTeX +## version 1999/12/01 or later. +## +## This programme consists of the files +## latexfileversion, README, and ChangeLog. +VERSION=0.3 + +# help screen +if [ -z "$1" ] +then + echo 'latexfileversion v'$VERSION >&2 + echo '' >&2 + echo 'This programme prints the version and date of a LaTeX class or' >&2 + echo 'style file.' >&2 + echo '' >&2 + echo 'Syntax:' >&2 + echo 'latexfileversion ' >&2 + echo '' >&2 + echo 'This programme handles style files (extension .sty),' >&2 + echo 'class files (extension .cls), and other tex input files.' >&2 + echo 'The file extension must be given.' >&2 + exit 1 +fi + +# make temporary directory +TMPDIR=`mktemp -d /tmp/latexfileversion.XXXXXX` || exit 1 +cd $TMPDIR + +# extract basenames for extensions .cls and .sty +FILE=$1 +STYLE=${1%%.sty} +CLASS=${1%%.cls} + +# handle .cls files and .sty files seperately +if [ "$CLASS.cls" == "$FILE" ] +then + echo -n "Looking for class file '$CLASS.cls': " + # generate temporary LaTeX file +( +cat << EOM +\documentclass{$CLASS} +\nofiles +\makeatletter +\def\GetFileInfo#1{% + \def\filename{#1}% + \def\@tempb##1 ##2 ##3\relax##4\relax{% + \def\filedate{##1}% + \def\fileversion{##2}% + \def\fileinfo{##3}}% + \edef\@tempa{\csname ver@#1\endcsname}% + \expandafter\@tempb\@tempa\relax? ? \relax\relax} +\makeatother +\GetFileInfo{$CLASS.cls} +\typeout{VERSION \fileversion, \filedate} +\begin{document} +\end{document} +EOM +) > latexfileversion.tex +else + if [ "$STYLE.sty" == "$FILE" ] + then + echo -n "Looking for style file '$STYLE.sty': " + # generate temporary LaTeX file +( +cat << EOM +\documentclass{ltxdoc} +\nofiles +\usepackage{$STYLE} +\GetFileInfo{$STYLE.sty} +\typeout{VERSION \fileversion, \filedate} +\begin{document} +\end{document} +EOM +) > latexfileversion.tex + else + echo -n "Looking for file '$FILE': " + # generate temporary LaTeX file +( +cat << EOM +\documentclass{ltxdoc} +\nofiles +\input{$FILE} +\GetFileInfo{$FILE} +\typeout{VERSION \fileversion, \filedate} +\begin{document} +\end{document} +EOM +) > latexfileversion.tex + fi +fi + +# run temporary LaTeX file which writes »VERSION ...« into the logfile +pdflatex -interaction=nonstopmode latexfileversion.tex > /dev/null +# extract the line containing »VERSION« and remove »VERSION « +grep -e '^VERSION' latexfileversion.log | sed 's/VERSION //' + +# delete temporary directory +rm -rf $TMPDIR + +#EOF diff --git a/Master/tlpkg/bin/check-files-by-format b/Master/tlpkg/bin/check-files-by-format index ae01e703735..8c74c7f4aff 100755 --- a/Master/tlpkg/bin/check-files-by-format +++ b/Master/tlpkg/bin/check-files-by-format @@ -91,7 +91,7 @@ my $exclude_pfb = { '*base*' => 'texmf-dist/fonts/type1', 'public/itrans/' => 1, 'public/kerkis/' => 1, 'public/kpfonts/' => 1, - 'public/libertine/' => 1, + 'public/libertine-legacy/' => 1, 'public/linearA/' => 1, 'public/lm/' => 1, 'public/lxfonts/' => 1, diff --git a/Master/tlpkg/bin/check-wrapper-consistency b/Master/tlpkg/bin/check-wrapper-consistency index 1fde768d7f0..f31b853de3b 100755 --- a/Master/tlpkg/bin/check-wrapper-consistency +++ b/Master/tlpkg/bin/check-wrapper-consistency @@ -1,6 +1,6 @@ #!/usr/bin/env perl # $Id$ -# Copyright 2008, 2009, 2010 TeX Users Group. +# Copyright 2008, 2009, 2010, 2011 TeX Users Group. # This file is licensed under the GNU General Public License version 2 # or any later version. # @@ -25,8 +25,7 @@ pod2usage(-exitstatus => 0, -verbose => 2) if $help; exit (&main ()); -sub main -{ +sub main { my $err = 0; chomp (my $Master = `cd $mydir/../.. && pwd`); @@ -54,8 +53,7 @@ sub main # return all symlinks starting with ".." in DIR as a hash, with symlink # targets as the values. Check that targets are executable. # -sub unx_wrapper_entries -{ +sub unx_wrapper_entries { my ($DIR) = @_; my %ret; @@ -89,8 +87,7 @@ sub unx_wrapper_entries # W32DIR as a .exe, and is a copy of the canonical w32 wrapper exe # specified in W32CANONICAL. # -sub check_w32 -{ +sub check_w32 { my ($w32dir, $w32canonical, %uw) = @_; my $diff = 0; @@ -99,7 +96,8 @@ sub check_w32 next if $target =~ /bibexport/; # shell script next if $target =~ /context/; # does it its own way next if $target =~ /dviout/; # gui stub - next if $target =~ /installfont-tl/;# shell script + next if $target =~ /installfont-tl/; # shell script + next if $target =~ /latexfileversion/; # shell script next if $target =~ /listings-ext/; # shell script next if $target =~ /man/; # no symlink next if $target =~ /pdfjam/; # shell scripts diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check index 5304612939d..c67116db43d 100755 --- a/Master/tlpkg/bin/tlpkg-ctan-check +++ b/Master/tlpkg/bin/tlpkg-ctan-check @@ -221,7 +221,8 @@ my @TLP_working = qw( latex-tds latex-veryshortguide latex2e-help-texinfo latex2e-help-texinfo-spanish latex2man latex4wp latex4wp-it - latexcheat latexcheat-esmx latexcheat-ptbr latexdiff latexmk latexmp + latexcheat latexcheat-esmx latexcheat-ptbr + latexdiff latexfileversion latexmk latexmp lato layaureo layouts lazylist lcd lcg lcyw leading leaflet lecturer ledmac leftidx lettre lettrine levy lewis lexikon lfb lgreek lh lhelp diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds index f2fe9b13ab7..8b1130e9b28 100755 --- a/Master/tlpkg/libexec/ctan2tds +++ b/Master/tlpkg/libexec/ctan2tds @@ -2044,6 +2044,7 @@ $standardxmt='\.xmt'; 'latex2man' => 'latex2man$', 'latexdiff' => 'latex(diff-so|diff-vc|revise)$', 'latexmk' => '\.pl$', + 'latexfileversion' => 'latexfileversion$', 'listings-ext' => '\.sh$', 'match_parens' => '^match_parens$', 'mathspic' => '^mathspic\.pl$', @@ -2668,7 +2669,7 @@ sub dotype1{ # Build/source/tex/texlive/linked_scripts/Makefile.am installs symlinks # in the bin directories where needed. That Makefile is independently # maintained, needs to be updated by hand when new user-visible scripts -# are added. We do add/update the script itself under linked_scripts. +# are added. We add/update the script itself under linked_scripts. # We also make the symlinks/w32-wrapper-copy in Master/bin. # sub doscripts { diff --git a/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc b/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc index c7a083fa2f3..0b845170798 100644 --- a/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc +++ b/Master/tlpkg/tlpsrc/collection-binextra.tlpsrc @@ -33,6 +33,7 @@ depend installfont depend lacheck depend latex2man depend latexdiff +depend latexfileversion depend latexmk depend listings-ext depend match_parens diff --git a/Master/tlpkg/tlpsrc/latexfileversion.tlpsrc b/Master/tlpkg/tlpsrc/latexfileversion.tlpsrc new file mode 100644 index 00000000000..cafc10a4006 --- /dev/null +++ b/Master/tlpkg/tlpsrc/latexfileversion.tlpsrc @@ -0,0 +1 @@ +binpattern f bin/${ARCH}/latexfileversion -- cgit v1.2.3