diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/latex-tds')
11 files changed, 324 insertions, 220 deletions
diff --git a/Master/texmf-dist/source/latex/latex-tds/README.asciidoc b/Master/texmf-dist/source/latex/latex-tds/README.asciidoc index d17267851a2..968481f9067 100644 --- a/Master/texmf-dist/source/latex/latex-tds/README.asciidoc +++ b/Master/texmf-dist/source/latex/latex-tds/README.asciidoc @@ -1,7 +1,7 @@ README for project latex-tds ============================ :author: Heiko Oberdiek -:revdate: 2014/02/03 +:revdate: 2014/05/08 :lang: en :toc: :numbered: @@ -254,7 +254,7 @@ Licenses |license/lppl.txt |LPPL (The LaTeX Project Public License) for latex-tds and adjust_checksum |license/ziptimetree/lgpl.txt |LGPL (GNU Lesser General Public License) - for ziptimetree + for ziptimetree, check-ascii, check-eolspaces |=== Scripts @@ -264,6 +264,8 @@ Scripts |build.pl |main script for building the distribution |lib/adjust_checksum.pl |Perl script that runs a DTX file through LaTeX and corrects its +\Checksum+ if necessary +|lib/check-ascii.pl |Perl script that looks for non-ASCII characters +|lib/check-eolspaces.pl |Perl script that looks for trailing spaces |lib/ziptimetree.pl |Perl script that generates a ZIP file from a directory tree with sorted entries (LGPL) |=== @@ -661,3 +663,18 @@ History languages are now maintained separately. * Update of knuth (2014/01/19). * Update of base (errata lists: +lb2.err+, +tlc2.err+). +2014/05/03:: + * Update of LaTeX, release 2014/05/01 + using public subversion repository of LaTeX2e. + Modules: base, cyrillic, graphics, tools. + * Line ends are normalized in source text files of the LaTeX modules. + Trailing spaces are removed and the line ends are Unix line ends. + * Update of armtex (needed to generate module base). + * New options +--vcs+ and +--vcs-update+ for using the files of + the public source repository of the LaTeX project. +2014/05/05:: + * Using LaTeX modules from CTAN. +2014/05/08:: + * Update of base and graphics. + * +README.html+ with Unix line ends. + * ZIP file for CTAN upload with top level directory +latex-tds+. diff --git a/Master/texmf-dist/source/latex/latex-tds/build.pl b/Master/texmf-dist/source/latex/latex-tds/build.pl index a654ba7e469..d1dbf8fe08e 100755 --- a/Master/texmf-dist/source/latex/latex-tds/build.pl +++ b/Master/texmf-dist/source/latex/latex-tds/build.pl @@ -4,8 +4,8 @@ $^W=1; my $prj = 'latex-tds'; my $file = 'build.pl'; -my $version = '1.182'; -my $date = '2014-02-03'; +my $version = '1.185'; +my $date = '2014-05-08'; my $author = 'Heiko Oberdiek'; my $copyright = "Copyright 2006-2014 $author"; chomp(my $license = <<"END_LICENSE"); @@ -67,12 +67,16 @@ my $dir_incoming = 'incoming'; my $dir_incoming_ctan = "$dir_incoming/ctan"; my $dir_incoming_ams = "$dir_incoming/ams"; my $dir_incoming_ltxprj = "$dir_incoming/ltxprj"; +my $dir_ltxpub = "latex2e-public"; +my $dir_incoming_ltxpub = "$dir_incoming/$dir_ltxpub"; my $dir_build = 'build'; my $dir_lib = 'lib'; my $dir_license = 'license'; my $dir_tex = 'tex'; my $dir_patch = 'patch'; my $dir_distrib = 'distrib'; +my $dir_build_distrib = "$dir_build/distrib"; +my $dir_build_distrib_data = "$dir_build_distrib/$prj"; my $dir_texmf = 'texmf'; chomp(my $cwd = `pwd`); @@ -125,13 +129,14 @@ my $prg_lualatextds = "lualatex -fmt=$cwd/$dir_build/lualatex-tds"; my $prg_lualatextds2 = "lualatex -fmt=$cwd/$dir_build/lualatex-tds2"; my $prg_pdflatex = 'pdflatex'; my $prg_pdflatextds = "pdflatex -fmt=$cwd/$dir_build/pdflatex-tds"; -my $prg_pdftex = "pdftex"; -my $prg_recode = "recode"; -my $prg_rm = "rm"; -my $prg_rsync = "rsync"; +my $prg_pdftex = 'pdftex'; +my $prg_recode = 'recode'; +my $prg_rm = 'rm'; +my $prg_rsync = 'rsync'; my $prg_sed = "sed"; -my $prg_sort = "sort"; -my $prg_texhash = "texhash"; +my $prg_sort = 'sort'; +my $prg_svn = 'svn'; +my $prg_texhash = 'texhash'; my $prg_unzip = 'unzip'; my $prg_w3m = 'w3m'; my $prg_weave = 'weave'; @@ -172,6 +177,8 @@ my $usage = <<"END_OF_USAGE"; Usage: build.pl [options] General options: --(no)download (check for newer files, disabled by default) + --(no)vcs (use version control files) + --(no)vcs-update (update version control files) --(no)postprocess (pdf files are postprocessed, enabled by default) --(no)cache (use cached pdf files, enabled by default) Module options: @@ -180,6 +187,8 @@ END_OF_USAGE map { $usage .= " --(no)$_\n"; } @pkg_list; my $opt_download = 0; +my $opt_vcs = 0; +my $opt_vcs_update = 0; my $opt_postprocess = 0; my $opt_cache = 1; my $opt_all = 0; @@ -195,6 +204,8 @@ GetOptions( map { $modules{$_} = 1; } @pkg_list; }, 'download!' => \$opt_download, + 'vcs!' => \$opt_vcs, + 'vcs-update!' => \$opt_vcs_update, 'postprocess!' => \$opt_postprocess, 'cache!' => \$opt_cache, ) or die $usage; @@ -210,12 +221,32 @@ sub cd ($) { chdir $dir or die "$error Cannot change to directory `$dir'!\n"; } +### Line end sanitizing + +sub lf ($) { + my $file = shift; + open(IN, '<', $file) or die "!!! Error: Cannot open `$file'!\n"; + my @lines = <IN>; + close(IN); + my $found = 0; + $found += s/\s+$/\n/ for @lines; + if ($found) { + open(OUT, '>', $file) or die "!!! Error: Cannot write `$file'!\n"; + print OUT @lines; + close(OUT); + print "--> lf($file): $found line(s) fixed.\n"; + } + else { + print "--> lf($file): nothing to do.\n"; + } +} + ### Format generation if (@list_modules > 0) { section('Format generation'); ensure_directory($dir_build); - + sub make_ini ($$) { my $prg = shift; my $fmt = shift; @@ -229,12 +260,12 @@ if (@list_modules > 0) { run("$prg_cp $fmt.fmt $fmt.log $dir_cache"); } } - - chdir $dir_build; + + cd $dir_build; make_ini($prg_pdflatex, 'pdflatex-tds'); make_ini($prg_lualatex, 'lualatex-tds'); make_ini($prg_lualatex, 'lualatex-tds2'); - chdir $cwd; + cd $cwd; } ### Download @@ -320,6 +351,24 @@ if (@list_modules > 0) { download_ctan_file('armtex.zip', 'language/armenian'); } +### VCS +{ + section('VCS'); + + if ($opt_vcs_update) { + if (-d "$dir_incoming_ltxpub/.svn") { + cd $dir_incoming_ltxpub; + run("$prg_svn update"); + } + else { + cd $dir_incoming; + run("$prg_svn checkout http://latex-project.org/svnroot/latex2e-public/ $dir_ltxpub"); + } + cd $cwd; + } +} + + ### Remove previous build section('Remove previous build'); { @@ -384,32 +433,59 @@ section('Unpacking'); run("$prg_unzip -j $zipfile -d$dir"); } + sub eols (@) { + for my $pat (@_) { + for my $file (glob "$dir_build/$pat") { + next if $file =~ /\.(?:pdf|zip)$/i; + lf $file; + } + } + } + ensure_directory($dir_build); - unpack_ctan('base'); + if ($modules{'base'}) { - # replace .err files - foreach my $name (qw[ - lb2 - lgc2 - manual - tlc2 - ]) { - my $file = "$dir_incoming_ltxprj/$name.err"; - my $dest = "$dir_build/base/$name.err"; - run("$prg_cp $file $dest"); + ensure_directory("$dir_build/base"); + if ($opt_vcs) { + run("$prg_cp -r $dir_incoming_ltxpub/base/* $dir_build/base/"); + run("$prg_cp $dir_incoming_ltxpub/doc/*.tex $dir_build/base/"); + } + else { + unpack_ctan('base'); + # replace .err files + foreach my $name (qw[ + lb2 + lgc2 + manual + tlc2 + ]) { + my $file = "$dir_incoming_ltxprj/$name.err"; + my $dest = "$dir_build/base/$name.err"; + run("$prg_cp $file $dest"); + } + run("$prg_rm -rf $dir_build/base/doc"); + unpacking('base', + "$dir_incoming_ctan/doc.zip", + "$dir_build/base"); + run("$prg_cp -p $dir_build/base/doc/*.tex $dir_build/base/"); } - run("$prg_rm -rf $dir_build/base/doc"); - unpacking('base', - "$dir_incoming_ctan/doc.zip", - "$dir_build/base"); - run("$prg_cp -p $dir_build/base/doc/*.tex $dir_build/base/"); unpacking('base', "$dir_incoming_ctan/armtex.zip", "$dir_build/base"); + eols("base/*") if $modules{'base'}; } - map { - unpack_ctan($_); + + map { + ensure_directory("$dir_build/$_"); + if ($opt_vcs and /cyrillic|graphics|tools/) { + run("$prg_cp -r $dir_incoming_ltxpub/required/$_/* $dir_build/$_/"); + } + else { + unpack_ctan($_); + } + eols("$_/*") if $modules{$_}; } @required_list; + if ($modules{'amslatex'}) { unpack_ams('amscls', "$dir_incoming_ctan/amscls.tds.zip"); unpack_ams('amsrefs', "$dir_incoming_ctan/amsrefs.tds.zip"); @@ -427,6 +503,7 @@ section('Unpacking'); # run("$prg_cp $dir_build/amslatex/ctan/amsrefs/amsrefs.dtx " # . "$dir_build/amslatex/texmf/source/latex/amsrefs/amsrefs.dtx"); } + if ($modules{'amsfonts'}) { ensure_directory("$dir_build/amsfonts"); unpacking('amsfonts', @@ -457,13 +534,13 @@ section('Patches'); ; # if ($modules{'psnfss'}) { - chdir "$dir_build/psnfss"; + cd "$dir_build/psnfss"; run("$prg_checksum psfonts.dtx"); - chdir $cwd; + cd $cwd; } if ($modules{'knuth'}) { - chdir "$dir_build/knuth"; + cd "$dir_build/knuth"; my @files = qw[ trip.fot tripin.log @@ -479,7 +556,7 @@ section('Patches'); trap.typ ]; run("$prg_chmod -x @files"); - chdir $cwd; + cd $cwd; } if ($modules{'amslatex'}) { @@ -496,18 +573,18 @@ section('Install source'); my $pkg = shift; my @list = @_; $modules{$pkg} or return 1; - chdir "$dir_build/$pkg"; + cd "$dir_build/$pkg"; install "texmf/source/$fmt/$pkg", @list; - chdir $cwd; + cd $cwd; } sub install_generic_source ($$@) { my $pkg = shift; my $dir = shift; my @list = @_; $modules{$pkg} or return 1; - chdir "$dir_build/$pkg"; + cd "$dir_build/$pkg"; install "texmf/source/$dir", @list; - chdir $cwd; + cd $cwd; } sub install_source ($@) { my $pkg = shift; @@ -617,7 +694,7 @@ section('Install source'); section('Patches after source install'); { if ($modules{'base'}) { - chdir "$dir_build/base"; + cd "$dir_build/base"; # ltdirchk.dtx must be patched to fool it in # not having texsys.cfg @@ -635,31 +712,14 @@ section('Patches after source install'); close(IN); } - # base: TDS:makeindex/base -> TDS:makeindex/latex - { - my $file_ins = 'docstrip.ins'; - my $file_org = 'docstrip.ins.org'; - rename $file_ins, $file_org; - open(IN, '<', $file_org) or die "$error Cannot open `$file_org'!\n"; - open(OUT, '>', $file_ins) or die "$error Cannot write `$file_ins'!\n"; - while (<IN>) { - s|makeindex/base|makeindex/latex|; - print OUT; - } - close(OUT); - close(IN); - } - - # fix CR/LF line endings of tlc2.err (2012-05-12) - run("$prg_zip -ll tlc2.zip tlc2.err"); - run("$prg_unzip -o tlc2.zip"); - - chdir $cwd; + cd $cwd; + lf("$dir_build/base/encguide.tex"); patch('base/encguide.tex'); patch('base/source2e.tex'); patch('base/tlc2.err'); patch('base/utf8ienc.dtx'); + # # lb2.err contains <CR><LF> line endings, a patch file # created by diff in Linux would create mixed line endings # causing trouble for subversion (Karl Berry). @@ -703,9 +763,9 @@ section('Docstrip'); my $pkg = shift; my $ins = shift; $modules{$pkg} or return 1; - chdir "$dir_build/$pkg"; + cd "$dir_build/$pkg"; run("$prg_docstrip $ins.ins"); - chdir $cwd; + cd $cwd; 1; } docstrip('base', 'unpack'); @@ -717,9 +777,9 @@ section('Docstrip'); ## patch for amsthm.sty, part 1/2 #if ($modules{'amslatex'}) { - # chdir "$dir_build/amslatex/amscls"; + # cd "$dir_build/amslatex/amscls"; # run("$prg_docstrip ams-c1.ins"); - # chdir $cwd; + # cd $cwd; #} } @@ -767,7 +827,7 @@ section('TDS cleanup'); section('Install tex doc'); { if ($modules{'base'}) { - chdir "$dir_build/base"; + cd "$dir_build/base"; install 'texmf/doc/latex/base', qw[ 00readme.txt autoload.txt @@ -793,40 +853,40 @@ section('Install tex doc'); install 'texmf/tex/latex/base', qw[ texsys.cfg ]; - chdir $cwd; + cd $cwd; } if ($modules{'tools'}) { - chdir "$dir_build/tools"; + cd "$dir_build/tools"; install 'texmf/doc/latex/tools', qw[ changes.txt manifest.txt readme.txt ]; - chdir $cwd; + cd $cwd; } if ($modules{'graphics'}) { - chdir "$dir_build/graphics"; + cd "$dir_build/graphics"; install('texmf/doc/latex/graphics', '*.txt' ); install('texmf/tex/latex/graphics', '*.def' ); - chdir $cwd; + cd $cwd; } if ($modules{'cyrillic'}) { - chdir "$dir_build/cyrillic"; + cd "$dir_build/cyrillic"; install('texmf/doc/latex/cyrillic', '*.txt' ); - chdir $cwd; + cd $cwd; } if ($modules{'psnfss'}) { - chdir "$dir_build/psnfss"; + cd "$dir_build/psnfss"; install('texmf/doc/latex/psnfss', '*.txt' ); @@ -839,11 +899,11 @@ section('Install tex doc'); install('texmf/fonts/map/dvips/psnfss', '*.map' ); - chdir $cwd; + cd $cwd; } if ($modules{'tds'}) { - chdir "$dir_build/tds"; + cd "$dir_build/tds"; install('texmf/doc/tds', qw[ README ChangeLog @@ -852,11 +912,11 @@ section('Install tex doc'); install('texmf/doc/info', qw[ tds.info ]); - chdir $cwd; + cd $cwd; } if ($modules{'knuth'}) { - chdir "$dir_build/knuth"; + cd "$dir_build/knuth"; install('texmf/doc/knuth/tex', qw[ texbook.tex ]); @@ -868,11 +928,11 @@ section('Install tex doc'); mf84.bug tex82.bug ]); - chdir $cwd; + cd $cwd; } if ($modules{'etex'}) { - chdir "$dir_build/etex"; + cd "$dir_build/etex"; my $doc_dir = 'texmf/doc/etex/base'; my $src_dir = 'texmf/source/etex/base'; ensure_directory($doc_dir); @@ -880,31 +940,23 @@ section('Install tex doc'); install($src_dir, qw[ etex_man.tex etex_man.sty ]); - chdir $cwd; + cd $cwd; } ## patch for amsthm.sty, part 2/2 #if ($modules{'amslatex'}) { - # chdir "$dir_build/amslatex/amscls"; + # cd "$dir_build/amslatex/amscls"; # my $dest_dir = '../texmf/tex/latex/amscls'; # ensure_directory($dest_dir); # install($dest_dir, 'amsthm.sty'); - # chdir $cwd; + # cd $cwd; #} } ### Preparation for documentation if ($modules{'base'}) { my $dir_src = "$dir_build/base/armtex"; - my $tds_mf = "$dir_texmf/fonts/source/public/armtex"; - my $tds_tfm = "$dir_texmf/fonts/tfm/public/armtex"; - my $tds_latex = "$dir_texmf/tex/latex/armtex"; - my @tds_mf = map {chomp;$_} glob "$dir_src/mf/*.mf"; - my @tds_tfm = map {chomp;$_} glob "$dir_src/tfm/*.tfm"; - my @tds_latex = map {chomp;$_} glob "$dir_src/latex/*.*"; - install($tds_mf, @tds_mf); - install($tds_tfm, @tds_tfm); - install($tds_latex, @tds_latex); + run("$prg_cp -r $dir_build/base/armtex/* $dir_texmf/"); run("$prg_texhash $dir_texmf"); } @@ -951,6 +1003,7 @@ if ($modules{'base'}) { cache 'base', $guide, sub { my $latextds = $prg_lualatextds; $latextds = $prg_lualatextds2 if $guide eq 'usrguide'; + $latextds = $prg_pdflatextds if $guide eq 'encguide'; run("$latextds -draftmode $guide"); run("$latextds -draftmode $guide"); final_begin; @@ -1011,7 +1064,7 @@ if ($modules{'base'}) { install_pdf('base', "$base"); 1; } - chdir "$dir_build/base"; + cd "$dir_build/base"; ## source2e cache 'base', 'source2e', sub { @@ -1165,19 +1218,20 @@ END_CODE } } - chdir $cwd; + cd $cwd; } ### Generate documentation for tools if ($modules{'tools'}) { section('Documentation: tools'); - chdir "$dir_build/tools"; + cd "$dir_build/tools"; my @list = glob("*.dtx"); map { s/\.dtx$//; } @list; foreach my $entry (@list) { my $latextds = $prg_lualatextds; - $latextds = $prg_pdflatextds if $entry eq 'bm'; + $latextds = $prg_pdflatextds if $entry eq 'bm' + or $entry eq 'multicol'; $latextds = $prg_lualatextds2 if $entry eq 'calc' or $entry eq 'rawfonts' or $entry eq 'showkeys'; @@ -1279,14 +1333,14 @@ END_FILE final_end; }; install_pdf('tools', 'tools'); - chdir $cwd; + cd $cwd; } ### Generate documentation for cyrillic if ($modules{'cyrillic'}) { section('Documentation: cyrillic'); - chdir "$dir_build/cyrillic"; + cd "$dir_build/cyrillic"; my @list = (glob("*.dtx"), glob("*.fdd")); foreach my $entry (@list) { my $base = $entry; @@ -1300,14 +1354,14 @@ if ($modules{'cyrillic'}) { }; install_pdf('cyrillic', $base); } - chdir $cwd; + cd $cwd; } ### Generate documentation for graphics if ($modules{'graphics'}) { section('Documentation: graphics'); - chdir "$dir_build/graphics"; + cd "$dir_build/graphics"; my @list = glob("*.dtx"); map { s/\.dtx$//; } @list; foreach my $entry (@list) { @@ -1336,7 +1390,7 @@ END_CODE final_end; }; install_pdf('graphics', 'grfguide'); - chdir $cwd; + cd $cwd; } sub makeindex ($) { @@ -1394,23 +1448,23 @@ if ($modules{'amslatex'}) { install_pdf($amspkg, $doc); } - chdir "$dir_build/amslatex/amsmath"; + cd "$dir_build/amslatex/amsmath"; symlink '../texmf', 'texmf'; map { generate_doc 'amsmath', $_; } qw[ amsldoc subeqn technote testmath amsbsy amscd amsgen amsmath amsopn amstext amsxtra ]; - chdir $cwd; + cd $cwd; - chdir "$dir_build/amslatex/amscls"; + cd "$dir_build/amslatex/amscls"; symlink '../texmf', 'texmf'; map { generate_doc 'amscls', $_; } qw[ amsthdoc instr-l thmtest amsclass amsdtx amsmidx upref ]; - chdir $cwd; + cd $cwd; - chdir "$dir_build/amslatex/amsrefs"; + cd "$dir_build/amslatex/amsrefs"; symlink '../texmf', 'texmf'; map { generate_doc 'amsrefs', $_; } qw[ amsrdoc changes @@ -1418,7 +1472,7 @@ if ($modules{'amslatex'}) { ]; # 2013-02-13: Excluded as test files: # cite-xa cite-xb cite-xh cite-xs - chdir $cwd; + cd $cwd; } if ($modules{'amsfonts'}) { @@ -1449,7 +1503,7 @@ if ($modules{'amsfonts'}) { install_gen_pdf('fonts', $amspkg, $doc); } - chdir "$dir_build/amsfonts"; + cd "$dir_build/amsfonts"; map {generate_doc2 'amsfonts', $_; } qw[ amsfonts amssymb cmmib57 eufrak euscript ]; @@ -1464,14 +1518,14 @@ if ($modules{'amsfonts'}) { }; } install_gen_pdf('fonts', 'amsfonts', 'amsfndoc'); - chdir $cwd; + cd $cwd; } ### Generate documentation for psnfss if ($modules{'psnfss'}) { section('Documentation: psnfss'); - chdir "$dir_build/psnfss"; + cd "$dir_build/psnfss"; cache 'psnfss', 'psfonts', sub { run("$prg_pdflatextds -draftmode psfonts.dtx"); @@ -1490,14 +1544,14 @@ if ($modules{'psnfss'}) { }; install_pdf('psnfss', 'psnfss2e'); - chdir $cwd; + cd $cwd; } ### Generate documentation for tds if ($modules{'tds'}) { section('Documentation: tds'); - chdir "$dir_build/tds"; + cd "$dir_build/tds"; my $file_tds = 'tds.tex'; my $file_tds_new = 'tds.new'; @@ -1530,14 +1584,14 @@ END_TEXT }; install_gen_pdf('', 'tds', 'tds'); - chdir $cwd; + cd $cwd; } ### Generate documentation for knuth if ($modules{'knuth'}) { section('Documentation: knuth'); - chdir "$dir_build/knuth"; + cd "$dir_build/knuth"; my $knuth_drv = "$cwd/$dir_tex/knuth.drv"; @@ -1676,14 +1730,14 @@ if ($modules{'knuth'}) { }; install_gen_pdf('knuth', 'errata', 'errata'); - chdir $cwd; + cd $cwd; } ### Generate documentation for etex if ($modules{'etex'}) { section('Documentation: etex'); - chdir "$dir_build/etex"; + cd "$dir_build/etex"; my $entry = 'etex_man'; my $etex_man_drv = "$cwd/$dir_tex/$entry.drv"; @@ -1697,7 +1751,7 @@ if ($modules{'etex'}) { }; install_gen_pdf('etex', 'base', $entry); - chdir $cwd; + cd $cwd; } ### Module source @@ -1718,6 +1772,7 @@ if ($modules{'source'}) { # generate README.html run("$prg_asciidoc --backend=xhtml11 README.asciidoc"); + lf("README.html"); # generate README.pdf # run("$prg_asciidoc --out-file=$file_readme_notoc_html" @@ -1760,7 +1815,7 @@ if ($modules{'source'}) { push @lines_post, $_; push @lines_post, ($2 ? '-' : '=') x length($_) . "\n"; my $prefix = ' ' x (3 * ($2 ? 2 : 1)); - s/^(\d+)\.(\d+\.)? /($1<10 ? ' ' : '') . "$1.$2 "/e; + s/^(\d+)\.((?:\d+\.)?) /($1<10 ? ' ' : '') . "$1.$2 "/e; push @lines_toc, "$prefix$_"; next; } @@ -1846,13 +1901,29 @@ section('Distrib'); } if ($opt_all) { - chdir $dir_distrib; - my $cmd = "$prg_zip -0 $file_ctan_distrib README README.html README.pdf"; - for my $pkg (sort @pkg_list) { - $cmd .= " $pkg.tds.zip"; + ensure_directory($dir_build_distrib); + my @files = map {"$cwd/$_"} qw[ + README + README.html + README.pdf + ], + map {"$dir_distrib/$_.tds.zip"} sort @pkg_list; + run("$prg_rm -rf $dir_build_distrib_data") if -d $dir_build_distrib_data; + ensure_directory($dir_build_distrib_data); + cd $dir_build_distrib_data; + my @list; + foreach my $file (@files) { + $file =~ m|/([^/]+)$| or die "!!! Error: Cannot extract file name (`$file')!\n"; + my $file_new = $1; + -f $file or die "!!! Error: File `$file' not found!\n"; + link $file, $file_new or die "!!! Error: Cannot link `$file' => `$file_new': $!\n"; + push @list, "$prj/$file_new"; } + cd $cwd; + cd $dir_build_distrib; + my $cmd = "$prg_zip -0 $file_ctan_distrib $prj @list"; run($cmd); - chdir $cwd; + cd $cwd; } } diff --git a/Master/texmf-dist/source/latex/latex-tds/license/adjust_checksum/lppl.txt b/Master/texmf-dist/source/latex/latex-tds/license/adjust_checksum/lppl.txt index 22443139013..494f58131f7 100644 --- a/Master/texmf-dist/source/latex/latex-tds/license/adjust_checksum/lppl.txt +++ b/Master/texmf-dist/source/latex/latex-tds/license/adjust_checksum/lppl.txt @@ -16,8 +16,8 @@ which the LaTeX kernel and the base LaTeX packages are distributed. You may use this license for any work of which you hold the copyright and which you wish to distribute. This license may be particularly -suitable if your work is TeX-related (such as a LaTeX package), but -it is written in such a way that you can use it even if your work is +suitable if your work is TeX-related (such as a LaTeX package), but +it is written in such a way that you can use it even if your work is unrelated to TeX. The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', @@ -44,11 +44,11 @@ In this license document the following terms are used: `Work' Any work being distributed under this License. - + `Derived Work' Any work that under any applicable law is derived from the Work. - `Modification' + `Modification' Any procedure that produces a Derived Work under any applicable law -- for example, the production of a file containing an original file associated with the Work or a significant portion of @@ -58,7 +58,7 @@ In this license document the following terms are used: `Modify' To apply any procedure that produces a Derived Work under any applicable law. - + `Distribution' Making copies of the Work available from one person to another, in whole or in part. Distribution includes (but is not limited to) @@ -79,16 +79,16 @@ In this license document the following terms are used: no such explicit nomination then it is the `Copyright Holder' under any applicable law. - `Base Interpreter' + `Base Interpreter' A program or process that is normally needed for running or - interpreting a part or the whole of the Work. + interpreting a part or the whole of the Work. A Base Interpreter may depend on external components but these are not considered part of the Base Interpreter provided that each external component clearly identifies itself whenever it is used interactively. Unless explicitly specified when applying the license to the Work, the only applicable Base Interpreter is a - `LaTeX-Format' or in the case of files belonging to the + `LaTeX-Format' or in the case of files belonging to the `LaTeX-format' a program implementing the `TeX language'. @@ -129,8 +129,8 @@ the Derived Work. distribute a Derived Work provided the following conditions are met for every component of the Work unless that component clearly states in the copyright notice that it is exempt from that condition. Only -the Current Maintainer is allowed to add such statements of exemption -to a component of the Work. +the Current Maintainer is allowed to add such statements of exemption +to a component of the Work. a. If a component of this Derived Work can be a direct replacement for a component of the Work when that component is used with the @@ -140,13 +140,13 @@ to a component of the Work. clearly and unambiguously identifies itself as a modified version of this component to the user when used interactively with that Base Interpreter. - + b. Every component of the Derived Work contains prominent notices detailing the nature of the changes to that component, or a prominent reference to another file that is distributed as part of the Derived Work and that contains a complete and accurate log of the changes. - + c. No information in the Derived Work implies that any persons, including (but not limited to) the authors of the original version of the Work, provide any support, including (but not limited to) @@ -156,7 +156,7 @@ to a component of the Work. d. You distribute at least one of the following with the Derived Work: - 1. A complete, unmodified copy of the Work; + 1. A complete, unmodified copy of the Work; if your distribution of a modified component is made by offering access to copy the modified component from a designated place, then offering equivalent access to copy @@ -183,15 +183,15 @@ format, where the Work or that Derived Work (in whole or in part) is then produced by applying some process to that format, does not relax or nullify any sections of this license as they pertain to the results of applying that process. - + 10. a. A Derived Work may be distributed under a different license provided that license itself honors the conditions listed in Clause 6 above, in regard to the Work, though it does not have to honor the rest of the conditions in this license. - + b. If a Derived Work is distributed under a different license, that Derived Work must provide sufficient documentation as part of - itself to allow each recipient of that Derived Work to honor the + itself to allow each recipient of that Derived Work to honor the restrictions in Clause 6 above, concerning changes from the Work. 11. This license places no restrictions on works that are unrelated to @@ -260,7 +260,7 @@ the Work through the following steps: a. If it is being maintained, then ask the Current Maintainer to update their communication data within one month. - + b. If the search is unsuccessful or no action to resume active maintenance is taken by the Current Maintainer, then announce within the pertinent community your intention to take over @@ -270,17 +270,17 @@ the Work through the following steps: 3a. If the Current Maintainer is reachable and agrees to pass maintenance of the Work to you, then this takes effect immediately upon announcement. - + b. If the Current Maintainer is not reachable and the Copyright Holder agrees that maintenance of the Work be passed to you, - then this takes effect immediately upon announcement. - + then this takes effect immediately upon announcement. + 4. If you make an `intention announcement' as described in 2b. above and after three months your intention is challenged neither by the Current Maintainer nor by the Copyright Holder nor by other people, then you may arrange for the Work to be changed so as to name you as the (new) Current Maintainer. - + 5. If the previously unreachable Current Maintainer becomes reachable once more within three months of a change completed under the terms of 3b) or 4), then that Current Maintainer must @@ -363,7 +363,7 @@ Here is an example of such a notice and statement: % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. - % + % % The Current Maintainer of this work is M. Y. Name. % % This work consists of the files pig.dtx and pig.ins @@ -377,7 +377,7 @@ referring to any `LaTeX-Format', and both `Copyright Holder' and `Current Maintainer' referring to the person `M. Y. Name'. If you do not want the Maintenance section of LPPL to apply to your -Work, change `maintained' above into `author-maintained'. +Work, change `maintained' above into `author-maintained'. However, we recommend that you use `maintained', as the Maintenance section was added in order to ensure that your Work remains useful to the community even when you can no longer maintain and support it @@ -407,7 +407,7 @@ Important Recommendations using a line such as: % This work consists of all files listed in manifest.txt. - + in that place. In the absence of an unequivocal list it might be impossible for the licensee to determine what is considered by you to comprise the Work and, in such a case, the licensee would be diff --git a/Master/texmf-dist/source/latex/latex-tds/license/latex-tds/lppl.txt b/Master/texmf-dist/source/latex/latex-tds/license/latex-tds/lppl.txt index 22443139013..494f58131f7 100644 --- a/Master/texmf-dist/source/latex/latex-tds/license/latex-tds/lppl.txt +++ b/Master/texmf-dist/source/latex/latex-tds/license/latex-tds/lppl.txt @@ -16,8 +16,8 @@ which the LaTeX kernel and the base LaTeX packages are distributed. You may use this license for any work of which you hold the copyright and which you wish to distribute. This license may be particularly -suitable if your work is TeX-related (such as a LaTeX package), but -it is written in such a way that you can use it even if your work is +suitable if your work is TeX-related (such as a LaTeX package), but +it is written in such a way that you can use it even if your work is unrelated to TeX. The section `WHETHER AND HOW TO DISTRIBUTE WORKS UNDER THIS LICENSE', @@ -44,11 +44,11 @@ In this license document the following terms are used: `Work' Any work being distributed under this License. - + `Derived Work' Any work that under any applicable law is derived from the Work. - `Modification' + `Modification' Any procedure that produces a Derived Work under any applicable law -- for example, the production of a file containing an original file associated with the Work or a significant portion of @@ -58,7 +58,7 @@ In this license document the following terms are used: `Modify' To apply any procedure that produces a Derived Work under any applicable law. - + `Distribution' Making copies of the Work available from one person to another, in whole or in part. Distribution includes (but is not limited to) @@ -79,16 +79,16 @@ In this license document the following terms are used: no such explicit nomination then it is the `Copyright Holder' under any applicable law. - `Base Interpreter' + `Base Interpreter' A program or process that is normally needed for running or - interpreting a part or the whole of the Work. + interpreting a part or the whole of the Work. A Base Interpreter may depend on external components but these are not considered part of the Base Interpreter provided that each external component clearly identifies itself whenever it is used interactively. Unless explicitly specified when applying the license to the Work, the only applicable Base Interpreter is a - `LaTeX-Format' or in the case of files belonging to the + `LaTeX-Format' or in the case of files belonging to the `LaTeX-format' a program implementing the `TeX language'. @@ -129,8 +129,8 @@ the Derived Work. distribute a Derived Work provided the following conditions are met for every component of the Work unless that component clearly states in the copyright notice that it is exempt from that condition. Only -the Current Maintainer is allowed to add such statements of exemption -to a component of the Work. +the Current Maintainer is allowed to add such statements of exemption +to a component of the Work. a. If a component of this Derived Work can be a direct replacement for a component of the Work when that component is used with the @@ -140,13 +140,13 @@ to a component of the Work. clearly and unambiguously identifies itself as a modified version of this component to the user when used interactively with that Base Interpreter. - + b. Every component of the Derived Work contains prominent notices detailing the nature of the changes to that component, or a prominent reference to another file that is distributed as part of the Derived Work and that contains a complete and accurate log of the changes. - + c. No information in the Derived Work implies that any persons, including (but not limited to) the authors of the original version of the Work, provide any support, including (but not limited to) @@ -156,7 +156,7 @@ to a component of the Work. d. You distribute at least one of the following with the Derived Work: - 1. A complete, unmodified copy of the Work; + 1. A complete, unmodified copy of the Work; if your distribution of a modified component is made by offering access to copy the modified component from a designated place, then offering equivalent access to copy @@ -183,15 +183,15 @@ format, where the Work or that Derived Work (in whole or in part) is then produced by applying some process to that format, does not relax or nullify any sections of this license as they pertain to the results of applying that process. - + 10. a. A Derived Work may be distributed under a different license provided that license itself honors the conditions listed in Clause 6 above, in regard to the Work, though it does not have to honor the rest of the conditions in this license. - + b. If a Derived Work is distributed under a different license, that Derived Work must provide sufficient documentation as part of - itself to allow each recipient of that Derived Work to honor the + itself to allow each recipient of that Derived Work to honor the restrictions in Clause 6 above, concerning changes from the Work. 11. This license places no restrictions on works that are unrelated to @@ -260,7 +260,7 @@ the Work through the following steps: a. If it is being maintained, then ask the Current Maintainer to update their communication data within one month. - + b. If the search is unsuccessful or no action to resume active maintenance is taken by the Current Maintainer, then announce within the pertinent community your intention to take over @@ -270,17 +270,17 @@ the Work through the following steps: 3a. If the Current Maintainer is reachable and agrees to pass maintenance of the Work to you, then this takes effect immediately upon announcement. - + b. If the Current Maintainer is not reachable and the Copyright Holder agrees that maintenance of the Work be passed to you, - then this takes effect immediately upon announcement. - + then this takes effect immediately upon announcement. + 4. If you make an `intention announcement' as described in 2b. above and after three months your intention is challenged neither by the Current Maintainer nor by the Copyright Holder nor by other people, then you may arrange for the Work to be changed so as to name you as the (new) Current Maintainer. - + 5. If the previously unreachable Current Maintainer becomes reachable once more within three months of a change completed under the terms of 3b) or 4), then that Current Maintainer must @@ -363,7 +363,7 @@ Here is an example of such a notice and statement: % version 2005/12/01 or later. % % This work has the LPPL maintenance status `maintained'. - % + % % The Current Maintainer of this work is M. Y. Name. % % This work consists of the files pig.dtx and pig.ins @@ -377,7 +377,7 @@ referring to any `LaTeX-Format', and both `Copyright Holder' and `Current Maintainer' referring to the person `M. Y. Name'. If you do not want the Maintenance section of LPPL to apply to your -Work, change `maintained' above into `author-maintained'. +Work, change `maintained' above into `author-maintained'. However, we recommend that you use `maintained', as the Maintenance section was added in order to ensure that your Work remains useful to the community even when you can no longer maintain and support it @@ -407,7 +407,7 @@ Important Recommendations using a line such as: % This work consists of all files listed in manifest.txt. - + in that place. In the absence of an unequivocal list it might be impossible for the licensee to determine what is considered by you to comprise the Work and, in such a case, the licensee would be diff --git a/Master/texmf-dist/source/latex/latex-tds/patch/encguide.tex.diff b/Master/texmf-dist/source/latex/latex-tds/patch/encguide.tex.diff index 748e62d4e75..b1095c54ae6 100644 --- a/Master/texmf-dist/source/latex/latex-tds/patch/encguide.tex.diff +++ b/Master/texmf-dist/source/latex/latex-tds/patch/encguide.tex.diff @@ -1,57 +1,40 @@ *** encguide.tex.org 2009-09-24 17:00:50.000000000 +0200 --- encguide.tex 2011-07-01 22:00:17.000000000 +0200 *************** -*** 34,40 **** - - \documentclass{ltxguide}[1994/11/20] - -! \usepackage[T1]{fontenc} - \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} - \usepackage{textcomp} - \usepackage{url} ---- 34,40 ---- - - \documentclass{ltxguide}[1994/11/20] - -! \usepackage{fontspec}% \usepackage[T1]{fontenc} - \IfFileExists{lmodern.sty}{\usepackage{lmodern}}{} - \usepackage{textcomp} - \usepackage{url} -*************** *** 1226,1232 **** \newblock {\em {TUG}boat}, 11(4):514--516, 1990. - + \bibitem{fontinst} \emph{The \Pkg{fontinst} package}: ! \textlangle CTAN\textrangle\url{/fonts/utilities/fontinst}. - + \bibitem{Rei:TB17-2-102} Fukui Rei: \emph{\textsl{TIPA}: A system for processing phonetic --- 1226,1234 ---- \newblock {\em {TUG}boat}, 11(4):514--516, 1990. - + \bibitem{fontinst} \emph{The \Pkg{fontinst} package}: ! \href{ftp://ftp.ctan.org/tex-archive/fonts/utilities/fontinst}{% ! \textlangle CTAN\textrangle\nolinkurl{/fonts/utilities/fontinst}% ! }. - + \bibitem{Rei:TB17-2-102} Fukui Rei: \emph{\textsl{TIPA}: A system for processing phonetic *************** *** 1266,1272 **** \newblock Addison-Wesley, Reading, Massachusetts, second edition, 1994. - + \bibitem{LH-Fonts} \emph{The \Pkg{lh}-Fonts for Cyrillic}: ! \textlangle CTAN\textrangle\url{/fonts/cyrillic/lh}. - + \bibitem{A-W:MG2004} Frank Mittelbach and Michel Goossens. --- 1268,1276 ---- \newblock Addison-Wesley, Reading, Massachusetts, second edition, 1994. - + \bibitem{LH-Fonts} \emph{The \Pkg{lh}-Fonts for Cyrillic}: ! \href{ftp://ftp.ctan.org/tex-archive/fonts/cyrillic/lh}{% ! \textlangle CTAN\textrangle\nolinkurl{/fonts/cyrillic/lh}% ! }. - + \bibitem{A-W:MG2004} Frank Mittelbach and Michel Goossens. diff --git a/Master/texmf-dist/source/latex/latex-tds/patch/source2e.tex.diff b/Master/texmf-dist/source/latex/latex-tds/patch/source2e.tex.diff index 0f8d7c15fe7..742269bdafd 100644 --- a/Master/texmf-dist/source/latex/latex-tds/patch/source2e.tex.diff +++ b/Master/texmf-dist/source/latex/latex-tds/patch/source2e.tex.diff @@ -3,23 +3,23 @@ *************** *** 71,76 **** --- 71,81 ---- - + \documentclass{ltxdoc} - + + \newdimen\OldHeadHeight + \OldHeadHeight=\headheight + \newdimen\OldHeadSep + \OldHeadSep=\headsep -+ ++ \listfiles - + % Do not index some TeX primitives, and some common plain TeX commands. *************** *** 301,306 **** --- 306,325 ---- \clearpage \pagestyle{headings} - + + \makeatletter + \headheight=\OldHeadHeight + \headsep=\OldHeadSep @@ -33,16 +33,16 @@ + \@colht\textheight + \@colroom\textheight + \makeatother -+ ++ % Make TeX shut up. \hbadness=10000 \newcount\hbadness *************** *** 315,320 **** --- 334,359 ---- - + \clearpage - + + \makeatletter + \footskip=85pt + \addtolength{\footskip}{\OldFootSkip} @@ -62,7 +62,7 @@ + \let\@evenfoot\@oddfoot + }% + \makeatother -+ ++ % makeindex needs a symbol between the parts of composite page numbers % but we dont want one, so: \typeout{% diff --git a/Master/texmf-dist/source/latex/latex-tds/patch/utf8ienc.dtx.diff b/Master/texmf-dist/source/latex/latex-tds/patch/utf8ienc.dtx.diff index de3b3832938..dc48b5e72c5 100644 --- a/Master/texmf-dist/source/latex/latex-tds/patch/utf8ienc.dtx.diff +++ b/Master/texmf-dist/source/latex/latex-tds/patch/utf8ienc.dtx.diff @@ -2,11 +2,20 @@ --- utf8ienc.dtx 2008-09-10 16:16:45.000000000 +0200 *************** *** 30,35 **** ---- 30,36 ---- +--- 30,45 ---- % \iffalse %<*driver> \documentclass{ltxdoc} -+ \usepackage[utf8]{inputenc} ++ \usepackage{ifluatex,ifxetex} ++ \ifluatex ++ \usepackage{fontspec} ++ \else ++ \ifxetex ++ \usepackage{fontspec} ++ \else ++ \usepackage[utf8]{inputenc} ++ \fi ++ \fi \GetFileInfo{utf8.def} \title{Providing some UTF-8 support via \texttt{inputenc}} \date{\fileversion\space\filedate{} printed \today} diff --git a/Master/texmf-dist/source/latex/latex-tds/tex/ltnews.tex b/Master/texmf-dist/source/latex/latex-tds/tex/ltnews.tex index 895f0bd72f6..ed54c679903 100644 --- a/Master/texmf-dist/source/latex/latex-tds/tex/ltnews.tex +++ b/Master/texmf-dist/source/latex/latex-tds/tex/ltnews.tex @@ -24,6 +24,9 @@ % 2006/06/02 v1.0: First version. % 2009/09/25 v1.1: \usepackage disabled. % 2011/07/01 v1.2: Fixes. +% 2014/02/30 v1.3: +% * Update for LaTeX 2014/05/01. +% * Fix for anchor positions of issue titles. % \providecommand*{\lastissue}{20} \InputIfFileExists{ltnews-lastissue.cfg}{}{} @@ -52,6 +55,7 @@ \RequirePackage[T1]{fontenc} \RequirePackage{lmodern} +\RequirePackage{hologo} \documentclass{ltnews} @@ -137,28 +141,39 @@ \def\y{|lmodern,url}% \ifx\x\y \else - \@latex@error{\string\usepackage[#1]{#2} found}\@ehc + \def\y{|lmodern,url,hologo}% + \ifx\x\y + \else + \@latex@error{ltnews.tex: \string\usepackage[#1]{#2} found}\@ehc + \fi \fi \fi \endgroup }% - \makeatother \renewcommand*{\documentclass}[2][]{% \setcounter{footnote}{0}% \gobbleopt }% \newcommand*{\gobbleopt}[1][]{}% + \let\org@twocolumn\twocolumn \renewenvironment{document}{% \clearpage - \pdfbookmark[0]{\printissue}{issue\theissue}% - \begingroup - \let\WriteBookmarks\relax - \phantomsection - \addcontentsline{toc}{part}{\printissue}% - \endgroup + \def\twocolumn[{% + \let\twocolumn\org@twocolumn + \org@twocolumn[% + {% because of optional argument of \twocolumn + \pdfbookmark[0]{\printissue}{issue\theissue}% + }% + \begingroup + \let\WriteBookmarks\relax + \phantomsection + \addcontentsline{toc}{part}{\printissue}% + \endgroup + }% }{% \clearpage }% + \makeatother \loop \ifnum\value{issue}<\lastissue \stepcounter{issue}% diff --git a/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds.ini b/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds.ini index ca3e8da3cac..8c2e40f20a5 100644 --- a/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds.ini +++ b/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds.ini @@ -30,6 +30,10 @@ % * Package `unicode-math' with LM Math added. % 2013/02/13 v1.6 % * Font `lmmath-regular.otf' was renamed to `latinmodern-math.otf'. +% 2014/04/29 v1.7 +% * Patch for `inputenc' 2014/04/20 v1.2a. +% 2014/04/30 v1.8 +% * Patch for `inputenc' 2014/04/30 v1.2b no longer needed. % \input lualatexiniconfig.tex \input pdftexconfig % diff --git a/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds2.ini b/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds2.ini index 39bb79513fc..f35f3b57377 100644 --- a/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds2.ini +++ b/Master/texmf-dist/source/latex/latex-tds/tex/lualatex-tds2.ini @@ -19,7 +19,12 @@ % See `README' for a list of all files belonging to the % project `latex-tds' and additional information. % -% 2011/07/25 v1.0: lualatex-tds.ini without math stuff. +% 2011/07/25 v1.0: +% * lualatex-tds.ini without math stuff. +% 2014/04/29 v1.1: +% * Patch for `inputenc' 2014/04/20 v1.2a. +% 2014/04/30 v1.8: +% * Patch for `inputenc' 2014/04/30 v1.2b no longer needed. % \input lualatexiniconfig.tex \input pdftexconfig % diff --git a/Master/texmf-dist/source/latex/latex-tds/tex/tools.tex b/Master/texmf-dist/source/latex/latex-tds/tex/tools.tex index c7f5f933cba..f57df9e0dc7 100644 --- a/Master/texmf-dist/source/latex/latex-tds/tex/tools.tex +++ b/Master/texmf-dist/source/latex/latex-tds/tex/tools.tex @@ -1,5 +1,5 @@ \NeedsTeXFormat{LaTeX2e} -\ProvidesFile{tools.tex}[2014/02/03 Tools overview (HO)] +\ProvidesFile{tools.tex}[2014/04/30 Tools overview (HO)] % Copyright 2006-2014 Heiko Oberdiek % % This file is part of project `latex-tds'. @@ -31,7 +31,7 @@ Access bold math symbols. }% \entry{calc}{% - Infix arithmetic expresions. Contributed to the distribution by + Infix arithmetic expresions. Contributed to the distribution by Kresten Krab Thorup and Frank Jensen. }% \entry{dcolumn}{% @@ -44,7 +44,7 @@ Extended version of the enumerate environment. }% \entry{fileerr}{% - Suite of small files which may be used to control \TeX{}'s + Suite of small files which may be used to control \TeX{}'s missing file error loop. }% \entry{fontsmpl}{% @@ -64,7 +64,7 @@ }% \entry{longtable}{% Multipage tables. (Does not require array, but uses the extended - features if both are loaded.) + features if both are loaded.) }% \entry{multicol}{% Typeset text in columns, with the length of the final columns |