diff options
author | Karl Berry <karl@freefriends.org> | 2014-10-11 22:30:33 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2014-10-11 22:30:33 +0000 |
commit | 4888499385c44655bec69496f0e01649d7636627 (patch) | |
tree | b4530c653b64a9b165768c4423d6bcf0dd192c31 /Master/texmf-dist/tex/latex/latex-make/texdepends.sty | |
parent | 9406c7d3ffc09ac95d52d72e53d84e010a0a747d (diff) |
latex-make (11oct14)
git-svn-id: svn://tug.org/texlive/trunk@35357 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/latex-make/texdepends.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/latex-make/texdepends.sty | 581 |
1 files changed, 581 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/latex-make/texdepends.sty b/Master/texmf-dist/tex/latex/latex-make/texdepends.sty new file mode 100644 index 00000000000..e40de23c813 --- /dev/null +++ b/Master/texmf-dist/tex/latex/latex-make/texdepends.sty @@ -0,0 +1,581 @@ +%% +%% This is file `texdepends.sty', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% texdepends.dtx (with options: `package') +%% +%% IMPORTANT NOTICE: +%% +%% For the copyright see the source file. +%% +%% Any modified versions of this file must be renamed +%% with new filenames distinct from texdepends.sty. +%% +%% For distribution of the original source see the terms +%% for copying and modification in the file texdepends.dtx. +%% +%% This generated file may be distributed as long as the +%% original source files, as listed above, are part of the +%% same distribution. (The sources need not necessarily be +%% in the same archive or directory.) +%% +%% File: texdepends.dtx Copyright (C) 2004--2011 V. Danjean +%% Vincent.Danjean@ens-lyon.org +%% Modified by Matthieu Gallet +%% Matthieu.Gallet@ens-lyon.org +%% +%% This program is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; either version 2 +%% of the License, or (at your option) any later version. +%% +%% This program is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with this program; if not, write to the Free Software +%% Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +%% +\NeedsTeXFormat{LaTeX2e}% +\ProvidesPackage{texdepends}% +[2008/01/28\space Automatic depends generation. v1.2.0] +\RequirePackage{ifthen} +\newboolean{TD@debug} +\newcommand{\TD@option@debug}[1][true]{% + %\PackageWarningNoLine{texdepends}{Setting debug to #1} + \setboolean{TD@debug}{#1}% +}% +\def\TD@option@extension[#1]{% + %\PackageWarningNoLine{texdepends}{Using extention #1} + \def\TD@extention{#1}% +}% +\def\TD@option@split#1=#2=#3\relax{% + \def\TD@option@name{#1}% + \ifx\TD@option@name\@empty\else + \expandafter\let\expandafter\TD@option@cmd + \csname TD@option@\TD@option@name\endcsname + %\PackageWarningNoLine{texdepends}{1: '#1', 2: '#2', 3: '#3'} + \ifx\TD@option@cmd\relax + \@unknownoptionerror% + \else + \ifx\@empty#3\@empty + \TD@option@cmd\relax% + \else + \def\TD@option@value{#2}% + \TD@option@cmd[\TD@option@value]% + \fi + \fi + \fi +}% +\DeclareOption*{% + %\PackageWarningNoLine{texdepends}{Option \CurrentOption}% + \expandafter\TD@option@split\CurrentOption==\relax% +}% +\ProcessOptions +\ifthenelse{\isundefined{\TD@extention}}{% + \PackageWarningNoLine{texdepends}{No extension given: detecting it}% + \RequirePackage{ifxetex,ifpdf}% + \ifxetex% + \PackageWarningNoLine{textdepends}{Detected XeTeX: using .pdf}% + \def\TD@extention{.pdf}% + \else\ifpdf% + \PackageWarningNoLine{texdepends}{Detected PDF mode: using .pdf}% + \def\TD@extention{.pdf}% + \else% + \PackageWarningNoLine{texdepends}{Detected DVI mode. Using .dvi}% + \def\TD@extention{.dvi}% + \fi\fi% +}{}% +\newcommand{\TD@warning}[1]{% + \PackageWarningNoLine{texdepends}{#1}% +}% +\newcommand{\TD@warningLine}[1]{% + \PackageWarning{texdepends}{#1}% +}% +\newcommand{\TD@info}[1]{% + \ifthenelse{\boolean{TD@debug}}{% + \PackageWarningNoLine{texdepends}{#1}% + }{% + \PackageInfo{texdepends}{#1}% + }% +}% +\newcommand{\TD@debug}[1]{% + \ifthenelse{\boolean{TD@debug}}{% + \PackageWarningNoLine{texdepends}{#1}% + }{% + }% +}% +\newwrite\TD@write +\TD@info{Writing info in '\jobname\TD@extention.mk'} +\immediate\openout\TD@write\jobname\TD@extention.mk% +\def\TD@print#1{% + \immediate\write\TD@write{#1}% +}% +\def\TD@printClass#1{% + \TD@print{TD_\jobname\TD@extention _INPUTS\space += #1.cls}% +}% +\def\TD@printPackage#1{% + \TD@print{TD_\jobname\TD@extention _INPUTS\space += #1.sty}% +}% +\def\TD@printInput#1{% + \TD@print{TD_\jobname\TD@extention _INPUTS\space += #1}% +}% +\def\TD@printFig#1{% + \TD@print{TD_\jobname\TD@extention _FIGURES\space += #1}% +}% +\def\TD@printSubfig#1{% + \TD@print{TD_\jobname\TD@extention _SUBFIGS\space += #1}% +}% +\def\TD@printRequiredFile#1{% + \TD@print{TD_\jobname\TD@extention _REQUIRED\space += #1}% +}% +\let\RequireFile\TD@printRequiredFile +\def\TD@printOut#1{% + \TD@print{TD_\jobname\TD@extention _OUTPUTS\space += #1}% +}% +\def\TD@printGraphicspath#1{% + \TD@print{TD_\jobname\TD@extention _GRAPHICSPATH\space := #1}% +}% +\def\TD@printBibfile#1{% + \TD@print{TD_\jobname\TD@extention _BIBFILES\space += #1.bib}% +}% +\def\TD@printBibstyle#1{% + \TD@print{TD_\jobname\TD@extention _BIBSTYLES\space += #1.bst}% +}% +\def\TD@printBblfile#1{% + \TD@print{TD_\jobname\TD@extention _BBLFILES\space += #1.bbl}% +}% +\def\TD@printRebuildRule#1{% + \TD@print{TD_\jobname\TD@extention _REBUILD_RULES\space += #1}% +}% +\def\TD@printIndex#1{% + \TD@print{TD_\jobname\TD@extention _INDEXES\space += INDEX}% + \TD@print{TD_\jobname\TD@extention _INDEXES_INDEX\space += #1}% +}% +\def\TD@printIndexSource#1#2{% + \TD@print{TD_\jobname\TD@extention _INDEX_#1_SRC\space = #2}% +}% +\def\TD@printIndexTarget#1#2{% + \TD@print{TD_\jobname\TD@extention _INDEX_#1_TARGET\space = #2}% +}% +\def\TD@printIndexStyle#1#2{% + \TD@print{TD_\jobname\TD@extention _INDEX_#1_STYLE\space = #2}% +}% +\def\TD@printGlossary#1{% + \TD@print{TD_\jobname\TD@extention _INDEXES += GLOSS}% + \TD@print{TD_\jobname\TD@extention _INDEXES_GLOSS\space += #1}% +}% +\def\TD@printGlossarySource#1#2{% + \TD@print{TD_\jobname\TD@extention _GLOSS_#1_SRC\space = #2}% +}% +\def\TD@printGlossaryTarget#1#2{% + \TD@print{TD_\jobname\TD@extention _GLOSS_#1_TARGET\space = #2}% +}% +\def\TD@printGlossaryStyle#1#2{% + \TD@print{TD_\jobname\TD@extention _GLOSS_#1_STYLE\space = #2}% +}% +\def\TD@switch#1{% + \expandafter\let\expandafter\TD@local@old\csname#1\endcsname% + \expandafter\let\expandafter\TD@local@new\csname TD@#1\endcsname% + \ifx\TD@local@old\TD@local@new + \PackageWarning{texdepends}{#1 already redefined. Skipping it.}% + \else + \ifx\TD@local@old\relax + \TD@warning{Diverting empty macro '#1' \MessageBreak% + Probably a bug in texdepends.sty}% + \else + \TD@info{Diverting macro '#1'}% + \fi + \expandafter\let\csname TD@orig@#1\endcsname\TD@local@old% + \expandafter\let\csname#1\endcsname\TD@local@new% + \fi +}% +\def\TD@docswitchlist{}% +\def\TD@docswitch#1{% + \TD@info{Registering macro '#1' for diversion}% + \ifx\TD@docswitchlist\@empty% + \xdef\TD@docswitchlist{#1}% + \else% + \xdef\TD@docswitchlist{\TD@docswitchlist,#1}% + \fi% +}% +\AtBeginDocument{% + \TD@info{Diverting registered macros...}% + \@for\TD@cmd:=\TD@docswitchlist\do{% + \TD@switch{\TD@cmd}% + }% + \TD@info{Divertions done}% +}% +\def\TD@PackagePreDivert#1{% + \expandafter\def\csname TD@PackageStart@#1\endcsname ##1##2##3##4% +}% +\def\TD@PackagePostDivert#1{% + \expandafter\def\csname TD@PackageEnd@#1\endcsname ##1##2##3##4% +}% +\ifx\documentclass\@twoclasseserror + \PackageError{texdepends}{texdepends needs to be loaded BEFORE + \string\documentclass \MessageBreak + Use \string\RequirePackage\space instead of \string\usepackage + \MessageBreak as the later is not allowed before + \string\documentclass} +\fi +\TD@printPackage{texdepends} +\TD@printGraphicspath{{.}} +\def\TD@depends{}% +\def\TD@dependsWarning{% + \PackageWarningNoLine{texdepends}{Figure(s) missing. Check + dependencies again}% +}% +\def\TD@missingDepends{% + \global\let\TD@depends\TD@dependsWarning% +}% +\AtEndDocument{% + \TD@depends% +}% +\def\TD@@fileswith@pti@ns#1[#2]#3[#4]{% + \ifx#1\@clsextension + \TD@printClass{#3} + \fi + \TD@orig@@fileswith@pti@ns{#1}[#2]{#3}[#4]% +}% +\let\TD@@@fileswith@pti@ns\TD@@fileswith@pti@ns +\TD@switch{@fileswith@pti@ns}% +\TD@switch{@@fileswith@pti@ns}% +\def\TD@@onefilewithoptions#1[#2][#3]#4{% + \TD@printPackage{#1}% + \ifthenelse{\equal{#1}{texdepends}}{% + \TD@debug{Package '#1' detected} + \@for\TD@package@option:=#2\do{% + \ifthenelse{\expandafter\isundefined\csname TD@option@\TD@package@option\endcsname}{ + \TD@warningLine{Ignoring unknown option '\TD@package@option'} + }{ + \ifthenelse{% + \equal{\TD@package@option}{debug}% + %\OR\equal{\TD@package@option}{debug}% + }{ + \csname TD@option@\TD@package@option\endcsname% + }{ + \TD@warningLine{Ignoring option '\TD@package@option' + \MessageBreak #1 already loaded + } + } + } + } + }{% + \expandafter\let\expandafter\TD@divert + \csname TD@PackageStart@#1\endcsname + \ifx\TD@divert\relax + \TD@debug{No preamble for package #1} + \else + \TD@info{Preamble for package #1} + \TD@divert{#1}{#2}{#3}{#4}% + \fi + \TD@orig@@onefilewithoptions{#1}[#2][#3]{#4}% + \expandafter\let\expandafter\TD@divert + \csname TD@PackageEnd@#1\endcsname + \ifx\TD@divert\relax + \TD@debug{No postamble for package #1} + \else + \TD@info{Postamble for package #1} + \TD@divert{#1}{#2}{#3}{#4}% + \fi + }% +}% +\TD@switch{@onefilewithoptions}% +\def\TD@@iinput#1{% + \TD@printInput{#1}% + \TD@orig@@iinput{#1}}% +\def\TD@@input@#1{% + \IfFileExists{#1}{% + \TD@printInput{#1}% + }{}% + \TD@orig@@input@{#1}}% +\TD@switch{@iinput}% +\TD@switch{@input@}% +\def\TD@verbatiminput#1{% + \TD@printInput{#1}% + \TD@orig@verbatiminput{#1}}% +\TD@PackagePostDivert{verbatim}{% + \TD@switch{verbatiminput}}% +\let\TD@orig@openout\openout +\def\TD@openout#1{% + \@ifnextchar={\TD@openout@eq#1}{\TD@openout@noeq#1}} +\def\TD@openout@eq#1=#2.#3{% + \TD@printOut{#2.#3}% + \TD@orig@openout#1=#2.#3% +}% +\def\TD@openout@noeq#1#2.#3{% + \TD@printOut{#2.#3}% + \TD@orig@openout#1#2.#3% +}% + %\TD@switch{openout} +\def\TD@bibli@bbl{% + \TD@printBblfile{\jobname}% + \global\let\TD@bibli@bbl\relax% +}% +\def\TD@bibli@files#1{% + \TD@bibli@bbl% + \@for\TD@bibfile:=#1\do{% + \TD@printBibfile{\TD@bibfile}% + }% +} +\def\TD@bibli@style#1{% + \TD@bibli@bbl% + %\@for\TD@bibstyle:=#1\do{% + % \TD@printBibstyle{\TD@bibstyle}% + %} + \TD@printBibstyle{#1}% +} +\def\TD@bibliography#1{% + \TD@bibli@files{#1}% + \TD@orig@bibliography{#1}% +}% +\def\TD@bibliographystyle#1{% + \TD@bibli@style{#1}% + \TD@orig@bibliographystyle{#1}% +}% +\TD@docswitch{bibliography}% +\TD@switch{bibliographystyle}% +\def\TD@makeindex{% + \TD@printIndex{\jobname}% + \TD@printIndexSource{\jobname}{\jobname.idx}% + \TD@orig@makeindex% +}% +\def\TD@makeglossary{% + \TD@printGlossary{\jobname}% + \TD@printGlossarySource{\jobname}{\jobname.glo}% + \TD@orig@makeglossary% +}% +\TD@switch{makeindex}% +\TD@switch{makeglossary}% +\def\TD@Gin@getbase#1{% + \TD@orig@Gin@getbase{#1}% + \ifx\Gin@ext\relax% + \else% + \TD@printFig{\Gin@base\Gin@ext}% + \fi% +}% +\def\TD@Ginclude@eps#1{% + \IfFileExists{#1}{% + \TD@orig@Ginclude@eps{#1}% + }{% + \PackageWarning{texdepends}{Figure '#1' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + \TD@missingDepends% + \TD@printRequiredFile{#1}% + }% +}% +\def\TD@Ginclude@pdf#1{% + \IfFileExists{#1}{% + \TD@orig@Ginclude@pdf{#1}% + }{% + \PackageWarning{texdepends}{Figure '#1' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + \TD@missingDepends% + \TD@printRequiredFile{#1}% + }% +}% +\def\TD@graphicspath#1{% + \TD@printGraphicspath{#1}% + \TD@orig@graphicspath{#1}% +}% +\def\TD@Gread@eps#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Gread File '#1' exists}% + \TD@orig@Gread@eps{#1}% + }{% + \PackageWarning{texdepends}{No '#1' file \MessageBreak + using 1 for graphic dimensions}% + \setbox\@tempboxa\hbox{\relax}% + \def\Gin@llx{1}\let\Gin@lly\Gin@llx + \Gin@defaultbp\Gin@urx{\wd\@tempboxa}% + \Gin@defaultbp\Gin@ury{\ht\@tempboxa}% + }% +}% +\def\TD@Gread@pdf#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Gread File '#1' exists}% + \TD@orig@Gread@pdf{#1}% + }{% + \PackageWarning{texdepends}{No '#1' file \MessageBreak + using 1 for graphic dimensions}% + \setbox\@tempboxa\hbox{\relax}% + \def\Gin@llx{1}\let\Gin@lly\Gin@llx + \Gin@defaultbp\Gin@urx{\wd\@tempboxa}% + \Gin@defaultbp\Gin@ury{\ht\@tempboxa}% + }% +}% +\TD@PackagePostDivert{graphics}{% + \TD@switch{graphicspath}% + \TD@docswitch{Gin@getbase}% + \TD@docswitch{Ginclude@eps}% + \TD@docswitch{Ginclude@pdf}% + \TD@docswitch{Gread@eps}% + \TD@docswitch{Gread@pdf}% +}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\TD@FL@includerawtexgraphics[#1]#2{% + \IfFileExists{#2}{% + \TD@orig@FL@includerawtexgraphics[#1]{#2}% + }{% + \PackageWarning{texdepends}{Figure '#2' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + \TD@missingDepends% + \TD@printRequiredFile{#2}% + }% +}% + +\def\TD@Ginclude@rawtex#1{% + \IfFileExists{#1}{% + \TD@orig@Ginclude@rawtex{#1}% + }{% + \PackageWarning{texdepends}{Figure '#1' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + \TD@missingDepends% + \TD@printRequiredFile{#1}% + }% +}% + +\def\TD@Ginclude@figtex#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Ginclude File '#1' exists}% + \TD@orig@Ginclude@figtex{#1}% + }{% + \ifthenelse{\isundefined{\FL@subfig@mainfigname}}{% + \PackageWarning{texdepends}{Figure '#1' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + }{% + \PackageWarning{texdepends}{SubFigure '#1' from + \FL@subfig@mainfigname needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + } + \TD@missingDepends% + \TD@printRequiredFile{#1}% + }% +}% +\def\TD@Ginclude@svgtex#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Ginclude File '#1' exists}% + \TD@orig@Ginclude@svgtex{#1}% + }{% + \ifthenelse{\isundefined{\FL@subfig@mainfigname}}{% + \PackageWarning{texdepends}{Figure '#1' needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + }{% + \PackageWarning{texdepends}{SubFigure '#1' from + \FL@subfig@mainfigname needed\MessageBreak + Skipping it this time (the last one however)\MessageBreak}% + } + \TD@missingDepends% + \TD@printRequiredFile{#1}% + }% +}% + +\def\TD@Gread@figtex#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Gread File '#1' exists}% + \TD@orig@Gread@figtex{#1}% + }{% + \PackageWarning{texdepends}{No '#1' file \MessageBreak + using 1 for graphic dimensions}% + \setbox\@tempboxa\hbox{\relax}% + \def\Gin@llx{1}\let\Gin@lly\Gin@llx + \Gin@defaultbp\Gin@urx{\wd\@tempboxa}% + \Gin@defaultbp\Gin@ury{\ht\@tempboxa}% + }% +}% + +\def\TD@Gread@svgtex#1{% + \IfFileExists{#1}{% + %\PackageWarning{texdepends}{Gread File '#1' exists}% + \TD@orig@Gread@svgtex{#1}% + }{% + \PackageWarning{texdepends}{No '#1' file \MessageBreak + using 1 for graphic dimensions}% + \setbox\@tempboxa\hbox{\relax}% + \def\Gin@llx{1}\let\Gin@lly\Gin@llx + \Gin@defaultbp\Gin@urx{\wd\@tempboxa}% + \Gin@defaultbp\Gin@ury{\ht\@tempboxa}% + }% +}% +\def\TD@FL@subfig@check#1{% + \TD@printRequiredFile{#1}% + \TD@printSubfig{#1}% +}% +\TD@PackagePostDivert{figlatex}{% + \TD@docswitch{FL@includerawtexgraphics}% + \TD@docswitch{Ginclude@rawtex}% + \TD@docswitch{Ginclude@figtex}% + \TD@docswitch{Ginclude@svgtex}% + \TD@docswitch{Gread@figtex}% + \TD@docswitch{Gread@svgtex}% + \TD@docswitch{FL@subfig@check}% +}% +\def\TD@PrintIndex{% + \TD@printIndexStyle{\jobname}{gind.ist} + \TD@printIndexTarget{\jobname}{\jobname.ind} + \TD@orig@PrintIndex% +}% +\def\TD@PrintChanges{% + \TD@printGlossaryStyle{\jobname}{gglo.ist} + \TD@printGlossaryTarget{\jobname}{\jobname.gls} + \TD@orig@PrintChanges% +}% +\TD@PackagePostDivert{doc}{% + \TD@docswitch{PrintIndex}% + \TD@docswitch{PrintChanges}% +}% +\def\TD@def@index#1#2#3#4{% + \TD@printIndex{#2}% + \TD@printIndexSource{#2}{\jobname.#3}% + \TD@printIndexTarget{#2}{\jobname.#4} + \TD@orig@def@index{#1}{#2}{#3}{#4}% +}% +\TD@PackagePostDivert{index}{% + \TD@switch{def@index}% +}% +\def\TD@printindex{% + \TD@printIndexTarget{\jobname}{\jobname.ind} + \TD@orig@printindex% +}% +\TD@PackagePostDivert{makeidx}{% + \TD@docswitch{printindex}% +}% +\def\TD@printglossary{% + \TD@printGlossaryTarget{\jobname}{\jobname.gls} + \TD@orig@printglossary% +}% +\TD@PackagePostDivert{nomencl}{% + \TD@docswitch{printglossary}% + \TD@switch{makeglossary}% + \TD@printGlossaryStyle{\jobname}{nomencl.ist} +}% +\def\TD@btSect{% + \@ifnextchar[{\TD@btSect@opt}{\TD@btSect@noopt}} +\def\TD@btSect@opt[#1]#2{% + \TD@bibli@files{#2}% + \TD@bibli@style{#1}% + \TD@orig@btSect[#1]{#2}} +\def\TD@btSect@noopt#1{% + \TD@bibli@files{#1}% + \TD@orig@btSect{#1}} + +\def\TD@@bt@write@auxfile{% + \TD@printBblfile{\thebtauxfile}% + \TD@orig@@bt@write@auxfile% +}% +\TD@PackagePostDivert{bibtopic}{% + \global\let\TD@bibli@bbl\relax% + \global\let\TD@biblio@rules@package\TD@biblio@rules@package@bibtopic% + \TD@switch{@bt@write@auxfile}% + \TD@printOut{btbbl.aux}% + \TD@printRebuildRule{bibtopic}% + \TD@docswitch{btSect}% +}% +\endinput +%% +%% End of file `texdepends.sty'. |