From e1532c8b1806d36e36549bc1fa6c6614d2a8424f Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 10 Aug 2019 22:33:12 +0000 Subject: doc,sync,ctan-to-tl scripts git-svn-id: svn://tug.org/texlive/trunk@51858 c570f23f-e606-0410-a88d-b1316a301751 --- .../texk/texlive/linked_scripts/texlive/tlmgr.pl | 9 +- Master/texmf-dist/bibtex/bib/beebe/texbook3.bib | 67 +++++++++-- Master/tlpkg/bin/c2l | 131 +++++++++++++++++++++ Master/tlpkg/bin/c2l3 | 39 ++++++ Master/tlpkg/bin/tl-update-asy | 15 ++- 5 files changed, 238 insertions(+), 23 deletions(-) create mode 100755 Master/tlpkg/bin/c2l create mode 100755 Master/tlpkg/bin/c2l3 diff --git a/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl b/Build/source/texk/texlive/linked_scripts/texlive/tlmgr.pl index 480d1ba0bb7..79777051896 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 51740 2019-07-26 17:39:35Z karl $ +# $Id: tlmgr.pl 51800 2019-08-01 22:51:44Z karl $ # # Copyright 2008-2019 Norbert Preining # This file is licensed under the GNU General Public License version 2 # or any later version. -my $svnrev = '$Revision: 51740 $'; -my $datrev = '$Date: 2019-07-26 19:39:35 +0200 (Fri, 26 Jul 2019) $'; +my $svnrev = '$Revision: 51800 $'; +my $datrev = '$Date: 2019-08-02 00:51:44 +0200 (Fri, 02 Aug 2019) $'; my $tlmgrrevision; my $tlmgrversion; my $prg; @@ -5500,6 +5500,7 @@ sub check_runfiles { next if $f =~ /^((czech|slovak)\.sty |Changes + |LICENSE.* |Makefile |README.* |a_.*\.enc @@ -9860,7 +9861,7 @@ This script and its documentation were written for the TeX Live distribution (L) and both are licensed under the GNU General Public License Version 2 or later. -$Id: tlmgr.pl 51740 2019-07-26 17:39:35Z karl $ +$Id: tlmgr.pl 51800 2019-08-01 22:51:44Z karl $ =cut # test HTML version: pod2html --cachedir=/tmp tlmgr.pl >/tmp/tlmgr.html diff --git a/Master/texmf-dist/bibtex/bib/beebe/texbook3.bib b/Master/texmf-dist/bibtex/bib/beebe/texbook3.bib index fe6f07a6c88..b027b5c072d 100644 --- a/Master/texmf-dist/bibtex/bib/beebe/texbook3.bib +++ b/Master/texmf-dist/bibtex/bib/beebe/texbook3.bib @@ -5,9 +5,9 @@ %%% ==================================================================== %%% BibTeX-file{ %%% author = "Nelson H. F. Beebe", -%%% version = "3.76", -%%% date = "08 July 2019", -%%% time = "08:01:44 MDT", +%%% version = "3.77", +%%% date = "05 August 2019", +%%% time = "14:59:54 MDT", %%% filename = "texbook3.bib", %%% address = "University of Utah %%% Department of Mathematics, 110 LCB @@ -17,7 +17,7 @@ %%% telephone = "+1 801 581 5254", %%% FAX = "+1 801 581 4148", %%% URL = "http://www.math.utah.edu/~beebe", -%%% checksum = "00150 22385 100836 955983", +%%% checksum = "57790 22430 101004 957859", %%% email = "beebe at math.utah.edu, beebe at acm.org, %%% beebe at computer.org (Internet)", %%% codetable = "ISO/ASCII", @@ -37,7 +37,7 @@ %%% covered in separate bibliographies %%% (ep.bib, epodd.bib, and sgml.bib). %%% -%%% At version 3.76, the year coverage looks +%%% At version 3.77, the year coverage looks %%% like this: %%% %%% 1928 ( 1) 1959 ( 0) 1990 ( 54) @@ -57,12 +57,12 @@ %%% 1942 ( 0) 1973 ( 1) 2004 ( 37) %%% 1943 ( 0) 1974 ( 3) 2005 ( 13) %%% 1944 ( 0) 1975 ( 1) 2006 ( 5) -%%% 1945 ( 0) 1976 ( 4) 2007 ( 6) +%%% 1945 ( 0) 1976 ( 4) 2007 ( 7) %%% 1946 ( 0) 1977 ( 2) 2008 ( 5) %%% 1947 ( 0) 1978 ( 8) 2009 ( 6) %%% 1948 ( 0) 1979 ( 5) 2010 ( 5) %%% 1949 ( 0) 1980 ( 8) 2011 ( 6) -%%% 1950 ( 1) 1981 ( 13) 2012 ( 7) +%%% 1950 ( 1) 1981 ( 13) 2012 ( 8) %%% 1951 ( 0) 1982 ( 21) 2013 ( 5) %%% 1952 ( 0) 1983 ( 24) 2014 ( 1) %%% 1953 ( 0) 1984 ( 15) 2015 ( 3) @@ -73,7 +73,7 @@ %%% 1958 ( 0) 1989 ( 55) %%% 19xx ( 2) %%% -%%% Article: 216 +%%% Article: 217 %%% Book: 324 %%% Booklet: 12 %%% InCollection: 13 @@ -84,10 +84,10 @@ %%% Periodical: 1 %%% PhdThesis: 12 %%% Proceedings: 38 -%%% TechReport: 59 +%%% TechReport: 60 %%% Unpublished: 2 %%% -%%% Total entries: 837 +%%% Total entries: 839 %%% %%% The ISBN and ISSN fields will be printed if %%% the is-alpha.bst or is-plain.bst style @@ -521,6 +521,8 @@ @String{j-PROGRAM = "Program"} +@String{j-REV-NETW-ECON = "Review of Network Economics"} + @String{j-RIV-INFO-MILANO = "Rivista di Informatica (Milano)"} @String{j-SA = "Scientific American"} @@ -3091,7 +3093,7 @@ } @Article{Beeton:2019:TBD, - author = "B. Beeton and K. Berry and D. Walden", + author = "Barbara Beeton and Karl Berry and David Walden", title = "{\TeX}: A Branch in Desktop Publishing Evolution, Part 2", journal = j-IEEE-ANN-HIST-COMPUT, @@ -6314,6 +6316,25 @@ xxnote = "See \cite{Poppelier:1992:BRJ,Poppelier:1992:BR}.", } +@TechReport{Eijkhout:2012:CST, + author = "Victor Eijkhout", + title = "The Computer Science of {\TeX} and {\LaTeX}; based on + {CS 594}, fall 2004, {University of Tennessee}", + type = "Report", + institution = "Texas Advanced Computing Center, The University of + Texas at Austin", + address = "Austin, TX, USA", + pages = "294", + year = "2012", + ISBN = "1-105-41591-0", + ISBN-13 = "978-1-105-41591-3", + bibdate = "Mon Aug 05 10:36:18 2019", + acknowledgement = ack-nhfb, + URL = "http://pages.tacc.utexas.edu/~eijkhout/Articles/TeXLaTeXcourse.pdf", + remark = "Unfinished book manuscript based on a course that was + given only once.", +} + @Book{Emerson:1987:TTU, author = "Sandra L. Emerson and Karen Paulsell", title = "troff Typesetting for {UNIX} systems", @@ -8021,6 +8042,30 @@ H.2: Further reading", } +@Article{Gaudeul:2007:DOS, + author = "Alex Gaudeul", + title = "Do Open Source Developers Respond to Competition? + {The} {\LaTeX} Case Study", + journal = j-REV-NETW-ECON, + volume = "6", + number = "2", + pages = "239--263", + month = jun, + year = "2007", + CODEN = "????", + DOI = "https://doi.org/10.2202/1446-9022.1119", + ISSN = "2194-5993 (print), 1446-9022 (electronic)", + ISSN-L = "1446-9022", + bibdate = "Mon Aug 05 14:41:29 2019", + bibsource = "http://www.math.utah.edu/pub/tex/bib/gnu.bib; + http://www.math.utah.edu/pub/tex/bib/texbook3.bib", + URL = "https://econpapers.repec.org/article/bpjrneart/v_3a6_3ay_3a2007_3ai_3a2_3an_3a9.htm; + https://www.degruyter.com/view/j/rne.2007.6.issue-2/rne.2007.6.2.1119/rne.2007.6.2.1119.xml", + acknowledgement = ack-nhfb, + fjournal = "Review of Network Economics", + journal-URL = "http://www.degruyter.com/view/j/rne", +} + @Book{Gratzer:2007:ML, author = "George Andrew Gr{\"a}tzer", title = "Math into {\LaTeX}", diff --git a/Master/tlpkg/bin/c2l b/Master/tlpkg/bin/c2l new file mode 100755 index 00000000000..d919c56aa99 --- /dev/null +++ b/Master/tlpkg/bin/c2l @@ -0,0 +1,131 @@ +#!/usr/bin/env perl +# $Id$ +# Originally written by Karl Berry. Public domain. +# +# Convenience front-end script to run ctan2tl. It rearranges the output +# so error messages come first, then the list of changed files. Also +# accepts platform abbreviations to run tl-update-bindir, etc. Don't +# take it too seriously; it surely need generalizing for use by anyone +# else. Uses various personal environment variables, etc. + +$| = 1; +exit (&main ()); + +sub main { + # platform abbrev + my $arg = $ARGV[0]; + if ($arg eq "asy") { + exec ("tl-update-asy --build"); + } elsif ($arg eq "aarch") { + $arg = "aarch64-linux"; + } elsif ($arg eq "alpha") { + $arg = "alpha-linux"; + } elsif ($arg eq "armel") { + $arg = "armel-linux"; + } elsif ($arg eq "armhf") { + $arg = "armhf-linux"; + } elsif ($arg eq "cygwin") { + $arg = "i386-cygwin"; + } elsif ($arg eq "dar32") { + $arg = "i386-darwin"; + } elsif ($arg eq "darwin" || $arg eq "dar" + || $arg eq "mac" || $arg eq "mactex") { + $arg = "x86_64-darwin"; + } elsif ($arg eq "darleg") { + $arg = "x86_64-darwinlegacy"; + } elsif ($arg eq "irix") { + $arg = "mips-irix"; + } elsif ($arg eq "kfreebsd") { + exec ("tl-update-bindir i386-kfreebsd && tl-update-bindir amd64-kfreebsd"); + } elsif ($arg eq "linux32" || $arg eq "lin32") { + $arg = "i386-linux"; + } elsif ($arg eq "mipsel") { + $arg = "mipsel-linux"; + } elsif ($arg eq "netbsd") { + exec ("tl-update-bindir i386-netbsd && tl-update-bindir amd64-netbsd"); + } elsif ($arg eq "powdar") { + $arg = "powerpc-darwin"; + } elsif ($arg eq "powlin") { + $arg = "powerpc-linux"; + } elsif ($arg eq "sol") { + exec ("tl-update-bindir i386-solaris && tl-update-bindir x86_64-solaris"); + } elsif ($arg eq "sparc") { + $arg = "sparc-solaris"; + } elsif ($arg eq "linux64" || $arg eq "lin64") { + $arg = "x86_64-linux"; + } elsif ($arg eq "musl") { + $arg = "x86_64-linuxmusl"; + + } elsif ($arg eq "norbert" || $arg eq "nor") { + for my $p (qw(i386-linux x86_64-linux x86_64-linuxmusl)) { + system ("$0 $p") && die "norbert/$p failed"; + } + print "$0: norbert updates done.\n"; + exit 0; + + } elsif ($arg eq "cg") { # mojca + for my $p (qw(i386-freebsd amd64-freebsd + x86_64-darwinlegacy + i386-solaris x86_64-solaris)) { + system ("$0 $p") && die "cg/$p failed"; + } + print "$0: cg (contextgarden) updates done.\n"; + exit 0; + + } elsif ($arg eq "all") { + for my $p (qw(aarch dar cg norbert armhf)) { + system ("$0 $p") && die "all/$p failed"; + } + print "$0: all updates done.\n"; + exit 0; + } + + if (-d "$ENV{xb}/$arg") { + print ("tl-update-bindir $arg\n"); + exec ("tl-update-bindir", $arg); + } + + $ARGV[0] = "-p" if $ARGV[0] eq "p"; + + print "$0: running ctan2tl @ARGV\n"; + # assume bash until we don't have to. + my @lines = `set -o pipefail; ctan2tl @ARGV &1 | tee /tmp/cl.out`; + my $status = $?; + + -d "$ENV{B}/tmp.cooked" + && system ("cp /tmp/cl.out $ENV{B}/tmp.cooked/$ARGV[$#ARGV].out"); + + # *** and other notable messages. + my @msgs = grep { /^\*\*\*.* \S/ + && ! /\* Generating / + } @lines; + push (@msgs, grep { /at \/.* line / } @lines); # perl errors + push (@msgs, grep { /^svn: E/ } @lines); # svn errors + push (@msgs, grep { /: no hit for pattern/ } @lines); # tlpsrc updates + # map file changes; should do better, check .tlpsrc for existing ... + push (@msgs, grep { /(svn .*|^ )[A-z]*\.map/ } @lines); + print map { (/^\*/ ? "" : "*** ") . $_ } @msgs; + + if ($status != 0) { + warn "*** ctan2tl exit status: $status\n"; + print STDERR @lines; + return 1; + } + + my $whole_string = join ("", @lines); + my @page = split (/\f */, $whole_string); + + my $diff_list + = `test -s /tmp/$<.tlplace.diff && sed -n -e 's/^--- //' \\ + -e 's/[ \\t].*//' \\ + -e 's,/home/texlive/karl/, ,p' \\ + /tmp/$<.tlplace.diff`; + $diff_list = ""; + + # page 0: build stuff. + # page 1: cooked hierarchy. + # page 2: new vs. present. + # page 3: place output. + print "$page[2]$diff_list\n\f$page[1]\n\f$page[0]\n\f$page[3]\n"; + return 0; +} diff --git a/Master/tlpkg/bin/c2l3 b/Master/tlpkg/bin/c2l3 new file mode 100755 index 00000000000..44388f30f2d --- /dev/null +++ b/Master/tlpkg/bin/c2l3 @@ -0,0 +1,39 @@ +#!/bin/sh +# $Id$ +# Originally written by Karl Berry. Public domain. +# +# Front-front-end script for c2l to update LaTeX3, +# or (with first arg "e") LaTeX2e, both of which comprise several +# packages that should be updated together. Look at the end of the output +# for the summarized results for each package, e.g., to see if any files +# ended up getting misplaced. +# +# Argument "p" run place. + +dirsfile=/tmp/`id -u`.tlplace.dirs +cp /dev/null $dirsfile.tmp +cp /dev/null /tmp/first + +if test "x$1" = e; then + shift + label=l2e + pkgs="amsmath cyrillic graphics tools latex" + # latex-tds still has knuth psnfss; babel is separate +else + label=l3 + pkgs="l3kernel l3packages l3experimental l3build l3backend" +fi + +for p in $pkgs; do + echo "${label}pkg $p" >&2 # progress of a sort + printf "\f ${label}pkg $p\n" + c2l "$@" $p | tee /tmp/c2l.out + sed -n "1,/`printf \f`/p" /tmp/c2l.out >>/tmp/first + echo >>/tmp/first + cat $dirsfile >>$dirsfile.tmp +done + +sort -u $dirsfile.tmp >$dirsfile +wc $dirsfile +echo +cat /tmp/first diff --git a/Master/tlpkg/bin/tl-update-asy b/Master/tlpkg/bin/tl-update-asy index ef6c57db769..1475bb0fa87 100755 --- a/Master/tlpkg/bin/tl-update-asy +++ b/Master/tlpkg/bin/tl-update-asy @@ -3,13 +3,11 @@ # Public domain. Originally written 2008, Karl Berry. # Info about updating asymptote. # -# Do not run this script. It won't work. It is necessary to run the -# commands one at a time and think about what is being done. It's -# checked in so that when I get hit by a truck, at least the procedure I -# used will be available as a starting point. +# Do not just run this script. It won't work. It is necessary to run the +# commands one at a time and think about what is being done. # -# The script uses various paths and convenience variables that I define -# for myself; feel free to peruse tug.org:~karl/.bash_login, etc. +# Also, the script uses various paths and convenience variables that I +# define for myself; feel free to peruse tug.org:~karl/.bash_login, etc. # --karl test "x$1" = x--build || exit 1 @@ -25,12 +23,13 @@ if false && $update_sources_from_ctan; then cd asymptote ver=`awk -F\" '{print $2}' revision.cc` # the newly-released version + echo $ver # show list of new files to add: svn status | sed -n 's/^\?//p' | fgrep -v binaries svn add `!!` - # show list of files to remove: + # show list of files to remove (keep free) diff -qr . /home/ftp/tex-archive/graphics/asymptote/ \ | egrep -v ' differ' | egrep -v '\.svn' svn rm ... @@ -70,7 +69,7 @@ elif test "x$1" = x--build; then ./configure --prefix=/tmp/ainst \ --with-latex=/tmp/ainst/latex --with-context=/tmp/ainst/context \ --disable-fftw --disable-gl --disable-gsl \ - --enable-texlive-build CFLAGS=-g CXXFLAGS=-ansi + --enable-texlive-build CFLAGS=-g CXXFLAGS=-std=c++11 make make check make install-prebuilt -- cgit v1.2.3