======================================================================== * doc/fonts/japanese-otf-uptex/README ======================================================================== README ====== From 00otf-uptex.txt: [ Title ] japanese-otf-uptex Ver.0.26 2020/11/08 [ Abstract ] This package provides upLaTeX support of japanese-otf package "otfbeta (v1.7b8 2019/04/01)" by psitau-san ( http://psitau.kitunebi.com/otf.html ) -------------------- For copyright and licensing, please see COPYRIGHT It is as same as the BSD 3-clause license. Ref. http://opensource.org/licenses/BSD-3-Clause -------------------- The original source has been downloaded from https://github.com/t-tk/japanese-otf-uptex as https://github.com/t-tk/japanese-otf-uptex/releases/tag/v0.26 After that the scripts run and the generated tfm and vf files included. Norbert Preining TANAKA Takuji 2020-11-14 ======================================================================== * doc/fonts/japanese-otf/README ======================================================================== package name: otf or japanese-otf This is the file README written in English by Norbert Preining for the upload to CTAN. More information in Japanese can be found in readme-ja.txt. (written by Saito Shuzaburo, originally named readme.txt) This package is originally named "otf", but for the sake of not choosing to general names on CTAN (and in TeX Live) it will be called "japanese-otf". This change has been discussed with the author of the package, Saito Shuzaburo. The version of the package used is otfbeta.zip v1.7b8 2019/04/01 In addition a patch by Hironori Kitagawa was applied otf-script-gteb.diff (included) to build tfm/vf/ofm for gteb font series. The map file in TeXLive-maps/otf-cktx.map was generated from the provided font maps. The original source has been downloaded from http://psitau.kitunebi.com/otf.html as http://psitau.kitunebi.com/otf1.7b8.zip This package provides advanced typesetting options for platex and friends. After downloading the script makeotf has been run and the generated vf/tfm/ofm files have been included in the upload to CTAN. The contents of this package is under the license given in the COPYRIGHT file, which is more or less BSD license. Norbert Preining 20201114.0 ======================================================================== * doc/fonts/ptex-fonts/README_makejvf ======================================================================== $BF|K\8l(BVF$B@8@.%D!<%k(B makejvf ver.1.1a $B3t<02qH$7$F$/$@$5(B $B$$!#(B dvips $B$GF|K\8l$r07$&>l9g!"(BDVI$B$r:n$k:]$K;HMQ$9$kOBJ8(BTFM$B$K5-=R$7$F$"$kJ8;zI}$H!"(B $BOBJ8(BPS$B%U%)%s%H$NJ8;zI}$,0[$J$k$?$a!"J8;z0LCV$rD4@0$9$k(BVF(Virtual Font)$B$H$$$&%U%!(B $B%$%k$,I,MW$K$J$j$^$9!#(Bmakejvf $B$O$3$N(BVF$B$r@8@.$9$k$?$a$N%D!<%k$G$9!#(B $B$^$?!"=D=q$-;~$K$O%7%s%0%k%/%)!<%H(B($B!F!G(B)$B!"%@%V%k%/%)!<%H(B($B!H!I(B)$B$r$=$l$>$l%7%s%0(B $B%k%_%K%e!<%H(B($B!l$H$3$l$r(B180$BEY2sE>$5$;$?$b$N(B)$B$H%@%V%k%_%K%e!<%H(B($B!m$H$3$l$r(B180$BEY2s(B $BE>$5$;$?$b$N(B)$B$KJQ49$7$F=PNO$7$^$9!#(B ---------------------------------------- VF$B$K$D$$$F(B VF(Virtual Font)$B$H$O!"%U%)%s%H$r9g@.$7$F2>A[E*$J%U%)%s%H$H$7$F07$&$?$a$N%U%!%$(B $B%k$G$9!#(B $B2$J8%U%)%s%H$G$O%"%/%;%s%H5-9f$r;}$?$J$$%U%)%s%H$KB>$N%U%)%s%H$N%"%/%;%s%H5-9f(B $B$rDI2C$7$F(B1$B$D$N%U%)%s%H$H$7$F07$C$?$j!"G$0U$N%U%)%s%H$N>.J8;zItJ,$r=L>.$7$?BgJ8(B $B;z$KCV$-49$($F(B SmallCaps $B%U%)%s%H$N$h$&$K07$&$N$K;HMQ$7$^$9!#(B VF$B%U%!%$%k$NCf?H$O(BDVI$B%U%!%$%k$H;w$F$*$j!"3FJ8;z$K$D$$$F$N=PNOJ}K!$,(BDVI$BL?Na$K(B $B$h$C$F5-=R$5$l$F$$$^$9!#J8;z$N0LCV$rJQ$($k$3$H$b2DG=$G$9!#(B dvips $B$G$N(BVF$B$H(BTFM$B$N4X78$OH$7$FAHHG(B $B"-(B dvips $B$,(BDVI$BCf$N(BTFM$B$HF1$8L>A0$N(BVF$B$r;2>H(B($B$J$1$l$PJ8;z9g@.$J$7(B) $B"-(B VF$BCf$K5-=R$5$l$F$$$k3FJ8;z$NDj5A(B($BJ8;zKh$K%U%)%s%H$r@_Dj$G$-$k(B)$B$r;2>H(B $B"-(B $BJ8;zDj5A$K=>$C$F(B dvips $B$,3FJ8;z$rCV49(B dvips$B$GF|K\8l$r07$&>l9g!"(Bmin10 $B$d(B goth10 $B$NJ8;z0LCV$HOBJ8(BPS$B%U%)%s%H$NJ8;z0LCV(B $B$N0c$$$,LdBj$K$J$j$^$9!#(B $BNc$($P(B "$B!J(B" $B$N$h$&$J!":8$K6u$-$,$"$k3g8LN`$N>l9g!"OBJ8(BPS$B%U%)%s%H$G$O:8$N6u$-$b(B $B4^$s$@J8;z$H$7$F07$$$^$9$,!"(Bmin10 $B$d(B goth10 $B$G$O:8$N6u$-$OJ8;z$H$7$F07$o$:!"!V6u(B $B$-(B+"("$B!W$N$h$&$J07$$$K$J$j$^$9!#$=$N$?$a(B min10 $B$N(B "$B!J(B" $B$r$=$N$^$^(BPS$B$N(B "$B!J(B" $B$KCV(B $B$-49$($F$7$^$&$H!"A[Dj$7$?0LCV$h$j1&$K=PNO$5$l$F$7$^$$$^$9!#(B $B$=$3$G(BVF$BCf$K!V(B"$B!J(B" $B$O:8$K$:$i$7$FCV$-49$($k!W$H$$$&5-=R$r$7$F$*$-!"(Bdvips $B$,(BVF $B$r;2>H$7$F0LCVD4@0$r9T$&$h$&$K$J$C$F$$$^$9!#(B ---------------------------------------- $B%3%s%Q%$%k$*$h$S%$%s%9%H!<%k(B: makejvf $B$N%$%s%9%H!<%k@h$r(B Makefile $B$N(B DISTDIR $B$K;XDj$7$F$*$$$F2<$5$$!#(B make $B$r(B> <$BOBJ8(BPS$B%U%)%s%H(BTFM$BL>(B> <$BOBJ8(BTFM$B%U%!%$%kL>(B>: pTeX $B$G;HMQ$9$kOBJ8(BTFM$B$NL>A0!#%+%l%s%H%G%#%l%/%H%j(B $B$KMQ0U$7$F$*$/!#$3$NL>A0$N3HD%;R$r(B`.vf'$B$K$7$?$b$N$,(B VF$B%U%!%$%k$H$7$F@8@.$5$l$k!#(B <$BOBJ8(BPS$B%U%)%s%H(BTFM$BL>(B>: $BpJs$r5-=R$7$?(B TFM$B$NL>A0!#(Bmakejvf $B$K$h$j@8@.$5$l$k!#$^$?!"$3$NL>A0(B $B$,(BVF$BCf$K5-=R$5$l$k!#(B $B%*%W%7%g%s(B: -C $BD9BN!J:81&$NI}$r=L$a$?=qBN!K$N(BTFM$B$r85$K(BVF$B$r:n@.$9$k>l9g$K;HMQ$7$^$9!#(B $BD9BN(BVF$B:n@.;~$K(B-C$B$rIU$1$J$$$H!"C1$K>.$5$$%U%)%s%H$N(BTFM$B$H$7$F07$o$l$F(B $B$7$^$$$^$9!#(B -K <$BOBJ8(BPS$B%U%)%s%H(BTFM$BL>(B> $BHs4A;zIt$N(BPS$B%U%)%s%H(BTFM$B$r;XDj$7$^$9!#$3$l$K$h$j!"#1=qBN$G4A;zIt$HHs(B $B4A;zIt$G0[$J$k%U%)%s%H$,;HMQ$G$-$^$9!#(B -b <$B?tCM(B> $B%Y!<%9%i%$%sJd@5$N?tCM$r;XDj$7$^$9!#J8;z$N9b$5$r(B1000$B$H$7$F@0?t$G;XDj!"(B $B%W%i%9$GJ8;z$,2<$,$j!"%^%$%J%9$GJ8;z$,>e$,$j$^$9!#(B -m $B=D=q$-;~$K%/%*!<%HN`!J!G!I!K$r%_%K%e!<%H!J!l!m!K$XJQ49$7$^$9!#(B ---$B0J2<#2$D$O@5<0$K%5%]!<%H$5$l$F$$$k%*%W%7%g%s$G$O$"$j$^$;$s(B--- -a (B> PS$B%U%)%s%H$N(BAFM$B%U%!%$%kL>$r;XDj$7$^$9!#(B $B$+$J5M$a%U%)%s%H:n@.;~$K;HMQ$7$^$9!#(B -k <$B?tCM(B> $B$+$J5M$a%^!<%8%s$r;XDj$7$^$9!#J8;zI}$r(B1000$B$H$7$F@0?t$G;XDj!#(B -a$B%*%W%7%g%s$H6&$K;HMQ$7$^$9!#(B $BNc(B1: min10 $B$r%j%e%&%_%s(B-L$B$H$7$F;HMQ$9$k>l9g(B: % makejvf min10.tfm rml (min10.vf $B$H(B rml.tfm $B$,@8@.$5$l$k(B) $B$3$&$7$F@8@.$5$l$?(BVF$B$*$h$S(BTFM$B$r(B $TEXMF $B0J2<$N8!:w%Q%9$,DL$k>l=j$KCV$-$^$9!#(B $B$5$i$K!"(Brml $B$,=PNO5!$N%j%e%&%_%s(B-L$B$G$"$k$3$H$r@k8@$9$k$?$a$K!"(B$TEXMF/dvips $B0J2<(B $B$K$"$k(B psfonts.map $B$KA0$K%3%T!<$7$F;HMQ$7$^$9!#(B $BNc(B2: $BHs4A;zIt$K8+=P$7%_%s!"4A;zIt$KB@%4$r;HMQ$9$k>l9g(B: % makejvf -K midashimin-ma31 jcomic.tfm futogo-b $BL!2h$NBf;l$N$h$&$J!"$+$J$rL@D+=qBN!"4A;z$r%4%7%C%/=qBN$G;HMQ$9$kNc$G$9!#(B jcomic.tfm $B$K$O$"$i$+$8$a(B min10.tfm $B$r%3%T!<$7$F$*$-$^$9!#(Bpsfonts.map $B$K$O This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 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.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. The Current Maintainer of this work is Leo Liu. This work consists of the files makemetrics.lua upzhm-{h,v}.pl upzhfandolfonts.tex upzhfandolfongs-test.tex README.md and the derived files upzhserif-{h,v}.tfm upzhserifit-{h,v}.tfm upzhserifb-{h,v}.tfm upzhsans-{h,v}.tfm upzhsnasb-{h,v}.tfm upzhmono-{h,v}.tfm upzhserif-{h,v}.vf upzhserifit-{h,v}.vf upzhserifb-{h,v}.vf upzhsans-{h,v}.vf upzhsnasb-{h,v}.vf upzhmono-{h,v}.vf upserif-{h,v}.tfm upserifit-{h,v}.tfm upserifb-{h,v}.tfm upsans-{h,v}.tfm upsnasb-{h,v}.tfm upmono-{h,v}.tfm ======================================================================== * doc/generic/babel-french/README.md ======================================================================== The babel-french package (formerly known as `frenchb') ====================================================== Description ----------- This package provides support for the French language for the babel multilingual system. It is designed to work with the following engines: pdfTeX, XeTeX and LuaTeX. Plain and LaTeX formats are supported. ## Contents The bundle consists of the following files: * frenchb.ins: installation file to unpack the language definition files, * frenchb.dtx: packed language definition files and documentation, * frenchb.pdf: unpacked documentation for babel-french, * frenchb-doc.pdf: comprehensive documentation in French, * frenchb-doc.tex: source file of frenchb-doc.pdf, * README.md (this file). License ------- Released under the LaTeX Project Public License v1.3 or later See http://www.latex-project.org/lppl.txt ## Installation If the latest version of this package is not included in your LaTeX distribution, do the following: * issue "luatex frenchb.ins" to unpack the language definition files; * copy the files frenchb.lua, french.ldf, frenchb.ldf, francais.ldf, acadian.ldf and canadien.ldf to a location where TeX can find them (default location: $TEXMF/tex/generic/babel-french/); * rebuild the database (mktexlsr or so). Documentation ------------- See the included manuals for usage instructions: frenchb.pdf in English or the French documentation frenchb-doc.pdf. Changes ------- See the included manual frenchb.pdf, section "Change History". --- Copyright 1996--2020 Daniel Flipo E-mail: daniel (dot) flipo (at) free (dot) fr ======================================================================== * doc/generic/babel-german/README ======================================================================== ========================================================================= The babel-german bundle German language support for the babel multilingual package Copyright 1989--2021 Johannes L. Braams Bernd Raichle Walter Schmidt, Jürgen Spitzmüller Current Maintainer: Jürgen Spitzmüller E-mail: juergen (at) spitzmueller (dot) org Released under the LaTeX Project Public License v1.3 or later See http://www.latex-project.org/lppl.txt ========================================================================= == PURPOSE == This bundle is an extension to the babel package for multilingual typesetting. It provides all necessary macros, definitions and settings to typeset German documents. The bundle includes support for the traditional and reformed German orthography as well as for the Austrian and Swiss (standard) varieties of German. == CONTENTS == The bundle consists of the following files: * german.ins (installation file to unpack the language definition files) * germanb.dtx (packed language definition files and documentation for the traditional [1901--1996] orthography) * ngermanb.dtx (packed language definition files and documentation for the reformed [1996 ff.] orthography) * germanb.pdf: unpacked documentation for germanb.ldf (support for traditional orthography) * ngermanb.pdf: unpacked documentation for ngermanb.ldf (support for new orthography) * README (this file) == INSTALLATION == If the latest version of this package is not included in your LaTeX distribution, do the following: * issue "latex german.ins" to unpack the language definition files * copy the files (austrian.ldf, german.ldf, germanb.ldf, naustrian.ldf, ngerman.ldf, ngermanb.ldf, nswissgerman.ldf and swissgerman.ldf) to a location where TeX can find them (default location: $TEXMF/tex/generic/babel-german/) To re-generate the manuals, issue * pdflatex .dtx * makeindex -s gglo.ist -o .gls .glo * pdflatex .dtx * pdflatex .dtx Substitute either by germanb or ngermanb. == DOCUMENTATION == See the included manuals germanb.pdf (traditional orthography) and ngermanb.pdf (new orthography) for usage instructions. == CHANGES == See the included manuals germanb.pdf (traditional orthography) and ngermanb.pdf (new orthography), section "Change History". ======================================================================== * doc/generic/fltpoint/README ======================================================================== The fltpoint package for use with TeX / LaTeX Current Version: 1.1b, dated 2004/11/12 Copyright 2000-2004 License: LPPL, see fltpoint.dtx for more details Eckhart Guthoehrlein e-mail This package provides commands for simple floating point arithmetic with TeX. At the moment, there is support for the basic operations addition, subtraction, multiplication and division as well as for rounding numbers to a given precision. ======================================================================== * doc/generic/pgfplots/README ======================================================================== pgfplots - Create normal/logarithmic plots in two and three dimensions for LaTeX/TeX/ConTeXt. pgfplotstable - Loads, rounds, formats and postprocesses numerical tables. PGFPlots draws high--quality function plots in normal or logarithmic scaling with a user-friendly interface directly in TeX. The user supplies axis labels, legend entries and the plot coordinates for one or more plots and PGFPlots applies axis scaling, computes any logarithms and axis ticks and draws the plots. It supports line plots, scatter plots, piecewise constant plots, bar plots, area plots, mesh and surface plots, patch plots, contour plots, quiver plots, histogram plots, polar axes, ternary diagrams, smith charts and some more. Pgfplots is based on Till Tantau's package PGF/TikZ (pgf). Pgfplotstable displays numerical tables rounded to desired precision in various display formats, for example scientific format, fixed point format or integer, using TeX's math facilities for pretty printing. Furthermore, it provides methods for table postprocessing. Please take a look at doc/latex/pgfplots/pgfplots.pdf and doc/latex/pgfplots/pgfplotstable.pdf. Copyright 2007-2020 by Christian Feuersaenger. 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 3 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, see . HISTORY: 1.17 - fixed bug: restore compatibility with pgf/tikz circle syntax inside of pgfplots - new feature #62: 'coordinate style' which allows to associate options with individual coordinates. - new feature pgfplotstable: added 'text indicator' - new feature pgfplotstable: added 'percent is letter' to allow comment chars within string-based tables 1.16: - fixed bug #111 [fillbetween] strange behavior when `soft clip` is used and one of the paths touches the axis border - fixed bug #183: Nan in the first line of a numeric table was interpreted as column name - fixed bug #187 Wrong output from mod in axis - fixed bug #109 `visualization depends on` doesn't work with table from pgfplotstable is now fixed for numeric values - fixed bug: \pgfplotstablenew was unable to create tables with 0 or 1 rows. - fixed bug: 114 fillbetween suffered from inaccuracy (produced invisible segments) - fixed bug #139 [fillbetween] numerical issues with dense points - fixed bug #153: \begin{tikzpicture}[scale=...] combined with fill between or 'set layers' resulted in a wrong bounding box - \addplot gnuplot: autodetected unbounded coordinates - new feature: parse tick positions using math parser (tracker #69) - new feature: programmatic access to axis coordinates for given canvas coordinates (\pgfplotspointgetcoordinates, tracker 68) - new feature: 'x filter/.append expression', a stackable variant of 'x filter/.expression' 1.15: bugfix release - fixed regression: fpu caused forest library to fail as soon as one loads pgfplots - fixed bug #149 : \edef{...\to...} was wrong and caused \pgfplotstablevertcat to fail - usability: added support for \plotnum during \addplot - fixed bug 134 [statistics] Histogram with custom `symbolic coords` - fixed bug 140 (pgfplotstable read does not process empty rows anymore) - fixed bug 150 Usage of \pgfkeysvalueof in xtick leads to 'Dimension too large' - fixed bug 105 [manual] `xticklabel pos=upper` is not documented in fact, some of the documented positions for 'xtick pos' where unavailable. - fixed bug 155 [groupplots] `scaled ticks` does not recognize `ticklabels at` - fixed bug 160 `xticklabels` also used for `extra x tick labels` if they are not given explicitely - implemented partial solution for bug 154 [log mode] sampling in 2D and 3D different - fixed bug 163 [bar-chart] bars dissapear when values are >xmax/ymax - fixed bug 81 cannot use dollar sign as 'comment char' - fixed bug 91 Hashes in data - fixed bug 165 [minor ticks] minor tick drawn after the last xtick - fixed bug 176: 2d plot expression in 3d axis fails for lualatex 1.14 - new feature: 'contour filled' (compat=1.14) - new feature: building colormaps from other colormaps (see "Building Colormaps based on other Colormaps" in the manual) - new feature: non-uniform colormaps (compat=1.14) - new feature: colormaps defined on position of arbitrary magnitude - new feature: colorbar as legend - new feature: 'colorbar style={xtick=data}' positions tick labels at colormap positions - fixed bug: pgfplots now handles incompatible changes of luatex loading \usepackage{pgfplots} _before_ pgf also allows makes older PGF versions compatible with luatex - fixed bug: incompatibility between units + groupplots (bug 119) - fixed bug: 'axis line shift' did not respect labels - fixed bug: layers for axis lines were not respected - fixed bug: two axes with fillbetween in the same picture failed due to clip paths on layers - fixed bug: quiver plots with 'every arrow' failed to evaluate arrow tip length arguments - fixed bug: \usepgfplotslibrary{colorbrewer}: colormap 'PuOr' was defined in reverse order 1.13: - fixed bug: incompatiblity between fillbetween and babel - fixed bug: 'compat=1.9' (or newer) failed to work with log bar plots - fixed bug: javascript incompatibility between Acrobat reader DC and clickable lib - fixed bug in polar axes: repaired default axis label positions - fixed bug in polar axes: repaired support for sloped descriptions - fixed bug: 'axis line style={draw=none}' had no effect unless one had 2d boxed axes - fixed bug: point meta expressions with '=' inside of them which caused compilation errors - fixed bug: compat=1.12 combined with interrupted plots (by empty line) failed to work - fixed bug: compat=1.12 combined with lualatex evaluated relational operations (<, ==) with the wrong operator precedence - fixed bug: fixed floor and ceil functions - fixed bug: 'set layers' broke alignment features with different manifestations ('set layers' together with fill between in group plots, together with at={} key, together with anchor) - fixed bug: fill between and group plots: fill-between graphics was missing (list of layers was lost) - fixed bug: \addplot graphics {\newFile{P.pdf}}; failed to properly expand the file name - fixed bug: fill between + error bars resulted in compilation error - fixed bug: stacked plots occasionally used a wrong coordinate mapping - fixed bug: provided suitable default legends for xbar and xbar stacked - fixed bug: 'dateplot' now computes missing 'date ZERO' automatically. 'date ZERO' is managed automatically. - new feature: Added support for search paths to find data files (table/search path) - new feature: 'xtick distance' allows to define tick positions by distance - new feature: "axis line shift=10pt" shifts axis lines together with all their descriptions - new feature: 'matrix plot' (alias 'imagesc') which allows cell-based matrix plots - new feature: unbounded point meta in mesh plots will be treated like an invisible patch - new feature: added high quality colormap 'viridis' (use 'colormap name=viridis' to activate it) - new feature: ensured that 'shader=flat' returns the same result for every choice of 'z buffer' (starting with compat=1.13) - new feature: utility function \pgfplotsforeachungrouped: added support for \breakforeach - new feature: compat=1.13: activates sampling routine with less rounding errors - new feature: cycle multiindex list (uses the 'ith' element for every provided sub-list) - new feature: 'color of colormap=' or 'color of colormap= of ' - new feature: 'index of colormap=' or 'index of colormap= of ' - new feature: cycle list={[of colormap]} - new feature: cycle list={[colors of colormap={0,100,500,100} of viridis]} - new feature: cycle list={[indices of colormap={0,1,2,3} of hot]} - new feature: added support for 'stack negative=on previous|separate' which allows separate plots for '+' and '-' (useful for bar plots) - new feature: added support for 'colormap access=direct' combined with 'shader=flat mean' and 'shader=interp': it previously used to interpolate indices instead of colors - new feature: \closedcycle now produces useful results for 3d line plots - new feature: added \usetikzlibrary{colorbrewer} and \usepgfplotslibrary{colorbrewer} - new feature: added 'colormap access=piecewise constant' - new feature: added rudimentary support for "Filled Contours" (based on 'colormap access=piecewise constant') - new feature: added methods to build colormaps based on other colormaps using "color of colormap", "index of colormap", "colors of colormap", "samples of colormap", and "indices of colormap" 1.12.1: minor bugfix release - fixed bug: incompatibility of 1.12 with unicode-math - fixed bug: lua backend failed to work with table input and dependency on \coordindex - fixed bug: lua backend failed with 'forget plot' 1.12: scalability + performance - scalability: reduced TeX memory consumption for huge inline tables - scalability: lualatex allows bigger 3d graphics - scalability: lualatex now reduces compilation time for huge 3d graphics (requires \pgfplotsset{compat=newest} at the time of this writing) surf shader=faceted: time reduced to 61% of pdflatex (\addplot3[surf,samples=70] {exp(-x^2-y^2 +x*y)}) surf shader=interp: time reduced to 25% of pdflatex (\addplot3[surf,shader=interp,samples=70] {exp(-x^2-y^2 +x*y)}) surf shader=interp, parametric: time reduced to 36% of pdflatex (\addplot3[surf,shader=interp,z buffer=sort, samples=50,domain=-1:0,y domain=0:2*pi] ({sqrt(1-x^2) * cos(deg(y))}, {sqrt( 1-x^2 ) * sin(deg(y))}, x);) surf shader=faceted, parametric: time reduced to 40% of pdflatex (\addplot3[surf,z buffer=sort, samples=50,domain=-1:0,y domain=0:2*pi] ({sqrt(1-x^2) * cos(deg(y))}, {sqrt( 1-x^2 ) * sin(deg(y))}, x);) - scalability: lualated now reduces compilation time for boxplots. 10000 input points from table: time reduced to 23% of pdflatex - fixed bug: 3d axes where all axes used log scale produced compile failure - fixed bug: axis equal did not respect "disabledatascaling" - fixed bug: mesh legend was confused by color input=explicit - fixed bug: colorbar style did not reset zmin/zmax - fixed bug: memory allocation in FPU consumed too much memory - fixed bug: boxplots: removed compilation error due to spurious spaces in options list - fixed bug: boxplots: now uses standard quantile estimators: has all 9 estimators of R and uses the same as in Excel as default (as of compat=1.12) - fixed bug: boxplots: sometimes failed to compute boxplot statistics for special inputs - fixed bug: boxplots: now, it sets 'mark=*' for outliers if there is no mark (compat=1.12) - fixed regression: compat=1.11 broke arcs inside of axis - new feature: ensured that arcs inside of axis make use of 'axis cs' and 'axis direction cs' automatically - new feature: ensured that (0:1) is evaluated with axis cs - fixed bug: precision of transformation cartesian to polar was too low (added atan2 to fpu) - fixed bug: z buffer caused 'mesh legend' to produce a compile error - new feature: added 'y filter/.expression={y==3 ? nan : y}' to simplify coordinate filters 1.11: usability + bug fixes. - new feature: "hide obscured x ticks=false" to disable the feature which hides ticks - simplified UI for symbolic coords: now, it accepts unexpandable dictionary entries including umlauts, undefined macros, math mode, ... - simplified UI for symbolic coords: added magic prefix [normalized] to allow something like xmin={[normalized]0.7} - simplified UI for custom annotations: one does not need to say "axis cs" any longer; coordinates like (1,2) are now automatically interpreted as (axis cs:1,2) - new feature: 'type ticklabels with struts' improves baseline alignment of tick labels - new feature: 'trig format plots=rad' allows to use radians in trigonometric evaluations - simplified 'external lib': added driver auto-detection for pdflatex, lualatex, xelatex, dvips (\usepgfplotslibrary{external}, or, with the next PGF release, \usetikzlibrary{external}) - simplified UI for \addplot coordinates: now, it expands macros as it goes. - new feature: 'intersection segments' now accepts negative indices to count from the last backwards - simplified UI: 'intersection segments' now accepts new syntax with 1-based indices (old 0-based are still supported) - fixed bug: fillbetween has had a problem with pins on input paths - fixed bug: now, 'stacked ignores zero' is no longer applied to error bars. - fixed bug: tick lines were drawn incorrectly for centered axis lines in 3d - fixed bug: variable=u failed to work in some contexts - fixed bug: fill between implicitly activated layers, but did not install the correct layers for grid lines etc. - fixed bug: z grid style was applied to y grid style - fixed bug: using 'x=1cm' failed to work in axis descriptions (legends) - fixed bug: mesh legend failed to work with 'shader=interp' - fixed bug: bounding box of shader=interp was wrong if there were transformations. - fixed bug: added support for \addplot graphics in ConTeXt - fixed bug: external lib failed to work with dvips (since PGF 3.0.0 I suppose); now it produces correct bounding boxes - fixed bug: \pgfplotstablenew can now overwrite existing tables. - fixed bug: extra ticks near intersections of axis lines were hidden - fixed bug: 'intersection segments' did not work with '--cycle' - fixed bug: 'intersection segments' did not update the last tikz point - fixed bug: tick lines/grid lines have been clipped when they were near the boundary - fixed bug: soft clip decoration failed to apply the transformation matrix - fixed bug: polar axes and units library resulted in broken bounding box - fixed bug: \addplot[stack plots=false] used to work up to 1.8, but failed until now. Fixed. - fixed bug: hist/density was broken since some time 1.10: - new feature: fill between plots (library fillbetween) - new feature: concatenate intersection segments (library fillbetween) - fixed bug: xelatex failed to run contour external - fixed incompatibility with \label and \usepackage{mcaption} - fixed bug: histograms produced wrong point meta - fixed bug: histograms reported the wrong 'plot name' and confused shifts of bar plots 1.9: - new feature: asymmetric error bars - new feature: activated math parser for axis limit arguments, arguments in axis cs, and domain argument in log plots - new feature: stacked bar plots place their 'nodes near coords' correctly in the middle and print the increment (compat=1.9) - new feature: stacked bar plots suppress empty increments (compat=1.9). - new feature: 'scatter/position=relative|absolute' allow to position 'nodes near coords' absolutely. use-case: bar plots + nodes near coords which are at, say, y=0 rather than their y value - new feature: integration of smooth shadings & auto-CMYK conversion \usepackage[cmyk]{xcolor} or \selectcolormodel{cmyk} will reconfigure pgfplots to use CMYK (document-wide) - new feature (advanced audience only): programmatic access to data coordinates during the visualization phase -> allows much more customization for error bars, stacked plots, nodes near coords. - wrote beginner tutorials - fixed bug: error bars and point meta did not work together - fixed bug: stacked plots did not respect 'visualization depends on' - fixed bug: luatex 0.76 is not backwards compatible; added version switch - fixed bug: ternary library precision has been improved - fixed bug: problem with axis limits very close to 0 - fixed bug: colormap specification limit case produced out of bounds exception 1.8: - new feature: tight bounding box even if the axis is no box and bb excludes clip path - new feature: mesh/color input=explicit - new feature: shader=interp now has drivers for both dvipdfmx and xetex - new feature: support for more color spaces in colormap definitions - new feature: shader=interp and device-level gray colorspaces - new feature: 'contour/contour dir=[xyz]' to draw contours in different directions - new feature: statistics library with boxplot handler (both boxplot prepared and automatic computation) - fixed bug: 3d centered axis lines and label placement (requires compat=1.8 or higher) - fixed bug: axis lines and placement of labels, tick scale labels, and reversed axes (requires compat=1.8 or higher) - fixed bug: filtering out coords from a mesh plot failed - fixed bug: every legend image post was not respected inside of \ref{plotlabel} - fixed bug: high-order patches computed the shader=flat mean in a wrong way. - fixed bug: remember picture inside of pgfplots axes failed (due to cell picture) - fixed bug: now, the tick scale label will be omitted if there are no ticks - fixed bug: axis box path was not closed - fixed bug: the bounding box was non-empty even if the axis was hidden. - fixed bug: auto-alignment of nodes near coords failed for xbar plots - fixed bug: providing bar width / bar shift in terms of axis units did not work with [xy]bar and nodes near coords - fixed bug: transformation 'data cs=cart' -> polar is more robust now - fixed bug: code did not compile against pgf 2.00 - fixed bug: patch plot lib and shader=interp,patch type=biquadratic - fixed bug: context path searching issue (pgfplots.lua) - fixed bug: shader=interp and dvips driver - fixed bug: error bars with explicit relative input failed 1.7 - added feature: 'bar shift' and 'bar width' can now be expressed in terms of axis units (compat=1.7 or higher) - fixed incompatibility regression pgfplots 1.6.1 pgf 2.10: layers - fixed incompatibility pgfplots and imakeidx - added feature: 'enlargelimits={abs=1cm}', i.e. enlarge by dimension rather than unit - patchplots lib: added patch type=bicubic - patchplots lib: added support for global paths (fillable) - patchplots lib: added patch type sampling feature - patchplots lib: improved usability (documentation and improvements) - fixed path issues in context: moved lua input file to tex/generic - fixed bug: \ref{legendimage} inside of legend text was wrong. 1.6.1: - fixed incompatibility lualatex,shader=interp, and german package (introduced in 1.6) 1.6: - added support for layered graphics (main use case: multiple axes and layers) - added support for second colormap in mesh plots (mesh/interior colormap name) - added support for scopes inside of axes - contour plots: added ability to provide list of discrete labels (mesh/levels) - empty lines are interpreted as interruptions in data plots (was undocumented since 1.4) - added more scaling options to 'scale mode=scale uniformly' (affects axis equal in 3d and \addplot3 graphics) - fixed wrong implementation of 'axis equal' and 'unit vector ratio' in 3d (backwards compatible for 2d, but not for 3d - the 3d implementation was plain wrong) - fixed incompatibility of lualatex and shader=interp - fixed bugs/added features around \addplot3 graphics - fixed bug: colorbar did not support ymode=log - fixed a couple of minor bugs - fixed bounding box computation for clip=false,axis lines=none 1.5.1: - more operations for FPU library (==, !=,<=,>=,?) - fixed bug in usage of decorations in \addplot - bugfix for contour prepared format=matlab - added 'const plot mark mid' and 'jump mark mid' plot handlers - nodes on a plot (\addplot ... node[pos=] {};) - 'trim axis group left' and 'trim axis group right' - bugfixes for polar axes and log+stacked plots - added style 'log ticks with fixed point' - introduced patched tikz paths to simplify circles and ellipses within an axis - patchplots lib: patch type=polygon - some more bugfixes 1.5: - Contour plots, - Histograms, - Quiver plots, - patch plots (library) - Triangle Meshes - Bilinear Elements - Quadratic Triangles - Biquadratic Quadrilaterals - Coons Patches - Discrete colorbars, - Table sorting, - Linear regression, - Ternary diagrams, - Tieline Plots - Smith Charts - Polar axes, - Empty lines in input files result in interrupted plots, - PDF user defined coordinate mouse popups - CMYK colormaps and shadings, - new markers and cycle lists - access to axis limits, - \addplot3 graphics: pgfplots draws an appropriate axis for a three-dimensional(!) external png graphics - 3D axes: support to provide explicit unit vectors: - explicit unit vectors - explicit unit vectors which are uniformly rescaled to match width/height - 3D axes: improved support for unit vector ratios - improvements of the groupplot styles - preliminary support for (2d) bar plots in 3d axes - new shader 'faceted interp' - table package: - 'every nth row' style - 'comment chars' key to define comment characters in input files - 'skip first n' style - lots of smaller bugfixes (see ChangeLog for details) 1.4.1: - improved compatibility to gnuplot 4.4 1.4: Version 1.4 contains several new features, mostly work on details. It fixes many bugs and provides the following improvements: - detached legends - detached colorbars - ybar (and similar plots) can now be mixed with other plot types like line plots. - improved legend formatting - added 'restrict x to domain*' which cups coordinates outside of a specified domain (same for y and z) - Added support for linear regression - Inline tables, - Lots of bug fixes The next version will make a greater step when it is stable. 1.3.1: Version 1.3.1 is a bugfix release containing - improved parametric plots with gnuplot - improved normalsize, small and footnotesize scale styles and added tiny - a lot of bugfixes 1.3: - improvements for two dimensional visualization, among them - axis equal, - color bars, - nodes near coords, - jumps in plots, - improved description positioning, - reverseable axis directions, - simpler alignment of adjacent axes, - units and a simplified user interface, - new three dimensional line, scatter, mesh and surface plots, - a copy of the automatic pdf externalization library, - an improved manual enhanced with a lot of pdf cross references. 1.2.2: - fixed a problem with the samples key, - provides some smaller fixes and some manual improvements. - added plot graphics. 1.2: - completely rewritten math expression parser with extended data range, - colormaps for scatter plots - fine tuning for plot parameters. - table package has been extended and is now a fully featured table typesetting, computing and postprocessing tool. ======================================================================== * doc/latex-dev/base/README.md ======================================================================== The LaTeX kernel ================ Release 2021-05-01 pre-release 2 Overview -------- This bundle provides the core LaTeX kernel. In addition to this bundle, a minimal LaTeX system also needs the files contained in the - LaTeX team documentation (`doc`) - Packages which must be available (`required`). These are - Essential tools (`tools`) - Core graphics and color support (`graphics`) - Key mathematics support (`amsmath`) This file contains a small set of pointers to other more complete documentation on installing and using a LaTeX system. Documentation ------------- Full documentation of the LaTeX system is provided by - _LaTeX: A Document Preparation System_; Lamport, Addison-Wesley - _The LaTeX Companion_, 2ed; Mittelbach and Goossens with Braams, Carlisle and Rowley, Addison-Wesley - _Guide to LaTeX_, 4ed; Kopka and Daly, Addison-Wesley The distribution is described in files ending `.txt` or `.md`; briefly, the most significant of these files are - `README.md` is this file - `manifest.txt` lists all the files in this LaTeX distribution, with one line of information about the contents - `legal.txt` and `lppl.txt` (LaTeX Project Public License) describe the LaTeX copyright, warranty and copying restrictions. - `texpert.txt` contains information about the system that may still be useful for TeX experts - `tex2.txt` contains important information for users of extremely old versions of TeX (pre 1990) - `bugs.txt` describes how to submit a bug report for LaTeX Other documentation files include files with names of the form: guide.tex You will probably need to update your system before you can typeset these files. Each file needs three LaTeX runs. Some of these are also available as PDF files on [CTAN](https://www.ctan.org). The following files contain further information: - `ltx3info.tex` gives you some historical information about the LaTeX3 project - `manual.err` lists errata in _LaTeX: A Document Preparation System_ (Lamport) - `tlc2.err` lists errata in _The LaTeX Companion_ (Mittelbach et al.) The files `ltnews*.tex` (part of the `doc` bundle) contain the LaTeX newsletters, the highest number being the most recent. For historical reasons, the base distribution and the core documentation are bundled separately. Documentation is found in the `doc` bundle. In an installed TeX system, `base` and `doc` should be placed within the same location; the distinction is therefore primarily of importance when looking at the development code. Installation ------------ We no longer distribute installation instructions for the various TeX implementations. All modern TeX systems include LaTeX as-standard, and end users should in general use the release versions supplied in this way. Release distribution is carried out only through the CTAN archives. Requirements ------------ The LaTeX kernel requires the e-TeX extensions to TeX, which were finalised in the late 1990s and are available in modern TeX-derived engines. Some new features require `\ifincsname`, which is currently available in release versions of pdfTeX, XeTeX and LuaTeX, and is being introduced shortly in e-pTeX and e-upTeX. License ------- The contents of this bundle are distributed under the [LaTeX Project Public License](https://www.latex-project.org/lppl/lppl-1-3c/), version 1.3c or later. -----

Copyright (C) 1989-2020 The LaTeX Project
http://latex-project.org/
All rights reserved.

======================================================================== * doc/latex/atenddvi/README.md ======================================================================== # atenddvi package for LaTeX Version: 2020-11-11 v1.5 This package is unneeded and does nothing when used with a LaTeX format 2020-10-01 or newer as in this case the format provides the \AtEndDvi command. For older formats it it implements \AtEndDvi, a counterpart to \AtBeginDvi. The execution of its argument is delayed to the end of the document at the end of the last page. Thus \special and \write remain effective, because they are put into the last page. This is the main difference to \AtEndDocument. ## Copyright (C) * 2007, 2009-2011 Heiko Oberdiek * 2016-2020 Oberdiek Package Support Group ## License LATEX Project Public License, version 1.3c or later. ======================================================================== * doc/latex/auto-pst-pdf/README.txt ======================================================================== ======================== The auto-pst-pdf package 2020/10/08 v0.7 The package uses `-shell-escape` to execute `pst-pdf`. This makes it especially easy to integrate into the workflow of an editor with just "LaTeX" and "pdfLaTeX" buttons. Wrappers are provided for various psfrag-related features so that Matlab figures via laprint, Mathematica figures via MathPSfrag, and regular psfrag figures can all be input consistently and easily. Will Robertson Johannes Große Copyright (C) 2007-2020 Distributed under the LaTeX Project Public License ======================================================================== * doc/latex/bibunits/README ======================================================================== Abstract The `bibunits' package allows separate bibliographies for different units or parts of the text. The units can be chapters, sections or bibunit environments. The package is compatible with a wide variety of packages, including, but not limited to, natbib, overcite and KOMA-SCRIPT classes. To produce the style latex bibunits.ins To produce the documentation latex bibunits.dtx If you do not want to include the macro section in the documentation, remove the comment sign before \OnlyDescription. To produce an index for the documentation: makeindex -s gind.ist bibunits To produce a change history for the documentation: makeindex -s gglo.ist -o bibunits.gls bibunits.glo Contents: 00Readme this file ;-) bibunits.dtx documented source file for the bibunits package bibunits.ins installation file bibtexall shell script to run bibtex on each .aux file in the present directory License Package `bibunits' to use with LaTeX2e. Copyright (C) 1999--2004 Thorsten Hansen This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or any later version. The latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2003/12/01 or later. This work has the LPPL maintenance status "maintained". The Current Maintainer of this work is Thorsten Hansen. This work consists of the files bibunits.dtx and bibunits.ins and the derived file bibunits.sty. Happy TeXing Thorsten Hansen thorsten.hansen@psychol.uni-giessen.de ======================================================================== * doc/latex/chemformula/README ======================================================================== -------------------------------------------------------------------------- the CHEMFORMULA package v4.16 2020/12/22 typeset chemical compounds and reactions -------------------------------------------------------------------------- Clemens Niederberger Web: https://github.com/cgnieder/chemformula/ E-Mail: contact@mychemistry.eu -------------------------------------------------------------------------- Copyright 2011--2020 Clemens Niederberger This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX version 2008/05/04 or later. This work has the LPPL maintenance status `maintained'. The Current Maintainer of this work is Clemens Niederberger. -------------------------------------------------------------------------- The chemformula package consists of the following files - chemformula.sty, - chemformula-manual.cls, chemformula-manual.tex, chemformula-manual.pdf, - README -------------------------------------------------------------------------- If you have any ideas, questions, suggestions or bugs to report, please feel free to contact me. -------------------------------------------------------------------------- ======================================================================== * doc/latex/chemgreek/README ======================================================================== -------------------------------------------------------------------------- the CHEMGREEK package v1.1a 2020/01/16 typeset chemical compounds and reactions -------------------------------------------------------------------------- Clemens Niederberger Web: http://www.mychemistry.eu/forums/forum/chemgreek/ E-Mail: contact@mychemistry.eu -------------------------------------------------------------------------- Copyright 2015--2020 Clemens Niederberger This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 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.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. The Current Maintainer of this work is Clemens Niederberger. -------------------------------------------------------------------------- The chemgreek package consists of the following files - chemgreek.sty, - chemgreek_en.tex, chemgreek_en.pdf, - README -------------------------------------------------------------------------- If you have any ideas, questions, suggestions or bugs to report, please feel free to contact me. -------------------------------------------------------------------------- ======================================================================== * doc/latex/cjkpunct/README.md ======================================================================== CJKpunct ======== `CJKpunct` is a LaTeX2e macro package to be the companion of `CJK` package by Werner Lemberg for punctuation location and width adjustments. Contributing ------------ This package is a part of the [ctex-kit](https://github.com/CTeX-org/ctex-kit) project. Issues and pull requests are welcome. Copyright and Licence --------------------- Copyright (C) 2003--2010 by Linbo Zhang Copyright (C) 2003--2010 by Wenchang Sun Copyright (C) 2010 by Leo Liu Copyright (C) 2016 by Qing Lee ---------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in http://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. The Current Maintainer of this work is Qing Lee. This package consists of the files CJKpunct.dtx, CJKpunct.spa, setpunct-main.tex, setpunct-macros.tex, example-CJKfntef.tex, example-gb.tex, example-gbk.tex, example-utf8.tex, README.txt, and the derived files CJKpunct.sty, CJKpunct.pdf, CJKpunct.ins, and README.md (this file). ======================================================================== * doc/latex/ctex/README.md ======================================================================== ctex ==== `ctex` is a collection of macro packages and document classes for LaTeX Chinese typesetting. Authors and Contributors ------------------------ * Wu Lingyun * Jiang Jiang * Wang Yue * Liu Haiyang * Li Yanrui * Chen Zhichu * Li Qing * Liam Huang * Zeng Xiangdong * Li Zeping * Zhou Yukai * Zhang Ruixi Contributing ------------ This package is a part of the [ctex-kit](https://github.com/CTeX-org/ctex-kit) project. Issues and pull requests are welcome. Copyright and Licence --------------------- Copyright (C) 2003--2021 CTEX.ORG and any individual authors listed elsewhere in this file. ---------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in http://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status "maintained". This package consists of the files ctex.dtx, ctxdoc.cls, ctxdocstrip.tex, ctex-zhconv.lua, ctex-zhconv-make.lua, and the derived files ctex.pdf, ctex.ins, ctex.sty, ctexsize.sty, ctexheading.sty, ctexart.cls, ctexbook.cls, ctexrep.cls, ctexbeamer.cls, ctexcap.sty, ctexhook.sty, ctexpatch.sty, ctex-c5size.clo, ctex-cs4size.clo, ctex-heading-article.def, ctex-heading-book.def, ctex-heading-report.def, ctex-heading-beamer.def, ctex-scheme-plain.def, ctex-scheme-plain-article.def, ctex-scheme-plain-book.def, ctex-scheme-plain-report.def, ctex-scheme-plain-beamer.def, ctex-scheme-chinese.def, ctex-scheme-chinese-article.def, ctex-scheme-chinese-book.def, ctex-scheme-chinese-report.def, ctex-scheme-chinese-beamer.def, ctex-name-gbk.cfg, ctex-name-utf8.cfg, ctex.cfg, ctexopts.cfg, ctexbackend.cfg, ctex-engine-pdftex.def, ctex-engine-xetex.def, ctex-engine-luatex.def, ctex-engine-aptex.def, ctex-engine-uptex.def, c19rm.fd, c19sf.fd, c19tt.fd, c70rm.fd, c70sf.fd, c70tt.fd, jy2zhrm.fd, jy2zhsf.fd, jy2zhtt.fd, jt2zhrm.fd, jt2zhsf.fd, jt2zhtt.fd, ctex-fontset-adobe.def, ctex-fontset-fandol.def, ctex-fontset-founder.def, ctex-fontset-mac.def, ctex-fontset-macnew.def, ctex-fontset-macold.def, ctex-fontset-ubuntu.def, ctex-fontset-windows.def, ctexspa.def, ctexpunct.spa, ctex-spa-make.tex, ctex-spa-macro.tex, ctex-zhmap-adobe.tex, ctex-zhmap-fandol.tex, ctex-zhmap-founder.tex, ctex-zhmap-mac.tex, ctex-zhmap-ubuntu.tex, ctex-zhmap-windows.tex, ctex-zhconv-index.lua, translator-theorem-dictionary-ChineseGBK.dict, translator-theorem-dictionary-ChineseUTF8.dict, and README.md (this file). ======================================================================== * doc/latex/emulateapj/README ======================================================================== This is emulateapj.cls, version November 10, 2009 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% `emulateapj' is a LaTeX2e class to emulate the Astrophysical Journal (ApJ) page layout. The page length of the resulting document is very close to that in ApJ when Times fonts are used instead of the LaTeX default CM fonts. If a manuscript is prepared for ApJ submission using the standard American Astronomical Society LaTeX macros and the `aastex' style (see instructions for authors on the ApJ web site), the only thing required from the user should be to replace \documentclass{aastex} with \documentclass{emulateapj}, and perhaps resize figures as desired and replace {deluxetable} with {deluxetable*}. Possible minor problems are described below. emulateapj requires revtex4.cls. If you don't have it already, it can be downloaded from http://publish.aps.org/revtex4/ (it's a small package). Other extrnal packages used are latexsym, graphicx, amssymb, longtable, epsf. They should already be present in the modern TeX distributions; if not, download them from www.ctan.org. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% For the latest version check http://hea-www.harvard.edu/~alexey/emulateapj NOTE: ApJ has moved its publishing to IOP and they have slightly changed the formatting. To implement these changes, call emulateapj with the iop option, as in \usepackage[iop]{emulateapj} Other available options: [chicago] - (default) typeset as was done in the University of Chicago Press [twocolumn] - (default) two-column mode [onecolumn] - main text in one-column mode [apj] - typeset as for main journal [apjl] - (default) typeset as for ApJ Letters [tighten] - some adjustments to approximate grid typesetting [numberedappendix] - number appendix sections as A, B, etc [appendixfloats] - use separate numbering for floats within appendix [appendixfloats] - use separate numbering for floats within appendix [twocolappendix] - make appendix in two-col mode in a two-col paper [revtex4] - force using revtex4 NOTE 2: Starting from version 11/10/2009, emulateapj tries to load revtex4-1 if present on the system. This may cause small changes in typesetting for old documents. If you want full compatibility, please download the last version based on revtex4, http://hea-www.harvard.edu/~alexey/emulateapj/emulateapj-rtx4.cls and bundle it with your TeX source code %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% Copyright 2000-2009 Alexey Vikhlinin The first version of this package was written by Maxim Markevitch. Pieces of AASTeX code are used for compatibility with aastex.cls. This program can be redistributed and/or modified under the terms of the LaTeX Project Public License available from CTAN archives in macros/latex/base/lppl.txt. This means you are free to use and distribute this package; however, if you modify anything, please change the file name and remove the author's email address. Alexey Vikhlinin %% For release notes and change log, read the bottom of emulateapj.cls ======================================================================== * doc/latex/everyhook/README ======================================================================== $Id: README 13 2014-11-26 16:22:03Z steve $ ABOUT The everyhook package takes control of the six TeX token parameters everypar, everymath, everydisplay, everyhbox, everyvbox, and everycr. Real hooks for each of these can be installed using a stack like interface. For compatibility with LaTeX standard classes and packages, each of the everyX token lists can be set without interfering with the hooks. LICENSE Copyright (C) 2010, 2011, 2014 by Stephen Checkoway This file may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c 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.3c or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status 'maintained'. The Current Maintainer of this work is Stephen Checkoway. This work consists of everyhook.dtx and the derived file everyhook.sty. REQUIREMENTS - e-TeX - etoolbox package INSTALLATION 1. Unpack the everyhook.tds.zip archive in the root directory of the local TeX installation tree. 2. Update the file name database, if required by running mktexlsr. ======================================================================== * doc/latex/filemod/README ======================================================================== The filemod Package ~~~~~~~~~~~~~~~~~~~ Copyright (C) Martin Scharrer This package provides macros to read and compare the modification dates of files. These files can be .tex files, images or other files as long as they can be found by the LaTeX compiler. It uses the \pdffilemoddate primitive of pdfLaTeX to receive the file modification date as PDF date string, parses it and returns the value to the user. The functionality is provided by purely expandable macros or by faster but non-expandable ones. This package will work with LaTeX and plain eTeX as long pdf(La)TeX (in PDF or DVI mode) or Lua(La)TeX is used. Xe(La)TeX is not supported because it does not provide \pdffilemoddate. Examples: % Prints file modification date and time of main file \filemodprint{\jobname} % Include newest of a set of files: \input{\filemodNewest{{file1}{file2}{file3}}} % Include newest of a set of images: % (\includegraphics doesn't expand its fully before parsing it) \FilemodNewest{{file1}{file2}{file3}} \includegraphics{\filemodresultfile} REQUIREMENTS: ============= pdflatex v1.30.0 or later is required. Alternative LuaTeX can be used together with the `pdftexcmds` package. INSTALLATION: ============= Compile the DTX file (with included INS file) through pdflatex: pdflatex filemod.dtx pdflatex filemod.dtx pdflatex filemod.dtx Copy the files to the following directories which must be created beforehand. Example for a Unix/Linux OS, change accordantly for MS Windows and Mac, e.g. copy it using a graphics interface. cp filemod*.sty ${TEXMF}/tex/latex/filemod/ cp filemod*.tex ${TEXMF}/tex/generic/filemod/ OPTIONAL: The documentation can be installed by: cp filemod.pdf README ${TEXMF}/doc/latex/filemod/ The source can be installed by: cp filemod.dtx ${TEXMF}/source/latex/filemod/ The TEXMF is /usr/local/texlive/2010/texmf-dist, ${HOME}/texmf or similar. ======================================================================== * doc/latex/fontaxes/README ======================================================================== fontaxes - Additional font axes for LaTeX ========================================= The fontaxes package adds several new font axes on top of LaTeX's New Font Selection Scheme. In particular, it splits the shape axis into a primary and a secondary shape axis, and it adds three new axes to deal with the different figure versions offered by many professional fonts. Usage ----- To use this package, include \usepackage{fontaxes} in the preamble of your LaTeX document. See the PDF documentation for details. Installation ------------ 1. Run `latex fontaxes.ins` to generate the LaTeX package. 2. Create the following directories in a local texmf tree: - doc/latex/fontaxes - tex/latex/fontaxes 3. Copy all necessary files into the texmf tree: - fontaxes.pdf and test-fontaxes.tex go to doc/latex/fontaxes - fontaxes.sty goes to tex/latex/fontaxes 4. Afterwards, you may need to regenerate the file database: texhash License ------- Copyright (c) 2007 by Andreas Buehmann Copyright (c) 2014 by Michael Ummels This work may be distributed and modified under the terms and conditions of the LaTeX Project Public License, version 1.3c or greater (your choice). The latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status `maintained'. The Current Maintainer of this work is Michael Ummels. This work consists of the files fontaxes.dtx, fontaxes.ins and the derived files fontaxes.sty, test-fontaxes.tex and fontaxes.pdf. ======================================================================== * doc/latex/gincltex/README ======================================================================== The gincltex Package Copyright (C) 2011 -- Martin Scharrer This small package builds on the standard LaTeX packages graphic and/or graphicx and allows external LaTeX source files to be included like graphic files, i.e. adds support for the `.tex' extension. \includegraphics[]{somefile.tex} Some of the lower level operations like clipping and trimming are implemented using the authors other package 'adjustbox' which supports native pdflatex support and itself uses the 'pgf' package for other output formats. ======================================================================== * doc/latex/kantlipsum/README.md ======================================================================== The kantlipsum package spits out sentences in Kantian style provided by the "Kant generator for Python" by Mark Pilgrim, described in the book "Dive into Python". This is version 0.8a of the package Changes from earlier version: Support for printing only a few sentences from one paragraph has been added; the code has been polished. Version 0.8a fixes a small glitch. Copyright 2011-2019 Enrico Gregorio It may be distributed and/or modified under the conditions of the LaTeX Project Public License (LPPL), either version 1.3c of this license or (at your option) any later version. The latest version of this license is in the file http://www.latex-project.org/lppl.txt Author: Enrico Gregorio Enrico dot Gregorio at univr dot it This work has the LPPL maintenance status "author-maintained". This work consists of the following files: README (this file) kantlipsum.dtx kantlipsum.pdf and of the derived file kantlipsum.sty To install the distribution: o run "tex kantlipsum.dtx" ======================================================================== * doc/latex/mhchem/README ======================================================================== The mhchem Bundle 2018-06-22 containing - mhchem v4.08 - hpstatement v1.02 - rsphrase v3.11 The mhchem package provides commands for typesetting chemical molecular formulae and equations. The hpstatement package provides commands for the official hazard statements and precautionary statements (H and P statements) that are used to label chemicals. The rsphrase package provides commands for the official Risk and Safety (R and S) Phrases that are used to label chemicals. Copyright 2004-2018 Martin Hensel This work may be distributed and/or modified under the conditions of the LaTeX Project Public License version 1.3c which can be found at http://www.latex-project.org/lppl/lppl-1-3c.txt and is included as lppl-1-3c.txt. ======================================================================== * doc/latex/nomencl/README ======================================================================== NOMENCL PACKAGE PURPOSE The nomenclature package can be used to generate and format a nomenclature using MakeIndex. COPYING AND MODIFICATION Copyright 1996-2020 Boris Veytsman, Bernd Shandl, Lee Netherton, CV Radhakrishnan, Brian Elmegaard This package can be redistributed and/or modified under the terms of the LaTeX Project Public License distributed from CTAN archives in the directory macros/latex/base/lppl.txt; either version 1.2 of the license, or (at your option) any later version. You might like to keep nomencl.ins and nomencl.dtx somewhere safe as a backup, or in case you want to pass the nomencl package on to someone else. VERSION HISTORY v5.0 2018/12/29 New maintainer: Boris Veytsman Cleaned code and documentation Incorporated nomentbl code New options: stdsubgroups, nomentbl, user selectable configuratuon file v5.1 2019/02/08 Compatibility changes for KOMA-Script Bugs fixes v5.2 2019/05/05 More compatibility changes: tocbasic call is now optional v5.3 2019/11/23 Documentation updates Slovene option v5.4 2020/03/01 Norwegian (norwegian-bokmaal, norwegian-nynorsk) options v5.5 2020/12/29 Catalan option ======================================================================== * doc/latex/revtex4/README ======================================================================== %% ****** Start of file README ****** % %% %% This file is part of the APS files in the REVTeX 4 distribution. %% Version 4.0 of REVTeX, August 2001. %% %% Copyright (c) 1999, 2000, 2001 The American Physical Society. %% Last updated August 3, 2001 This file describes the contents of this distribution of REVTeX 4.0. The definitive source of information about REVTeX 4 is the APS web page http://publish.aps.org/revtex4/. User queries should be directed to revtex@aps.org. Manifest -------- Only the files under 'Essential files' are required to run REVTeX 4. Essential files --------------- revtex4.cls - The REVTeX 4 class file aps.rtx - APS specific REVTeX 4 customizations for Phys. Rev. rmp.rtx - APS specific REVTeX 4 customizations for Rev. Mod. Phys. 10pt.rtx - 10 point size class option file for REVTeX. 11pt.rtx - 11 point size class option file for REVTeX. 12pt.rtx - 12 point size class option file for REVTeX. apsrev.bst - A new custom-bib based BibTeX style file for use with REVTeX 4 for Phys. Rev. style citations. apsrmp.bst - For Rev. Mod. Physics (author/year) style citations revsymb.sty - A collection of common symbols for use outside of REVTeX. Documentation files ------------------- (located in /docs subdirectory) auguide.tex - Author's guide to REVTeX 4 (Note: There is a separate "APS Compuscript Guide for REVTeX 4" detailing restrictions for APS submissions) differ.tex - "Differences between REVTeX 3 and REVTeX 4" summary.tex - "REVTeX 4 Command and Options Summary" revbib.tex - A short introduction to using BibTeX with REVTeX 4 (Not available yet) docs.sty - Used by auguide.tex and differ.tex Sample files ------------ (located in /sample subdirectory) template.aps - A template for APS authors to follow apssamp.tex - A sample file showing how to achieve certain effects using REVTeX 4 fig_1.eps - sample figure for apssamp.tex fig_2.eps - sample wide figure for apssamp.tex apssamp.bib - sample BibTeX source file for apssamp.tex Source files ------------ (located in /src subdirectory) revtex4.dtx - The commented source file for revtex4.cls and revsymb.sty. revtex4.pdf - PDF documentation generated from .dtx file ltxgrid.dtx - The commented source file for the ltxgrid package ltxgrid.pdf - PDF documentation generated from .dtx file ltxutil.dtx - The commented source file for the ltxutil package ltxutil.pdf - PDF documentation generated from .dtx file ltxdocext.dtx - The commented source file for the ltxdocext package ltxdocext.pdf - PDF documentation generated from .dtx file textcase.dtx - The commented source file for the textcase package revtex4.ins - A docstrip (version 2.4 or higher) file for extracting revtex4.cls and revsymb.sty from the *.dtx files Not Included ------------ The following packages are required by REVTeX but are not included in this distribution. Please obtain from CTAN (Comprehensive TeX Archive Network), e.g. . These can also be downloaded from . natbib.dtx - Version 7 or later needed natbib.ins - LaTeX this to create natbib.sty and natbib documentation from natbib.dtx bm.dtx - Bold math style - part of (current!) standard LaTeX2e tools bm.sty - generated from bm.dtx by running tools.ins An up-to-date installation of AMS-LaTeX is also required for certain documentclass options. Version 2.0 or higher is needed. It is available from . Recommended styles and packages -------------------------- By implementing REVTeX as a native LaTeX2e document class, users can now take advantage of many of the well-supported LaTeX2e packages available. Here are some that are particularly useful and recommended. longtable.sty for tables running to multiple pages - part of a standard LaTeX2e distribution. hyperref.sty for hyperlinking - should work well with REVTeX 4. graphics.sty and graphicx.sty for figure inclusion - part of LaTeX2e's standard distribution. Installation ------------ To install REVTeX 4, put revtex4.cls, *.rtx, *.sty, and *.bst (files listed under 'Essential Files' above) somewhere in your TEXINPUTS path or whereever your TeX software looks for input files. Under the TDS, you should install them into $TEXMFLOCAL/tex/latex/revtex4. The *.bst files should go under $TEXMFLOCAL/bibtex/bst/revtex4. Run the appropriate update command (texhash, initexmf -u, etc.). Install required non-REVTeX packages (natbib and bm). Please consult the documentaton for your local TeX package for more information. MikTeX users should use version MikTeX 2.1. Credits ------- David Carlisle created the initial versions of REVTeX 4 under commission by the APS. Arthur Ogawa has extensively reworked those early versions and added much new functionality. Mark Doyle, APS Manager of Product Development coordinated the effort. The APS is the maintainer of REVTeX 4, and all bugs are our responsibility. Please e-mail complaints to revtex@aps.org. Backwards compatibility ----------------------- The REVTeX 4 class file has been named revtex4.cls to distinguish it from its predecessors. If the class file is copied to revtex.cls, files created with earlier versions of REVTeX should still work. LaTeX2e requirements -------------------- REVTeX 4 requires LaTeX2e [1996/06/01] ======================================================================== * doc/latex/standalone/README ======================================================================== LaTeX class and package 'standalone' ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copyright (c) 2010-2018 by Martin Scharrer Repository: http://bitbucket.org/martin_scharrer/standalone Allows TeX pictures or other TeX code in sub-files to be compiled standalone or as part of a main document. Provides support for pictures with beamer overlays. Since v0.3 the package provides options to automatically or manually include all sub-files preambles in the main document preamble. Since v1.0 the package provides the possibility to compile subfiles automatically to images from and include them into the main document as well as switch easily between source code and image mode. This is done using the \includestandalone macro which is designed after the common \includegraphics macro. The standalone class now supports cropping without the 'preview' package (which causes issues in some causes under XeLaTeX) and the conversion to raster images using external tools. ======================================================================== * doc/latex/supertabular/README ======================================================================== This is the supertabular bundle. It defines the supertabular and supertabular* environments. They make it possible to have a tabular that spans multiple pages. Each page is its own tabular environment, thus the various parts may have different widths. If that is not what you want you should check out longtable.sty, written by David Carlisle. It is part of the array bundle. For a more elaborate description of supertabular and a comparison with longtable, see The LaTeX Companion, by Goossens, Mittelbach and Samarin, ISBN 0-201-54199-8. The files contained in this bundle are listed in the file MANIFEST Supertabular can be used with LaTeX2e as a package. Copyright (C) 1989 - 2020 Johannes L. Braams texniek at braams.xs4all.nl This program can be redistributed and/or modified under the terms of the LaTeX Project Public License Distributed from CTAN archives in directory macros/latex/base/lppl.txt; either version 1 of the License, or any later version. ======================================================================== * doc/latex/tcolorbox/README ======================================================================== %% The LaTeX package tcolorbox - version 4.42 (2020/10/09) %% %% ------------------------------------------------------------------------------------------- %% Copyright (c) 2006-2020 by Prof. Dr. Dr. Thomas F. Sturm %% ------------------------------------------------------------------------------------------- %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 %% 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.3 or later is part of all distributions of LaTeX %% version 2005/12/01 or later. %% %% This work has the LPPL maintenance status `author-maintained'. %% %% This work consists of all files listed in README %% tcolorbox provides an environment for colored and framed text boxes with a heading line. Optionally, such a box can be split in an upper and a lower part. The package tcolorbox can be used for the setting of LaTeX examples where one part of the box displays the source code and the other part shows the output. Another common use case is the setting of theorems. The package supports saving and reuse of source code and text parts. Contents of the package ======================= 'README' this file 'CHANGES' log of changes (history) 'tcolorbox.sty' LaTeX package file (style file) 'tcbbreakable.code.tex' LaTeX package file (library of tcolorbox) 'tcbdocumenation.code.tex' LaTeX package file (library of tcolorbox) 'tcbexternal.code.tex' LaTeX package file (library of tcolorbox) 'tcbfitting.code.tex' LaTeX package file (library of tcolorbox) 'tcbhooks.code.tex' LaTeX package file (library of tcolorbox) 'tcblistings.code.tex' LaTeX package file (library of tcolorbox) 'tcblistingscore.code.tex' LaTeX package file (library of tcolorbox) 'tcblistingsutf8.code.tex' LaTeX package file (library of tcolorbox) 'tcbmagazine.code.tex' LaTeX package file (library of tcolorbox) 'tcbminted.code.tex' LaTeX package file (library of tcolorbox) 'tcbposter.code.tex' LaTeX package file (library of tcolorbox) 'tcbprocessing.code.tex' LaTeX package file (library of tcolorbox) 'tcbraster.code.tex' LaTeX package file (library of tcolorbox) 'tcbskins.code.tex' LaTeX package file (library of tcolorbox) 'tcbskinsjigsaw.code.tex' LaTeX package file (library of tcolorbox) 'tcbtheorems.code.tex' LaTeX package file (library of tcolorbox) 'tcbvignette.code.tex' LaTeX package file (library of tcolorbox) 'tcbxparse.code.tex' LaTeX package file (library of tcolorbox) 'blueshade.png' Picture (package) 'crinklepaper.png' Picture (package) 'goldshade.png' Picture (package) 'pink_marble.png' Picture (package) 'tcolorbox.pdf' Documentation for tcolorbox 'tcolorbox.tex' Source code of the documentation (main file) '*.doc.*' Source code of the documentation (include files) 'tcolorbox-tutorial-poster.pdf' Tutorial for poster creation 'tcolorbox-tutorial-poster.tex' Source code of the tutorial 'tcolorbox-example.tex' Example file for package usage 'tcolorbox-example.pdf' Compiled example 'tcolorbox-example-poster.tex' Example file for package usage 'tcolorbox-example-poster.pdf' Compiled example 'Basilica_5.png' Example picture 'lichtspiel.jpg' Example picture Installation ============ Copy the contents of the 'tcolorbox.tds.zip' from CTAN to your local TeX file tree. Alternatively, put the files to their respective locations within the TeX installation: 'tcolorbox.sty' -> /tex/latex/tcolorbox 'tcbbreakable.code.tex' -> /tex/latex/tcolorbox 'tcbdocumenation.code.tex' -> /tex/latex/tcolorbox 'tcbexternal.code.tex' -> /tex/latex/tcolorbox 'tcbfitting.code.tex' -> /tex/latex/tcolorbox 'tcbhooks.code.tex' -> /tex/latex/tcolorbox 'tcblistings.code.tex' -> /tex/latex/tcolorbox 'tcblistingscore.code.tex' -> /tex/latex/tcolorbox 'tcblistingsutf8.code.tex' -> /tex/latex/tcolorbox 'tcbmagazine.code.tex' -> /tex/latex/tcolorbox 'tcbminted.code.tex' -> /tex/latex/tcolorbox 'tcbposter.code.tex' -> /tex/latex/tcolorbox 'tcbprocessing.code.tex' -> /tex/latex/tcolorbox 'tcbraster.code.tex' -> /tex/latex/tcolorbox 'tcbskins.code.tex' -> /tex/latex/tcolorbox 'tcbskinsjigsaw.code.tex' -> /tex/latex/tcolorbox 'tcbtheorems.code.tex' -> /tex/latex/tcolorbox 'tcbvignette.code.tex' -> /tex/latex/tcolorbox 'tcbxparse.code.tex' -> /tex/latex/tcolorbox 'blueshade.png' -> /tex/latex/tcolorbox 'crinklepaper.png' -> /tex/latex/tcolorbox 'goldshade.png' -> /tex/latex/tcolorbox 'pink_marble.png' -> /tex/latex/tcolorbox all other files -> /doc/latex/tcolorbox ======================================================================== * doc/latex/units/README ======================================================================== units, a LaTeX bundle for typesetting units and nice fractions. Copyright (C) 1998 Axel Reichert Files: units.ins Batch file, run through LaTeX units.dtx Docstrip archive, run through LaTeX units.sty LaTeX package, will be generated from units.ins nicefrac.sty LaTeX package, will be generated from units.ins units.dvi Package documentation, will be generated from units.dtx README This file COPYING The GNU General Public License E-Mail: reich@mpie-duesseldorf.mpg.de Address: Axel Reichert, Beethovenstrasse 25, D-40233 Duesseldorf 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; see the file COPYING. If not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. ======================================================================== * doc/latex/xcjk2uni/README.md ======================================================================== xCJK2uni ======== The `xCJK2uni` package provides commands to convert CJK character to Unicode in non-UTF-8 encoding. It provides hooks for `hyperref` to get the correct bookmarks. It also provides some `/ToUnicode` mapping file for CJK subfont. They can be used with `cmap` package and make CJK character searchable and copyable in PDF files generated by pdfLaTeX. Basic Usage ----------- The package provides the following macros: \useCJKencmap{} Set the current encoding. The default encoding is GBK. \CJKchartouni{} Convert a single CJK character to its Unicode. \CJKsfdtouni{}{} Convert the .sfd coordinate to its Unicode. You can read the package manual (in Chinese) for more detailed explanations. Contributing ------------ This package is a part of the [ctex-kit](https://github.com/CTeX-org/ctex-kit) project. Issues and pull requests are welcome. Copyright and Licence --------------------- Copyright (C) 2013-2014, 2016, 2018-2020 by Qing Lee ---------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in http://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status "maintained". The Current Maintainer of this work is Qing Lee. This package consists of the file xCJK2uni.dtx, and the derived files xCJK2uni.pdf, xCJK2uni.sty, xCJK2uni.ins, xCJK2uni-make.tex, xCJK2uni-sfd.def, xCJK2uni-UBg5plus.def, xCJK2uni-UBig5.def, xCJK2uni-UGB.def, xCJK2uni-UGBK.def, xCJK2uni-UJIS.def, xCJK2uni-UKS.def, c****.cmap, and README.md (this file). ======================================================================== * doc/latex/xpinyin/README.md ======================================================================== xpinyin ======= `xpinyin` is a LaTeX package written to simplify the input of Hanyu Pinyin. The package provides macros to automatically add pinyin to Chinese characters. It can only be used in conjunction with `xeCJK` or `CJK/CJKutf8` package. Given that the implementation of pinyin package of `CJK` bundle is not very well, it seems that xpinyin is a good replacement of it. You can read the package manual (in Chinese) for more detailed explanations. Contributing ------------ This package is a part of the [ctex-kit](https://github.com/CTeX-org/ctex-kit) project. Issues and pull requests are welcome. Copyright and Licence --------------------- Copyright (C) 2012-2020 by Qing Lee ---------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in http://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status "maintained". The Current Maintainer of this work is Qing Lee. This package consists of the file xpinyin.dtx, and the derived files xpinyin.sty, xpinyin.pdf, xpinyin.ins, xpinyin.lua, xpinyin.db, xpinyin-database.def and README.md (this file). ======================================================================== * doc/latex/zhnumber/README.md ======================================================================== zhnumber ======== The `zhnumber` package provides commands to typeset Chinese representations of numbers. The main difference between this package and `CJKnumb` is that commands provided by this package is expandable in the proper way. So, it seems that zhnumber is a good alternative to `CJKnumb` package. Basic Usage ----------- The package provides the following macros: \zhnumber{} Convert `` to a full Chinese representation. \zhnum{} Similar to `\arabic{}`, but representation of `` as Chinese numerals. \zhdigits{} \zhdigits*{} Handle `` as a string of digits and convert each of them into the corresponding Chinese digit. The starred version uses the Chinese circle glyph for digit zero; the unstarred version uses the traditional glyph. You can read the package manual (in Chinese) for more detailed explanations. Contributing ------------ This package is a part of the [ctex-kit](https://github.com/CTeX-org/ctex-kit) project. Issues and pull requests are welcome. Copyright and Licence --------------------- Copyright (C) 2012, 2014-2020 by Qing Lee ---------------------------------------------------------------------- This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. This version of this license is in http://www.latex-project.org/lppl/lppl-1-3c.txt and the latest version of this license is in http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status "maintained". The Current Maintainer of this work is Qing Lee. This package consists of the file zhnumber.dtx, and the derived files zhnumber.pdf, zhnumber.sty, zhnumber-utf8.cfg, zhnumber-gbk.cfg, zhnumber-big5.cfg, zhnumber.ins and README.md (this file). ======================================================================== * doc/luatex/luatexja/README ======================================================================== The LuaTeX-ja Package 20210319.0 -------------------------------- Copyright (c) 2011--2021 The LuaTeX-ja project License: modified BSD (see COPYING) LuaTeX-ja is a macro package for typesetting Japanese documents with LuaTeX. This package is highly affected by ASCII pTeX engine, but not a porting of it. Note that this package is still *alpha-stage*; documentations are not complete and specifications are subject to change. Documentations are located at doc/luatexja-en.pdf (en), doc/luatexja-ja.pdf (ja). LuaTeX-ja is developed on . If you have questions or recognize bugs/have feature requests, we would like you to create a thread in the forum or a ticket in the way which OSDN supplies, via links found in the page above. Installation ------------ 0. Please make sure that your TeX distribution is up-to-date. This version of LuaTeX-ja requires - LuaTeX 1.10.0 (or later) - luaotfload (v3.1 or later recommended) - adobemapping (Adobe CMap files) - LaTeX2e 2020-02-02 patch level 5 or later (if you want to use with LaTeX) - etoolbox package - ltxcmds package, pdftexcmds package - filehook package, atbegshi package (for LaTeX2e 2020-02-02) - everysel package (for LaTeXe 2020-02-02 and 2020-10-01) - Harano Aji fonts (https://github.com/trueroad/HaranoAjiFonts) more specifically, HaranoAjiMincho-Regular and HaranoAjiGothic-Medium Using LuaTeX-ja with LuaHBTeX is not well tested. One might be able to typeset documents without an error, but with some unwanted results. 1. If you are using TeX Live 2021, you can install LuaTeX-ja via tlmgr. 2. If you must/want to install manually: a. Download the source archive from CTAN, or tagged as 20210319.0 in the Git repository by b. Extract the archive and process following three files by LuaLaTeX to generate classes for Japanese typesetting: src/ltjclasses.ins src/ltjltxdoc.ins src/ltjsclasses.ins c. Put src/ into your TEXMF tree. An example location is TEXMF/tex/luatex/luatexja. If you are updating from old version, you MUST remove it before extracting the new version of LuaTeX-ja. d. You may need to update the filename database, by mktexlsr (or by another program). Basic Usage ----------- LuaTeX-ja supports both the plain format and LaTeX2e. Simply loading luatexja.sty by \input or \usepackage does the minimal setting. - If you want to create Japanese-based documents, you can consider the use of ltj{article,book,report}.cls or ltjs{article,book,report}.cls. - If you want to use functionality of the fontspec package with Japanese fonts, load luatexja-fontspec.sty. It defines control sequences such as \setmainjfont, \setsansjfont and \jfontspec, which can be used for specifying Japanese fonts. Notes ----- * We don't recommend defining a Japanese font with HarfBuzz, by specifying "Renderer=..." (fontspec) or "mode=harf" (otherwise). * This archive contains four .{dtx,ins} pairs: src/ltjclasses.{ins,dtx}, src/ltjltxdoc.{ins,dtx} src/ltjsclasses.{ins,dtx}, doc/luatexja.{ins,dtx} Former three pairs generate class files (see above), while the latter doc/luatexja.{ins,dtx} generates documentations. (You will need Kozuka fonts to regenerate documentaion PDFs.) No .{dtx,ins} pair generates .sty files of LuaTeX-ja package. * src/*.{ins.dtx} are not needed in regular use. * ltj-kinsoku_make.tex is removed in version 20200808.0. This file and ltj-kinsoku.lua are not used anymore. (Do not remove ltj-kinsoku.tex.) Last commit date: Fri Mar 19 19:52:23 2021 +0900 ======================================================================== * doc/uptex/uptex-base/README_uptex.txt ======================================================================== upTeX standard format files #### Contents uptex.tex: format file. ukinsoku.tex: kinsoku file. #### Copyright The files in this directory are based on "texmf library for Japanese TeX (pTeX)" by ASCII Corporation (currently ASCII MEDIA WORKS Inc.) and modified for upTeX/upLaTeX. These are available under the following license agreement. =============================================================================== Copyright (C) 1987, 1995 ASCII Corporation. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. =============================================================================== #### ChangeLog uptex-1.00 [2012/01/15] TTK * re-package for upTeX/upLaTeX Ver.1.00 distribution. v20110507a [2011/05/07] TTK * re-package for upTeX/upLaTeX based on uptex-0.30 distribution and ptex-texmf-2.5.tar.gz . ======================================================================== * texlive-20200406-source/auxdir/auxsub/README ======================================================================== Copyright (C) 2009 Peter Breitenlohner You may freely use, modify and/or distribute this file. This directory auxdir/auxsub/ of the TL tree does not build or install anything. Its purpose is to record the command line used to invoke auxdir/auxsub/configure. This information is then used by the Makefiles in libs, texk, and utils to invoke configure in their subdirectories without the need to adjust any absolute or relative paths. ======================================================================== * texlive-20200406-source/build-aux/README.TL ======================================================================== $Id: README.TL 40250 2016-04-05 18:20:42Z karl $ Copyright 2016 Karl Berry Copyright 2009-2013 Peter Breitenlohner You may freely use, modify and/or distribute this file. This directory is the central repository for auxiliary files, mostly shell scripts, needed to build the TeX Live (TL) tree. They are used by all packages included in the TL tree, whether or not TL is the actual owner/maintainer of the package The files fall into three sets: 0) relpath is locally written. 1) Those in GNU Gnulib (http://savannah.gnu.org/projects/gnulib). The script Master/tlpkg/bin/tl-update-auto attempts to keep these up to date nightly (except when the TL sources are frozen). 2) Those not in Gnulib, that must come directly from an automake or libtool installation. These must be manually updated when new versions of those GNU packages are installed. The Master/tlpkg/dev/srclist.txt file checks for these relative to installation on the local machine, but updates are not automatic. There should be no other files in this directory. We generally try to use the latest official release, as it is available directly from GNU, rather than any distro or other patched version. ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/README ======================================================================== FreeType 2.10.1 =============== Homepage: https://www.freetype.org FreeType is a freely available software library to render fonts. It is written in C, designed to be small, efficient, highly customizable, and portable while capable of producing high-quality output (glyph images) of most vector and bitmap font formats. Please read the docs/CHANGES file, it contains IMPORTANT INFORMATION. Read the files `docs/INSTALL*' for installation instructions; see the file `docs/LICENSE.TXT' for the available licenses. The FreeType 2 API reference is located in `docs/reference/site'; use the file `index.html' as the top entry point. Additional documentation is available as a separate package from our sites. Go to https://download.savannah.gnu.org/releases/freetype/ and download one of the following files. freetype-doc-2.10.1.tar.xz freetype-doc-2.10.1.tar.gz ftdoc2101.zip To view the documentation online, go to https://www.freetype.org/freetype2/docs/ Mailing Lists ============= The preferred way of communication with the FreeType team is using e-mail lists. general use and discussion: freetype@nongnu.org engine internals, porting, etc.: freetype-devel@nongnu.org announcements: freetype-announce@nongnu.org git repository tracker: freetype-commit@nongnu.org The lists are moderated; see https://www.freetype.org/contact.html how to subscribe. Bugs ==== Please submit bug reports at https://savannah.nongnu.org/bugs/?group=freetype Alternatively, you might report bugs by e-mail to `freetype-devel@nongnu.org'. Don't forget to send a detailed explanation of the problem -- there is nothing worse than receiving a terse message that only says `it doesn't work'. Enjoy! The FreeType Team ---------------------------------------------------------------------- Copyright (C) 2006-2019 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of README --- ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/README.git ======================================================================== The git archive doesn't contain pre-built configuration scripts for UNIXish platforms. To generate them say sh autogen.sh which in turn depends on the following packages: automake (1.10.1) libtool (2.2.4) autoconf (2.62) The versions given in parentheses are known to work. Newer versions should work too, of course. Note that autogen.sh also sets up proper file permissions for the `configure' and auxiliary scripts. The autogen.sh script now checks the version of above three packages whether they match the numbers above. Otherwise it will complain and suggest either upgrading or using an environment variable to point to a more recent version of the required tool(s). Note that `aclocal' is provided by the `automake' package on Linux, and that `libtoolize' is called `glibtoolize' on Darwin (OS X). For static builds which don't use platform specific optimizations, no configure script is necessary at all; saying make setup ansi make should work on all platforms which have GNU make (or makepp). Similarly, a build with `cmake' can be done directly from the git repository. ---------------------------------------------------------------------- Copyright (C) 2005-2019 by David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of README.git --- ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/builds/amiga/README ======================================================================== README for the builds/amiga subdirectory. Copyright (C) 2005-2019 by Werner Lemberg and Detlef Würkner. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. The makefile.os4 is for the AmigaOS4 SDK. To use it, type "make -f makefile.os4", it produces a link library libft2_ppc.a. The makefile is for ppc-morphos-gcc-2.95.3-bin.tgz (gcc 2.95.3 hosted on 68k-Amiga producing MorphOS-PPC-binaries from http://www.morphos.de). To use it, type "make assign", then "make"; it produces a link library libft2_ppc.a. The smakefile is a makefile for Amiga SAS/C 6.58 (no longer available, latest sold version was 6.50, updates can be found in Aminet). It is based on the version found in the sourcecode of ttf.library 0.83b for FreeType 1.3.1 from Richard Griffith (ragriffi@sprynet.com, http://ragriffi.home.sprynet.com). You will also need the latest include files and amiga.lib from the Amiga web site (https://os.amigaworld.de/download.php?id=3) for AmigaOS 3.9; the generated code should work under AmigaOS 2.04 and up. To use it, call "smake assign" and then "smake" from the builds/amiga directory. The results are: - A link library "ft2_680x0.lib" (where x depends on the setting of the CPU entry in the smakefile) containing all FreeType2 parts except of the init code, debugging code, and the system interface code. - ftsystem.o, an object module containing the standard version of the system interface code which uses fopen() fclose() fread() fseek() ftell() malloc() realloc() and free() from lib:sc.lib (not pure). - ftsystempure.o, an object module containing the pure version of the system interface code which uses Open() Close() Read() Seek() ExamineFH() AsmAllocPooled() AsmFreePooled() etc. This version can be used in both normal programs and in Amiga run-time shared system librarys (can be linked with lib:libinit.o, no copying of DATA and BSS hunks for each OpenLibrary() necessary). Source code is in src/base/ftsystem.c. - ftdebug.o, an object module containing the standard version of the debugging code which uses vprintf() and exit() (not pure). Debugging can be turned on in FT:include/freetype/config/ftoption.h and with FT_SetTraceLevel(). - ftdebugpure.o, an object module containing the pure version of the debugging code which uses KVPrintf() from lib:debug.lib and no exit(). For debugging of Amiga run-time shared system libraries. Source code is in src/base/ftdebug.c. - NO ftinit.o. Because linking with a link library should result in linking only the needed object modules in it, but standard ftsystem.o would force ALL FreeType2 modules to be linked to your program, I decided to use a different scheme: You must #include FT:src/base/ftinit.c in your sourcecode and specify with #define statements which modules you need. See include/freetype/config/ftmodule.h. To use in your own programs: - Insert the #define and #include statements from top of include/freetype/config/ftmodule.h in your source code and uncomment the #define statements for the FreeType2 modules you need. - You can use either PARAMETERS=REGISTER or PARAMETERS=STACK for calling the FreeType2 functions, because the link library and the object files are compiled with PARAMETERS=BOTH. - "smake assign" (assign "FT:" to the FreeType2 main directory). - Compile your program. - Link with either ftsystem.o or ftsystempure.o, if debugging enabled with either ftdebug.o or (ftdebugpure.o and lib:debug.lib), and with ft2_680x0.lib as link library. To adapt to other compilers: - The standard ANSI C maximum length of 31 significant characters in identifiers is not enough for FreeType2. Check if your compiler has a minimum length of 40 significant characters or can be switched to it. "idlen=40" is the option for SAS/C. Setting #define HAVE_LIMIT_ON_IDENTS in an include file may also work (not tested). - Make sure that the include directory in builds/amiga is searched before the normal FreeType2 include directory, so you are able to replace problematic include files with your own version (same may be useful for the src directory). - An example of how to replace/workaround a problematic include file is include/freetype/config/ftconfig.h; it changes a #define that would prevent SAS/C from generating XDEF's where it should do that and then includes the standard FreeType2 include file. Local Variables: coding: latin-1 End: ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/src/bdf/README ======================================================================== FreeType font driver for BDF fonts Francesco Zappa Nardelli Introduction ************ BDF (Bitmap Distribution Format) is a bitmap font format defined by Adobe, which is intended to be easily understood by both humans and computers. This code implements a BDF driver for the FreeType library, following the Adobe Specification V 2.2. The specification of the BDF font format is available from Adobe's web site: https://www.adobe.com/content/dam/acom/en/devnet/font/pdfs/5005.BDF_Spec.pdf Many good bitmap fonts in bdf format come with XFree86 (www.XFree86.org). They do not define vertical metrics, because the X Consortium BDF specification has removed them. Encodings ********* The variety of encodings that accompanies bdf fonts appears to encompass the small set defined in freetype.h. On the other hand, two properties that specify encoding and registry are usually defined in bdf fonts. I decided to make these two properties directly accessible, leaving to the client application the work of interpreting them. For instance: #include FT_INTERNAL_BDF_TYPES_H FT_Face face; BDF_Public_Face bdfface; FT_New_Face( library, ..., &face ); bdfface = (BDF_Public_Face)face; if ( ( bdfface->charset_registry == "ISO10646" ) && ( bdfface->charset_encoding == "1" ) ) [..] Thus the driver always exports `ft_encoding_none' as face->charmap.encoding. FT_Get_Char_Index's behavior is unmodified, that is, it converts the ULong value given as argument into the corresponding glyph number. If the two properties are not available, Adobe Standard Encoding should be assumed. Anti-Aliased Bitmaps ******************** The driver supports an extension to the BDF format as used in Mark Leisher's xmbdfed bitmap font editor. Microsoft's SBIT tool expects bitmap fonts in that format for adding anti-aliased them to TrueType fonts. It introduces a fourth field to the `SIZE' keyword which gives the bpp value (bits per pixel) of the glyph data in the font. Possible values are 1 (the default), 2 (four gray levels), 4 (16 gray levels), and 8 (256 gray levels). The driver returns either a bitmap with 1 bit per pixel or a pixmap with 8bits per pixel (using 4, 16, and 256 gray levels, respectively). Known problems ************** - A font is entirely loaded into memory. Obviously, this is not the Right Thing(TM). If you have big fonts I suggest you convert them into PCF format (using the bdftopcf utility): the PCF font drive of FreeType can perform incremental glyph loading. When I have some time, I will implement on-demand glyph parsing. - Except for encodings properties, client applications have no visibility of the PCF_Face object. This means that applications cannot directly access font tables and must trust FreeType. - Currently, glyph names are ignored. I plan to give full visibility of the BDF_Face object in an upcoming revision of the driver, thus implementing also glyph names. - As I have never seen a BDF font that defines vertical metrics, vertical metrics are (parsed and) discarded. If you own a BDF font that defines vertical metrics, please let me know (I will implement them in 5-10 minutes). License ******* Copyright (C) 2001-2002 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *** Portions of the driver (that is, bdflib.c and bdf.h): Copyright 2000 Computing Research Labs, New Mexico State University Copyright 2001-2002, 2011 Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COMPUTING RESEARCH LAB OR NEW MEXICO STATE UNIVERSITY BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Credits ******* This driver is based on excellent Mark Leisher's bdf library. If you find something good in this driver you should probably thank him, not me. ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/src/gxvalid/README ======================================================================== gxvalid: TrueType GX validator ============================== 1. What is this --------------- `gxvalid' is a module to validate TrueType GX tables: a collection of additional tables in TrueType font which are used by `QuickDraw GX Text', Apple Advanced Typography (AAT). In addition, gxvalid can validates `kern' tables which have been extended for AAT. Like the otvalid module, gxvalid uses FreeType 2's validator framework (ftvalid). You can link gxvalid with your program; before running your own layout engine, gxvalid validates a font file. As the result, you can remove error-checking code from the layout engine. It is also possible to use gxvalid as a stand-alone font validator; the `ftvalid' test program included in the ft2demo bundle calls gxvalid internally. A stand-alone font validator may be useful for font developers. This documents documents the following issues. - supported TrueType GX tables - fundamental validation limitations - permissive error handling of broken GX tables - `kern' table issue. 2. Supported tables ------------------- The following GX tables are currently supported. bsln feat just kern(*) lcar mort morx opbd prop trak The following GX tables are currently unsupported. cvar fdsc fmtx fvar gvar Zapf The following GX tables won't be supported. acnt(**) hsty(***) The following undocumented tables in TrueType fonts designed for Apple platform aren't handled either. addg CVTM TPNM umif *) The `kern' validator handles both the classic and the new kern formats; the former is supported on both Microsoft and Apple platforms, while the latter is supported on Apple platforms. **) `acnt' tables are not supported by currently available Apple font tools. ***) There is one more Apple extension, `hsty', but it is for Newton-OS, not GX (Newton-OS is a platform by Apple, but it can use sfnt- housed bitmap fonts only). Therefore, it should be excluded from `Apple platform' in the context of TrueType. gxvalid ignores it as Apple font tools do so. We have checked 183 fonts bundled with MacOS 9.1, MacOS 9.2, MacOS 10.0, MacOS X 10.1, MSIE for MacOS, and AppleWorks 6.0. In addition, we have checked 67 Dynalab fonts (designed for MacOS) and 189 Ricoh fonts (designed for Windows and MacOS dual platforms). The number of fonts including TrueType GX tables are as follows. bsln: 76 feat: 191 just: 84 kern: 59 lcar: 4 mort: 326 morx: 19 opbd: 4 prop: 114 trak: 16 Dynalab and Ricoh fonts don't have GX tables except of `feat' and `mort'. 3. Fundamental validation limitations ------------------------------------- TrueType GX provides layout information to libraries for font rasterizers and text layout. gxvalid can check whether the layout data in a font is conformant to the TrueType GX format specified by Apple. But gxvalid cannot check a how QuickDraw GX/AAT renderer uses the stored information. 3-1. Validation of State Machine activity ----------------------------------------- QuickDraw GX/AAT uses a `State Machine' to provide `stateful' layout features, and TrueType GX stores the state transition diagram of this `State Machine' in a `StateTable' data structure. While the State Machine receives a series of glyph IDs, the State Machine starts with `start of text' state, walks around various states and generates various layout information to the renderer, and finally reaches the `end of text' state. gxvalid can check essential errors like: - possibility of state transitions to undefined states - existence of glyph IDs that the State Machine doesn't know how to handle - the State Machine cannot compute the layout information from given diagram These errors can be checked within finite steps, and without the State Machine itself, because these are `expression' errors of state transition diagram. There is no limitation about how long the State Machine walks around, so validation of the algorithm in the state transition diagram requires infinite steps, even if we had a State Machine in gxvalid. Therefore, the following errors and problems cannot be checked. - existence of states which the State Machine never transits to - the possibility that the State Machine never reaches `end of text' - the possibility of stack underflow/overflow in the State Machine (in ligature and contextual glyph substitutions, the State Machine can store 16 glyphs onto its stack) In addition, gxvalid doesn't check `temporary glyph IDs' used in the chained State Machines (in `mort' and `morx' tables). If a layout feature is implemented by a single State Machine, a glyph ID converted by the State Machine is passed to the glyph renderer, thus it should not point to an undefined glyph ID. But if a layout feature is implemented by chained State Machines, a component State Machine (if it is not the final one) is permitted to generate undefined glyph IDs for temporary use, because it is handled by next component State Machine and not by the glyph renderer. To validate such temporary glyph IDs, gxvalid must stack all undefined glyph IDs which can occur in the output of the previous State Machine and search them in the `ClassTable' structure of the current State Machine. It is too complex to list all possible glyph IDs from the StateTable, especially from a ligature substitution table. 3-2. Validation of relationship between multiple layout features ---------------------------------------------------------------- gxvalid does not validate the relationship between multiple layout features at all. If multiple layout features are defined in TrueType GX tables, possible interactions, overrides, and conflicts between layout features are implicitly given in the font too. For example, there are several predefined spacing control features: - Text Spacing (Proportional/Monospace/Half-width/Normal) - Number Spacing (Monospaced-numbers/Proportional-numbers) - Kana Spacing (Full-width/Proportional) - Ideographic Spacing (Full-width/Proportional) - CJK Roman Spacing (Half-width/Proportional/Default-roman /Full-width-roman/Proportional) If all layout features are independently managed, we can activate inconsistent typographic rules like `Text Spacing=Monospace' and `Ideographic Spacing=Proportional' at the same time. The combinations of layout features is managed by a 32bit integer (one bit each for selector setting), so we can define relationships between up to 32 features, theoretically. But if one feature setting affects another feature setting, we need typographic priority rules to validate the relationship. Unfortunately, the TrueType GX format specification does not give such information even for predefined features. 4. Permissive error handling of broken GX tables ------------------------------------------------ When Apple's font rendering system finds an inconsistency, like a specification violation or an unspecified value in a TrueType GX table, it does not always return error. In most cases, the rendering engine silently ignores such wrong values or even whole tables. In fact, MacOS is shipped with fonts including broken GX/AAT tables, but no harmful effects due to `officially broken' fonts are observed by end-users. gxvalid is designed to continue the validation process as long as possible. When gxvalid find wrong values, gxvalid warns it at least, and takes a fallback procedure if possible. The fallback procedure depends on the debug level. We used the following three tools to investigate Apple's error handling. - FontValidator (for MacOS 8.5 - 9.2) resource fork font - ftxvalidator (for MacOS X 10.1 -) dfont or naked-sfnt - ftxdumperfuser (for MacOS X 10.1 -) dfont or naked-sfnt However, all tests were done on a PowerPC based Macintosh; at present, we have not checked those tools on a m68k-based Macintosh. In total, we checked 183 fonts bundled to MacOS 9.1, MacOS 9.2, MacOS 10.0, MacOS X 10.1, MSIE for MacOS, and AppleWorks 6.0. These fonts are distributed officially, but many broken GX/AAT tables were found by Apple's font tools. In the following, we list typical violation of the GX specification, in fonts officially distributed with those Apple systems. 4-1. broken BinSrchHeader (19/183) ---------------------------------- `BinSrchHeader' is a header of a data array for m68k platforms to access memory efficiently. Although there are only two independent parameters for real (`unitSize' and `nUnits'), BinSrchHeader has three additional parameters which can be calculated from `unitSize' and `nUnits', for fast setup. Apple font tools ignore them silently, so gxvalid warns if it finds and inconsistency, and always continues validation. The additional parameters are ignored regardless of the consistency. 19 fonts include such inconsistencies; all breaks are in the BinSrchHeader structure of the `kern' table. 4-2. too-short LookupTable (5/183) ---------------------------------- LookupTable format 0 is a simple array to get a value from a given GID (glyph ID); the index of this array is a GID too. Therefore, the length of the array is expected to be same as the maximum GID value defined in the `maxp' table, but there are some fonts whose LookupTable format 0 is too short to cover all GIDs. FontValidator ignores this error silently, ftxvalidator and ftxdumperfuser both warn and continue. Similar problems are found in format 3 subtables of `kern'. gxvalid warns always and abort if the validation level is set to FT_VALIDATE_PARANOID. 5 fonts include too-short kern format 0 subtables. 1 font includes too-short kern format 3 subtable. 4-3. broken LookupTable format 2 (1/183) ---------------------------------------- LookupTable format 2, subformat 4 covers the GID space by a collection of segments which are specified by `firstGlyph' and `lastGlyph'. Some fonts store `firstGlyph' and `lastGlyph' in reverse order, so the segment specification is broken. Apple font tools ignore this error silently; a broken segment is ignored as if it did not exist. gxvalid warns and normalize the segment at FT_VALIDATE_DEFAULT, or ignore the segment at FT_VALIDATE_TIGHT, or abort at FT_VALIDATE_PARANOID. 1 font includes broken LookupTable format 2, in the `just' table. *) It seems that all fonts manufactured by ITC for AppleWorks have this error. 4-4. bad bracketing in glyph property (14/183) ---------------------------------------------- GX/AAT defines a `bracketing' property of the glyphs in the `prop' table, to control layout features of strings enclosed inside and outside of brackets. Some fonts give inappropriate bracket properties to glyphs. Apple font tools warn about this error; gxvalid warns too and aborts at FT_VALIDATE_PARANOID. 14 fonts include wrong bracket properties. 4-5. invalid feature number (117/183) ------------------------------------- The GX/AAT extension can include 255 different layout features, but popular layout features are predefined (see https://developer.apple.com/fonts/TrueType-Reference-Manual/RM09/AppendixF.html). Some fonts include feature numbers which are incompatible with the predefined feature registry. In our survey, there are 140 fonts including `feat' table. a) 67 fonts use a feature number which should not be used. b) 117 fonts set the wrong feature range (nSetting). This is mostly found in the `mort' and `morx' tables. Apple font tools give no warning, although they cannot recognize what the feature is. At FT_VALIDATE_DEFAULT, gxvalid warns but continues in both cases (a, b). At FT_VALIDATE_TIGHT, gxvalid warns and aborts for (a), but continues for (b). At FT_VALIDATE_PARANOID, gxvalid warns and aborts in both cases (a, b). 4-6. invalid prop version (10/183) ---------------------------------- As most TrueType GX tables, the `prop' table must start with a 32bit version identifier: 0x00010000, 0x00020000 or 0x00030000. But some fonts store nonsense binary data instead. When Apple font tools find them, they abort the processing immediately, and the data which follows is unhandled. gxvalid does the same. 10 fonts include broken `prop' version. All of these fonts are classic TrueType fonts for the Japanese script, manufactured by Apple. 4-7. unknown resource name (2/183) ------------------------------------ NOTE: THIS IS NOT A TRUETYPE GX ERROR. If a TrueType font is stored in the resource fork or in dfont format, the data must be tagged as `sfnt' in the resource fork index to invoke TrueType font handler for the data. But the TrueType font data in `Keyboard.dfont' is tagged as `kbd', and that in `LastResort.dfont' is tagged as `lst'. Apple font tools can detect that the data is in TrueType format and successfully validate them. Maybe this is possible because they are known to be dfont. The current implementation of the resource fork driver of FreeType cannot do that, thus gxvalid cannot validate them. 2 fonts use an unknown tag for the TrueType font resource. 5. `kern' table issues ---------------------- In common terminology of TrueType, `kern' is classified as a basic and platform-independent table. But there are Apple extensions of `kern', and there is an extension which requires a GX state machine for contextual kerning. Therefore, gxvalid includes a special validator for `kern' tables. Unfortunately, there is no exact algorithm to check Apple's extension, so gxvalid includes a heuristic algorithm to find the proper validation routines for all possible data formats, including the data format for Microsoft. By calling classic_kern_validate() instead of gxv_validate(), you can specify the `kern' format explicitly. However, current FreeType2 uses Microsoft `kern' format only, others are ignored (and should be handled in a library one level higher than FreeType). 5-1. History ------------ The original 16bit version of `kern' was designed by Apple in the pre-GX era, and it was also approved by Microsoft. Afterwards, Apple designed a new 32bit version of the `kern' table. According to the documentation, the difference between the 16bit and 32bit version is only the size of variables in the `kern' header. In the following, we call the original 16bit version as `classic', and 32bit version as `new'. 5-2. Versions and dialects which should be differentiated --------------------------------------------------------- The `kern' table consists of a table header and several subtables. The version number which identifies a `classic' or a `new' version is explicitly written in the table header, but there are undocumented differences between Microsoft's and Apple's formats. It is called a `dialect' in the following. There are three cases which should be handled: the new Apple-dialect, the classic Apple-dialect, and the classic Microsoft-dialect. An analysis of the formats and the auto detection algorithm of gxvalid is described in the following. 5-2-1. Version detection: classic and new kern ---------------------------------------------- According to Apple TrueType specification, there are only two differences between the classic and the new: - The `kern' table header starts with the version number. The classic version starts with 0x0000 (16bit), the new version starts with 0x00010000 (32bit). - In the `kern' table header, the number of subtables follows the version number. In the classic version, it is stored as a 16bit value. In the new version, it is stored as a 32bit value. From Apple font tool's output (DumpKERN is also tested in addition to the three Apple font tools in above), there is another undocumented difference. In the new version, the subtable header includes a 16bit variable named `tupleIndex' which does not exist in the classic version. The new version can store all subtable formats (0, 1, 2, and 3), but the Apple TrueType specification does not mention the subtable formats available in the classic version. 5-2-2. Available subtable formats in classic version ---------------------------------------------------- Although the Apple TrueType specification recommends to use the classic version in the case if the font is designed for both the Apple and Microsoft platforms, it does not document the available subtable formats in the classic version. According to the Microsoft TrueType specification, the subtable format assured for Windows and OS/2 support is only subtable format 0. The Microsoft TrueType specification also describes subtable format 2, but does not mention which platforms support it. Subtable formats 1, 3, and higher are documented as reserved for future use. Therefore, the classic version can store subtable formats 0 and 2, at least. `ttfdump.exe', a font tool provided by Microsoft, ignores the subtable format written in the subtable header, and parses the table as if all subtables are in format 0. `kern' subtable format 1 uses a StateTable, so it cannot be utilized without a GX State Machine. Therefore, it is reasonable to assume that format 1 (and 3) were introduced after Apple had introduced GX and moved to the new 32bit version. 5-2-3. Apple and Microsoft dialects ----------------------------------- The `kern' subtable has a 16bit `coverage' field to describe kerning attributes, but bit interpretations by Apple and Microsoft are different: For example, Apple uses bits 0-7 to identify the subtable, while Microsoft uses bits 8-15. In addition, due to the output of DumpKERN and FontValidator, Apple's bit interpretations of coverage in classic and new version are incompatible also. In summary, there are three dialects: classic Apple dialect, classic Microsoft dialect, and new Apple dialect. The classic Microsoft dialect and the new Apple dialect are documented by each vendors' TrueType font specification, but the documentation for classic Apple dialect is not available. For example, in the new Apple dialect, bit 15 is documented as `set to 1 if the kerning is vertical'. On the other hand, in classic Microsoft dialect, bit 1 is documented as `set to 1 if the kerning is horizontal'. From the outputs of DumpKERN and FontValidator, classic Apple dialect recognizes 15 as `set to 1 when the kerning is horizontal'. From the results of similar experiments, classic Apple dialect seems to be the Endian reverse of the classic Microsoft dialect. As a conclusion it must be noted that no font tool can identify classic Apple dialect or classic Microsoft dialect automatically. 5-2-4. gxvalid auto dialect detection algorithm ----------------------------------------------- The first 16 bits of the `kern' table are enough to identify the version: - if the first 16 bits are 0x0000, the `kern' table is in classic Apple dialect or classic Microsoft dialect - if the first 16 bits are 0x0001, and next 16 bits are 0x0000, the kern table is in new Apple dialect. If the `kern' table is a classic one, the 16bit `coverage' field is checked next. Firstly, the coverage bits are decoded for the classic Apple dialect using the following bit masks (this is based on DumpKERN output): 0x8000: 1=horizontal, 0=vertical 0x4000: not used 0x2000: 1=cross-stream, 0=normal 0x1FF0: reserved 0x000F: subtable format If any of reserved bits are set or the subtable bits is interpreted as format 1 or 3, we take it as `impossible in classic Apple dialect' and retry, using the classic Microsoft dialect. The most popular coverage in new Apple-dialect: 0x8000, The most popular coverage in classic Apple-dialect: 0x0000, The most popular coverage in classic Microsoft dialect: 0x0001. 5-3. Tested fonts ----------------- We checked 59 fonts bundled with MacOS and 38 fonts bundled with Windows, where all font include a `kern' table. - fonts bundled with MacOS * new Apple dialect format 0: 18 format 2: 1 format 3: 1 * classic Apple dialect format 0: 14 * classic Microsoft dialect format 0: 15 - fonts bundled with Windows * classic Microsoft dialect format 0: 38 It looks strange that classic Microsoft-dialect fonts are bundled to MacOS: they come from MSIE for MacOS, except of MarkerFelt.dfont. ACKNOWLEDGEMENT --------------- Some parts of gxvalid are derived from both the `gxlayout' module and the `otvalid' module. Development of gxlayout was supported by the Information-technology Promotion Agency(IPA), Japan. The detailed analysis of undefined glyph ID utilization in `mort' and `morx' tables is provided by George Williams. ------------------------------------------------------------------------ Copyright (C) 2004-2019 by suzuki toshiya, Masatake YAMATO, Red hat K.K., David Turner, Robert Wilhelm, and Werner Lemberg. This file is part of the FreeType project, and may only be used, modified, and distributed under the terms of the FreeType project license, LICENSE.TXT. By continuing to use, modify, or distribute this file you indicate that you have read the license and understand and accept it fully. --- end of README --- ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/src/pcf/README ======================================================================== FreeType font driver for PCF fonts Francesco Zappa Nardelli Introduction ************ PCF (Portable Compiled Format) is a binary bitmap font format, largely used in X world. This code implements a PCF driver for the FreeType library. Glyph images are loaded into memory only on demand, thus leading to a small memory footprint. Information on the PCF font format can only be worked out from `pcfread.c', and `pcfwrite.c', to be found, for instance, in the XFree86 (www.xfree86.org) source tree (xc/lib/font/bitmap/). Many good bitmap fonts in bdf format come with XFree86: they can be compiled into the pcf format using the `bdftopcf' utility. Supported hardware ****************** The driver has been tested on linux/x86 and sunos5.5/sparc. In both cases the compiler was gcc. When back in Paris, I will test it also on linux/alpha. Encodings ********* Use `FT_Get_BDF_Charset_ID' to access the encoding and registry. The driver always exports `ft_encoding_none' as face->charmap.encoding. FT_Get_Char_Index() behavior is unmodified, that is, it converts the ULong value given as argument into the corresponding glyph number. Known problems ************** - dealing explicitly with encodings breaks the uniformity of FreeType 2 API. - except for encodings properties, client applications have no visibility of the PCF_Face object. This means that applications cannot directly access font tables and are obliged to trust FreeType. - currently, glyph names and ink_metrics are ignored. I plan to give full visibility of the PCF_Face object in the next release of the driver, thus implementing also glyph names and ink_metrics. - height is defined as (ascent - descent). Is this correct? - if unable to read size information from the font, PCF_Init_Face sets available_size->width and available_size->height to 12. - too many english grammar errors in the readme file :-( License ******* Copyright (C) 2000 by Francesco Zappa Nardelli Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Credits ******* Keith Packard wrote the pcf driver found in XFree86. His work is at the same time the specification and the sample implementation of the PCF format. Undoubtedly, this driver is inspired from his work. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/README ======================================================================== Copyright 1991, 1996, 1999, 2000, 2007 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. THE GNU MP LIBRARY GNU MP is a library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating point numbers. It has a rich set of functions, and the functions have a regular interface. GNU MP is designed to be as fast as possible, both for small operands and huge operands. The speed is achieved by using fullwords as the basic arithmetic type, by using fast algorithms, with carefully optimized assembly code for the most common inner loops for lots of CPUs, and by a general emphasis on speed (instead of simplicity or elegance). GNU MP is believed to be faster than any other similar library. Its advantage increases with operand sizes for certain operations, since GNU MP in many cases has asymptotically faster algorithms. GNU MP is free software and may be freely copied on the terms contained in the files COPYING* (see the manual for information on which license(s) applies to which components of GNU MP). OVERVIEW OF GNU MP There are four classes of functions in GNU MP. 1. Signed integer arithmetic functions (mpz). These functions are intended to be easy to use, with their regular interface. The associated type is `mpz_t'. 2. Rational arithmetic functions (mpq). For now, just a small set of functions necessary for basic rational arithmetics. The associated type is `mpq_t'. 3. Floating-point arithmetic functions (mpf). If the C type `double' doesn't give enough precision for your application, declare your variables as `mpf_t' instead, set the precision to any number desired, and call the functions in the mpf class for the arithmetic operations. 4. Positive-integer, hard-to-use, very low overhead functions are in the mpn class. No memory management is performed. The caller must ensure enough space is available for the results. The set of functions is not regular, nor is the calling interface. These functions accept input arguments in the form of pairs consisting of a pointer to the least significant word, and an integral size telling how many limbs (= words) the pointer points to. Almost all calculations, in the entire package, are made by calling these low-level functions. For more information on how to use GNU MP, please refer to the documentation. It is composed from the file doc/gmp.texi, and can be displayed on the screen or printed. How to do that, as well how to build the library, is described in the INSTALL file in this directory. REPORTING BUGS If you find a bug in the library, please make sure to tell us about it! You should first check the GNU MP web pages at https://gmplib.org/, under "Status of the current release". There will be patches for all known serious bugs there. Report bugs to gmp-bugs@gmplib.org. What information is needed in a useful bug report is described in the manual. The same address can be used for suggesting modifications and enhancements. ---------------- Local variables: mode: text fill-column: 78 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mini-gmp/README ======================================================================== Copyright 2011-2013, 2018 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This is "mini-gmp", a small implementation of a subset of GMP's mpn, mpz and mpq interfaces. It is intended for applications which need arithmetic on numbers larger than a machine word, but which don't need to handle very large numbers very efficiently. Those applications can include a copy of mini-gmp to get a GMP-compatible interface with small footprint. One can also arrange for optional linking with the real GMP library, using mini-gmp as a fallback when for some reason GMP is not available, or not desired as a dependency. The supported GMP subset of the mpn and mpz interfaces is declared in mini-gmp.h, and implemented in mini-gmp.c. The implemented functions are fully compatible with the corresponding GMP functions, as specified in the GMP manual, with a few exceptions: mpz_export and mpz_import support only NAILS = 0. The REALLOC_FUNC and FREE_FUNC registered with mp_set_memory_functions does not get the correct size of the allocated block in the corresponding argument. mini-gmp always passes zero for these rarely used arguments. When mpz_get_str allocates the block, it can be longer than needed. The performance target for mini-gmp is to be at most 10 times slower than the real GMP library, for numbers of size up to a few hundred bits. No asymptotically fast algorithms are included in mini-gmp, so it will be many orders of magnitude slower than GMP for very large numbers. The supported GMP subset of the mpq layer is declared in mini-mpq.h, and implemented in mini-mpq.c. You should never "install" mini-gmp. Applications can either just #include mini-gmp.c (but then, beware that it defines several macros and functions outside of the advertised interface), and if needed #include mini-mpq.c in a later line (order is important). Or compile mini-gmp.c and mini-mpq.c as separate compilation units, and use the declarations in mini-gmp.h and mini-mpq.h. The tests subdirectory contains a testsuite. To use it, you need GMP and GNU make. Just run make check in the tests directory. If the hard-coded compiler settings are not right, you have to either edit the Makefile or pass overriding values on the make command line (e.g., make CC=cc check). The initial version of mini-gmp was put together by Niels Möller , with a fair amount of copy-and-paste from the GMP sources. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/README ======================================================================== Copyright 1996, 1999 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains all code for the mpn layer of GMP. Most subdirectories contain machine-dependent code, written in assembly or C. The `generic' subdirectory contains default code, used when there is no machine-dependent replacement for a particular machine. There is one subdirectory for each ISA family. Note that e.g., 32-bit SPARC and 64-bit SPARC are very different ISA's, and thus cannot share any code. A particular compile will only use code from one subdirectory, and the `generic' subdirectory. The ISA-specific subdirectories contain hierachies of directories for various architecture variants and implementations; the top-most level contains code that runs correctly on all variants. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/alpha/README ======================================================================== Copyright 1996, 1997, 1999-2005 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions optimized for DEC Alpha processors. ALPHA ASSEMBLY RULES AND REGULATIONS The `.prologue N' pseudo op marks the end of instruction that needs special handling by unwinding. It also says whether $27 is really needed for computing the gp. The `.mask M' pseudo op says which registers are saved on the stack, and at what offset in the frame. Cray T3 code is very very different... "$6" / "$f6" etc is the usual syntax for registers, but on Unicos instead "r6" / "f6" is required. We use the "r6" / "f6" forms, and have m4 defines expand them to "$6" or "$f6" where necessary. "0x" introduces a hex constant in gas and DEC as, but on Unicos "^X" is required. The X() macro accommodates this difference. "cvttqc" is required by DEC as, "cvttq/c" is required by Unicos, and gas will accept either. We use cvttqc and have an m4 define expand to cvttq/c where necessary. "not" as an alias for "ornot r31, ..." is available in gas and DEC as, but not the Unicos assembler. The full "ornot" must be used. "unop" is not available in Unicos. We make an m4 define to the usual "ldq_u r31,0(r30)", and in fact use that define on all systems since it comes out the same. "!literal!123" etc explicit relocations as per Tru64 4.0 are apparently not available in older alpha assemblers (including gas prior to 2.12), according to the GCC manual, so the assembler macro forms must be used (eg. ldgp). RELEVANT OPTIMIZATION ISSUES EV4 1. This chip has very limited store bandwidth. The on-chip L1 cache is write- through, and a cache line is transferred from the store buffer to the off- chip L2 in as much 15 cycles on most systems. This delay hurts mpn_add_n, mpn_sub_n, mpn_lshift, and mpn_rshift. 2. Pairing is possible between memory instructions and integer arithmetic instructions. 3. mulq and umulh are documented to have a latency of 23 cycles, but 2 of these cycles are pipelined. Thus, multiply instructions can be issued at a rate of one each 21st cycle. EV5 1. The memory bandwidth of this chip is good, both for loads and stores. The L1 cache can handle two loads or one store per cycle, but two cycles after a store, no ld can issue. 2. mulq has a latency of 12 cycles and an issue rate of 1 each 8th cycle. umulh has a latency of 14 cycles and an issue rate of 1 each 10th cycle. (Note that published documentation gets these numbers slightly wrong.) 3. mpn_add_n. With 4-fold unrolling, we need 37 instructions, whereof 12 are memory operations. This will take at least ceil(37/2) [dual issue] + 1 [taken branch] = 19 cycles We have 12 memory cycles, plus 4 after-store conflict cycles, or 16 data cache cycles, which should be completely hidden in the 19 issue cycles. The computation is inherently serial, with these dependencies: ldq ldq \ /\ (or) addq | |\ / \ | | addq cmpult \ | | cmpult | \ / or I.e., 3 operations are needed between carry-in and carry-out, making 12 cycles the absolute minimum for the 4 limbs. We could replace the `or' with a cmoveq/cmovne, which could issue one cycle earlier that the `or', but that might waste a cycle on EV4. The total depth remain unaffected, since cmov has a latency of 2 cycles. addq / \ addq cmpult | \ cmpult -> cmovne Montgomery has a slightly different way of computing carry that requires one less instruction, but has depth 4 (instead of the current 3). Since the code is currently instruction issue bound, Montgomery's idea should save us 1/2 cycle per limb, or bring us down to a total of 17 cycles or 4.25 cycles/limb. Unfortunately, this method will not be good for the EV6. 4. addmul_1 and friends: We previously had a scheme for splitting the single- limb operand in 21-bits chunks and the multi-limb operand in 32-bit chunks, and then use FP operations for every 2nd multiply, and integer operations for every 2nd multiply. But it seems much better to split the single-limb operand in 16-bit chunks, since we save many integer shifts and adds that way. See powerpc64/README for some more details. EV6 Here we have a really parallel pipeline, capable of issuing up to 4 integer instructions per cycle. In actual practice, it is never possible to sustain more than 3.5 integer insns/cycle due to rename register shortage. One integer multiply instruction can issue each cycle. To get optimal speed, we need to pretend we are vectorizing the code, i.e., minimize the depth of recurrences. There are two dependencies to watch out for. 1) Address arithmetic dependencies, and 2) carry propagation dependencies. We can avoid serializing due to address arithmetic by unrolling loops, so that addresses don't depend heavily on an index variable. Avoiding serializing because of carry propagation is trickier; the ultimate performance of the code will be determined of the number of latency cycles it takes from accepting carry-in to a vector point until we can generate carry-out. Most integer instructions can execute in either the L0, U0, L1, or U1 pipelines. Shifts only execute in U0 and U1, and multiply only in U1. CMOV instructions split into two internal instructions, CMOV1 and CMOV2. CMOV split the mapping process (see pg 2-26 in cmpwrgd.pdf), suggesting the CMOV should always be placed as the last instruction of an aligned 4 instruction block, or perhaps simply avoided. Perhaps the most important issue is the latency between the L0/U0 and L1/U1 clusters; a result obtained on either cluster has an extra cycle of latency for consumers in the opposite cluster. Because of the dynamic nature of the implementation, it is hard to predict where an instruction will execute. REFERENCES "Alpha Architecture Handbook", version 4, Compaq, October 1998, order number EC-QD2KC-TE. "Alpha 21164 Microprocessor Hardware Reference Manual", Compaq, December 1998, order number EC-QP99C-TE. "Alpha 21264/EV67 Microprocessor Hardware Reference Manual", revision 1.4, Compaq, September 2000, order number DS-0028B-TE. "Compiler Writer's Guide for the Alpha 21264", Compaq, June 1999, order number EC-RJ66A-TE. All of the above are available online from http://ftp.digital.com/pub/Digital/info/semiconductor/literature/dsc-library.html ftp://ftp.compaq.com/pub/products/alphaCPUdocs "Tru64 Unix Assembly Language Programmer's Guide", Compaq, March 1996, part number AA-PS31D-TE. "Digital UNIX Calling Standard for Alpha Systems", Digital Equipment Corp, March 1996, part number AA-PY8AC-TE. The above are available online, http://h30097.www3.hp.com/docs/pub_page/V40F_DOCS.HTM (Dunno what h30097 means in this URL, but if it moves try searching for "tru64 online documentation" from the main www.hp.com page.) ---------------- Local variables: mode: text fill-column: 79 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/alpha/ev6/nails/README ======================================================================== Copyright 2002, 2005 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains assembly code for nails-enabled 21264. The code is not very well optimized. For addmul_N, as N grows larger, we could make multiple loads together, then do about 3.3 i/c. 10 cycles after the last load, we can increase to 4 i/c. This would surely allow addmul_4 to run at 2 c/l, but the same should be possible also for addmul_3 and perhaps even addmul_2. current fair best Routine c/l unroll c/l unroll c/l i/c mul_1 3.25 2.75 2.75 3.273 addmul_1 4.0 4 3.5 4 14 3.25 3.385 addmul_2 4.0 1 2.5 2 10 2.25 3.333 addmul_3 3.0 1 2.33 2 14 2 3.333 addmul_4 2.5 1 2.125 2 17 2 3.135 addmul_5 2 1 10 addmul_6 2 1 12 addmul_7 2 1 14 (The "best" column doesn't account for bookkeeping instructions and thereby assumes infinite unrolling.) Basecase usages: 1 addmul_1 2 addmul_2 3 addmul_3 4 addmul_4 5 addmul_3 + addmul_2 2.3998 6 addmul_4 + addmul_2 7 addmul_4 + addmul_3 ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/arm/README ======================================================================== Copyright 2002, 2012, 2015 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions for ARM processors. It has been optimised mainly for Cortex-A9 and Cortex-A15, but the code in the top-level directory should run on all ARM processors at architecture level v4 or later. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/cray/README ======================================================================== Copyright 2000-2002 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. The code in this directory works for Cray vector systems such as C90, J90, T90 (both the CFP variant and the IEEE variant) and SV1. (For the T3E and T3D systems, see the `alpha' subdirectory at the same level as the directory containing this file.) The cfp subdirectory is for systems utilizing the traditional Cray floating-point format, and the ieee subdirectory is for the newer systems that use the IEEE floating-point format. There are several issues that reduces speed on Cray systems. For systems with cfp floating point, the main obstacle is the forming of 128-bit products. For IEEE systems, adding, and in particular computing carry is the main issue. There are no vectorizing unsigned-less-than instructions, and the sequence that implement that operation is very long. Shifting is the only operation that is simple to make fast. All Cray systems have a bitblt instructions (Vi Vj,VjAk) that should be really useful. For best speed for cfp systems, we need a mul_basecase, since that reduces the need for carry propagation to a minimum. Depending on the size (vn) of the smaller of the two operands (V), we should split U and V in different chunk sizes: U split in 2 32-bit parts V split according to the table: parts 4 5 6 7 8 bits/part 16 13 11 10 8 max allowed vn 1 8 32 64 256 number of multiplies 8 10 12 14 16 peak cycles/limb 4 5 6 7 8 U split in 3 22-bit parts V split according to the table: parts 3 4 5 bits/part 22 16 13 max allowed vn 16 1024 8192 number of multiplies 9 12 15 peak cycles/limb 4.5 6 7.5 U split in 4 16-bit parts V split according to the table: parts 4 bits/part 16 max allowed vn 65536 number of multiplies 16 peak cycles/limb 8 (A T90 CPU can accumulate two products per cycle.) IDEA: * Rewrite mpn_add_n: short cy[n + 1]; #pragma _CRI ivdep for (i = 0; i < n; i++) { s = up[i] + vp[i]; rp[i] = s; cy[i + 1] = s < up[i]; } more_carries = 0; #pragma _CRI ivdep for (i = 1; i < n; i++) { s = rp[i] + cy[i]; rp[i] = s; more_carries += s < cy[i]; } cys = 0; if (more_carries) { cys = rp[1] < cy[1]; for (i = 2; i < n; i++) { rp[i] += cys; cys = rp[i] < cys; } } return cys + cy[n]; * Write mpn_add3_n for adding three operands. First add operands 1 and 2, and generate cy[]. Then add operand 3 to the partial result, and accumulate carry into cy[]. Finally propagate carry just like in the new mpn_add_n. IDEA: Store fewer bits, perhaps 62, per limb. That brings mpn_add_n time down to 2.5 cycles/limb and mpn_addmul_1 times to 4 cycles/limb. By storing even fewer bits per limb, perhaps 56, it would be possible to write a mul_mul_basecase that would run at effectively 1 cycle/limb. (Use VM here to better handle the romb-shaped multiply area, perhaps rounding operand sizes up to the next power of 2.) ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/ia64/README ======================================================================== Copyright 2000-2005 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. IA-64 MPN SUBROUTINES This directory contains mpn functions for the IA-64 architecture. CODE ORGANIZATION mpn/ia64 itanium-2, and generic ia64 The code here has been optimized primarily for Itanium 2. Very few Itanium 1 chips were ever sold, and Itanium 2 is more powerful, so the latter is what we concentrate on. CHIP NOTES The IA-64 ISA keeps instructions three and three in 128 bit bundles. Programmers/compilers need to put explicit breaks `;;' when there are WAW or RAW dependencies, with some notable exceptions. Such "breaks" are typically at the end of a bundle, but can be put between operations within some bundle types too. The Itanium 1 and Itanium 2 implementations can under ideal conditions execute two bundles per cycle. The Itanium 1 allows 4 of these instructions to do integer operations, while the Itanium 2 allows all 6 to be integer operations. Taken cloop branches seem to insert a bubble into the pipeline most of the time on Itanium 1. Loads to the fp registers bypass the L1 cache and thus get extremely long latencies, 9 cycles on the Itanium 1 and 6 cycles on the Itanium 2. The software pipeline stuff using br.ctop instruction causes delays, since many issue slots are taken up by instructions with zero predicates, and since many extra instructions are needed to set things up. These features are clearly designed for code density, not speed. Misc pipeline limitations (Itanium 1): * The getf.sig instruction can only execute in M0. * At most four integer instructions/cycle. * Nops take up resources like any plain instructions. Misc pipeline limitations (Itanium 2): * The getf.sig instruction can only execute in M0. * Nops take up resources like any plain instructions. ASSEMBLY SYNTAX .align pads with nops in a text segment, but gas 2.14 and earlier incorrectly byte-swaps its nop bundle in big endian mode (eg. hpux), making it come out as break instructions. We use the ALIGN() macro in mpn/ia64/ia64-defs.m4 when it might be executed across. That macro suppresses any .align if the problem is detected by configure. Lack of alignment might hurt performance but will at least be correct. foo:: to create a global symbol is not accepted by gas. Use separate ".global foo" and "foo:" instead. .global is the standard global directive. gas accepts .globl, but hpux "as" doesn't. .proc / .endp generates the appropriate .type and .size information for ELF, so the latter directives don't need to be given explicitly. .pred.rel "mutex"... is standard for annotating predicate register relationships. gas also accepts .pred.rel.mutex, but hpux "as" doesn't. .pred directives can't be put on a line with a label, like ".Lfoo: .pred ...", the HP assembler on HP-UX 11.23 rejects that. gas is happy with it, and past versions of HP had seemed ok. // is the standard comment sequence, but we prefer "C" since it inhibits m4 macro expansion. See comments in ia64-defs.m4. REGISTER USAGE Special: r0: constant 0 r1: global pointer (gp) r8: return value r12: stack pointer (sp) r13: thread pointer (tp) Caller-saves: r8-r11 r14-r31 f6-f15 f32-f127 Caller-saves but rotating: r32- ================================================================ mpn_add_n, mpn_sub_n: The current code runs at 1.25 c/l on Itanium 2. ================================================================ mpn_mul_1: The current code runs at 2 c/l on Itanium 2. Using a blocked approach, working off of 4 separate places in the operands, one could make use of the xma accumulation, and approach 1 c/l. ldf8 [up] xma.l xma.hu stf8 [wrp] ================================================================ mpn_addmul_1: The current code runs at 2 c/l on Itanium 2. It seems possible to use a blocked approach, as with mpn_mul_1. We should read rp[] to integer registers, allowing for just one getf.sig per cycle. ld8 [rp] ldf8 [up] xma.l xma.hu getf.sig add+add+cmp+cmp st8 [wrp] These 10 instructions can be scheduled to approach 1.667 cycles, and with the 4 cycle latency of xma, this means we need at least 3 blocks. Using ldfp8 we could approach 1.583 c/l. ================================================================ mpn_submul_1: The current code runs at 2.25 c/l on Itanium 2. Getting to 2 c/l requires ldfp8 with all alignment headache that implies. ================================================================ mpn_addmul_N For best speed, we need to give up using mpn_addmul_2 as the main multiply building block, and instead take multiple v limbs per loop. For the Itanium 1, we need to take about 8 limbs at a time for full speed. For the Itanium 2, something like mpn_addmul_4 should be enough. The add+cmp+cmp+add we use on the other codes is optimal for shortening recurrencies (1 cycle) but the sequence takes up 4 execution slots. When recurrency depth is not critical, a more standard 3-cycle add+cmp+add is better. /* First load the 8 values from v */ ldfp8 v0, v1 = [r35], 16;; ldfp8 v2, v3 = [r35], 16;; ldfp8 v4, v5 = [r35], 16;; ldfp8 v6, v7 = [r35], 16;; /* In the inner loop, get a new U limb and store a result limb. */ mov lc = un Loop: ldf8 u0 = [r33], 8 ld8 r0 = [r32] xma.l lp0 = v0, u0, hp0 xma.hu hp0 = v0, u0, hp0 xma.l lp1 = v1, u0, hp1 xma.hu hp1 = v1, u0, hp1 xma.l lp2 = v2, u0, hp2 xma.hu hp2 = v2, u0, hp2 xma.l lp3 = v3, u0, hp3 xma.hu hp3 = v3, u0, hp3 xma.l lp4 = v4, u0, hp4 xma.hu hp4 = v4, u0, hp4 xma.l lp5 = v5, u0, hp5 xma.hu hp5 = v5, u0, hp5 xma.l lp6 = v6, u0, hp6 xma.hu hp6 = v6, u0, hp6 xma.l lp7 = v7, u0, hp7 xma.hu hp7 = v7, u0, hp7 getf.sig l0 = lp0 getf.sig l1 = lp1 getf.sig l2 = lp2 getf.sig l3 = lp3 getf.sig l4 = lp4 getf.sig l5 = lp5 getf.sig l6 = lp6 add+cmp+add xx, l0, r0 add+cmp+add acc0, acc1, l1 add+cmp+add acc1, acc2, l2 add+cmp+add acc2, acc3, l3 add+cmp+add acc3, acc4, l4 add+cmp+add acc4, acc5, l5 add+cmp+add acc5, acc6, l6 getf.sig acc6 = lp7 st8 [r32] = xx, 8 br.cloop Loop 49 insn at max 6 insn/cycle: 8.167 cycles/limb8 11 memops at max 2 memops/cycle: 5.5 cycles/limb8 16 fpops at max 2 fpops/cycle: 8 cycles/limb8 21 intops at max 4 intops/cycle: 5.25 cycles/limb8 11+21 memops+intops at max 4/cycle 8 cycles/limb8 ================================================================ mpn_lshift, mpn_rshift The current code runs at 1 cycle/limb on Itanium 2. Using 63 separate loops, we could use the double-word shrp instruction. That instruction has a plain single-cycle latency. We need 63 loops since this instruction only accept immediate count. That would lead to a somewhat silly code size, but the speed would be 0.75 c/l on Itanium 2 (by using shrp each cycle plus shl/shr going down I1 for a further limb every second cycle). ================================================================ mpn_copyi, mpn_copyd The current code runs at 0.5 c/l on Itanium 2. But that is just for L1 cache hit. The 4-way unrolled loop takes just 2 cycles, and thus load-use scheduling isn't great. It might be best to actually use modulo scheduled loops, since that will allow us to do better load-use scheduling without too much unrolling. Depending on size or operand alignment, we get 1 c/l or 0.5 c/l on Itanium 2, according to tune/speed. Cache bank conflicts? REFERENCES Intel Itanium Architecture Software Developer's Manual, volumes 1 to 3, Intel document 245317-004, 245318-004, 245319-004 October 2002. Volume 1 includes an Itanium optimization guide. Intel Itanium Processor-specific Application Binary Interface (ABI), Intel document 245370-003, May 2001. Describes C type sizes, dynamic linking, etc. Intel Itanium Architecture Assembly Language Reference Guide, Intel document 248801-004, 2000-2002. Describes assembly instruction syntax and other directives. Itanium Software Conventions and Runtime Architecture Guide, Intel document 245358-003, May 2001. Describes calling conventions, including stack unwinding requirements. Intel Itanium Processor Reference Manual for Software Optimization, Intel document 245473-003, November 2001. Intel Itanium-2 Processor Reference Manual for Software Development and Optimization, Intel document 251110-003, May 2004. All the above documents can be found online at http://developer.intel.com/design/itanium/manuals.htm ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/m68k/README ======================================================================== Copyright 2001, 2003, 2004 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. M68K MPN SUBROUTINES This directory contains mpn functions for various m68k family chips. CODE ORGANIZATION m68k m68000, m68010, m68060 m68k/mc68020 m68020, m68030, m68040, and CPU32 The m5200 "coldfire", which is m68000 less a few instructions, currently has no assembler code support. STATUS The code herein is old and poorly maintained. If somebody really cared, it could be optimized substantially. For example, * mpn_add_n and mpn_sub_n could, with more unrolling be improved from 6 to close to 4 c/l (on m68040). * The multiplication loops could be sped up by using the FPU. * mpn_lshift by 31 should use the special-case mpn_rshift by 1 code, and vice versa mpn_rshift by 31 use the special lshift by 1, when operand overlap permits. * On 68000, mpn_mul_1, mpn_addmul_1 and mpn_submul_1 could check for a 16-bit multiplier and use two multiplies per limb, not four. Similarly various other _1 operations like mpn_mod_1, mpn_divrem_1, mpn_divexact_1, mpn_modexact_1c_odd. * On 68000, mpn_lshift and mpn_rshift could use a roll and mask instead of lsrl and lsll. This promises to be a speedup, effectively trading a 6+2*n shift for one or two 4 cycle masks. Suggested by Jean-Charles Meyrignac. * config.guess detects 68000, 68010, CPU32 and 68020 by running some code, but relies on system information for 030, 040 and 060. Can they be identified by running some code? Currently this only makes a difference to the compiler options selected, since we have no specific asm code for those chips. One novel idea for 68000 would be to use a 16-bit limb instead of 32-bits. This would suit the native 16x16 multiply, but might make it difficult to get full value from the native 32x32 add/sub/etc. This would be an ABI option, and would select "__GMP_SHORT_LIMB" in gmp.h. Naturally an entirely new set of asm subroutines would be needed for a 16-bit limb. Also there's various places in the C code assuming limb>=long, which would need to be updated, eg. mpz_set_ui. Some of the nails changes may have helped cover some of this. ASM FILES The .asm files are put through m4 for macro processing, and with the help of configure give either MIT or Motorola syntax. The generic mpn/asm-defs.m4 is used, together with mpn/m68k/m68k-defs.m4. See comments in those files. Not all possible syntax variations are covered. GCC config/m68k for instance has things like $ for immediates on CRDS or reversed cmp order for AT&T SGS. These could probably be handled if anyone really needs it. CALLING CONVENTIONS The SVR4 standard has an int of 32 bits, and all parameters 32-bit aligned on the stack. PalmOS and perhaps various embedded systems intended for 68000 however use an int of 16 bits and parameters only 16-bit aligned on the stack. This is generated by "gcc -mshort" (and is the default for the PalmOS gcc port, we believe). The asm files adapt to these two ABIs by checking sizeof(unsigned), coming through config.m4 as SIZEOF_UNSIGNED. Only mpn_lshift and mpn_rshift are affected, all other routines take longs and pointers, which are 32-bits in both cases. Strictly speaking the size of an int doesn't determine the stack padding convention. But if int is 16 bits then we can definitely say the host system is not SVR4, and therefore may as well assume we're in 16-bit stack alignment. REFERENCES "Motorola M68000 Family Programmer's Reference Manual", available online, http://e-www.motorola.com/brdata/PDFDB/docs/M68000PM.pdf "System V Application Binary Interface: Motorola 68000 Processor Family Supplement", AT&T, 1990, ISBN 0-13-877553-6. Has details of calling conventions and ELF style PIC coding. ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/m88k/README ======================================================================== Copyright 2003 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. M88K MPN SUBROUTINES This directory contains mpn functions for various m88k family chips. CODE ORGANIZATION m88k m88000, m88100 m88k/mc88110 m88110 STATUS The code herein is old and poorly maintained. * The .s files assume the system uses a "_" underscore prefix, which should be controlled by configure. * The mc88110/*.S files are using the defunct "sysdep.h" configuration scheme and won't compile. Conversion to the current m4 .asm style wouldn't be difficult. ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/mips64/README ======================================================================== Copyright 1996 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions optimized for MIPS3. Example of processors that implement MIPS3 are R4000, R4400, R4600, R4700, and R8000. RELEVANT OPTIMIZATION ISSUES 1. On the R4000 and R4400, branches, both the plain and the "likely" ones, take 3 cycles to execute. (The fastest possible loop will take 4 cycles, because of the delay insn.) On the R4600, branches takes a single cycle On the R8000, branches often take no noticeable cycles, as they are executed in a separate function unit.. 2. The R4000 and R4400 have a load latency of 4 cycles. 3. On the R4000 and R4400, multiplies take a data-dependent number of cycles, contrary to the SGI documentation. There seem to be 3 or 4 possible latencies. 4. The R1x000 processors can issue one floating-point operation, two integer operations, and one memory operation per cycle. The FPU has very short latencies, while the integer multiply unit is non-pipelined. We should therefore write fp based mpn_Xmul_1. STATUS Good... ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/pa32/README ======================================================================== Copyright 1996, 1999, 2001, 2002, 2004 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions for various HP PA-RISC chips. Code that runs faster on the PA7100 and later implementations, is in the pa7100 directory. RELEVANT OPTIMIZATION ISSUES Load and Store timing On the PA7000 no memory instructions can issue the two cycles after a store. For the PA7100, this is reduced to one cycle. The PA7100 has a lookup-free cache, so it helps to schedule loads and the dependent instruction really far from each other. STATUS 1. mpn_mul_1 could be improved to 6.5 cycles/limb on the PA7100, using the instructions below (but some sw pipelining is needed to avoid the xmpyu-fstds delay): fldds s1_ptr xmpyu fstds N(%r30) xmpyu fstds N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) addc stws res_ptr addc stws res_ptr addib Loop 2. mpn_addmul_1 could be improved from the current 10 to 7.5 cycles/limb (asymptotically) on the PA7100, using the instructions below. With proper sw pipelining and the unrolling level below, the speed becomes 8 cycles/limb. fldds s1_ptr fldds s1_ptr xmpyu fstds N(%r30) xmpyu fstds N(%r30) xmpyu fstds N(%r30) xmpyu fstds N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) ldws N(%r30) addc addc addc addc addc %r0,%r0,cy-limb ldws res_ptr ldws res_ptr ldws res_ptr ldws res_ptr add stws res_ptr addc stws res_ptr addc stws res_ptr addc stws res_ptr addib 3. For the PA8000 we have to stick to using 32-bit limbs before compiler support emerges. But we want to use 64-bit operations whenever possible, in particular for loads and stores. It is possible to handle mpn_add_n efficiently by rotating (when s1/s2 are aligned), masking+bit field inserting when (they are not). The speed should double compared to the code used today. LABEL SYNTAX The HP-UX assembler takes labels starting in column 0 with no colon, L$loop ldws,mb -4(0,%r25),%r22 Gas on hppa GNU/Linux however requires a colon, L$loop: ldws,mb -4(0,%r25),%r22 This is covered by using LDEF() from asm-defs.m4. An alternative would be to use ".label" which is accepted by both, .label L$loop ldws,mb -4(0,%r25),%r22 but that's not as nice to look at, not if you're used to assembler code having labels in column 0. REFERENCES Hewlett Packard, "HP Assembler Reference Manual", 9th edition, June 1998, part number 92432-90012. ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/pa64/README ======================================================================== Copyright 1999, 2001, 2002, 2004 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions for 64-bit PA-RISC 2.0. PIPELINE SUMMARY The PA8x00 processors have an orthogonal 4-way out-of-order pipeline. Each cycle two ALU operations and two MEM operations can issue, but just one of the MEM operations may be a store. The two ALU operations can be almost any combination of non-memory operations. Unlike every other processor, integer and fp operations are completely equal here; they both count as just ALU operations. Unfortunately, some operations cause hickups in the pipeline. Combining carry-consuming operations like ADD,DC with operations that does not set carry like ADD,L cause long delays. Skip operations also seem to cause hickups. If several ADD,DC are issued consecutively, or if plain carry-generating ADD feed ADD,DC, stalling does not occur. We can effectively issue two ADD,DC operations/cycle. Latency scheduling is not as important as making sure to have a mix of ALU and MEM operations, but for full pipeline utilization, it is still a good idea to do some amount of latency scheduling. Like for all other processors, RAW memory scheduling is critically important. Since integer multiplication takes place in the floating-point unit, the GMP code needs to handle this problem frequently. STATUS * mpn_lshift and mpn_rshift run at 1.5 cycles/limb on PA8000 and at 1.0 cycles/limb on PA8500. With latency scheduling, the numbers could probably be improved to 1.0 cycles/limb for all PA8x00 chips. * mpn_add_n and mpn_sub_n run at 2.0 cycles/limb on PA8000 and at about 1.6875 cycles/limb on PA8500. With latency scheduling, this could probably be improved to get close to 1.5 cycles/limb. A problem is the stalling of carry-inputting instructions after instructions that do not write to carry. * mpn_mul_1, mpn_addmul_1, and mpn_submul_1 run at between 5.625 and 6.375 on PA8500 and later, and about a cycle/limb slower on older chips. The code uses ADD,DC for adjacent limbs, and relies heavily on reordering. REFERENCES Hewlett Packard, "64-Bit Runtime Architecture for PA-RISC 2.0", version 3.3, October 1997. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/powerpc32/README ======================================================================== Copyright 2002, 2005 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. POWERPC 32-BIT MPN SUBROUTINES This directory contains mpn functions for various 32-bit PowerPC chips. CODE ORGANIZATION directory used for ================================================ powerpc generic, 604, 604e, 744x, 745x powerpc/750 740, 750, 7400, 7410 The top-level powerpc directory is currently mostly aimed at 604/604e but should be reasonable on all powerpcs. STATUS The code is quite well optimized for the 604e, other chips have had less attention. Altivec SIMD available in 74xx might hold some promise, but unfortunately GMP only guarantees 32-bit data alignment, so there's lots of fiddling around with partial operations at the start and end of limb vectors. A 128-bit limb would be a novel idea, but is unlikely to be practical, since it would have to work with ordinary +, -, * etc in the C code. Also, Altivec isn't very well suited for the GMP multiplication needs. Using floating-point based multiplication has much better better performance potential for all current powerpcs, both the ones with slow integer multiply units (603, 740, 750, 7400, 7410) and those with fast (604, 604e, 744x, 745x). This is because all powerpcs do some level of pipelining in the FPU: 603 and 750 can sustain one fmadd every 2nd cycle. 604 and 604e can sustain one fmadd per cycle. 7400 and 7410 can sustain 3 fmadd in 4 cycles. 744x and 745x can sustain 4 fmadd in 5 cycles. REGISTER NAMES The normal powerpc convention is to give registers as plain numbers, like "mtctr 6", but on Apple MacOS X (powerpc*-*-rhapsody* and powerpc*-*-darwin*) the assembler demands an "r" like "mtctr r6". Note however when register 0 in an instruction means a literal zero the "r" is omitted, for instance "lwzx r6,0,r7". The GMP code uses the "r" forms, powerpc-defs.m4 transforms them to plain numbers according to what GMP_ASM_POWERPC_R_REGISTERS finds is needed. (Note that this style isn't fully general, as the identifier r4 and the register r4 will not be distinguishable on some systems. However, this is not a problem for the limited GMP assembly usage.) GLOBAL REFERENCES Linux non-PIC lis 9, __gmp_binvert_limb_table@ha rlwinm 11, 5, 31, 25, 31 la 9, __gmp_binvert_limb_table@l(9) lbzx 11, 9, 11 Linux PIC (FIXME) .LCL0: .long .LCTOC1-.LCF0 bcl 20, 31, .LCF0 .LCF0: mflr 30 lwz 7, .LCL0-.LCF0(30) add 30, 7, 30 lwz 11, .LC0-.LCTOC1(30) rlwinm 3, 5, 31, 25, 31 lbzx 7, 11, 3 AIX (always PIC) LC..0: .tc __gmp_binvert_limb_table[TC],__gmp_binvert_limb_table[RW] lwz 9, LC..0(2) rlwinm 0, 5, 31, 25, 31 lbzx 0, 9, 0 Darwin (non-PIC) lis r2, ha16(___gmp_binvert_limb_table) rlwinm r9, r5, 31, 25, 31 la r2, lo16(___gmp_binvert_limb_table)(r2) lbzx r0, r2, r9 Darwin (PIC) mflr r0 bcl 20, 31, L0001$pb L0001$pb: mflr r7 mtlr r0 addis r2, r7, ha16(L___gmp_binvert_limb_table$non_lazy_ptr-L0001$pb) rlwinm r9, r5, 31, 25, 31 lwz r2, lo16(L___gmp_binvert_limb_table$non_lazy_ptr-L0001$pb)(r2) lbzx r0, r2, r9 ------ .non_lazy_symbol_pointer L___gmp_binvert_limb_table$non_lazy_ptr: .indirect_symbol ___gmp_binvert_limb_table .long 0 .subsections_via_symbols For GNU/Linux and Darwin, we might want to duplicate __gmp_binvert_limb_table into the text section in this file. We should thus be able to reach it like this: blr L0 L0: mflr r2 rlwinm r9, r5, 31, 25, 31 addi r9, r9, lo16(local_binvert_table-L0) lbzx r0, r2, r9 REFERENCES PowerPC Microprocessor Family: The Programming Environments for 32-bit Microprocessors, IBM document G522-0290-01, 2000. PowerPC 604e RISC Microprocessor User's Manual with Supplement for PowerPC 604 Microprocessor, IBM document G552-0330-00, Freescale document MPC604EUM/AD, 3/1998. MPC7410/MPC7400 RISC Microprocessor User's Manual, Freescale document MPC7400UM/D, rev 1, 11/2002. MPC7450 RISC Microprocessor Family Reference Manual, Freescale document MPC7450UM, rev 5, 1/2005. The above are available online from http://www.ibm.com/chips/techlib/techlib.nsf/productfamilies/PowerPC http://www.freescale.com/PowerPC ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/powerpc64/README ======================================================================== Copyright 1999-2001, 2003-2005 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. POWERPC-64 MPN SUBROUTINES This directory contains mpn functions for 64-bit PowerPC chips. CODE ORGANIZATION mpn/powerpc64 mode-neutral code mpn/powerpc64/mode32 code for mode32 mpn/powerpc64/mode64 code for mode64 The mode32 and mode64 sub-directories contain code which is for use in the respective chip mode, 32 or 64. The top-level directory is code that's unaffected by the mode. The "adde" instruction is the main difference between mode32 and mode64. It operates on either on a 32-bit or 64-bit quantity according to the chip mode. Other instructions have an operand size in their opcode and hence don't vary. POWER3/PPC630 pipeline information: Decoding is 4-way + branch and issue is 8-way with some out-of-order capability. Functional units: LS1 - ld/st unit 1 LS2 - ld/st unit 2 FXU1 - integer unit 1, handles any simple integer instruction FXU2 - integer unit 2, handles any simple integer instruction FXU3 - integer unit 3, handles integer multiply and divide FPU1 - floating-point unit 1 FPU2 - floating-point unit 2 Memory: Any two memory operations can issue, but memory subsystem can sustain just one store per cycle. No need for data prefetch; the hardware has very sophisticated prefetch logic. Simple integer: 2 operations (such as add, rl*) Integer multiply: 1 operation every 9th cycle worst case; exact timing depends on 2nd operand's most significant bit position (10 bits per cycle). Multiply unit is not pipelined, only one multiply operation in progress is allowed. Integer divide: ? Floating-point: Any plain 2 arithmetic instructions (such as fmul, fadd, and fmadd), latency 4 cycles. Floating-point divide: ? Floating-point square root: ? POWER3/PPC630 best possible times for the main loops: shift: 1.5 cycles limited by integer unit contention. With 63 special loops, one for each shift count, we could reduce the needed integer instructions to 2, which would reduce the best possible time to 1 cycle. add/sub: 1.5 cycles, limited by ld/st unit contention. mul: 18 cycles (average) unless floating-point operations are used, but that would only help for multiplies of perhaps 10 and more limbs. addmul/submul:Same situation as for mul. POWER4/PPC970 and POWER5 pipeline information: This is a very odd pipeline, it is basically a VLIW masquerading as a plain architecture. Its issue rules are not made public, and since it is so weird, it is very hard to figure out any useful information from experimentation. An example: A well-aligned loop with nop's take 3, 4, 6, 7, ... cycles. 3 cycles for 0, 1, 2, 3, 4, 5, 6, 7 nop's 4 cycles for 8, 9, 10, 11, 12, 13, 14, 15 nop's 6 cycles for 16, 17, 18, 19, 20, 21, 22, 23 nop's 7 cycles for 24, 25, 26, 27 nop's 8 cycles for 28, 29, 30, 31 nop's ... continues regularly Functional units: LS1 - ld/st unit 1 LS2 - ld/st unit 2 FXU1 - integer unit 1, handles any integer instruction FXU2 - integer unit 2, handles any integer instruction FPU1 - floating-point unit 1 FPU2 - floating-point unit 2 While this is one integer unit less than POWER3/PPC630, the remaining units are more powerful; here they handle multiply and divide. Memory: 2 ld/st. Stores go to the L2 cache, which can sustain just one store per cycle. L1 load latency: to gregs 3-4 cycles, to fregs 5-6 cycles. Operations that modify the address register might be split to use also an integer issue slot. Simple integer: 2 operations every cycle, latency 2. Integer multiply: 2 operations every 6th cycle, latency 7 cycles. Integer divide: ? Floating-point: Any plain 2 arithmetic instructions (such as fmul, fadd, and fmadd), latency 6 cycles. Floating-point divide: ? Floating-point square root: ? IDEAS *mul_1: Handling one limb using mulld/mulhdu and two limbs using floating- point operations should give performance of about 20 cycles for 3 limbs, or 7 cycles/limb. We should probably split the single-limb operand in 32-bit chunks, and the multi-limb operand in 16-bit chunks, allowing us to accumulate well in fp registers. Problem is to get 32-bit or 16-bit words to the fp registers. Only 64-bit fp memops copies bits without fiddling with them. We might therefore need to load to integer registers with zero extension, store as 64 bits into temp space, and then load to fp regs. Alternatively, load directly to fp space and add well-chosen constants to get cancellation. (Other part after given by subsequent subtraction.) Possible code mix for load-via-intregs variant: lwz,std,lfd fmadd,fmadd,fmul,fmul fctidz,stfd,ld,fctidz,stfd,ld add,adde lwz,std,lfd fmadd,fmadd,fmul,fmul fctidz,stfd,ld,fctidz,stfd,ld add,adde srd,sld,add,adde,add,adde ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/s390_64/README ======================================================================== Copyright 2011 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. There are 5 generations of 64-bit s390 processors, z900, z990, z9, z10, and z196. The current GMP code was optimised for the two oldest, z900 and z990. mpn_copyi This code makes use of a loop around MVC. It almost surely runs very close to optimally. A small improvement could be done by using one MVC for size 256 bytes, now we use two (we use an extra MVC when copying any multiple of 256 bytes). mpn_copyd We have tried several feed-in variants here, branch tree, jump table and computed goto. The fastest (on z990) turned out to be computed goto. An approach not tried is EX of LMG and STMG, modifying the register set on-the-fly. Using that trick, we could completely avoid using separate feed-in paths. mpn_lshift, mpn_rshift The current code runs at pipeline decode bandwidth on z990. mpn_add_n, mpn_sub_n The current code is 4-way unrolled. It should be unrolled more, at least 8x, in order to reach 2.5 c/l. mpn_mul_1, mpn_addmul_1, mpn_submul_1 The current code is very naive, but due to the non-pipelined nature of MLGR on z900 and z990, more sophisticated code would not gain much. On z10 one would need to cluster at least 4 MLGR together, in order to reduce stalling. On z196, one surely want to use unrolling and pipelining, to perhaps reach around 12 c/l. A major issue here and on z10 is ALCGR's 3 cycle stalling. mpn_mul_2, mpn_addmul_2 At least for older machines (z900, z990) with very slow MLGR, we should use Karatsuba's algorithm on 2-limb units, making mul_2 and addmul_2 the main multiplication primitives. The newer machines might benefit less from this approach, perhaps in particular z10, where MLGR clustering is more important. With Karatsuba, one could hope for around 16 cycles per accumulated 128 cross product, on z990. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/sparc32/README ======================================================================== Copyright 1996, 2001 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions for various SPARC chips. Code that runs only on version 8 SPARC implementations, is in the v8 subdirectory. RELEVANT OPTIMIZATION ISSUES Load and Store timing On most early SPARC implementations, the ST instructions takes multiple cycles, while a STD takes just a single cycle more than an ST. For the CPUs in SPARCstation I and II, the times are 3 and 4 cycles, respectively. Therefore, combining two ST instructions into a STD when possible is a significant optimization. Later SPARC implementations have single cycle ST. For SuperSPARC, we can perform just one memory instruction per cycle, even if up to two integer instructions can be executed in its pipeline. For programs that perform so many memory operations that there are not enough non-memory operations to issue in parallel with all memory operations, using LDD and STD when possible helps. UltraSPARC-1/2 has very slow integer multiplication. In the v9 subdirectory, we therefore use floating-point multiplication. STATUS 1. On a SuperSPARC, mpn_lshift and mpn_rshift run at 3 cycles/limb, or 2.5 cycles/limb asymptotically. We could optimize speed for special counts by using ADDXCC. 2. On a SuperSPARC, mpn_add_n and mpn_sub_n runs at 2.5 cycles/limb, or 2 cycles/limb asymptotically. 3. mpn_mul_1 runs at what is believed to be optimal speed. 4. On SuperSPARC, mpn_addmul_1 and mpn_submul_1 could both be improved by a cycle by avoiding one of the add instructions. See a29k/addmul_1. The speed of the code for other SPARC implementations is uncertain. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/sparc64/README ======================================================================== Copyright 1997, 1999-2002 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. This directory contains mpn functions for 64-bit V9 SPARC RELEVANT OPTIMIZATION ISSUES Notation: IANY = shift/add/sub/logical/sethi IADDLOG = add/sub/logical/sethi MEM = ld*/st* FA = fadd*/fsub*/f*to*/fmov* FM = fmul* UltraSPARC can issue four instructions per cycle, with these restrictions: * Two IANY instructions, but only one of these may be a shift. If there is a shift and an IANY instruction, the shift must precede the IANY instruction. * One FA. * One FM. * One branch. * One MEM. * IANY/IADDLOG/MEM must be insn 1, 2, or 3 in an issue bundle. Taken branches should not be in slot 4, since that makes the delay insn come from separate bundle. * If two IANY/IADDLOG instructions are to be executed in the same cycle and one of these is setting the condition codes, that instruction must be the second one. To summarize, ignoring branches, these are the bundles that can reach the peak execution speed: insn1 iany iany mem iany iany mem iany iany mem insn2 iaddlog mem iany mem iaddlog iany mem iaddlog iany insn3 mem iaddlog iaddlog fa fa fa fm fm fm insn4 fa/fm fa/fm fa/fm fm fm fm fa fa fa The 64-bit integer multiply instruction mulx takes from 5 cycles to 35 cycles, depending on the position of the most significant bit of the first source operand. When used for 32x32->64 multiplication, it needs 20 cycles. Furthermore, it stalls the processor while executing. We stay away from that instruction, and instead use floating-point operations. Floating-point add and multiply units are fully pipelined. The latency for UltraSPARC-1/2 is 3 cycles and for UltraSPARC-3 it is 4 cycles. Integer conditional move instructions cannot dual-issue with other integer instructions. No conditional move can issue 1-5 cycles after a load. (This might have been fixed for UltraSPARC-3.) The UltraSPARC-3 pipeline is very simular to the one of UltraSPARC-1/2 , but is somewhat slower. Branches execute slower, and there may be other new stalls. But integer multiply doesn't stall the entire CPU and also has a much lower latency. But it's still not pipelined, and thus useless for our needs. STATUS * mpn_lshift, mpn_rshift: The current code runs at 2.0 cycles/limb on UltraSPARC-1/2 and 2.65 on UltraSPARC-3. For UltraSPARC-1/2, the IEU0 functional unit is saturated with shifts. * mpn_add_n, mpn_sub_n: The current code runs at 4 cycles/limb on UltraSPARC-1/2 and 4.5 cycles/limb on UltraSPARC-3. The 4 instruction recurrency is the speed limiter. * mpn_addmul_1: The current code runs at 14 cycles/limb asymptotically on UltraSPARC-1/2 and 17.5 cycles/limb on UltraSPARC-3. On UltraSPARC-1/2, the code sustains 4 instructions/cycle. It might be possible to invent a better way of summing the intermediate 49-bit operands, but it is unlikely that it will save enough instructions to save an entire cycle. The load-use of the u operand is not enough scheduled for good L2 cache performance. The UltraSPARC-1/2 L1 cache is direct mapped, and since we use temporary stack slots that will conflict with the u and r operands, we miss to L2 very often. The load-use of the std/ldx pairs via the stack are perhaps over-scheduled. It would be possible to save two instructions: (1) The mov could be avoided if the std/ldx were less scheduled. (2) The ldx of the r operand could be split into two ld instructions, saving the shifts/masks. It should be possible to reach 14 cycles/limb for UltraSPARC-3 if the fp operations where rescheduled for this processor's 4-cycle latency. * mpn_mul_1: The current code is a straightforward edit of the mpn_addmul_1 code. It would be possible to shave one or two cycles from it, with some labour. * mpn_submul_1: Simpleminded code just calling mpn_mul_1 + mpn_sub_n. This means that it runs at 18 cycles/limb on UltraSPARC-1/2 and 23 cycles/limb on UltraSPARC-3. It would be possible to either match the mpn_addmul_1 performance, or in the worst case use one more instruction group. * US1/US2 cache conflict resolving. The direct mapped L1 date cache of US1/US2 is a problem for mul_1, addmul_1 (and a prospective submul_1). We should allocate a larger cache area, and put the stack temp area in a place that doesn't cause cache conflicts. ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/README ======================================================================== Copyright 1999-2002 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. X86 MPN SUBROUTINES This directory contains mpn functions for various 80x86 chips. CODE ORGANIZATION x86 i386, generic x86/i486 i486 x86/pentium Intel Pentium (P5, P54) x86/pentium/mmx Intel Pentium with MMX (P55) x86/p6 Intel Pentium Pro x86/p6/mmx Intel Pentium II, III x86/p6/p3mmx Intel Pentium III x86/k6 \ AMD K6 x86/k6/mmx / x86/k6/k62mmx AMD K6-2 x86/k7 \ AMD Athlon x86/k7/mmx / x86/pentium4 \ x86/pentium4/mmx | Intel Pentium 4 x86/pentium4/sse2 / The top-level x86 directory contains blended style code, meant to be reasonable on all x86s. STATUS The code is well-optimized for AMD and Intel chips, but there's nothing specific for Cyrix chips, nor for actual 80386 and 80486 chips. ASM FILES The x86 .asm files are BSD style assembler code, first put through m4 for macro processing. The generic mpn/asm-defs.m4 is used, together with mpn/x86/x86-defs.m4. See comments in those files. The code is meant for use with GNU "gas" or a system "as". There's no support for assemblers that demand Intel style code. STACK FRAME m4 macros are used to define the parameters passed on the stack, and these act like comments on what the stack frame looks like too. For example, mpn_mul_1() has the following. defframe(PARAM_MULTIPLIER, 16) defframe(PARAM_SIZE, 12) defframe(PARAM_SRC, 8) defframe(PARAM_DST, 4) PARAM_MULTIPLIER becomes `FRAME+16(%esp)', and the others similarly. The return address is at offset 0, but there's not normally any need to access that. FRAME is redefined as necessary through the code so it's the number of bytes pushed on the stack, and hence the offsets in the parameter macros stay correct. At the start of a routine FRAME should be zero. deflit(`FRAME',0) ... deflit(`FRAME',4) ... deflit(`FRAME',8) ... Helper macros FRAME_pushl(), FRAME_popl(), FRAME_addl_esp() and FRAME_subl_esp() exist to adjust FRAME for the effect of those instructions, and can be used instead of explicit definitions if preferred. defframe_pushl() is a combination FRAME_pushl() and defframe(). There's generally some slackness in redefining FRAME. If new values aren't going to get used then the redefinitions are omitted to keep from cluttering up the code. This happens for instance at the end of a routine, where there might be just four pops and then a ret, so FRAME isn't getting used. Local variables and saved registers can be similarly defined, with negative offsets representing stack space below the initial stack pointer. For example, defframe(SAVE_ESI, -4) defframe(SAVE_EDI, -8) defframe(VAR_COUNTER,-12) deflit(STACK_SPACE, 12) Here STACK_SPACE gets used in a "subl $STACK_SPACE, %esp" to allocate the space, and that instruction must be followed by a redefinition of FRAME (setting it equal to STACK_SPACE) to reflect the change in %esp. Definitions for pushed registers are only put in when they're going to be used. If registers are just saved and restored with pushes and pops then definitions aren't made. ASSEMBLER EXPRESSIONS Only addition and subtraction seem to be universally available, certainly that's all the Solaris 8 "as" seems to accept. If expressions are wanted then m4 eval() should be used. In particular note that a "/" anywhere in a line starts a comment in Solaris "as", and in some configurations of gas too. addl $32/2, %eax <-- wrong addl $eval(32/2), %eax <-- right Binutils gas/config/tc-i386.c has a choice between "/" being a comment anywhere in a line, or only at the start. FreeBSD patches 2.9.1 to select the latter, and from 2.9.5 it's the default for GNU/Linux too. ASSEMBLER COMMENTS Solaris "as" doesn't support "#" commenting, using /* */ instead. For that reason "C" commenting is used (see asm-defs.m4) and the intermediate ".s" files have no comments. Any comments before include(`../config.m4') must use m4 "dnl", since it's only after the include that "C" is available. By convention "dnl" is also used for comments about m4 macros. TEMPORARY LABELS Temporary numbered labels like "1:" used as "1f" or "1b" are available in "gas" and Solaris "as", but not in SCO "as". Normal L() labels should be used instead, possibly with a counter to make them unique, see jadcl0() in x86-defs.m4 for instance. A separate counter for each macro makes it possible to nest them, for instance movl_text_address() can be used within an ASSERT(). "1:" etc must be avoided in gcc __asm__ blocks too. "%=" for generating a unique number looks like a good alternative, but is that actually a documented feature? In any case this problem doesn't currently arise. ZERO DISPLACEMENTS In a couple of places addressing modes like 0(%ebx) with a byte-sized zero displacement are wanted, rather than (%ebx) with no displacement. These are either for computed jumps or to get desirable code alignment. Explicit .byte sequences are used to ensure the assembler doesn't turn 0(%ebx) into (%ebx). The Zdisp() macro in x86-defs.m4 is used for this. Current gas 2.9.5 or recent 2.9.1 leave 0(%ebx) as written, but old gas 1.92.3 changes it. In general changing would be the sort of "optimization" an assembler might perform, hence explicit ".byte"s are used where necessary. SHLD/SHRD INSTRUCTIONS The %cl count forms of double shift instructions like "shldl %cl,%eax,%ebx" must be written "shldl %eax,%ebx" for some assemblers. gas takes either, Solaris "as" doesn't allow %cl, gcc generates %cl for gas and NeXT (which is gas), and omits %cl elsewhere. For GMP an autoconf test GMP_ASM_X86_SHLDL_CL is used to determine whether %cl should be used, and the macros shldl, shrdl, shldw and shrdw in mpn/x86/x86-defs.m4 pass through or omit %cl as necessary. See the comments with those macros for usage. IMUL INSTRUCTION GCC config/i386/i386.md (cvs rev 1.187, 21 Oct 00) under *mulsi3_1 notes that the following two forms produce identical object code imul $12, %eax imul $12, %eax, %eax but that the former isn't accepted by some assemblers, in particular the SCO OSR5 COFF assembler. GMP follows GCC and uses only the latter form. (This applies only to immediate operands, the three operand form is only valid with an immediate.) DIRECTION FLAG The x86 calling conventions say that the direction flag should be clear at function entry and exit. (See iBCS2 and SVR4 ABI books, references below.) Although this has been so since the year dot, it's not absolutely clear whether it's universally respected. Since it's better to be safe than sorry, GMP follows glibc and does a "cld" if it depends on the direction flag being clear. This happens only in a few places. POSITION INDEPENDENT CODE Coding Style Defining the symbol PIC in m4 processing selects SVR4 / ELF style position independent code. This is necessary for shared libraries because they can be mapped into different processes at different virtual addresses. Actually, relocations are allowed but text pages with relocations aren't shared, defeating the purpose of a shared library. The GOT is used to access global data, and the PLT is used for functions. The use of the PLT adds a fixed cost to every function call, and the GOT adds a cost to any function accessing global variables. These are small but might be noticeable when working with small operands. Scope It's intended, as a matter of policy, that references within libgmp are resolved within libgmp. Certainly there's no need for an application to replace any internals, and we take the view that there's no value in an application subverting anything documented either. Resolving references within libgmp in theory means calls can be made with a plain PC-relative call instruction, which is faster and smaller than going through the PLT, and data references can be similarly PC-relative, saving a GOT entry and fetch from there. Unfortunately the normal linker behaviour doesn't allow us to do this. By default an R_386_PC32 PC-relative reference, either for a call or for data, is left in libgmp.so by the linker so that it can be resolved at runtime to a location in the application or another shared library. This means a text segment relocation which we don't want. -Bsymbolic Under the "-Bsymbolic" option, the linker resolves references to symbols within libgmp.so. This gives us the desired effect for R_386_PC32, ie. it's resolved at link time. It also resolves R_386_PLT32 calls directly to their target without creating a PLT entry (though if this is done to normal compiler-generated code it still leaves a setup of %ebx to _GLOBAL_OFFSET_TABLE_ which may then be unnecessary). Unfortunately -Bsymbolic does bad things to global variables defined in a shared library but accessed by non-PIC code from the mainline (or a static library). The problem is that the mainline needs a fixed data address to avoid text segment relocations, so space is allocated in its data segment and the value from the variable is copied from the shared library's data segment when the library is loaded. Under -Bsymbolic, however, references in the shared library are then resolved still to the shared library data area. Not surprisingly it bombs badly to have mainline code and library code accessing different locations for what should be one variable. Note that this -Bsymbolic effect for the shared library is not just for R_386_PC32 offsets which might have been cooked up in assembler, but is done also for the contents of GOT entries. -Bsymbolic simply applies a general rule that symbols are resolved first from the local module. Visibility Attributes GCC __attribute__ ((visibility ("protected"))), which is available in recent versions, eg. 3.3, is probably what we'd like to use. It makes gcc generate plain PC-relative calls to indicated functions, and directs the linker to resolve references to the given function within the link module. Unfortunately, as of debian binutils 2.13.90.0.16 at least, the resulting libgmp.so comes out with text segment relocations, references are not resolved at link time. If the gcc description is to be believed this is this not how it should work. If a symbol cannot be overridden by another module then surely references within that module can be resolved immediately (ie. at link time). Present In any case, all this means that we have no optimizations we can usefully make to function or variable usages, neither for assembler nor C code. Perhaps in the future the visibility attribute will work as we'd like. GLOBAL OFFSET TABLE The magic _GLOBAL_OFFSET_TABLE_ used by code establishing the address of the GOT sometimes requires an extra underscore prefix. SVR4 systems and NetBSD don't need a prefix, OpenBSD does need one. Note that NetBSD and OpenBSD are both a.out underscore systems, so the prefix for _GLOBAL_OFFSET_TABLE_ is not simply the same as the prefix for ordinary globals. In any case in the asm code we write _GLOBAL_OFFSET_TABLE_ and let a macro in x86-defs.m4 add an extra underscore if required (according to a configure test). Old gas 1.92.3 which comes with FreeBSD 2.2.8 gets a segmentation fault when asked to assemble the following, L1: addl $_GLOBAL_OFFSET_TABLE_+[.-L1], %ebx It seems that using the label in the same instruction it refers to is the problem, since a nop in between works. But the simplest workaround is to follow gcc and omit the +[.-L1] since it does nothing, addl $_GLOBAL_OFFSET_TABLE_, %ebx Current gas 2.10 generates incorrect object code when %eax is used in such a construction (with or without +[.-L1]), addl $_GLOBAL_OFFSET_TABLE_, %eax The R_386_GOTPC gets a displacement of 2 rather than the 1 appropriate for the 1 byte opcode of "addl $n,%eax". The best workaround is just to use any other register, since then it's a two byte opcode+mod/rm. GCC for example always uses %ebx (which is needed for calls through the PLT). A similar problem occurs in an leal (again with or without a +[.-L1]), leal _GLOBAL_OFFSET_TABLE_(%edi), %ebx This time the R_386_GOTPC gets a displacement of 0 rather than the 2 appropriate for the opcode and mod/rm, making this form unusable. SIMPLE LOOPS The overheads in setting up for an unrolled loop can mean that at small sizes a simple loop is faster. Making small sizes go fast is important, even if it adds a cycle or two to bigger sizes. To this end various routines choose between a simple loop and an unrolled loop according to operand size. The path to the simple loop, or to special case code for small sizes, is always as fast as possible. Adding a simple loop requires a conditional jump to choose between the simple and unrolled code. The size of a branch misprediction penalty affects whether a simple loop is worthwhile. The convention is for an m4 definition UNROLL_THRESHOLD to set the crossover point, with sizes < UNROLL_THRESHOLD using the simple loop, sizes >= UNROLL_THRESHOLD using the unrolled loop. If position independent code adds a couple of cycles to an unrolled loop setup, the threshold will vary with PIC or non-PIC. Something like the following is typical. deflit(UNROLL_THRESHOLD, ifdef(`PIC',10,8)) There's no automated way to determine the threshold. Setting it to a small value and then to a big value makes it possible to measure the simple and unrolled loops each over a range of sizes, from which the crossover point can be determined. Alternately, just adjust the threshold up or down until there's no more speedups. UNROLLED LOOP CODING The x86 addressing modes allow a byte displacement of -128 to +127, making it possible to access 256 bytes, which is 64 limbs, without adjusting pointer registers within the loop. Dword sized displacements can be used too, but they increase code size, and unrolling to 64 ought to be enough. When unrolling to the full 64 limbs/loop, the limb at the top of the loop will have a displacement of -128, so pointers have to have a corresponding +128 added before entering the loop. When unrolling to 32 limbs/loop displacements 0 to 127 can be used with 0 at the top of the loop and no adjustment needed to the pointers. Where 64 limbs/loop is supported, the +128 adjustment is done only when 64 limbs/loop is selected. Usually the gain in speed using 64 instead of 32 or 16 is small, so support for 64 limbs/loop is generally only for comparison. COMPUTED JUMPS When working from least significant limb to most significant limb (most routines) the computed jump and pointer calculations in preparation for an unrolled loop are as follows. S = operand size in limbs N = number of limbs per loop (UNROLL_COUNT) L = log2 of unrolling (UNROLL_LOG2) M = mask for unrolling (UNROLL_MASK) C = code bytes per limb in the loop B = bytes per limb (4 for x86) computed jump (-S & M) * C + entrypoint subtract from pointers (-S & M) * B initial loop counter (S-1) >> L displacements 0 to B*(N-1) The loop counter is decremented at the end of each loop, and the looping stops when the decrement takes the counter to -1. The displacements are for the addressing accessing each limb, eg. a load with "movl disp(%ebx), %eax". Usually the multiply by "C" can be handled without an imul, using instead an leal, or a shift and subtract. When working from most significant to least significant limb (eg. mpn_lshift and mpn_copyd), the calculations change as follows. add to pointers (-S & M) * B displacements 0 to -B*(N-1) OLD GAS 1.92.3 This version comes with FreeBSD 2.2.8 and has a couple of gremlins that affect GMP code. Firstly, an expression involving two forward references to labels comes out as zero. For example, addl $bar-foo, %eax foo: nop bar: This should lead to "addl $1, %eax", but it comes out as "addl $0, %eax". When only one forward reference is involved, it works correctly, as for example, foo: addl $bar-foo, %eax nop bar: Secondly, an expression involving two labels can't be used as the displacement for an leal. For example, foo: nop bar: leal bar-foo(%eax,%ebx,8), %ecx A slightly cryptic error is given, "Unimplemented segment type 0 in parse_operand". When only one label is used it's ok, and the label can be a forward reference too, as for example, leal foo(%eax,%ebx,8), %ecx nop foo: These problems only affect PIC computed jump calculations. The workarounds are just to do an leal without a displacement and then an addl, and to make sure the code is placed so that there's at most one forward reference in the addl. REFERENCES "Intel Architecture Software Developer's Manual", volumes 1, 2a, 2b, 3a, 3b, 2006, order numbers 253665 through 253669. Available on-line, ftp://download.intel.com/design/Pentium4/manuals/25366518.pdf ftp://download.intel.com/design/Pentium4/manuals/25366618.pdf ftp://download.intel.com/design/Pentium4/manuals/25366718.pdf ftp://download.intel.com/design/Pentium4/manuals/25366818.pdf ftp://download.intel.com/design/Pentium4/manuals/25366918.pdf "System V Application Binary Interface", Unix System Laboratories Inc, 1992, published by Prentice Hall, ISBN 0-13-880410-9. And the "Intel386 Processor Supplement", AT&T, 1991, ISBN 0-13-877689-X. These have details of calling conventions and ELF shared library PIC coding. Versions of both available on-line, http://www.sco.com/developer/devspecs "Intel386 Family Binary Compatibility Specification 2", Intel Corporation, published by McGraw-Hill, 1991, ISBN 0-07-031219-2. (Same as the above 386 ABI supplement.) ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/k6/README ======================================================================== Copyright 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. AMD K6 MPN SUBROUTINES This directory contains code optimized for AMD K6 CPUs, meaning K6, K6-2 and K6-3. The mmx subdirectory has MMX code suiting plain K6, the k62mmx subdirectory has MMX code suiting K6-2 and K6-3. All chips in the K6 family have MMX, the separate directories are just so that ./configure can omit them if the assembler doesn't support MMX. STATUS Times for the loops, with all code and data in L1 cache, are as follows. cycles/limb mpn_add_n/sub_n 3.25 normal, 2.75 in-place mpn_mul_1 6.25 mpn_add/submul_1 7.65-8.4 (varying with data values) mpn_mul_basecase 9.25 cycles/crossproduct (approx) mpn_sqr_basecase 4.7 cycles/crossproduct (approx) or 9.2 cycles/triangleproduct (approx) mpn_l/rshift 3.0 mpn_divrem_1 20.0 mpn_mod_1 20.0 mpn_divexact_by3 11.0 mpn_copyi 1.0 mpn_copyd 1.0 K6-2 and K6-3 have dual-issue MMX and get the following improvements. mpn_l/rshift 1.75 Prefetching of sources hasn't yet given any joy. With the 3DNow "prefetch" instruction, code seems to run slower, and with just "mov" loads it doesn't seem faster. Results so far are inconsistent. The K6 does a hardware prefetch of the second cache line in a sector, so the penalty for not prefetching in software is reduced. NOTES All K6 family chips have MMX, but only K6-2 and K6-3 have 3DNow. Plain K6 executes MMX instructions only in the X pipe, but K6-2 and K6-3 can execute them in both X and Y (and in both together). Branch misprediction penalty is 1 to 4 cycles (Optimization Manual chapter 6 table 12). Write-allocate L1 data cache means prefetching of destinations is unnecessary. Store queue is 7 entries of 64 bits each. Floating point multiplications can be done in parallel with integer multiplications, but there doesn't seem to be any way to make use of this. OPTIMIZATIONS Unrolled loops are used to reduce looping overhead. The unrolling is configurable up to 32 limbs/loop for most routines, up to 64 for some. Sometimes computed jumps into the unrolling are used to handle sizes not a multiple of the unrolling. An attractive feature of this is that times smoothly increase with operand size, but an indirect jump is about 6 cycles and the setups about another 6, so it depends on how much the unrolled code is faster than a simple loop as to whether a computed jump ought to be used. Position independent code is implemented using a call to get eip for computed jumps and a ret is always done, rather than an addl $4,%esp or a popl, so the CPU return address branch prediction stack stays synchronised with the actual stack in memory. Such a call however still costs 4 to 7 cycles. Branch prediction, in absence of any history, will guess forward jumps are not taken and backward jumps are taken. Where possible it's arranged that the less likely or less important case is under a taken forward jump. MMX Putting emms or femms as late as possible in a routine seems to be fastest. Perhaps an emms or femms stalls until all outstanding MMX instructions have completed, so putting it later gives them a chance to complete on their own, in parallel with other operations (like register popping). The Optimization Manual chapter 5 recommends using a femms on K6-2 and K6-3 at the start of a routine, in case it's been preceded by x87 floating point operations. This isn't done because in gmp programs it's expected that x87 floating point won't be much used and that chances are an mpn routine won't have been preceded by any x87 code. CODING Instructions in general code are shown paired if they can decode and execute together, meaning two short decode instructions with the second not depending on the first, only the first using the shifter, no more than one load, and no more than one store. K6 does some out of order execution so the pairings aren't essential, they just show what slots might be available. When decoding is the limiting factor things can be scheduled that might not execute until later. NOTES Code alignment - if an opcode/modrm or 0Fh/opcode/modrm crosses a cache line boundary, short decode is inhibited. The cross.pl script detects this. - loops and branch targets should be aligned to 16 bytes, or ensure at least 2 instructions before a 32 byte boundary. This makes use of the 16 byte cache in the BTB. Addressing modes - (%esi) degrades decoding from short to vector. 0(%esi) doesn't have this problem, and can be used as an equivalent, or easier is just to use a different register, like %ebx. - K6 and pre-CXT core K6-2 have the following problem. (K6-2 CXT and K6-3 have it fixed, these being cpuid function 1 signatures 0x588 to 0x58F). If more than 3 bytes are needed to determine instruction length then decoding degrades from direct to long, or from long to vector. This happens with forms like "0F opcode mod/rm" with mod/rm=00-xxx-100 since with mod=00 the sib determines whether there's a displacement. This affects all MMX and 3DNow instructions, and others with an 0F prefix, like movzbl. The modes affected are anything with an index and no displacement, or an index but no base, and this includes (%esp) which is really (,%esp,1). The cross.pl script detects problem cases. The workaround is to always use a displacement, and to do this with Zdisp if it's zero so the assembler doesn't discard it. See Optimization Manual rev D page 67 and 3DNow Porting Guide rev B pages 13-14 and 36-37. Calls - indirect jumps and calls are not branch predicted, they measure about 6 cycles. Various - adcl 2 cycles of decode, maybe 2 cycles executing in the X pipe - bsf 12-27 cycles - emms 5 cycles - femms 3 cycles - jecxz 2 cycles taken, 13 not taken (optimization manual says 7 not taken) - divl 20 cycles back-to-back - imull 2 decode, 3 execute - mull 2 decode, 3 execute (optimization manual decoding sample) - prefetch 2 cycles - rcll/rcrl implicit by one bit: 2 cycles immediate or %cl count: 11 + 2 per bit for dword 13 + 4 per bit for byte - setCC 2 cycles - xchgl %eax,reg 1.5 cycles, back-to-back (strange) reg,reg 2 cycles, back-to-back REFERENCES "AMD-K6 Processor Code Optimization Application Note", AMD publication number 21924, revision D amendment 0, January 2000. This describes K6-2 and K6-3. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/21924.pdf "AMD-K6 MMX Enhanced Processor x86 Code Optimization Application Note", AMD publication number 21828, revision A amendment 0, August 1997. This is an older edition of the above document, describing plain K6. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/21828.pdf "3DNow Technology Manual", AMD publication number 21928G/0-March 2000. This describes the femms and prefetch instructions, but nothing else from 3DNow has been used. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/21928.pdf "3DNow Instruction Porting Guide", AMD publication number 22621, revision B, August 1999. This has some notes on general K6 optimizations as well as 3DNow. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22621.pdf ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/k7/README ======================================================================== Copyright 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. AMD K7 MPN SUBROUTINES This directory contains code optimized for the AMD Athlon CPU. The mmx subdirectory has routines using MMX instructions. All Athlons have MMX, the separate directory is just so that configure can omit it if the assembler doesn't support MMX. STATUS Times for the loops, with all code and data in L1 cache. cycles/limb mpn_add/sub_n 1.6 mpn_copyi 0.75 or 1.0 \ varying with data alignment mpn_copyd 0.75 or 1.0 / mpn_divrem_1 17.0 integer part, 15.0 fractional part mpn_mod_1 17.0 mpn_divexact_by3 8.0 mpn_l/rshift 1.2 mpn_mul_1 3.4 mpn_addmul/submul_1 3.9 mpn_mul_basecase 4.42 cycles/crossproduct (approx) mpn_sqr_basecase 2.3 cycles/crossproduct (approx) or 4.55 cycles/triangleproduct (approx) Prefetching of sources hasn't yet been tried. NOTES cmov, MMX, 3DNow and some extensions to MMX and 3DNow are available. Write-allocate L1 data cache means prefetching of destinations is unnecessary. Floating point multiplications can be done in parallel with integer multiplications, but there doesn't seem to be any way to make use of this. Unsigned "mul"s can be issued every 3 cycles. This suggests 3 is a limit on the speed of the multiplication routines. The documentation shows mul executing in IEU0 (or maybe in IEU0 and IEU1 together), so it might be that, to get near 3 cycles code has to be arranged so that nothing else is issued to IEU0. A busy IEU0 could explain why some code takes 4 cycles and other apparently equivalent code takes 5. OPTIMIZATIONS Unrolled loops are used to reduce looping overhead. The unrolling is configurable up to 32 limbs/loop for most routines and up to 64 for some. The K7 has 64k L1 code cache so quite big unrolling is allowable. Computed jumps into the unrolling are used to handle sizes not a multiple of the unrolling. An attractive feature of this is that times increase smoothly with operand size, but it may be that some routines should just have simple loops to finish up, especially when PIC adds between 2 and 16 cycles to get %eip. Position independent code is implemented using a call to get %eip for the computed jumps and a ret is always done, rather than an addl $4,%esp or a popl, so the CPU return address branch prediction stack stays synchronised with the actual stack in memory. Branch prediction, in absence of any history, will guess forward jumps are not taken and backward jumps are taken. Where possible it's arranged that the less likely or less important case is under a taken forward jump. CODING Instructions in general code have been shown grouped if they can execute together, which means up to three direct-path instructions which have no successive dependencies. K7 always decodes three and has out-of-order execution, but the groupings show what slots might be available and what dependency chains exist. When there's vector-path instructions an effort is made to get triplets of direct-path instructions in between them, even if there's dependencies, since this maximizes decoding throughput and might save a cycle or two if decoding is the limiting factor. INSTRUCTIONS adcl direct divl 39 cycles back-to-back lodsl,etc vector loop 1 cycle vector (decl/jnz opens up one decode slot) movd reg vector movd mem direct mull issue every 3 cycles, latency 4 cycles low word, 6 cycles high word popl vector (use movl for more than one pop) pushl direct, will pair with a load shrdl %cl vector, 3 cycles, seems to be 3 decode too xorl r,r false read dependency recognised REFERENCES "AMD Athlon Processor X86 Code Optimization Guide", AMD publication number 22007, revision K, February 2002. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22007.pdf "3DNow Technology Manual", AMD publication number 21928G/0-March 2000. This describes the femms and prefetch instructions. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/21928.pdf "AMD Extensions to the 3DNow and MMX Instruction Sets Manual", AMD publication number 22466, revision D, March 2000. This describes instructions added in the Athlon processor, such as pswapd and the extra prefetch forms. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22466.pdf "3DNow Instruction Porting Guide", AMD publication number 22621, revision B, August 1999. This has some notes on general Athlon optimizations as well as 3DNow. Available on-line, http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/22621.pdf ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/p6/README ======================================================================== Copyright 2000, 2001 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. INTEL P6 MPN SUBROUTINES This directory contains code optimized for Intel P6 class CPUs, meaning PentiumPro, Pentium II and Pentium III. The mmx and p3mmx subdirectories have routines using MMX instructions. STATUS Times for the loops, with all code and data in L1 cache, are as follows. Some of these might be able to be improved. cycles/limb mpn_add_n/sub_n 3.7 mpn_copyi 0.75 mpn_copyd 1.75 (or 0.75 if no overlap) mpn_divrem_1 39.0 mpn_mod_1 21.5 mpn_divexact_by3 8.5 mpn_mul_1 5.5 mpn_addmul/submul_1 6.35 mpn_l/rshift 2.5 mpn_mul_basecase 8.2 cycles/crossproduct (approx) mpn_sqr_basecase 4.0 cycles/crossproduct (approx) or 7.75 cycles/triangleproduct (approx) Pentium II and III have MMX and get the following improvements. mpn_divrem_1 25.0 integer part, 17.5 fractional part mpn_l/rshift 1.75 NOTES Write-allocate L1 data cache means prefetching of destinations is unnecessary. Mispredicted branches have a penalty of between 9 and 15 cycles, and even up to 26 cycles depending how far speculative execution has gone. The 9 cycle minimum penalty comes from the issue pipeline being 9 stages. A copy with rep movs seems to copy 16 bytes at a time, since speeds for 4, 5, 6 or 7 limb operations are all the same. The 0.75 cycles/limb would be 3 cycles per 16 byte block. CODING Instructions in general code have been shown grouped if they can execute together, which means up to three instructions with no successive dependencies, and with only the first being a multiple micro-op. P6 has out-of-order execution, so the groupings are really only showing dependent paths where some shuffling might allow some latencies to be hidden. REFERENCES "Intel Architecture Optimization Reference Manual", 1999, revision 001 dated 02/99, order number 245127 (order number 730795-001 is in the document too). Available on-line: http://download.intel.com/design/PentiumII/manuals/245127.htm "Intel Architecture Optimization Manual", 1997, order number 242816. This is an older document mostly about P5 and not as good as the above. Available on-line: http://download.intel.com/design/PentiumII/manuals/242816.htm ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/pentium/README ======================================================================== Copyright 1996, 1999-2001, 2003 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. INTEL PENTIUM P5 MPN SUBROUTINES This directory contains mpn functions optimized for Intel Pentium (P5,P54) processors. The mmx subdirectory has additional code for Pentium with MMX (P55). STATUS cycles/limb mpn_add_n/sub_n 2.375 mpn_mul_1 12.0 mpn_add/submul_1 14.0 mpn_mul_basecase 14.2 cycles/crossproduct (approx) mpn_sqr_basecase 8 cycles/crossproduct (approx) or 15.5 cycles/triangleproduct (approx) mpn_l/rshift 5.375 normal (6.0 on P54) 1.875 special shift by 1 bit mpn_divrem_1 44.0 mpn_mod_1 28.0 mpn_divexact_by3 15.0 mpn_copyi/copyd 1.0 Pentium MMX gets the following improvements mpn_l/rshift 1.75 mpn_mul_1 12.0 normal, 7.0 for 16-bit multiplier mpn_add_n and mpn_sub_n run at asymptotically 2 cycles/limb. Due to loop overhead and other delays (cache refill?), they run at or near 2.5 cycles/limb. mpn_mul_1, mpn_addmul_1, mpn_submul_1 all run 1 cycle faster than they should. Intel documentation says a mul instruction is 10 cycles, but it measures 9 and the routines using it run as 9. P55 MMX AND X87 The cost of switching between MMX and x87 floating point on P55 is about 100 cycles (fld1/por/emms for instance). In order to avoid that the two aren't mixed and currently that means using MMX and not x87. MMX offers a big speedup for lshift and rshift, and a nice speedup for 16-bit multipliers in mpn_mul_1. If fast code using x87 is found then perhaps the preference for MMX will be reversed. P54 SHLDL mpn_lshift and mpn_rshift run at about 6 cycles/limb on P5 and P54, but the documentation indicates that they should take only 43/8 = 5.375 cycles/limb, or 5 cycles/limb asymptotically. The P55 runs them at the expected speed. It seems that on P54 a shldl or shrdl allows pairing in one following cycle, but not two. For example, back to back repetitions of the following shldl( %cl, %eax, %ebx) xorl %edx, %edx xorl %esi, %esi run at 5 cycles, as expected, but repetitions of the following run at 7 cycles, whereas 6 would be expected (and is achieved on P55), shldl( %cl, %eax, %ebx) xorl %edx, %edx xorl %esi, %esi xorl %edi, %edi xorl %ebp, %ebp Three xorls run at 7 cycles too, so it doesn't seem to be just that pairing inhibited is only in the second following cycle (or something like that). Avoiding this problem would bring P54 shifts down from 6.0 c/l to 5.5 with a pattern of shift, 2 loads, shift, 2 stores, shift, etc. A start has been made on something like that, but it's not yet complete. OTHER NOTES Prefetching Destinations Pentium doesn't allocate cache lines on writes, unlike most other modern processors. Since the functions in the mpn class do array writes, we have to handle allocating the destination cache lines by reading a word from it in the loops, to achieve the best performance. Prefetching Sources Prefetching of sources is pointless since there's no out-of-order loads. Any load instruction blocks until the line is brought to L1, so it may as well be the load that wants the data which blocks. Data Cache Bank Clashes Pairing of memory operations requires that the two issued operations refer to different cache banks (ie. different addresses modulo 32 bytes). The simplest way to ensure this is to read/write two words from the same object. If we make operations on different objects, they might or might not be to the same cache bank. PIC %eip Fetching A simple call $+5 and popl can be used to get %eip, there's no need to balance calls and returns since P5 doesn't have any return stack branch prediction. Float Multiplies fmul is pairable and can be issued every 2 cycles (with a 4 cycle latency for data ready to use). This is a lot better than integer mull or imull at 9 cycles non-pairing. Unfortunately the advantage is quickly eaten away by needing to throw data through memory back to the integer registers to adjust for fild and fist being signed, and to do things like propagating carry bits. REFERENCES "Intel Architecture Optimization Manual", 1997, order number 242816. This is mostly about P5, the parts about P6 aren't relevant. Available on-line: http://download.intel.com/design/PentiumII/manuals/242816.htm ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86/pentium4/README ======================================================================== Copyright 2001 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. INTEL PENTIUM-4 MPN SUBROUTINES This directory contains mpn functions optimized for Intel Pentium-4. The mmx subdirectory has routines using MMX instructions, the sse2 subdirectory has routines using SSE2 instructions. All P4s have these, the separate directories are just so configure can omit that code if the assembler doesn't support it. STATUS cycles/limb mpn_add_n/sub_n 4 normal, 6 in-place mpn_mul_1 4 normal, 6 in-place mpn_addmul_1 6 mpn_submul_1 7 mpn_mul_basecase 6 cycles/crossproduct (approx) mpn_sqr_basecase 3.5 cycles/crossproduct (approx) or 7.0 cycles/triangleproduct (approx) mpn_l/rshift 1.75 The shifts ought to be able to go at 1.5 c/l, but not much effort has been applied to them yet. In-place operations, and all addmul, submul, mul_basecase and sqr_basecase calls, suffer from pipeline anomalies associated with write combining and movd reads and writes to the same or nearby locations. The movq instructions do not trigger the same hardware problems. Unfortunately, using movq and splitting/combining seems to require too many extra instructions to help. Perhaps future chip steppings will be better. NOTES The Pentium-4 pipeline "Netburst", provides for quite a number of surprises. Many traditional x86 instructions run very slowly, requiring use of alterative instructions for acceptable performance. adcl and sbbl are quite slow at 8 cycles for reg->reg. paddq of 32-bits within a 64-bit mmx register seems better, though the combination paddq/psrlq when propagating a carry is still a 4 cycle latency. incl and decl should be avoided, instead use add $1 and sub $1. Apparently the carry flag is not separately renamed, so incl and decl depend on all previous flags-setting instructions. shll and shrl have a 4 cycle latency, or 8 times the latency of the fastest integer instructions (addl, subl, orl, andl, and some more). shldl and shrdl seem to have 13 and 15 cycles latency, respectively. Bizarre. movq mmx -> mmx does have 6 cycle latency, as noted in the documentation. pxor/por or similar combination at 2 cycles latency can be used instead. The movq however executes in the float unit, thereby saving MMX execution resources. With the right juggling, data moves shouldn't be on a dependent chain. L1 is write-through, but the write-combining sounds like it does enough to not require explicit destination prefetching. xmm registers so far haven't found a use, but not much effort has been expended. A configure test for whether the operating system knows fxsave/fxrestor will be needed if they're used. REFERENCES Intel Pentium-4 processor manuals, http://developer.intel.com/design/pentium4/manuals "Intel Pentium 4 Processor Optimization Reference Manual", Intel, 2001, order number 248966. Available on-line: http://developer.intel.com/design/pentium4/manuals/248966.htm ---------------- Local variables: mode: text fill-column: 76 End: ======================================================================== * texlive-20200406-source/libs/gmp/gmp-src/mpn/x86_64/README ======================================================================== Copyright 2003, 2004, 2006, 2008 Free Software Foundation, Inc. This file is part of the GNU MP Library. The GNU MP Library is free software; you can redistribute it and/or modify it under the terms of either: * the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. or * 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. or both in parallel, as here. The GNU MP Library 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 copies of the GNU General Public License and the GNU Lesser General Public License along with the GNU MP Library. If not, see https://www.gnu.org/licenses/. AMD64 MPN SUBROUTINES This directory contains mpn functions for AMD64 chips. It is also useful for 64-bit Pentiums, and "Core 2". RELEVANT OPTIMIZATION ISSUES The Opteron and Athlon64 can sustain up to 3 instructions per cycle, but in practice that is only possible for integer instructions. But almost any three integer instructions can issue simultaneously, including any 3 ALU operations, including shifts. Up to two memory operations can issue each cycle. Scheduling typically requires that load-use instructions are split into separate load and use instructions. That requires more decode resources, and it is rarely a win. Opteron/Athlon64 have deep out-of-order core. Optimizing for 64-bit Pentium4 is probably a waste of time, as the most critical instructions are very poorly implemented here. Perhaps we could save a cycle or two, but the most common loops now run at between 10 and 22 cycles, so a saved cycle isn't too exciting. The new spin of the venerable P6 core, the "Core 2" is much better than the Pentium4 for the GMP loops. Its integer pipeline is somewhat similar to to the Opteron/Athlon64 pipeline, except that the GMP favourites ADC/SBB and MUL are slower. Furthermore, an INC/DEC followed by ADC/SBB incur a pipeline stall of around 10 cycles. The default mpn_add_n and mpn_sub_n code suffers badly from the stall. The code in the core2 subdirectory uses the almost forgotten instruction JRCXZ for loop control, and updates the induction variable using LEA. REFERENCES "System V Application Binary Interface AMD64 Architecture Processor Supplement", draft version 0.99, December 2007. http://www.x86-64.org/documentation/abi.pdf ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/extra/uconv/README ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html Copyright (c) 2002, International Business Machines Corporation and others. All Rights Reserved. The uconv command is an iconv(1)-like conversion / transcoding program. Please check its manual page, or run uconv -h, for help. Help, as well as error messages, are displayed through the use of a resource bundle. Please contact Steven Loomis if you want to offer a translation of these messages for a particular locale. uconv was originally written and contributed to icuapps by Jonas Utterström , and offered simple conversion and a way to know which encodings were available. It has since then be moved to the main ICU distribution and converted to the C conversion API, and is maintained by Yves Arrouye who seems to always be looking for one more feature or option to add to the tool. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/break/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. break: Boundary Analysis This sample demonstrates Using ICU to determine the linguistic boundaries within text Files: break.cpp Main source file in C++ ubreak.c Main source file in C break.sln Windows MSVC workspace. Double-click this to get started. break.vcproj Windows MSVC project file To Build break on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\break\break.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the break directory, e.g. cd c:\icu\source\samples\break\debug 4. Run it (Warning: Be careful, 'break' is also a system command on many systems) .\break To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/break gmake ICU_PREFIX=/source/samples/break gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH break Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/cal/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. icucal: a sample program which displays the calendar. This sample demonstrates Formatting a calendar Outputting text in the default codepage to the console Files: cal.c Main source file uprint.h codepage output convenience header uprint.h codepage output convenience implementation cal.sln Windows MSVC workspace. Double-click this to get started. cal.vcproj Windows MSVC project file To Build icucal on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\cal\cal.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the cal directory, e.g. cd c:\icu\source\samples\cal\debug 4. Run it cal To Build on Unixes 1. Build ICU. icucal is built automatically by default unless samples are turned off. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install To Run on Unixes cd /source/samples/cal gmake check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH cal Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/case/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2003-2005, International Business Machines Corporation and others. All Rights Reserved. case: case mapping This sample demonstrates Using ICU to convert between different cases Files: case.cpp Main source file in C++ ucase.c Main source file in C case.sln Windows MSVC workspace. Double-click this to get started. case.vcproj Windows MSVC project file To Build case on Windows 1. Install and build ICU 2. In MSVC, open the solution file icu\samples\case\case.sln (or, use the workspace All, in icu\samples\all\all.sln ) 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the case directory, e.g. cd c:\icu\source\samples\case\debug 4. Run it case To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/case gmake ICU_PREFIX=/source/samples/case gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH case Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/citer/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2003-2010, International Business Machines Corporation and others. All Rights Reserved. citer: Character Iteration This sample demonstrates Demonstrating ICU's CharacterIterator Files: citer.cpp Main source file in C++ citer.sln Windows MSVC workspace. Double-click this to get started. citer.vcproj Windows MSVC project file To Build citer on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\citer\citer.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the citer directory, e.g. cd c:\icu\source\samples\citer\debug (note that it may be in a different relative directory than most of the other samples). 4. Run it citer To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/citer gmake ICU_PREFIX=/source/samples/citer gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH citer Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/coll/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. coll: a sample program which compares 2 strings with a user-defined collator. This sample demonstrates Creating a user-defined collator Comparing 2 string using the collator created Files: coll.c Main source file coll.sln Windows MSVC workspace. Double-click this to get started. coll.vcproj Windows MSVC project file To Build coll on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\coll\coll.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the coll directory, e.g. cd c:\icu\source\samples\coll\debug 4. Run it coll [options*] -source source_string -target target_string To Build on Unixes 1. Build ICU. coll is built automatically by default unless samples are turned off. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install To Run on Unixes cd /source/samples/coll gmake check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH cal Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/csdet/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2001-2010 International Business Machines Corporation and others. All Rights Reserved. uresb: Resource Bundle This sample demonstrates Using ICU's CharSet Detection API Files: csdet.c Main source file *.txt Various sample .txt files To Build uresb on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\uresb\uresb.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the uresb directory, e.g. cd c:\icu\source\samples\uresb\debug 4. Run it (with a locale name, ex. english) csdet eucJP.txt WARNING: The .txt files must be in the same directory as the executable, which is not the case by default on some systems. To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/uresb gmake ICU_PREFIX= To Run on Unixes cd /source/samples/uresb gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH csdet eucJP.txt Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/date/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. icudate: a sample program which displays the current date This sample demonstrates Formatting a date Outputting text in the default codepage to the console Files: date.c Main source file uprint.h codepage output convenience header uprint.h codepage output convenience implementation date.sln Windows MSVC workspace. Double-click this to get started. date.vcproj Windows MSVC project file To Build icudate on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\date\date.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the icudate directory, e.g. cd c:\icu\source\samples\date\debug 4. Run it (Warning: Be careful, 'date' is also a system command on many systems) .\date To Build on Unixes 1. Build ICU. icudate is built automatically by default unless samples are turned off. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install To Run on Unixes cd /source/samples/date gmake check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH date Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/datefmt/README.TXT ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. IMPORTANT: This sample was originally intended as an exercise for the ICU Workshop (September 2000). The code currently provided in the solution file is the answer to the exercises, each step can still be found in the 'answers' subdirectory. ** Workshop homepage is: http://www.icu-project.org/docs/workshop_2000/agenda.html #Date/Time/Number Formatting Support 9:30am - 10:30am Alan Liu Topics: 1. What is the date/time support in ICU? 2. What is the timezone support in ICU? 3. What kind of formatting and parsing support is available in ICU, i.e. NumberFormat, DateFormat, MessageFormat? INSTRUCTIONS ------------ This exercise was first developed and tested on ICU release 1.6.0, Win32, Microsoft Visual C++ 6.0. It should work on other ICU releases and other platforms as well. MSVC: Open the file "datefmt.sln" in Microsoft Visual C++. Unix: - Build and install ICU with a prefix, for example '--prefix=/home/srl/ICU' - Set the variable ICU_PREFIX=/home/srl/ICU and use GNU make in this directory. - You may use 'make check' to invoke this sample. PROBLEMS -------- Problem 0: Set up the program, build it, and run it. To start with, the program prints out a list of languages. Problem 1: Basic Date Formatting (Easy) Create a calendar, and use it to get the UDate for June 4, 1999, 0:00 GMT (or any date of your choosing). You will have to create a TimeZone (use the createZone() function already defined in main.cpp) and a Calendar object, and make the calendar use the time zone. Once you have the UDate, create a DateFormat object in each of the languages in the LANGUAGE array, and display the date in that language. Use the DateFormat::createDateInstance() method to create the date formatter. Problem 2: Date Formatting, Specific Time Zone (Medium) To really localize a time display, one can also specify the time zone in which the time should be displayed. For each language, also create different time zones from the TIMEZONE list. To format a date with a specific calendar and zone, you must deal with three objects: a DateFormat, a Calendar, and a TimeZone. Each object must be linked to another in correct sequence: The Calendar must use the TimeZone, and the DateFormat must use the Calendar. DateFormat =uses=> Calendar =uses=> TimeZone Use either setFoo() or adoptFoo() methods, depending on where you want to have ownership. NOTE: It's not always desirable to change the time to a local time zone before display. For instance, if some even occurs at 0:00 GMT on the first of the month, it's probably clearer to just state that. Stating that it occurs at 5:00 PM PDT on the day before in the summer, and 4:00 PM PST on the day before in the winter will just confuse the issue. NOTES ----- To see a list of system TimeZone IDs, use the TimeZone::create- AvailableIDs() methods. Alternatively, look at the file icu/docs/tz.htm. This has a hyperlinked list of current system zones. ANSWERS ------- The exercise includes answers. These are in the "answers" directory, and are numbered 1, 2, etc. If you get stuck and you want to move to the next step, copy the answers file into the main directory in order to proceed. E.g., "main_1.cpp" contains the original "main.cpp" file. "main_2.cpp" contains the "main.cpp" file after problem 1. Etc. Have fun! ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/legacy/README ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002, International Business Machines Corporation and others. All Rights Reserved. This example demonstrates running an instance of ICU 1.8.1. together with a current version of ICU. It only tests u_getVersion and several collation APIs. Generally, one should be able to simultaneously use one or more versions of ICU 2.0 or higher and one version of ICU 1.8.1 or lower. What is it all about: Let's say you have a 10 Tb database indexed using ICU 1.8.1. sortkeys. New ICU comes out, with neat new features you would like to use, but also with new sortkeys and you don't care to reindex your 10 Tb database. What to do then??? You can use ICU 1.8.1. in one of your compilation units and current version in all the others. So, you can use old collation until you decide to reindex. You cannot mix two versions of ICU in the same compilation unit. You cannot automatically use more than one legacy version of ICU. In order to make the compilation unit use old version of ICU, you have to do a couple of things: 1) change it's include path so that it includes header files from the old versions 2) explicitly add old libraries to the linker. 3) make sure old data can be found (if legacy code needs data). Building and running of the example: Linux: To make it work, you should build and install both the current ICU and ICU 1.8.1. Put both data libraries to wherever ICU_DATA points (usually it is $(prefix)/share/icu/$(icu_version)/). If data libraries are used, then check for $(prefix)/lib/icu/1.8.1 which should contain libicudata.so and libicudt18*.so 2. Copy libicuuc.so.18* and libicui18n.so.18* to $(prefix)/lib directory, together with current libraries). 3. Should work on other Unixes. Change $ICU_PREFIX to point to the current installation, and $ICU_LEGACY to point to 1.8.1 installation. $ICU_LEGACY is needed solely to access the 1.8.1 include directory through $LEGACY_INCLUDE variable, so if you want to move the 1.8.1. include directory, you can set $LEGACY_INCLUDE directly to that directory. Run make check. You should get two different libraries running at the same time. Win32: Build both current ICU and ICU 1.8.1. Take icuuc18.dll, icuin18.dll and icudt18l.dll and put them somewhere in PATH (a sane place would be wherever current dlls go). Edit the include directory for oldcol.cpp so that it points to the include directory of ICU 1.8.1. Edit the two library entries with path so that they point to .lib files for your version of ICU. Hit F7, followed by ctrl-F5. Troubleshooting (all platforms): Sample won't compile: this is quite unlikely, but the most probable reason is that include files cannot be found. Sample won't link: The path for 1.8.1. libraries is broken. Edit it so that it reflects the path to your libraries. Linker says: "Undefined symbol u_getVersion()" (or something similar): path to 1.8.1. libraries is bad. Linker says: "Undefined symbol u_getVersion()_X_Y" (or something similar): path to current libraries is bad. Legacy crashes horribly: Sorry, didn't put any error checking. If legacy crashes that's most probably because it cannot find the data libraries. You can see which data library is not found by the part of the program that is running. Make sure program can find tha data library either by putting it where ever ICU_DATA points to OR by putting the DLL version of the data library somewhere on your PATH. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/msgfmt/README.TXT ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. IMPORTANT: This sample was originally intended as an exercise for the ICU Workshop (September 2000). The code currently provided in the solution file is the answer to the exercises, each step can still be found in the 'answers' subdirectory. http://www.icu-project.org/docs/workshop_2000/agenda.html Day 2: September 12th 2000 Pre-requisites: 1. All the hardware and software requirements from Day 1. 2. Attended or fully understand Day 1 material. 3. Read through the ICU user's guide at http://www.icu-project.org/userguide/. #Date/Time/Number Formatting Support 9:30am - 10:30am Alan Liu Topics: 1. What is the date/time support in ICU? 2. What is the timezone support in ICU? 3. What kind of formatting and parsing support is available in ICU, i.e. NumberFormat, DateFormat, MessageFormat? INSTRUCTIONS ------------ This exercise was first developed and tested on ICU release 1.6.0, Win32, Microsoft Visual C++ 6.0. It should work on other ICU releases and other platforms as well. MSVC: Open the file "msgfmt.sln" in Microsoft Visual C++. Unix: - Build and install ICU with a prefix, for example '--prefix=/home/srl/ICU' - Set the variable ICU_PREFIX=/home/srl/ICU and use GNU make in this directory. - You may use 'make check' to invoke this sample. PROBLEMS -------- Problem 0: Set up the program, build it, and run it. To start with, the program prints out the word "Message". Problem 1: Basic Message Formatting (Easy) Use a MessageFormat to create a message that prints out "Received argument(s) on .", where n is the number of command line arguments (use argc-1), and d is the date (use Calendar::getNow()). HINT: Your message pattern should have a "number" element and a "date" element, and you will need to use Formattable. Problem 2: ChoiceFormat (Medium) We can do better than "argument(s)". Instead, we can display more idiomatic strings, such as "no arguments", "one argument", "two arguments", and for higher values, we can use a number format. This kind of value-based switching is done using a ChoiceFormat. However, you seldom needs to create a ChoiceFormat by itself. Instead, most of the time you will supply the ChoiceFormat pattern within a MessageFormat pattern. Use a ChoiceFormat pattern within the MessageFormat pattern, instead of the "number" element, to display more idiomatic strings. EXTRA: Embed a number element within the choice element to handle values greater than two. ANSWERS ------- The exercise includes answers. These are in the "answers" directory, and are numbered 1, 2, etc. If you get stuck and you want to move to the next step, copy the answers file into the main directory in order to proceed. E.g., "main_1.cpp" contains the original "main.cpp" file. "main_2.cpp" contains the "main.cpp" file after problem 1. Etc. Have fun! ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/numfmt/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. numfmt: a sample program which displays number formatting in C and C++ This sample demonstrates Formatting a number Outputting text in the default codepage to the console Files: main.cpp Main source file in C++ capi.c C version util.cpp formatted output convenience implementation util.h formatted output convenience header numfmt.sln Windows MSVC workspace. Double-click this to get started. numfmt.vcproj Windows MSVC project file To Build on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\numfmt\numfmt.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the numfmt directory, e.g. cd c:\icu\source\samples\numfmt\debug 4. Run it numfmt To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/numfmt gmake ICU_PREFIX=/source/samples/numfmt gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH numfmt Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/props/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. props: Unicode Character Properties This sample demonstrates Using ICU to determine the properties of Unicode characters Files: props.cpp Main source file in C++ props.sln Windows MSVC workspace. Double-click this to get started. props.vcproj Windows MSVC project file To Build props on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\props\props.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the props directory, e.g. cd c:\icu\source\samples\props\debug 4. Run it props To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/props gmake ICU_PREFIX=/source/samples/props gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH props Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/readme.txt ======================================================================== ## Copyright (C) 2016 and later: Unicode, Inc. and others. ## License & terms of use: http://www.unicode.org/copyright.html#License ## ## Copyright (c) 2002-2010, International Business Machines Corporation ## and others. All Rights Reserved. This directory contains sample code Below is a short description of the contents of this directory. break - demonstrates how to use BreakIterators in C and C++. cal - prints out a calendar. case - demonstrates how to do Unicode case conversion in C and C++. csdet - demonstrates using ICU's CharSet Detection API date - prints out the current date, localized. datefmt - an exercise using the date formatting API layout - demonstrates the ICU LayoutEngine legacy - demonstrates using two versions of ICU in one application msgfmt - demonstrates the use of the Message Format numfmt - demonstrates the use of the number format props - demonstrates the use of Unicode properties strsrch - demonstrates how to search for patterns in Unicode text using the usearch interface. translit - demonstrates the use of ICU transliteration uciter8.c - demonstrates how to leniently read 8-bit Unicode text. ucnv - demonstrates the use of ICU codepage conversion udata - demonstrates the use of ICU low level data routines (reader/writer in 'all' MSVC solution) ufortune - demonstrates packaging and use of resources in an application ugrep - demonstrates ICU Regular Expressions. uresb - demonstrates building and loading resource bundles ustring - demonstrates ICU string manipulation functions == * Where can I find more sample code? - The "uconv" utility is a full-featured command line application. It is normally built with ICU, and is located in icu/source/extra/uconv - The "icuapps" CVS module contains other applications and libraries not included with ICU. You can check it out from the CVS command line by using for example, "cvs co icuapps" instead of "cvs co icu", or through WebCVS at http://dev.icu-project.org/cgi-bin/viewcvs.cgi/icuapps/ == * How do I build the samples? - See the Readme in each subdirectory To build all samples at once: Windows MSVC: - build ICU - open 'all' project file in 'all' subdirectory - build project - sample executables will be located in /x86/Debug folders of each sample subdirectory Unix: - build and install (make install) ICU - be sure 'icu-config' is accessible from the PATH - type 'make all-samples' from this directory (other targets: clean-samples, check-samples) Note: 'make all-samples' won't work correctly in out of source builds. - legacy and layout are not included in these lists, please see their individual readmes. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/strsrch/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. strsrch: a sample program which finds the occurrences of a pattern string in a source string, using user-defined collation rules. This sample demonstrates Creating a user-defined string search mechanism. Finding all occurrences of a pattern string in a given source string. Files: strsrch.c Main source file strsrch.sln Windows MSVC workspace. Double-click this to get started. strsrch.vcproj Windows MSVC project file To Build strsrch on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\strsrch\strsrch.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the strsrch directory, e.g. cd c:\icu\source\samples\strsrch\debug 4. Run it strsrch [options*] -source source_string -pattern pattern_string To Build on Unixes 1. Build ICU. strsrch is built automatically by default unless samples are turned off. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install To Run on Unixes cd /source/samples/strsrch gmake check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH cal Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/translit/README.TXT ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. IMPORTANT: This sample was originally intended as an exercise for the ICU Workshop (September 2000). The code currently provided in the solution file is the answer to the exercises, each step can still be found in the 'answers' subdirectory. http://www.icu-project.org/docs/workshop_2000/agenda.html Day 2: September 12th 2000 Pre-requisite: 1. All the hardware and software requirements from Day 1. 2. Attended or fully understand Day 1 material. 3. Read through the ICU user's guide at http://www.icu-project.org/userguide/. #Transformation Support 10:45am - 12:00pm Alan Liu Topics: 1. What is the Unicode normalization? 2. What kind of case mapping support is available in ICU? 3. What is Transliteration and how do I use a Transliterator on a document? 4. How do I add my own Transliterator? INSTRUCTIONS ------------ This exercise was developed and tested on ICU release 1.6.0, Win32, Microsoft Visual C++ 6.0. It should work on other ICU releases and other platforms as well. MSVC: Open the file "translit.sln" in Microsoft Visual C++. Unix: - Build and install ICU with a prefix, for example '--prefix=/home/srl/ICU' - Set the variable ICU_PREFIX=/home/srl/ICU and use GNU make in this directory. - You may use 'make check' to invoke this sample. PROBLEMS -------- Problem 0: To start with, the program prints out a series of dates formatted in Greek. Set up the program, build it, and run it. Problem 1: Basic Transliterator (Easy) The Greek text shows up almost entirely as Unicode escapes. These are unreadable on a US machine. Use an existing system transliterator to transliterate the Greek text to Latin so it can be phonetically read on a US machine. If you don't know the names of the system transliterators, use Transliterator::getAvailableID() and Transliterator::countAvailableIDs(), or look directly in the index table icu/data/translit_index.txt. Problem 2: RuleBasedTransliterator (Medium) Some of the text is still unreadable and shows up as Unicode escape sequences. Create a RuleBasedTransliterator to change the unreadable characters to close ASCII equivalents. For example, the rule "\u00C0 > A;" will change an 'A' with a grave accent to a plain 'A'. To save typing, use UnicodeSets to handle ranges of characters. See the included file "U0080.pdf" for a table of the U+00C0 to U+00FF Unicode block. Problem 3: Transliterator subclassing; Normalizer (Difficult) The rule-based approach is flexible and, in most cases, the best choice for creating a new transliterator. Sometimes, however, a more elegant algorithmic solution is available. Instead of typing in a list of rules, you can write C++ code to accomplish the desired transliteration. Use a Normalizer to remove accents from characters. You will need to convert each character to a sequence of base and combining characters by applying a canonical denormalization transformation. Then discard the combining characters (the accents etc.) leaving the base character. Wrap this all up in a subclass of the Transliterator class that overrides the pure virtual handleTransliterate() method. ANSWERS ------- The exercise includes answers. These are in the "answers" directory, and are numbered 1, 2, etc. In some cases new files that the user needs to create are included in the answers directory. If you get stuck and you want to move to the next step, copy the answers file into the main directory in order to proceed. E.g., "main_1.cpp" contains the original "main.cpp" file. "main_2.cpp" contains the "main.cpp" file after problem 1. Etc. Have fun! ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/uciter8/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2003-2005, International Business Machines Corporation and others. All Rights Reserved. uciter8: Lenient reading of 8-bit Unicode with a UCharIterator This sample demonstrates reading 8-bit Unicode text leniently, accepting a mix of UTF-8 and CESU-8 and also accepting single surrogates. UTF-8-style macros are defined as well as a UCharIterator. The macros are incomplete (do not assemble code points from pairs of surrogates) but sufficient for the iterator. If you wish to use the lenient-UTF/CESU-8 UCharIterator in a context outside of this sample, then copy the uit_len8.c file, as well as either the uit_len8.h header or just the prototype that it contains. *** Warning: *** This UCharIterator reads an arbitrary mix of UTF-8 and CESU-8 text. It does not conform to any one Unicode charset specification, and its use may lead to security risks. Files: uciter8.c Main source file in C uit_len8.c Lenient-UTF/CESU-8 UCharIterator implementation uit_len8.h Header file with the prototoype for the lenient-UTF/CESU-8 UCharIterator uciter8.sln Windows MSVC workspace. Double-click this to get started. uciter8.vcproj Windows MSVC project file To Build uciter8 on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\uciter8\uciter8.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the uciter8 directory, e.g. cd c:\icu\source\samples\uciter8\debug 4. Run it uciter8 To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/uciter8 gmake ICU_PREFIX=/source/samples/uciter8 gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH uciter8 Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/ucnv/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (C) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. convsamp: a sample program which demonstrates using ICU conversion This sample demonstrates Opening and closing converters using the C api String manipulation in C Writing a custom conversion callback function Files: convsamp.c Main source file flagcb.h codepage output convenience header flagcb.c codepage output convenience implementation ucnv.sln Windows MSVC workspace. Double-click this to get started. ucnv.vcproj Windows MSVC project file To Build ucnv on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\ucnv\ucnv.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the ufortune directory, e.g. cd c:\icu\source\samples\ucnv\debug 4. Run it ucnv WARNING: The .bin and .txt files must be in the same directory as the executable, which is not the case by default on some systems. To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Build set the variable ICU_PREFIX= gmake all To Run on Unixes cd /source/samples/ucnv gmake check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH convsamp Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/udata/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2010, International Business Machines Corporation and others. All Rights Reserved. udata: Low level ICU data This sample demonstrates Using the low level ICU data handling interfaces (udata) to create and later access user data. Files: writer.c C source for Writer application, will generate data file to be read by Reader. reader.c C source for Reader application, will read file created by Writer udata.sln Windows MSVC workspace. Double-click this to get started. udata.vcproj Windows MSVC project file To Build udata on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\udata\udata.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the udata directory, e.g. cd c:\icu\source\samples\udata\debug 4. Run it writer reader IMPORTANT: On some systems, the reader and writer executables may not be in the same directory. If this is the case, this will likely cause a problem with reader looking for the .dat file in the wrong directory). To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile You will need to set ICU_PATH to the location of your ICU source tree, for example ICU_PATH=/home/srl/icu (containing source, etc.) cd /source/samples/udata gmake ICU_PATH= ICU_PREFIX=/source/samples/udata gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH writer reader Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/ufortune/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. ufortune: a sample program demonstrating the use of ICU resource files by an application. This sample demonstrates Defining resources for use by an application Compiling and packaging them into a dll Referencing the resource-containing dll from application code Loading resource data using ICU's API Files: ./ufortune.c source code for the sample ./ufortune.sln Windows MSVC workspace. Double-click this to get started. ./ufortune.vcproj Windows MSVC project file. ./Makefile Makefile for Unixes. Needs gmake. resources/root.txt Default resources (text for messages in English) resources/es.txt Spanish language resources source file.. resources/res-file-list.txt List of resource source files to be built resources/Makefile Makefile for compiling resources, for Unixes. To Build ufortune on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\ufortune\ufortune.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the ufortune directory, e.g. cd c:\icu\source\samples\ufortune\debug 4. Run it ufortune To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Build the sample cd /source/samples/ufortune export ICU_PREFIX= gmake To Run on Unixes cd /source/samples/ufortune gmake check or export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH ufortune Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/ugrep/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. ugrep: a sample program demonstrating the use of ICU regular expression API. usage: ugrep [options] pattern [file ...] --help Output a brief help message -n, --line-number Prefix each line of output with the line number within its input file. -V, --version Output the program version number The program searches for the specified regular expression in each of the specified files, and outputs each matching line. Input files are in the system default (locale dependent) encoding, unless they begin with a BOM, in which case they are assumed to be in the UTF encoding specified by the BOM. Program output is always in the system's default 8 bit code page. Files: ./ugrep.c source code for the sample ./ugrep.sln Windows MSVC workspace. Double-click this to get started. ./ugrep.vcproj Windows MSVC project file. ./Makefile Makefile for Unixes. Needs gmake. To Build ugrep on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\ugrep\ugrep.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the ugrep directory, e.g. cd c:\icu\source\samples\ugrep\debug 4. Run it ugrep ... To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Build the sample Put the install directory containing icu-config on the $PATH. This will generally be /bin cd /source/samples/ugrep gmake To Run on Unixes cd /source/samples/ugrep export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH ugrep ... Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/uresb/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2001-2010 International Business Machines Corporation and others. All Rights Reserved. uresb: Resource Bundle This sample demonstrates Building a resource bundle Using ICU to print data from a resource bundle Files: uresb.c Main source file in C uresb.sln Windows MSVC workspace. Double-click this to get started. uresb.vcproj Windows MSVC project file resources.dsp Windows project file for resources resources.mak Windows makefile for resources root.txt Root resource bundle en.txt English translation sr.txt Serbian translation (cp1251) To Build uresb on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\uresb\uresb.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the uresb directory, e.g. cd c:\icu\source\samples\uresb\debug 4. Run it (with a locale name, ex. english) uresb en WARNING: The .txt files must be in the same directory as the executable, which is not the case by default on some systems. To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/uresb gmake ICU_PREFIX= To Run on Unixes cd /source/samples/uresb gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH uresb Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/samples/ustring/readme.txt ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html#License Copyright (c) 2002-2005, International Business Machines Corporation and others. All Rights Reserved. ustring: Unicode String Manipulation This sample demonstrates Using ICU to manipulate UnicodeString objects Files: ustring.cpp Main source file in C++ ustring.sln Windows MSVC workspace. Double-click this to get started. ustring.vcproj Windows MSVC project file To Build ustring on Windows 1. Install and build ICU 2. In MSVC, open the workspace file icu\samples\ustring\ustring.sln 3. Choose a Debug or Release build. 4. Build. To Run on Windows 1. Start a command shell window 2. Add ICU's bin directory to the path, e.g. set PATH=c:\icu\bin;%PATH% (Use the path to where ever ICU is on your system.) 3. cd into the ustring directory, e.g. cd c:\icu\source\samples\ustring\debug 4. Run it ustring To Build on Unixes 1. Build ICU. Specify an ICU install directory when running configure, using the --prefix option. The steps to build ICU will look something like this: cd /source runConfigureICU --prefix [other options] gmake all 2. Install ICU, gmake install 3. Compile cd /source/samples/ustring gmake ICU_PREFIX=/source/samples/ustring gmake ICU_PREFIX= check -or- export LD_LIBRARY_PATH=/lib:.:$LD_LIBRARY_PATH ustring Note: The name of the LD_LIBRARY_PATH variable is different on some systems. If in doubt, run the sample using "gmake check", and note the name of the variable that is used there. LD_LIBRARY_PATH is the correct name for Linux and Solaris. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/tools/gencolusb/README.md ======================================================================== Unsafe-Backward Collator Data === This directory contains tools to build the `source/i18n/collunsafe.h` precomputed data. See [Makefile](./Makefile) for more details. * Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html * Copyright (c) 2015, International Business Machines Corporation and others. All Rights Reserved. ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/tools/genren/README ======================================================================== Copyright (C) 2016 and later: Unicode, Inc. and others. License & terms of use: http://www.unicode.org/copyright.html Copyright (c) 2002-2011, International Business Machines Corporation and others. All Rights Reserved. The genren.pl script is used to generate source/common/unicode/urename.h header file, which is needed for renaming the ICU exported names. This script is intended to be used on Linux, although it should work on any platform that has Perl and nm command. Makefile may need to be updated, it's not 100% portable. It also does not currently work well in an out-of-source situation. The following instructions are for Linux version. - urename.h file should be generated after implementation is complete for a release. - the version number for a release should be set according to the list in source/common/unicode/uvernum.h - Note: If you are running the script in a clean checkout, you must run the runConfigureICU at least once before running the make install-header command below. Before generating urename.h, the layout engine header files must be installed from the harfbuzz project. This is prerequisite for the icu layoutex (Paragraph Layout) project, which is subject to renaming. (Using the svn command is the simplest way of getting just the files from one subdirectory of the git project.) cd icu4c/source svn export https://github.com/behdad/icu-le-hb/trunk/src layout - Regenerate urename.h cd icu4c/source/tools/genren make install-header - urename.h will be updated in icu/source/common/unicode/urename.h **in your original source directory** - Warnings concerning bad namespace (not 'icu') on UCaseMap can be ignored. - The defines for "__bss_start", "_edata", and "_end" should be ignored/removed (See ICU-20176). - Eyeball the new file for errors cd icu4c/source git diff common/unicode/urename.h - Other make targets here clean - cleans out intermediate files urename.h -just builds ./urename.h ======================================================================== * texlive-20200406-source/libs/icu/icu-src/source/tools/tzcode/readme.txt ======================================================================== * Copyright (C) 2016 and later: Unicode, Inc. and others. * License & terms of use: http://www.unicode.org/copyright.html ********************************************************************** * Copyright (c) 2003-2014, International Business Machines * Corporation and others. All Rights Reserved. ********************************************************************** * Author: Alan Liu * Created: August 18 2003 * Since: ICU 2.8 ********************************************************************** Note: this directory currently contains tzcode as of tzcode2014b.tar.gz with localtime.c patches from tzcode2014b.tar.gz ---------------------------------------------------------------------- OVERVIEW This file describes the tools in icu/source/tools/tzcode The purpose of these tools is to process the zoneinfo or "Olson" time zone database into a form usable by ICU4C (release 2.8 and later). Unlike earlier releases, ICU4C 2.8 supports historical time zone behavior, as well as the full set of Olson compatibility IDs. References: ICU4C: http://www.icu-project.org/ Olson: ftp://ftp.iana.org/tz/releases/ ---------------------------------------------------------------------- ICU4C vs. ICU4J For ICU releases >= 2.8, both ICU4C and ICU4J implement full historical time zones, based on Olson data. The implementations in C and Java are somewhat different. The C implementation is a self-contained implementation, whereas ICU4J uses the underlying JDK 1.3 or 1.4 time zone implementation. Older versions of ICU (C and Java <= 2.6) implement a "present day snapshot". This only reflects current time zone behavior, without historical variation. Furthermore, it lacks the full set of Olson compatibility IDs. ---------------------------------------------------------------------- BACKGROUND The zoneinfo or "Olson" time zone package is used by various systems to describe the behavior of time zones. The package consists of several parts. E.g.: Index of ftp://ftp.iana.org/tz/releases/ tzcode2014b.tar.gz 172 KB 3/25/2014 05:11:00 AM tzdata2014b.tar.gz 216 KB 3/25/2014 05:11:00 AM ICU only uses the tzdataYYYYV.tar.gz files, where YYYY is the year and V is the version letter ('a'...'z'). This directory has partial contents of tzcode checked into ICU ---------------------------------------------------------------------- HOWTO 0. Note, these instructions will only work on POSIX type systems. 1. Obtain the current versions of tzdataYYYYV.tar.gz (aka `tzdata') from the FTP site given above. Either manually download or use wget: $ cd {path_to}/icu/source/tools/tzcode $ wget "ftp://ftp.iana.org/tz/releases/tzdata*.tar.gz" 2. Copy only one tzdata*.tar.gz file into the icu/source/tools/tzcode/ directory (this directory). *** Make sure you only have ONE FILE named tzdata*.tar.gz in the directory. 3. Build ICU normally. You will see a notice "updating zoneinfo.txt..." ### Following instructions for ICU maintainers only ### 4. Obtain the current version of tzcodeYYYY.tar.gz from the FTP site to this directory. 5. Run make target "check-dump". This target extract makes the original tzcode and compile the original tzdata with icu supplemental data (icuzones). Then it makes zdump / icuzdump and dump all time transitions for all ICU timezone to files under zdumpout / icuzdumpout directory. When they produce different results, the target returns the error. 6. Don't forget to check in the new zoneinfo64.txt (from its location at {path_to}/icu/source/data/misc/zoneinfo64.txt) into SVN. ======================================================================== * texlive-20200406-source/libs/libpaper/libpaper-src/README ======================================================================== The paper library and accompanying files are intended to provide a simple way for applications to take actions based on a system- or user-specified paper size. This release is quite minimal, its purpose being to provide really basic functions (obtaining the system paper name and getting the height and width of a given kond of paper) that applications can immediately integrate. A more complete library, using a capabilities file for papers (giving, in addition to the size, informations like paper weigth, color, etc) will be released later. See the sources for paperconf(1) in src/paper.c for how to use the library. Adding new paper sizes ====================== If a paper format is missing, one need to add it to lib/paperspecs. The format of this file is one paper format per line, with the name of the format, the width and height of the format separated with space. You may add an option measurement unit among in, ft, pt, m, dm, cm, mm or you may leave the default unit of "point". By defaults the width and height are specified in the "point" unit, which is 1/72 inch (2.54 cm). This is the A4 entry: a4 210 297 mm that was previously written as a4 595 842 The sizes here are 595 points / 72 points pr inch * 2.54 cm per inch = 20.99 cm and 842/72*2.54 = 29.70 cm. The A4 format is 210x297 mm so this is a good approximation. (Source: ) Copyright (C) Yves Arrouye , 1996 Adrian Bunk , 2000 ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/AUTHORS ======================================================================== PNG REFERENCE LIBRARY AUTHORS ============================= This is the list of PNG Reference Library ("libpng") Contributing Authors, for copyright and licensing purposes. * Andreas Dilger * Cosmin Truta * Dave Martindale * Eric S. Raymond * Gilles Vollant * Glenn Randers-Pehrson * Greg Roelofs * Guy Eric Schalnat * James Yu * John Bowler * Kevin Bracey * Magnus Holmgren * Mandar Sahastrabuddhe * Mans Rullgard * Matt Sarett * Mike Klein * Paul Schmidt * Sam Bushell * Samuel Williams * Simon-Pierre Cadieux * Tim Wegner * Tom Lane * Tom Tanner * Vadim Barkov * Willem van Schaik * Zhijie Liang * Arm Holdings - Richard Townsend * Google Inc. - Matt Sarett - Mike Klein The build projects, the build scripts, the test scripts, and other files in the "projects", "scripts" and "tests" directories, have other copyright owners, but are released under the libpng license. Some files in the "contrib" directory, and some tools-generated files that are distributed with libpng, have other copyright owners, and are released under other open source licenses. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/oss-fuzz/README.txt ======================================================================== Last changed in libpng 1.6.33 [September 28, 2017] Copyright (c) 2017 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h Files in this directory are used by the oss-fuzz project (https://github.com/google/oss-fuzz/tree/master/projects/libpng). for "fuzzing" libpng. They were licensed by Google Inc, using the BSD-like Chromium license, which may be found at https://cs.chromium.org/chromium/src/LICENSE, or, if noted in the source, under the Apache-2.0 license, which may be found at http://www.apache.org/licenses/LICENSE-2.0 . If they have been modified, the derivatives are copyright Glenn Randers-Pehrson and are released under the same licenses as the originals. Several of the original files (libpng_read_fuzzer.options, png.dict, project.yaml) had no licensing information; we assumed that these were under the Chromium license. Any new files are released under the libpng license (see png.h). The files are Original Filename or derived Copyright License ========================= ========== ================ ========== Dockerfile* derived 2017, Glenn R-P Apache 2.0 build.sh derived 2017, Glenn R-P Apache 2.0 libpng_read_fuzzer.cc derived 2017, Glenn R-P Chromium libpng_read_fuzzer.options original 2015, Chrome Devs Chromium png.dict original 2015, Chrome Devs Chromium README.txt (this file) original 2017, Glenn R-P libpng * Dockerfile is a copy of the file used by oss-fuzz. build.sh, png.dict and libpng_read_fuzzer.* are the actual files used by oss-fuzz, which retrieves them from the libpng repository at Github. To do: exercise the progressive reader and the png encoder. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/pngminus/README.txt ======================================================================== PngMinus -------- (copyright Willem van Schaik, 1999-2019) Some history ------------ Soon after the creation of PNG in 1995, the need was felt for a set of pnmtopng / pngtopnm utilities. Independently Alexander Lehmann and I (Willem van Schaik) started such a project. Luckily we discovered this and merged the two, which later became part of NetPBM, available from SourceForge. These two utilities have many, many options and make use of most of the features of PNG, like gamma, alpha, sbit, text-chunks, etc. This makes the utilities quite complex and by now not anymore very maintainable. When we wrote these programs, libpng was still in an early stage. Therefore, lots of the functionality that we put in our software can now be done using transform-functions in libpng. Finally, to compile these programs, you need to have installed and compiled three libraries: libpng, zlib and netpbm. Especially the latter makes the whole setup a bit bulky. But that's unavoidable given the many features of pnmtopng. What now (1999) --------------- At this moment libpng is in a very stable state and can do much of the work done in pnmtopng. Also, pnmtopng needs to be upgraded to the new interface of libpng. Hence, it is time for a rewrite from the ground up of pnmtopng and pngtopnm. This will happen in the near future (stay tuned). The new package will get a different name to distinguish it from the old one: PngPlus. To experiment a bit with the new interface of libpng, I started off with a small prototype that contains only the basic functionality. It doesn't have any of the options to read or write special chunks and it will do no gamma correction. But this makes it also a simple program that is quite easy to understand and can serve well as a template for other software developments. By now there are of course a couple of programs, like Greg Roelofs' rpng/wpng, that can be used just as good. Can and can not --------------- As this is the small brother of the future PngPlus, I called this fellow PngMinus. Because I started this development in good-old Turbo-C, I avoided the use the netpbm library, which requires DOS extenders. Again, another reason to call it PngMinus (minus netpbm :-). So, part of the program are some elementary routines to read / write pgm- and ppm-files. It does not handle B&W pbm-files, but instead you could do pgm with bit- depth 1. The downside of this approach is that you can not use them on images that require blocks of memory bigger than 64k (the DOS version). For larger images you will get an out-of-memory error. As said before, PngMinus doesn't correct for gamma. When reading png-files you can do this just as well by piping the output of png2pnm to pnmgamma, one of the standard PbmPlus tools. This same scenario will most probably also be followed in the full-blown future PngPlus, with the addition of course of the possibility to create gamma-chunks when writing png-files. On the other hand it supports alpha-channels. When reading a png-image you can write the alpha-channel into a pgm-file. And when creating an RGB+A png-image, you just combine a ppm-file with a corresponding pgm-file containing the alpha-channel. When reading, transparency chunks are converted into an alpha-channel and from there on treated the same way. Finally you can opt for writing ascii or binary pgm- and ppm-files. When the bit-depth is 16, the format will always be ascii. Using it -------- To distinguish them from pnmtopng and PngPlus, the utilities are named png2pnm and pnm2png (2 instead of to). The input- and output-files can be given as parameters or through redirection. Therefore the programs can be part of a pipe. To list the options type "png2pnm -h" or "pnm2png -h". Just like Scandinavian furniture -------------------------------- You have to put it together yourself. I developed the software on MS-DOS with Turbo-C 3.0 and RedHat Linux 4.2 with gcc. In both cases I used libpng-1.0.4 and zlib-1.1.3. By now (2019) it is twenty years later and more current versions are OK. The makefile assumes that the libpng libraries can be found in ../.. and libz in ../../../zlib. But you can change this to for example ../libpng and ../zlib. The makefile creates two versions of each program, one with static library support and the other using shared libraries. If you create a ../pngsuite directory and then store the basn####.png files from PngSuite (http://www.schaik.com/pngsuite/) in there, you can test the proper functioning of PngMinus by running pngminus.sh. Warranty ------- Please, remember that this was just a small experiment to learn a few things. It will have many unforeseen features ... who said bugs? Use it when you are in need for something simple or when you want a starting point for developing your own stuff. The end ------- Willem van Schaik mailto:willem at schaik dot com http://www.schaik.com/png/ Oct 1999, Jan 2019 ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/pngsuite/README ======================================================================== pngsuite -------- Copyright (c) Willem van Schaik, 1999, 2011, 2012 Two images (ftbbn0g01.png and ftbbn0g02.png) are by Glenn Randers-Pehrson, 2012 Permission to use, copy, modify, and distribute these images for any purpose and without fee is hereby granted. The 15 "bas*.png" images are part of the much larger PngSuite test-set of images, available for developers of PNG supporting software. The complete set, available at http:/www.schaik.com/pngsuite/, contains a variety of images to test interlacing, gamma settings, ancillary chunks, etc. The "ft*.png" images are "free/libre" replacements for the transparent corresponding t*.png images in the PngSuite. The "i*.png" images are the same images, but interlaced. The images in this directory represent the basic PNG color-types: grayscale (1-16 bit deep), full color (8 or 16 bit), paletted (1-8 bit) and grayscale or color images with alpha channel. You can use them to test the proper functioning of PNG software. filename depth type ------------ ------ -------------- basn0g01.png 1-bit grayscale basn0g02.png 2-bit grayscale basn0g04.png 4-bit grayscale basn0g08.png 8-bit grayscale basn0g16.png 16-bit grayscale basn2c08.png 8-bit truecolor basn2c16.png 16-bit truecolor basn3p01.png 1-bit paletted basn3p02.png 2-bit paletted basn3p04.png 4-bit paletted basn3p08.png 8-bit paletted basn4a08.png 8-bit gray with alpha basn4a16.png 16-bit gray with alpha basn6a08.png 8-bit RGBA basn6a16.png 16-bit RGBA ftbbn0g01.png 1-bit grayscale, black bKGD ftbbn0g02.png 2-bit grayscale, black bKGD ftbbn0g04.png 4-bit grayscale, black bKGD ftbbn2c16.png 16-bit truecolor, black bKGD ftbbn3p08.png 8-bit paletted, black bKGD ftbgn2c16.png 16-bit truecolor, gray bKGD ftbgn3p08.png 8-bit paletted, gray bKGD ftbrn2c08.png 8-bit truecolor, red bKGD ftbwn0g16.png 16-bit gray, white bKGD ftbwn3p08.png 8-bit paletted, white bKGD ftbyn3p08.png 8-bit paletted, yellow bKGD ftp0n0g08.png 8-bit grayscale, opaque ftp0n2c08.png 8-bit truecolor, opaque ftp0n3p08.png 8-bit paletted, opaque ftp1n3p08.png 8-bit paletted, no bKGD Here is the correct result of typing "pngtest -m bas*.png" in this directory: Testing basn0g01.png: PASS (524 zero samples) Filter 0 was used 32 times Testing basn0g02.png: PASS (448 zero samples) Filter 0 was used 32 times Testing basn0g04.png: PASS (520 zero samples) Filter 0 was used 32 times Testing basn0g08.png: PASS (3 zero samples) Filter 1 was used 9 times Filter 4 was used 23 times Testing basn0g16.png: PASS (1 zero samples) Filter 1 was used 1 times Filter 2 was used 31 times Testing basn2c08.png: PASS (6 zero samples) Filter 1 was used 5 times Filter 4 was used 27 times Testing basn2c16.png: PASS (592 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn3p01.png: PASS (512 zero samples) Filter 0 was used 32 times Testing basn3p02.png: PASS (448 zero samples) Filter 0 was used 32 times Testing basn3p04.png: PASS (544 zero samples) Filter 0 was used 32 times Testing basn3p08.png: PASS (4 zero samples) Filter 0 was used 32 times Testing basn4a08.png: PASS (32 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn4a16.png: PASS (64 zero samples) Filter 0 was used 1 times Filter 1 was used 2 times Filter 2 was used 1 times Filter 4 was used 28 times Testing basn6a08.png: PASS (160 zero samples) Filter 1 was used 1 times Filter 4 was used 31 times Testing basn6a16.png: PASS (1072 zero samples) Filter 1 was used 4 times Filter 4 was used 28 times libpng passes test Willem van Schaik October 1999 ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/tools/README.txt ======================================================================== This directory (contrib/tools) contains tools used by the authors of libpng. Code and data placed in this directory is not required to build libpng, however the code in this directory has been used to generate data or code in the body of the libpng source. The source code identifies where this has been done. Code in this directory may not compile on all operating systems that libpng supports. NO COPYRIGHT RIGHTS ARE CLAIMED TO ANY OF THE FILES IN THIS DIRECTORY. To the extent possible under law, the authors have waived all copyright and related or neighboring rights to this work. This work is published from: United States. The files may be used freely in any way. The source code and comments in this directory are the original work of the people named below. No other person or organization has made contributions to the work in this directory. ORIGINAL AUTHORS The following people have contributed to the code in this directory. None of the people below claim any rights with regard to the contents of this directory. John Bowler Glenn Randers-Pehrson ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/visupng/README.txt ======================================================================== Microsoft Developer Studio Build File, Format Version 6.00 for VisualPng ------------------------------------------------------------------------ Copyright 2000, Willem van Schaik. This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h As a PNG .dll demo VisualPng is finished. More features would only hinder the program's objective. However, further extensions (like support for other graphics formats) are in development. To get these, or for pre-compiled binaries, go to "http://www.schaik.com/png/visualpng.html". ------------------------------------------------------------------------ Assumes that libpng DLLs and LIBs are in ..\..\projects\msvc\win32\libpng zlib DLLs and LIBs are in ..\..\projects\msvc\win32\zlib libpng header files are in ..\..\..\libpng zlib header files are in ..\..\..\zlib the pngsuite images are in ..\pngsuite To build: 1) On the main menu Select "Build|Set Active configuration". Choose the configuration that corresponds to the library you want to test. This library must have been built using the libpng MS project located in the "..\..\mscv" subdirectory. 2) Select "Build|Clean" 3) Select "Build|Rebuild All" 4) After compiling and linking VisualPng will be started to view an image from the PngSuite directory. Press Ctrl-N (and Ctrl-V) for other images. To install: When distributing VisualPng (or a further development) the following options are available: 1) Build the program with the configuration "Win32 LIB" and you only need to include the executable from the ./lib directory in your distribution. 2) Build the program with the configuration "Win32 DLL" and you need to put in your distribution the executable from the ./dll directory and the dll's libpng1.dll, zlib.dll and msvcrt.dll. These need to be in the user's PATH. Willem van Schaik Calgary, June 6th 2000 P.S. VisualPng was written based on preliminary work of: - Simon-Pierre Cadieux - Glenn Randers-Pehrson - Greg Roelofs ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/projects/visualc71/README.txt ======================================================================== Microsoft Developer Studio Project File, Format Version 7.10 for libpng. Copyright (C) 2004 Simon-Pierre Cadieux. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in png.h NOTE: This project will be removed from libpng-1.5.0. It has been replaced with the "vstudio" project. Assumptions: * The libpng source files are in ..\.. * The zlib source files are in ..\..\..\zlib * The zlib project file is in . /* Warning: This is until the zlib project files get integrated into the next zlib release. The final zlib project directory will then be ..\..\..\zlib\projects\visualc71. */ To use: 1) On the main menu, select "File | Open Solution". Open "libpng.sln". 2) Display the Solution Explorer view (Ctrl+Alt+L) 3) Set one of the project as the StartUp project. If you just want to build the binaries set "libpng" as the startup project (Select "libpng" tree view item + Project | Set as StartUp project). If you want to build and test the binaries set it to "pngtest" (Select "pngtest" tree view item + Project | Set as StartUp project) 4) Select "Build | Configuration Manager...". Choose the configuration you wish to build. 5) Select "Build | Clean Solution". 6) Select "Build | Build Solution (Ctrl-Shift-B)" This project builds the libpng binaries as follows: * Win32_DLL_Release\libpng16.dll DLL build * Win32_DLL_Debug\libpng16d.dll DLL build (debug version) * Win32_DLL_VB\libpng16vb.dll DLL build for Visual Basic, using stdcall * Win32_LIB_Release\libpng.lib static build * Win32_LIB_Debug\libpngd.lib static build (debug version) Notes: If you change anything in the source files, or select different compiler settings, please change the DLL name to something different than any of the above names. Also, make sure that in your "pngusr.h" you define PNG_USER_PRIVATEBUILD and PNG_USER_DLLFNAME_POSTFIX according to the instructions provided in "pngconf.h". All DLLs built by this project use the Microsoft dynamic C runtime library MSVCR71.DLL (MSVCR71D.DLL for debug versions). If you distribute any of the above mentioned libraries you may have to include this DLL in your package. For a list of files that are redistributable in Visual Studio see $(VCINSTALLDIR)\redist.txt. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/projects/visualc71/README_zlib.txt ======================================================================== /* WARNING: This file was put in the LibPNG distribution for convenience only. It is expected to be part of the next zlib release under "projects\visualc71\README.txt." */ Microsoft Developer Studio Project File, Format Version 7.10 for zlib. Copyright (C) 2004 Simon-Pierre Cadieux. Copyright (C) 2004 Cosmin Truta. This code is released under the libpng license. For conditions of distribution and use, see copyright notice in zlib.h. NOTE: This project will be removed from libpng-1.5.0. It has been replaced with the "vstudio" project. To use: 1) On the main menu, select "File | Open Solution". Open "zlib.sln". 2) Display the Solution Explorer view (Ctrl+Alt+L) 3) Set one of the project as the StartUp project. If you just want to build the binaries set "zlib" as the startup project (Select "zlib" tree view item + Project | Set as StartUp project). If you want to build and test the binaries set it to "example" (Select "example" tree view item + Project | Set as StartUp project), If you want to build the minigzip utility set it to "minigzip" (Select "minigzip" tree view item + Project | Set as StartUp project 4) Select "Build | Configuration Manager...". Choose the configuration you wish to build. 5) Select "Build | Clean Solution". 6) Select "Build | Build Solution (Ctrl-Shift-B)" This project builds the zlib binaries as follows: * Win32_DLL_Release\zlib1.dll DLL build * Win32_DLL_Debug\zlib1d.dll DLL build (debug version) * Win32_LIB_Release\zlib.lib static build * Win32_LIB_Debug\zlibd.lib static build (debug version) ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/projects/vstudio/README.txt ======================================================================== Instructions for building libpng using Microsoft Visual Studio ============================================================== Copyright (c) 2018 Cosmin Truta Copyright (c) 2010,2013,2015 Glenn Randers-Pehrson This code is released under the libpng license. For conditions of distribution and use, see the disclaimer and license in png.h This directory contains a solution for building libpng under Microsoft Visual Studio 2010. It may also work under later versions of Visual Studio. You should be familiar with Visual Studio before using this solution. Initial preparations -------------------- You must enter some information in zlib.props before attempting to build with this 'solution'. Please read and edit zlib.props first. You will probably not be familiar with the contents of zlib.props - do not worry, it is mostly harmless. This is all you need to do to build the 'release' and 'release library' configurations. Debugging --------- The release configurations default to /Ox optimization. Full debugging information is produced (in the .pdb), but if you encounter a problem the optimization may make it difficult to debug. Simply rebuild with a lower optimization level (e.g. /Od.) Linking your application ------------------------ Normally you should link against the 'release' configuration. This builds a DLL for libpng with the default runtime options used by Visual Studio. In particular the runtime library is the "MultiThreaded DLL" version. If you use Visual Studio defaults to build your application, you should have no problems. If you don't use the Visual Studio defaults your application must still be built with the default runtime option (/MD). If, for some reason, it is not then your application will crash inside libpng16.dll as soon as libpng tries to read from a file handle you pass in. If you do not want to use the DLL, and prefer static linking instead, you may choose the 'release library' configuration. This is built with a non-standard runtime library - the "MultiThreaded" version. When you build your application, it must be compiled with this option (/MT), otherwise it will not build (if you are lucky) or it will crash (if you are not.) See the WARNING file that is distributed with this README. Stop reading here ----------------- You have enough information to build a working application. Debug versions have limited support ----------------------------------- This solution includes limited support for debug versions of libpng. You do not need these unless your own solution itself uses debug builds (it is far more effective to debug on the release builds, there is no point building a special debug build unless you have heap corruption problems that you can't track down.) The debug build of libpng is minimally supported. Support for debug builds of zlib is also minimal. Please keep this in mind, if you want to use it. WARNING ------- Libpng 1.6.x does not use the default run-time library when building static library builds of libpng; instead of the shared DLL runtime, it uses a static runtime. If you need to change this, make sure to change the setting on all the relevant projects: libpng zlib all the test programs The runtime library settings for each build are as follows: Release Debug DLL /MD /MDd Library /MT /MTd Also, be sure to build libpng, zlib, and your project, all for the same platform (e.g., 32-bit or 64-bit). ======================================================================== * texlive-20200406-source/libs/luajit/LuaJIT-src/README ======================================================================== README for LuaJIT 2.1.0-beta3 ----------------------------- LuaJIT is a Just-In-Time (JIT) compiler for the Lua programming language. Project Homepage: http://luajit.org/ LuaJIT is Copyright (C) 2005-2017 Mike Pall. LuaJIT is free software, released under the MIT license. See full Copyright Notice in the COPYRIGHT file or in luajit.h. Documentation for LuaJIT is available in HTML format. Please point your favorite browser to: doc/luajit.html ======================================================================== * texlive-20200406-source/libs/mpfr/mpfr-src/README ======================================================================== Copyright 2000-2019 Free Software Foundation, Inc. Contributed by the AriC and Caramba projects, INRIA. This file is part of the GNU MPFR Library. The GNU MPFR Library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. The GNU MPFR Library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with the GNU MPFR Library; see the file COPYING.LESSER. If not, see https://www.gnu.org/licenses/ or write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA. ############################################################################## The GNU MPFR distribution contains the following files: (This does not apply to code retrieved by Subversion.) AUTHORS - the authors of the library BUGS - bugs in MPFR - please read this file! COPYING - the GNU General Public License, version 3 COPYING.LESSER - the GNU Lesser General Public License, version 3 ChangeLog - the log of changes INSTALL - how to install MPFR (see also mpfr.texi) Makefile* - files for building the library NEWS - new features with respect to previous versions PATCHES - empty file (until patches are applied) README - this file TODO - what remains to do (any help is welcome!) VERSION - version of MPFR (next release version if taken by Subversion) ac*.m4 - automatic configuration files ar-lib - auxiliary installation file compile - auxiliary installation file config.* - auxiliary installation files configure* - configuration files depcomp - auxiliary installation file doc/ - directory containing documentation (manual, FAQ, etc.) examples/ - directory containing examples install-sh - installation file ltmain.sh - auxiliary installation file m4/ - directory containing additional configuration files missing - auxiliary installation file mpfr.pc.in - auxiliary pkg-config file src/ - directory containing the MPFR source test-driver - auxiliary installation file tests/ - directory containing the testsuite (for "make check") tools/ - directory containing various tools tune/ - directory containing files for tuning MPFR According to the special exception to the GNU General Public License, the autotools files compile, config.sub, config.guess, ltmain.sh, m4/libtool.m4 and missing are distributed under the same licence of GNU MPFR. For any copyright year range specified as YYYY-ZZZZ in this package, note that the range specifies every single year in that closed interval. You can get the latest source code by Subversion at InriaForge: svn checkout svn://scm.gforge.inria.fr/svn/mpfr/trunk mpfr or svn checkout https://scm.gforge.inria.fr/svn/mpfr/trunk mpfr (the last argument can be any directory name). You can use svn ls svn://scm.gforge.inria.fr/svn/mpfr/branches svn ls svn://scm.gforge.inria.fr/svn/mpfr/tags to get the list of branches or tags (releases), then checkout a particular branch or tag instead of the trunk. Alternatively, you can now use the "https:" scheme (a.k.a. DAV) instead of "svn:". For more information about Subversion, please see: * http://svnbook.red-bean.com/ (the official Subversion book); * https://gcc.gnu.org/wiki/SvnHelp (written for GCC developers, but interesting general information can be found there); * http://subversion.apache.org/faq.html (the Subversion FAQ). Subversion users should read the file "doc/README.dev" (in the source tree). ======================================================================== * texlive-20200406-source/libs/poppler/poppler-src/README-XPDF ======================================================================== Xpdf ==== version 3.03 2011-aug-15 The Xpdf software and documentation are copyright 1996-2011 Glyph & Cog, LLC. Email: derekn@foolabs.com WWW: http://www.foolabs.com/xpdf/ The PDF data structures, operators, and specification are copyright 1985-2006 Adobe Systems Inc. What is Xpdf? ------------- Xpdf is an open source viewer for Portable Document Format (PDF) files. (These are also sometimes also called 'Acrobat' files, from the name of Adobe's PDF software.) The Xpdf project also includes a PDF text extractor, PDF-to-PostScript converter, and various other utilities. Xpdf runs under the X Window System on UNIX, VMS, and OS/2. The non-X components (pdftops, pdftotext, etc.) also run on Windows and Mac OSX systems and should run on pretty much any system with a decent C++ compiler. Xpdf will run on 32-bit and 64-bit machines. License & Distribution ---------------------- Xpdf is licensed under the GNU General Pulbic License (GPL), version 2 or 3. This means that you can distribute derivatives of Xpdf under any of the following: - GPL v2 only - GPL v3 only - GPL v2 or v3 The Xpdf source package includes the text of both GPL versions: COPYING for GPL v2, COPYING3 for GPL v3. Please note that Xpdf is NOT licensed under "any later version" of the GPL, as I have no idea what those versions will look like. If you are redistributing unmodified copies of Xpdf (or any of the Xpdf tools) in binary form, you need to include all of the documentation: README, man pages (or help files), COPYING, and COPYING3. If you want to incorporate the Xpdf source code into another program (or create a modified version of Xpdf), and you are distributing that program, you have two options: release your program under the GPL (v2 and/or v3), or purchase a commercial Xpdf source license. If you're interested in commercial licensing, please see the Glyph & Cog web site: http://www.glyphandcog.com/ Compatibility ------------- Xpdf is developed and tested on Linux. In addition, it has been compiled by others on Solaris, AIX, HP-UX, Digital Unix, Irix, and numerous other Unix implementations, as well as VMS and OS/2. It should work on pretty much any system which runs X11 and has Unix-like libraries. You'll need ANSI C++ and C compilers to compile it. The non-X components of Xpdf (pdftops, pdftotext, pdfinfo, pdffonts, pdfdetach, pdftoppm, and pdfimages) can also be compiled on Windows and Mac OSX systems. See the Xpdf web page for details. If you compile Xpdf for a system not listed on the web page, please let me know. If you're willing to make your binary available by ftp or on the web, I'll be happy to add a link from the Xpdf web page. I have decided not to host any binaries I didn't compile myself (for disk space and support reasons). If you can't get Xpdf to compile on your system, send me email and I'll try to help. Xpdf has been ported to the Acorn, Amiga, BeOS, and EPOC. See the Xpdf web page for links. Getting Xpdf ------------ The latest version is available from: http://www.foolabs.com/xpdf/ or: ftp://ftp.foolabs.com/pub/xpdf/ Source code and several precompiled executables are available. Announcements of new versions are posted to comp.text.pdf and emailed to a list of people. If you'd like to receive email notification of new versions, just let me know. Running Xpdf ------------ To run xpdf, simply type: xpdf file.pdf To generate a PostScript file, hit the "print" button in xpdf, or run pdftops: pdftops file.pdf To generate a plain text file, run pdftotext: pdftotext file.pdf There are five additional utilities (which are fully described in their man pages): pdfinfo -- dumps a PDF file's Info dictionary (plus some other useful information) pdffonts -- lists the fonts used in a PDF file along with various information for each font pdfdetach -- lists or extracts embedded files (attachments) from a PDF file pdftoppm -- converts a PDF file to a series of PPM/PGM/PBM-format bitmaps pdfimages -- extracts the images from a PDF file Command line options and many other details are described in the man pages (xpdf(1), etc.) and the VMS help files (xpdf.hlp, etc.). All of these utilities read an optional configuration file: see the xpdfrc(5) man page. Upgrading from Xpdf 3.02 (and earlier) -------------------------------------- The font configuration system has been changed. Previous versions used mostly separate commands to configure fonts for display and for PostScript output. As of 3.03, configuration options that make sense for both display and PS output have been unified. The following xpdfrc commands have been removed: * displayFontT1, displayFontTT: replaced with fontFile * displayNamedCIDFontT1, displayNamedCIDFontTT: replaced with fontFile * displayCIDFontT1, displayCIDFontTT: replaced with fontFileCC * psFont: replaced with psResidentFont * psNamedFont16: replaced with psResidentFont16 * psFont16: replaced with psResidentFontCC See the xpdfrc(5) man page for more information on the new commands. Pdftops will now embed external 16-bit fonts (configured with the fontFileCC command) when the PDF file refers to a non-embedded font. It does not do any subsetting (yet), so the resulting PS files will be large. Compiling Xpdf -------------- See the separate file, INSTALL. Bugs ---- If you find a bug in Xpdf, i.e., if it prints an error message, crashes, or incorrectly displays a document, and you don't see that bug listed here, please send me email, with a pointer (URL, ftp site, etc.) to the PDF file. Acknowledgments --------------- Thanks to: * Patrick Voigt for help with the remote server code. * Patrick Moreau, Martin P.J. Zinser, and David Mathog for the VMS port. * David Boldt and Rick Rodgers for sample man pages. * Brendan Miller for the icon idea. * Olly Betts for help testing pdftotext. * Peter Ganten for the OS/2 port. * Michael Richmond for the Win32 port of pdftops and pdftotext and the xpdf/cygwin/XFree86 build instructions. * Frank M. Siegert for improvements in the PostScript code. * Leo Smiers for the decryption patches. * Rainer Menzner for creating t1lib, and for helping me adapt it to xpdf. * Pine Tree Systems A/S for funding the OPI and EPS support in pdftops. * Easy Software Products for funding several improvements to the PostScript output code. * Tom Kacvinsky for help with FreeType and for being my interface to the FreeType team. * Theppitak Karoonboonyanan for help with Thai support. * Leonard Rosenthol for help and contributions on a bunch of things. * Alexandros Diamantidis and Maria Adaloglou for help with Greek support. * Lawrence Lai for help with the CJK Unicode maps. Various people have contributed modifications made for use by the pdftex project: * Han The Thanh * Martin Schröder of ArtCom GmbH References ---------- Adobe Systems Inc., _PDF Reference, sixth edition: Adobe Portable Document Format version 1.7_. http://www.adobe.com/devnet/pdf/pdf_reference.html [The manual for PDF version 1.7.] Adobe Systems Inc., "Errata for the PDF Reference, sixth edition, version 1.7", October 16, 2006. http://www.adobe.com/devnet/pdf/pdf_reference.html [The errata for the PDF 1.7 spec.] Adobe Systems Inc., _PostScript Language Reference_, 3rd ed. Addison-Wesley, 1999, ISBN 0-201-37922-8. [The official PostScript manual.] Adobe Systems, Inc., _The Type 42 Font Format Specification_, Adobe Developer Support Technical Specification #5012. 1998. http://partners.adobe.com/asn/developer/pdfs/tn/5012.Type42_Spec.pdf [Type 42 is the format used to embed TrueType fonts in PostScript files.] Adobe Systems, Inc., _Adobe CMap and CIDFont Files Specification_, Adobe Developer Support Technical Specification #5014. 1995. http://www.adobe.com/supportservice/devrelations/PDFS/TN/5014.CIDFont_Spec.pdf [CMap file format needed for Japanese and Chinese font support.] Adobe Systems, Inc., _Adobe-Japan1-4 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5078. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5078.CID_Glyph.pdf [The Adobe Japanese character set.] Adobe Systems, Inc., _Adobe-GB1-4 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5079. 2000. http://partners.adobe.com/asn/developer/pdfs/tn/5079.Adobe-GB1-4.pdf [The Adobe Chinese GB (simplified) character set.] Adobe Systems, Inc., _Adobe-CNS1-3 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5080. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5080.CNS_CharColl.pdf [The Adobe Chinese CNS (traditional) character set.] Adobe Systems Inc., _Supporting the DCT Filters in PostScript Level 2_, Adobe Developer Support Technical Note #5116. 1992. http://www.adobe.com/supportservice/devrelations/PDFS/TN/5116.PS2_DCT.PDF [Description of the DCTDecode filter parameters.] Adobe Systems Inc., _Open Prepress Interface (OPI) Specification - Version 2.0_, Adobe Developer Support Technical Note #5660. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5660.OPI_2.0.pdf Adobe Systems Inc., CMap files. ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/ [The actual CMap files for the 16-bit CJK encodings.] Adobe Systems Inc., Unicode glyph lists. http://partners.adobe.com/asn/developer/type/unicodegn.html http://partners.adobe.com/asn/developer/type/glyphlist.txt http://partners.adobe.com/asn/developer/type/corporateuse.txt http://partners.adobe.com/asn/developer/type/zapfdingbats.txt [Mappings between character names to Unicode.] Adobe Systems Inc., OpenType Specification v. 1.4. http://partners.adobe.com/public/developer/opentype/index_spec.html [The OpenType font format spec.] Aldus Corp., _OPI: Open Prepress Interface Specification 1.3_. 1993. http://partners.adobe.com/asn/developer/PDFS/TN/OPI_13.pdf Anonymous, RC4 source code. ftp://ftp.ox.ac.uk/pub/crypto/misc/rc4.tar.gz ftp://idea.sec.dsi.unimi.it/pub/crypt/code/rc4.tar.gz [This is the algorithm used to encrypt PDF files.] T. Boutell, et al., "PNG (Portable Network Graphics) Specification, Version 1.0". RFC 2083. [PDF uses the PNG filter algorithms.] CCITT, "Information Technology - Digital Compression and Coding of Continuous-tone Still Images - Requirements and Guidelines", CCITT Recommendation T.81. http://www.w3.org/Graphics/JPEG/ [The official JPEG spec.] A. Chernov, "Registration of a Cyrillic Character Set". RFC 1489. [Documentation for the KOI8-R Cyrillic encoding.] Roman Czyborra, "The ISO 8859 Alphabet Soup". http://czyborra.com/charsets/iso8859.html [Documentation on the various ISO 859 encodings.] L. Peter Deutsch, "ZLIB Compressed Data Format Specification version 3.3". RFC 1950. [Information on the general format used in FlateDecode streams.] L. Peter Deutsch, "DEFLATE Compressed Data Format Specification version 1.3". RFC 1951. [The definition of the compression algorithm used in FlateDecode streams.] Morris Dworkin, "Recommendation for Block Cipher Modes of Operation", National Institute of Standards, NIST Special Publication 800-38A, 2001. [The cipher block chaining (CBC) mode used with AES in PDF files.] Federal Information Processing Standards Publication 197 (FIPS PUBS 197), "Advanced Encryption Standard (AES)", November 26, 2001. [AES encryption, used in PDF 1.6.] Jim Flowers, "X Logical Font Description Conventions", Version 1.5, X Consortium Standard, X Version 11, Release 6.1. ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XLFD/xlfd.PS.Z [The official specification of X font descriptors, including font transformation matrices.] Foley, van Dam, Feiner, and Hughes, _Computer Graphics: Principles and Practice_, 2nd ed. Addison-Wesley, 1990, ISBN 0-201-12110-7. [Colorspace conversion functions, Bezier spline math.] Robert L. Hummel, _Programmer's Technical Reference: Data and Fax Communications_. Ziff-Davis Press, 1993, ISBN 1-56276-077-7. [CCITT Group 3 and 4 fax decoding.] ISO/IEC, _Information technology -- Lossy/lossless coding of bi-level images_. ISO/IEC 14492, First edition (2001-12-15). http://webstore.ansi.org/ [The official JBIG2 standard. The final draft of this spec is available from http://www.jpeg.org/jbighomepage.html.] ISO/IEC, _Information technology -- JPEG 2000 image coding system -- Part 1: Core coding system_. ISO/IEC 15444-1, First edition (2000-12-15). http://webstore.ansi.org/ [The official JPEG 2000 standard. The final committee draft of this spec is available from http://www.jpeg.org/JPEG2000.html, but there were changes made to the bitstream format between that draft and the published spec.] ITU, "Standardization of Group 3 facsimile terminals for document transmission", ITU-T Recommendation T.4, 1999. ITU, "Facsimile coding schemes and coding control functions for Group 4 facsimile apparatus", ITU-T Recommendation T.6, 1993. http://www.itu.int/ [The official Group 3 and 4 fax standards - used by the CCITTFaxDecode stream, as well as the JBIG2Decode stream.] B. Kaliski, "PKCS #5: Password-Based Cryptography Specification, Version 2.0". RFC 2898. [Defines the padding scheme used with AES encryption in PDF files.] Christoph Loeffler, Adriaan Ligtenberg, George S. Moschytz, "Practical Fast 1-D DCT Algorithms with 11 Multiplications". IEEE Intl. Conf. on Acoustics, Speech & Signal Processing, 1989, 988-991. [The fast IDCT algorithm used in the DCTDecode filter.] Microsoft, _TrueType 1.0 Font Files_, rev. 1.66. 1995. http://www.microsoft.com/typography/tt/tt.htm [The TrueType font spec (in MS Word format, naturally).] V. Ostromoukhov, R.D. Hersch, "Stochastic Clustered-Dot Dithering", Conf. Color Imaging: Device-Independent Color, Color Hardcopy, and Graphic Arts IV, 1999, SPIE Vol. 3648, 496-505. http://diwww.epfl.ch/w3lsp/publications/colour/scd.html [The stochastic dithering algorithm used in Xpdf.] P. Peterlin, "ISO 8859-2 (Latin 2) Resources". http://sizif.mf.uni-lj.si/linux/cee/iso8859-2.html [This is a web page with all sorts of useful Latin-2 character set and font information.] Charles Poynton, "Color FAQ". http://www.inforamp.net/~poynton/ColorFAQ.html [The mapping from the CIE 1931 (XYZ) color space to RGB.] R. Rivest, "The MD5 Message-Digest Algorithm". RFC 1321. [MD5 is used in PDF document encryption.] Thai Industrial Standard, "Standard for Thai Character Codes for Computers", TIS-620-2533 (1990). http://www.nectec.or.th/it-standards/std620/std620.htm [The TIS-620 Thai encoding.] Unicode Consortium, "Unicode Home Page". http://www.unicode.org/ [Online copy of the Unicode spec.] W3C Recommendation, "PNG (Portable Network Graphics) Specification Version 1.0". http://www.w3.org/Graphics/PNG/ [Defines the PNG image predictor.] Gregory K. Wallace, "The JPEG Still Picture Compression Standard". ftp://ftp.uu.net/graphics/jpeg/wallace.ps.gz [Good description of the JPEG standard. Also published in CACM, April 1991, and submitted to IEEE Transactions on Consumer Electronics.] F. Yergeau, "UTF-8, a transformation format of ISO 10646". RFC 2279. [A commonly used Unicode encoding.] ======================================================================== * texlive-20200406-source/libs/xpdf/xpdf-src/README ======================================================================== Xpdf ==== version 4.02 2019-sep-25 The Xpdf software and documentation are copyright 1996-2019 Glyph & Cog, LLC. Email: xpdf@xpdfreader.com WWW: http://www.xpdfreader.com/ The PDF data structures, operators, and specification are documented in ISO 32000-2:2017. What is Xpdf? ------------- Xpdf is an open source viewer for Portable Document Format (PDF) files. (These are also sometimes also called 'Acrobat' files, from the name of Adobe's PDF software.) The Xpdf project also includes a PDF text extractor, PDF-to-PostScript converter, and various other utilities. The Xpdf viewer uses the Qt cross-platform GUI toolkit. The other command line utilties do not require Qt. License & Distribution ---------------------- Xpdf is licensed under the GNU General Public License (GPL), version 2 or 3. This means that you can distribute derivatives of Xpdf under any of the following: - GPL v2 only - GPL v3 only - GPL v2 or v3 The Xpdf source package includes the text of both GPL versions: COPYING for GPL v2, COPYING3 for GPL v3. Please note that Xpdf is NOT licensed under "any later version" of the GPL, as I have no idea what those versions will look like. If you are redistributing unmodified copies of Xpdf (or any of the Xpdf tools) in binary form, you need to include all of the documentation: README, man pages (or help files), COPYING, and COPYING3. If you want to incorporate the Xpdf source code into another program (or create a modified version of Xpdf), and you are distributing that program, you have two options: release your program under the GPL (v2 and/or v3), or purchase a commercial Xpdf source license. If you're interested in commercial licensing, please see the Glyph & Cog web site: http://www.glyphandcog.com/ Compatibility ------------- Xpdf uses the Qt toolkit and runs on Linux, Windows, and OS X -- and probably other systems that have a Qt port. The non-GUI command line utilities (pdftops, pdftotext, pdftohtml, pdfinfo, pdffonts, pdfdetach, pdftoppm, pdftopng, and pdfimages) run on Linux, Windows, and OS X -- and should run on pretty much any system with a decent C++ compiler. If you compile Xpdf for a system not listed on the web page, please let me know. If you're willing to make your binary available by ftp or on the web, I'll be happy to add a link from the Xpdf web page. I have decided not to host any binaries I didn't compile myself (for disk space and support reasons). If you can't get Xpdf to compile on your system, send me email and I'll try to help. Getting Xpdf ------------ The latest version is available from: http://www.xpdfreader.com/ Source code and several precompiled executables are available. Announcements of new versions are posted to comp.text.pdf and emailed to a list of people. If you'd like to receive email notification of new versions, just let me know. Running Xpdf ------------ To run xpdf, simply type: xpdf file.pdf To generate a PostScript file, run pdftops: pdftops file.pdf To generate a plain text file, run pdftotext: pdftotext file.pdf There are several additional utilities (which are fully described in their man pages): pdftohtml -- converts a PDF file to HTML pdfinfo -- dumps a PDF file's Info dictionary (plus some other useful information) pdffonts -- lists the fonts used in a PDF file along with various information for each font pdfdetach -- lists or extracts embedded files (attachments) from a PDF file pdftoppm -- converts a PDF file to a series of PPM/PGM/PBM-format bitmaps pdftopng -- converts a PDF file to a series of PNG image files pdfimages -- extracts the images from a PDF file Command line options and many other details are described in the man pages: xpdf(1), etc. All of these utilities read an optional configuration file: see the xpdfrc(5) man page. Compiling Xpdf -------------- See the separate file, INSTALL. Bugs ---- If you find a bug in Xpdf, i.e., if it prints an error message, crashes, or incorrectly displays a document, and you don't see that bug listed here, please send me email, with a pointer (URL, ftp site, etc.) to the PDF file. Third-Party Libraries --------------------- Xpdf uses the following libraries: * FreeType [http://www.freetype.org/] * libpng [http://www.libpng.com/pub/png/libpng.html] (used by pdftohtml and pdftopng) * zlib [http://zlib.net/] (used by pdftohtml) Acknowledgments --------------- Thanks to: * Patrick Voigt for help with the remote server code. * Patrick Moreau, Martin P.J. Zinser, and David Mathog for the VMS port. * David Boldt and Rick Rodgers for sample man pages. * Brendan Miller for the icon idea. * Olly Betts for help testing pdftotext. * Peter Ganten for the OS/2 port. * Michael Richmond for the Win32 port of pdftops and pdftotext and the xpdf/cygwin/XFree86 build instructions. * Frank M. Siegert for improvements in the PostScript code. * Leo Smiers for the decryption patches. * Rainer Menzner for creating t1lib, and for helping me adapt it to xpdf. * Pine Tree Systems A/S for funding the OPI and EPS support in pdftops. * Easy Software Products for funding several improvements to the PostScript output code. * Tom Kacvinsky for help with FreeType and for being my interface to the FreeType team. * Theppitak Karoonboonyanan for help with Thai support. * Leonard Rosenthol for help and contributions on a bunch of things. * Alexandros Diamantidis and Maria Adaloglou for help with Greek support. * Lawrence Lai for help with the CJK Unicode maps. Various people have contributed modifications made for use by the pdftex project: * Han The Thanh * Martin Schröder of ArtCom GmbH References ---------- Adobe Systems Inc., _PostScript Language Reference_, 3rd ed. Addison-Wesley, 1999, ISBN 0-201-37922-8. [The official PostScript manual.] Adobe Systems, Inc., _The Type 42 Font Format Specification_, Adobe Developer Support Technical Specification #5012. 1998. http://partners.adobe.com/asn/developer/pdfs/tn/5012.Type42_Spec.pdf [Type 42 is the format used to embed TrueType fonts in PostScript files.] Adobe Systems, Inc., _Adobe CMap and CIDFont Files Specification_, Adobe Developer Support Technical Specification #5014. 1995. http://www.adobe.com/supportservice/devrelations/PDFS/TN/5014.CIDFont_Spec.pdf [CMap file format needed for Japanese and Chinese font support.] Adobe Systems, Inc., _Adobe-Japan1-4 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5078. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5078.CID_Glyph.pdf [The Adobe Japanese character set.] Adobe Systems, Inc., _Adobe-GB1-4 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5079. 2000. http://partners.adobe.com/asn/developer/pdfs/tn/5079.Adobe-GB1-4.pdf [The Adobe Chinese GB (simplified) character set.] Adobe Systems, Inc., _Adobe-CNS1-3 Character Collection for CID-Keyed Fonts_, Adobe Developer Support Technical Note #5080. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5080.CNS_CharColl.pdf [The Adobe Chinese CNS (traditional) character set.] Adobe Systems Inc., _Supporting the DCT Filters in PostScript Level 2_, Adobe Developer Support Technical Note #5116. 1992. http://www.adobe.com/supportservice/devrelations/PDFS/TN/5116.PS2_DCT.PDF [Description of the DCTDecode filter parameters.] Adobe Systems Inc., _Open Prepress Interface (OPI) Specification - Version 2.0_, Adobe Developer Support Technical Note #5660. 2000. http://partners.adobe.com/asn/developer/PDFS/TN/5660.OPI_2.0.pdf Adobe Systems Inc., CMap files. ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/ [The actual CMap files for the 16-bit CJK encodings.] Adobe Systems Inc., Unicode glyph lists. http://partners.adobe.com/asn/developer/type/unicodegn.html http://partners.adobe.com/asn/developer/type/glyphlist.txt http://partners.adobe.com/asn/developer/type/corporateuse.txt http://partners.adobe.com/asn/developer/type/zapfdingbats.txt [Mappings between character names to Unicode.] Adobe Systems Inc., OpenType Specification v. 1.4. http://partners.adobe.com/public/developer/opentype/index_spec.html [The OpenType font format spec.] Aldus Corp., _OPI: Open Prepress Interface Specification 1.3_. 1993. http://partners.adobe.com/asn/developer/PDFS/TN/OPI_13.pdf Anonymous, RC4 source code. ftp://ftp.ox.ac.uk/pub/crypto/misc/rc4.tar.gz ftp://idea.sec.dsi.unimi.it/pub/crypt/code/rc4.tar.gz [This is the algorithm used to encrypt PDF files.] T. Boutell, et al., "PNG (Portable Network Graphics) Specification, Version 1.0". RFC 2083. [PDF uses the PNG filter algorithms.] CCITT, "Information Technology - Digital Compression and Coding of Continuous-tone Still Images - Requirements and Guidelines", CCITT Recommendation T.81. http://www.w3.org/Graphics/JPEG/ [The official JPEG spec.] A. Chernov, "Registration of a Cyrillic Character Set". RFC 1489. [Documentation for the KOI8-R Cyrillic encoding.] Roman Czyborra, "The ISO 8859 Alphabet Soup". http://czyborra.com/charsets/iso8859.html [Documentation on the various ISO 859 encodings.] L. Peter Deutsch, "ZLIB Compressed Data Format Specification version 3.3". RFC 1950. [Information on the general format used in FlateDecode streams.] L. Peter Deutsch, "DEFLATE Compressed Data Format Specification version 1.3". RFC 1951. [The definition of the compression algorithm used in FlateDecode streams.] Morris Dworkin, "Recommendation for Block Cipher Modes of Operation", National Institute of Standards, NIST Special Publication 800-38A, 2001. [The cipher block chaining (CBC) mode used with AES in PDF files.] Federal Information Processing Standards Publication 197 (FIPS PUBS 197), "Advanced Encryption Standard (AES)", November 26, 2001. [AES encryption, used in PDF 1.6.] Jim Flowers, "X Logical Font Description Conventions", Version 1.5, X Consortium Standard, X Version 11, Release 6.1. ftp://ftp.x.org/pub/R6.1/xc/doc/hardcopy/XLFD/xlfd.PS.Z [The official specification of X font descriptors, including font transformation matrices.] Foley, van Dam, Feiner, and Hughes, _Computer Graphics: Principles and Practice_, 2nd ed. Addison-Wesley, 1990, ISBN 0-201-12110-7. [Colorspace conversion functions, Bezier spline math.] Robert L. Hummel, _Programmer's Technical Reference: Data and Fax Communications_. Ziff-Davis Press, 1993, ISBN 1-56276-077-7. [CCITT Group 3 and 4 fax decoding.] ISO/IEC, _Information technology -- Lossy/lossless coding of bi-level images_. ISO/IEC 14492, First edition (2001-12-15). http://webstore.ansi.org/ [The official JBIG2 standard. The final draft of this spec is available from http://www.jpeg.org/jbighomepage.html.] ISO/IEC, _Information technology -- JPEG 2000 image coding system -- Part 1: Core coding system_. ISO/IEC 15444-1, First edition (2000-12-15). http://webstore.ansi.org/ [The official JPEG 2000 standard. The final committee draft of this spec is available from http://www.jpeg.org/JPEG2000.html, but there were changes made to the bitstream format between that draft and the published spec.] ISO, International Standard -- Document Management - Portable document format - Part 2: PDF 2.0. ISO 32000-2:2017. [The manual for PDF version 2.0.] ITU, "Standardization of Group 3 facsimile terminals for document transmission", ITU-T Recommendation T.4, 1999. ITU, "Facsimile coding schemes and coding control functions for Group 4 facsimile apparatus", ITU-T Recommendation T.6, 1993. http://www.itu.int/ [The official Group 3 and 4 fax standards - used by the CCITTFaxDecode stream, as well as the JBIG2Decode stream.] B. Kaliski, "PKCS #5: Password-Based Cryptography Specification, Version 2.0". RFC 2898. [Defines the padding scheme used with AES encryption in PDF files.] Christoph Loeffler, Adriaan Ligtenberg, George S. Moschytz, "Practical Fast 1-D DCT Algorithms with 11 Multiplications". IEEE Intl. Conf. on Acoustics, Speech & Signal Processing, 1989, 988-991. [The fast IDCT algorithm used in the DCTDecode filter.] Microsoft, _TrueType 1.0 Font Files_, rev. 1.66. 1995. http://www.microsoft.com/typography/tt/tt.htm [The TrueType font spec (in MS Word format, naturally).] V. Ostromoukhov, R.D. Hersch, "Stochastic Clustered-Dot Dithering", Conf. Color Imaging: Device-Independent Color, Color Hardcopy, and Graphic Arts IV, 1999, SPIE Vol. 3648, 496-505. http://diwww.epfl.ch/w3lsp/publications/colour/scd.html [The stochastic dithering algorithm used in Xpdf.] P. Peterlin, "ISO 8859-2 (Latin 2) Resources". http://sizif.mf.uni-lj.si/linux/cee/iso8859-2.html [This is a web page with all sorts of useful Latin-2 character set and font information.] Charles Poynton, "Color FAQ". http://www.inforamp.net/~poynton/ColorFAQ.html [The mapping from the CIE 1931 (XYZ) color space to RGB.] R. Rivest, "The MD5 Message-Digest Algorithm". RFC 1321. [MD5 is used in PDF document encryption.] Thai Industrial Standard, "Standard for Thai Character Codes for Computers", TIS-620-2533 (1990). http://www.nectec.or.th/it-standards/std620/std620.htm [The TIS-620 Thai encoding.] Unicode Consortium, "Unicode Home Page". http://www.unicode.org/ [Online copy of the Unicode spec.] W3C Recommendation, "PNG (Portable Network Graphics) Specification Version 1.0". http://www.w3.org/Graphics/PNG/ [Defines the PNG image predictor.] Gregory K. Wallace, "The JPEG Still Picture Compression Standard". ftp://ftp.uu.net/graphics/jpeg/wallace.ps.gz [Good description of the JPEG standard. Also published in CACM, April 1991, and submitted to IEEE Transactions on Consumer Electronics.] F. Yergeau, "UTF-8, a transformation format of ISO 10646". RFC 2279. [A commonly used Unicode encoding.] ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/README ======================================================================== ZLIB DATA COMPRESSION LIBRARY zlib 1.2.11 is a general purpose data compression library. All the code is thread safe. The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 in the files http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and rfc1952 (gzip format). All functions of the compression library are documented in the file zlib.h (volunteer to write man pages welcome, contact zlib@gzip.org). A usage example of the library is given in the file test/example.c which also tests that the library is working correctly. Another example is given in the file test/minigzip.c. The compression library itself is composed of all source files in the root directory. To compile all files and run the test program, follow the instructions given at the top of Makefile.in. In short "./configure; make test", and if that goes well, "make install" should work for most flavors of Unix. For Windows, use one of the special makefiles in win32/ or contrib/vstudio/ . For VMS, use make_vms.com. Questions about zlib should be sent to , or to Gilles Vollant for the Windows DLL version. The zlib home page is http://zlib.net/ . Before reporting a problem, please check this site to verify that you have the latest version of zlib; otherwise get the latest version and check whether the problem still exists or not. PLEASE read the zlib FAQ http://zlib.net/zlib_faq.html before asking for help. Mark Nelson wrote an article about zlib for the Jan. 1997 issue of Dr. Dobb's Journal; a copy of the article is available at http://marknelson.us/1997/01/01/zlib-engine/ . The changes made in version 1.2.11 are documented in the file ChangeLog. Unsupported third party contributions are provided in directory contrib/ . zlib is available in Java using the java.util.zip package, documented at http://java.sun.com/developer/technicalArticles/Programming/compression/ . A Perl interface to zlib written by Paul Marquess is available at CPAN (Comprehensive Perl Archive Network) sites, including http://search.cpan.org/~pmqs/IO-Compress-Zlib/ . A Python interface to zlib written by A.M. Kuchling is available in Python 1.5 and later versions, see http://docs.python.org/library/zlib.html . zlib is built into tcl: http://wiki.tcl.tk/4610 . An experimental package to read and write files in .zip format, written on top of zlib by Gilles Vollant , is available in the contrib/minizip directory of zlib. Notes for some targets: - For Windows DLL versions, please see win32/DLL_FAQ.txt - For 64-bit Irix, deflate.c must be compiled without any optimization. With -O, one libpng test fails. The test works in 32 bit mode (with the -n32 compiler flag). The compiler bug has been reported to SGI. - zlib doesn't work with gcc 2.6.3 on a DEC 3000/300LX under OSF/1 2.1 it works when compiled with cc. - On Digital Unix 4.0D (formely OSF/1) on AlphaServer, the cc option -std1 is necessary to get gzprintf working correctly. This is done by configure. - zlib doesn't work on HP-UX 9.05 with some versions of /bin/cc. It works with other compilers. Use "make test" to check your compiler. - gzdopen is not supported on RISCOS or BEOS. - For PalmOs, see http://palmzlib.sourceforge.net/ Acknowledgments: The deflate format used by zlib was defined by Phil Katz. The deflate and zlib specifications were written by L. Peter Deutsch. Thanks to all the people who reported problems and suggested various improvements in zlib; they are too numerous to cite here. Copyright notice: (C) 1995-2017 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu If you use the zlib library in a product, we would appreciate *not* receiving lengthy legal documents to sign. The sources are provided for free but without warranty of any kind. The library has been entirely written by Jean-loup Gailly and Mark Adler; it does not include third-party code. If you redistribute modified sources, we would appreciate that you include in the file ChangeLog history information documenting your changes. Please read the FAQ for more information on the distribution of modified source versions. ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/contrib/delphi/readme.txt ======================================================================== Overview ======== This directory contains an update to the ZLib interface unit, distributed by Borland as a Delphi supplemental component. The original ZLib unit is Copyright (c) 1997,99 Borland Corp., and is based on zlib version 1.0.4. There are a series of bugs and security problems associated with that old zlib version, and we recommend the users to update their ZLib unit. Summary of modifications ======================== - Improved makefile, adapted to zlib version 1.2.1. - Some field types from TZStreamRec are changed from Integer to Longint, for consistency with the zlib.h header, and for 64-bit readiness. - The zlib_version constant is updated. - The new Z_RLE strategy has its corresponding symbolic constant. - The allocation and deallocation functions and function types (TAlloc, TFree, zlibAllocMem and zlibFreeMem) are now cdecl, and _malloc and _free are added as C RTL stubs. As a result, the original C sources of zlib can be compiled out of the box, and linked to the ZLib unit. Suggestions for improvements ============================ Currently, the ZLib unit provides only a limited wrapper around the zlib library, and much of the original zlib functionality is missing. Handling compressed file formats like ZIP/GZIP or PNG cannot be implemented without having this functionality. Applications that handle these formats are either using their own, duplicated code, or not using the ZLib unit at all. Here are a few suggestions: - Checksum class wrappers around adler32() and crc32(), similar to the Java classes that implement the java.util.zip.Checksum interface. - The ability to read and write raw deflate streams, without the zlib stream header and trailer. Raw deflate streams are used in the ZIP file format. - The ability to read and write gzip streams, used in the GZIP file format, and normally produced by the gzip program. - The ability to select a different compression strategy, useful to PNG and MNG image compression, and to multimedia compression in general. Besides the compression level TCompressionLevel = (clNone, clFastest, clDefault, clMax); which, in fact, could have used the 'z' prefix and avoided TColor-like symbols TCompressionLevel = (zcNone, zcFastest, zcDefault, zcMax); there could be a compression strategy TCompressionStrategy = (zsDefault, zsFiltered, zsHuffmanOnly, zsRle); - ZIP and GZIP stream handling via TStreams. -- Cosmin Truta ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/contrib/dotzlib/readme.txt ======================================================================== This directory contains a .Net wrapper class library for the ZLib1.dll The wrapper includes support for inflating/deflating memory buffers, .Net streaming wrappers for the gz streams part of zlib, and wrappers for the checksum parts of zlib. See DotZLib/UnitTests.cs for examples. Directory structure: -------------------- LICENSE_1_0.txt - License file. readme.txt - This file. DotZLib.chm - Class library documentation DotZLib.build - NAnt build file DotZLib.sln - Microsoft Visual Studio 2003 solution file DotZLib\*.cs - Source files for the class library Unit tests: ----------- The file DotZLib/UnitTests.cs contains unit tests for use with NUnit 2.1 or higher. To include unit tests in the build, define nunit before building. Build instructions: ------------------- 1. Using Visual Studio.Net 2003: Open DotZLib.sln in VS.Net and build from there. Output file (DotZLib.dll) will be found ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on you are building the release or debug version of the library. Check DotZLib/UnitTests.cs for instructions on how to include unit tests in the build. 2. Using NAnt: Open a command prompt with access to the build environment and run nant in the same directory as the DotZLib.build file. You can define 2 properties on the nant command-line to control the build: debug={true|false} to toggle between release/debug builds (default=true). nunit={true|false} to include or esclude unit tests (default=true). Also the target clean will remove binaries. Output file (DotZLib.dll) will be found in either ./DotZLib/bin/release or ./DotZLib/bin/debug, depending on whether you are building the release or debug version of the library. Examples: nant -D:debug=false -D:nunit=false will build a release mode version of the library without unit tests. nant will build a debug version of the library with unit tests nant clean will remove all previously built files. --------------------------------- Copyright (c) Henrik Ravn 2004 Use, modification and distribution are subject to the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/contrib/pascal/readme.txt ======================================================================== This directory contains a Pascal (Delphi, Kylix) interface to the zlib data compression library. Directory listing ================= zlibd32.mak makefile for Borland C++ example.pas usage example of zlib zlibpas.pas the Pascal interface to zlib readme.txt this file Compatibility notes =================== - Although the name "zlib" would have been more normal for the zlibpas unit, this name is already taken by Borland's ZLib unit. This is somehow unfortunate, because that unit is not a genuine interface to the full-fledged zlib functionality, but a suite of class wrappers around zlib streams. Other essential features, such as checksums, are missing. It would have been more appropriate for that unit to have a name like "ZStreams", or something similar. - The C and zlib-supplied types int, uInt, long, uLong, etc. are translated directly into Pascal types of similar sizes (Integer, LongInt, etc.), to avoid namespace pollution. In particular, there is no conversion of unsigned int into a Pascal unsigned integer. The Word type is non-portable and has the same size (16 bits) both in a 16-bit and in a 32-bit environment, unlike Integer. Even if there is a 32-bit Cardinal type, there is no real need for unsigned int in zlib under a 32-bit environment. - Except for the callbacks, the zlib function interfaces are assuming the calling convention normally used in Pascal (__pascal for DOS and Windows16, __fastcall for Windows32). Since the cdecl keyword is used, the old Turbo Pascal does not work with this interface. - The gz* function interfaces are not translated, to avoid interfacing problems with the C runtime library. Besides, gzprintf(gzFile file, const char *format, ...) cannot be translated into Pascal. Legal issues ============ The zlibpas interface is: Copyright (C) 1995-2003 Jean-loup Gailly and Mark Adler. Copyright (C) 1998 by Bob Dellaca. Copyright (C) 2003 by Cosmin Truta. The example program is: Copyright (C) 1995-2003 by Jean-loup Gailly. Copyright (C) 1998,1999,2000 by Jacques Nomssi Nzali. Copyright (C) 2003 by Cosmin Truta. This software is provided 'as-is', without any express or implied warranty. In no event will the author be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/win32/README-WIN32.txt ======================================================================== ZLIB DATA COMPRESSION LIBRARY zlib 1.2.11 is a general purpose data compression library. All the code is thread safe. The data format used by the zlib library is described by RFCs (Request for Comments) 1950 to 1952 in the files http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) and rfc1952.txt (gzip format). All functions of the compression library are documented in the file zlib.h (volunteer to write man pages welcome, contact zlib@gzip.org). Two compiled examples are distributed in this package, example and minigzip. The example_d and minigzip_d flavors validate that the zlib1.dll file is working correctly. Questions about zlib should be sent to . The zlib home page is http://zlib.net/ . Before reporting a problem, please check this site to verify that you have the latest version of zlib; otherwise get the latest version and check whether the problem still exists or not. PLEASE read DLL_FAQ.txt, and the the zlib FAQ http://zlib.net/zlib_faq.html before asking for help. Manifest: The package zlib-1.2.11-win32-x86.zip will contain the following files: README-WIN32.txt This document ChangeLog Changes since previous zlib packages DLL_FAQ.txt Frequently asked questions about zlib1.dll zlib.3.pdf Documentation of this library in Adobe Acrobat format example.exe A statically-bound example (using zlib.lib, not the dll) example.pdb Symbolic information for debugging example.exe example_d.exe A zlib1.dll bound example (using zdll.lib) example_d.pdb Symbolic information for debugging example_d.exe minigzip.exe A statically-bound test program (using zlib.lib, not the dll) minigzip.pdb Symbolic information for debugging minigzip.exe minigzip_d.exe A zlib1.dll bound test program (using zdll.lib) minigzip_d.pdb Symbolic information for debugging minigzip_d.exe zlib.h Install these files into the compilers' INCLUDE path to zconf.h compile programs which use zlib.lib or zdll.lib zdll.lib Install these files into the compilers' LIB path if linking zdll.exp a compiled program to the zlib1.dll binary zlib.lib Install these files into the compilers' LIB path to link zlib zlib.pdb into compiled programs, without zlib1.dll runtime dependency (zlib.pdb provides debugging info to the compile time linker) zlib1.dll Install this binary shared library into the system PATH, or the program's runtime directory (where the .exe resides) zlib1.pdb Install in the same directory as zlib1.dll, in order to debug an application crash using WinDbg or similar tools. All .pdb files above are entirely optional, but are very useful to a developer attempting to diagnose program misbehavior or a crash. Many additional important files for developers can be found in the zlib127.zip source package available from http://zlib.net/ - review that package's README file for details. Acknowledgments: The deflate format used by zlib was defined by Phil Katz. The deflate and zlib specifications were written by L. Peter Deutsch. Thanks to all the people who reported problems and suggested various improvements in zlib; they are too numerous to cite here. Copyright notice: (C) 1995-2017 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly Mark Adler jloup@gzip.org madler@alumni.caltech.edu If you use the zlib library in a product, we would appreciate *not* receiving lengthy legal documents to sign. The sources are provided for free but without warranty of any kind. The library has been entirely written by Jean-loup Gailly and Mark Adler; it does not include third-party code. If you redistribute modified sources, we would appreciate that you include in the file ChangeLog history information documenting your changes. Please read the FAQ for more information on the distribution of modified source versions. ======================================================================== * texlive-20200406-source/m4/README ======================================================================== $Id: README 43261 2017-02-17 22:37:44Z karl $ Copyright 2009-2017 Karl Berry Copyright 2009-2012 Peter Breitenlohner You may freely use, modify and/or distribute this file. This directory is the central repository for Autoconf macros needed to build the TeX Live (TL) tree. They are incorporated into the configure scripts. (1) Public macros such as libtool.m4 used to build the libraries and programs in the TL subdirectories libs/*/, utils/*/, and texk/*/ that are owned by the TL tree, i.e., either not maintained independently or with a proxy Makefile.am using an (almost) unmodified source tree and bypassing the original build system. Note: the files libtool.m4 and ../build-aux/ltmain.sh must match. (2) `Public' macros for the TL build system and for the TL libraries in the subdirectories libs/*/, texk/kpathsea/, and texk/ptexenc/, used to configure programs and other libraries requiring these TL libraries. The macros are designed with the aim that programs maintained independently can be built as part of the TL tree or without TL (using installed versions of the required libraries), ideally using the same unmodified sources. (3) `Private' macros for the TL infrastructure, only used in directories owned by the TL tree. kpse-pkgs.m4: defines lists of subdirectories libs/Lib/, utils/Util/, and tex/Prog/ with libraries and programs that can be built as part of the TL tree. kpse-setup.m4: macros that walk through these lists to provide configure options. They depend on configure fragments */*/ac/withenable.ac defining the dependencies between these libraries and programs. See also the sibling top-level am/ directory. ======================================================================== * texlive-20200406-source/texk/README ======================================================================== $Id: README 54456 2020-03-21 22:04:56Z karl $ Copyright 2006-2020 TeX Users Group. You may freely use, modify and/or distribute this file. This TeX Live directory contains the programs that use the kpathsea library for configuration and path searching, and the library itself. Some programs can be built on their own, but others, including kpathsea itself, cannot. Instead, try using the script ../../Build or the equivalent configure && make. In general, for TeX Live we only test configuring the whole tree. Upstream sources and last-checked versions follow. If a url is given, that is the upstream, although this does not mean the program is actively maintained. Programs marked with a "?" are not (knowingly) maintained here, but the upstream is unknown. If a program is knowingly maintained here in the TL repo, that is explicitly stated. Anyone -- please research and update any of this information. afm2pl - maintained here old info: http://tex.aanhet.net/afm2pl/ bibtex-x - maintained here, contains bibtex8 bibtexu old info: http://omega.enstb.org/yannis/bibtexu/ chktex 1.7.6 - checked 15mar20 http://mirror.ctan.org/support/chktex/ http://download.savannah.gnu.org/releases/chktex/ cjkutils 4.8.4 - checked 18apr15 http://cjk.ffii.org/cjk-4.8.4.tar.gz detex 2.8.6 - checked 15mar20 https://github.com/pkubowicz/opendetex/releases old info: http://www.cs.purdue.edu/homes/trinkle/detex/ dtl - maintained here, by Takuji dvi2tty 6.0.0 - checked 15mar20 https://github.com/t-tk/dvi2tty/releases dvidvi - maintained here dviljk - maintained here, by Joachim Schrod dviout-util - by Japanese TeX Development Community (Hironobu, Takuji et al.) https://github.com/texjporg/tex-jp-build but also: https://github.com/aminophen/dviout-util dvipdfm-x - maintained here, by us, contains dvipdfmx xdvipdfmx old info: http://project.ktug.org/dvipdfmx/ dvipng 1.17 - checked 06jan20 http://mirror.ctan.org/dviware/dvipng/ dvipos - maintained here, by us dvipsk - maintained here, by us dvisvgm 2.9.1 - checked 21mar20 https://dvisvgm.de/Downloads/ gregorio 5.2.1 - checked 19dec19 CTAN/support/gregoriotex/gregorio-5.2.1.zip gsftopk - from Paul Vojta's xdvi. kpathsea - maintained here, by us lcdf-typetools 2.108 - checked 15mar20 http://www.lcdf.org/type/ makeindexk - maintained here, by us makejvf - by Japanese TeX Development Community (Takuji, Hironobu et al.) https://github.com/texjporg/tex-jp-build mendexk - by Japanese TeX Development Community (Takuji, Hironobu et al.) https://github.com/texjporg/tex-jp-build musixtnt 2016-01-30 - checked 15mar20 http://mirror.ctan.org/macros/musixtnt/ ps2pk - maintained here, by us psutils 1.23 - checked 16jan14 https://github.com/rrthomas/psutils/releases/ ptexenc - maintained here, by us (Akira et al.) but also: https://github.com/texjporg/tex-jp-build seetexk - maintained here, by us (Takuji, Hironobu et al.) tex4htk - part of tex4ht, needs full release https://tug.org/tex4ht/ texlive - scripts and files maintained here, by us ttf2pk2 - maintained here, by us ttfdump - maintained here, by us, since Taiwan upstream apparently gone. upmendex 0.54 - by Takuji Tanaka http://www.ctan.org/pkg/upmendex https://github.com/t-tk/upmendex-package web2c - maintained here, by us - core web2c, plain tex, etc. The TeX variant dirs (pdftexdir, xetexdir, etc.) updated here by their respective maintainers. More info: aleph - maintained here ctie - CTAN cweb - https://github.com/ascherer/cwebbin (original Knuth, ftp://ftp.cs.stanford.edu/pub/cweb/) eptex - https://github.com/texjporg/tex-jp-build also: https://osdn.jp/projects/eptex etex - maintained here euptex - http://www.t-lab.opal.ne.jp/tex/uptex_en.html mflua[jit] - https://serveur-svn.lri.fr/svn/modhel/mflua also: http://www.luatex.org/download.html mplibdir - http://tug.org/metapost/ also: http://www.luatex.org/download.html luatex - http://luatex.org/ pdftex - http://pdftex.org/ [u]pmpost - nothing current, see README for old info ptex - https://github.com/texjporg/tex-jp-build old info: https://asciidwango.github.io/ptex/ synctex - maintained here, but also https://github.com/jlaurens/synctex uptex - http://www.t-lab.opal.ne.jp/tex/uptex_en.html xetex - http://tug.org/xetex/ xdvik 22.87.04 - checked 15mar20 http://sourceforge.net/projects/xdvi/files/xdvik/ Procedure for updating xdvik from sourceforge release: tar xf ... diff -crN2 \ -x .cvsignore -x configure -x autom4te.cache -x Makefile.in -x ChangeLog \ xdvik xdvik-22.87.03/texk/xdvik >/tmp/c cd xdvik patch -p1 I call the DLL libgnurx-0.dll which hopefully should be unique. At least it isn't "regex.dll" which has been used by the gnuwin32.sourceforge.net site for *two* incompatible DLLs. (That mess, and the mess with their build of Henry Spencer's regex library, was what lead me to build my own GNU regex library. See the gnuwin32-users mailing list archives from December 2006.) The "-0" is so that if at some point I build a release that isn't binary compatible, I can then increment that and use a different name. The import library for gcc is called libgnurx.dll.a, but I also distribute a copy of it called libregex.a so that configure scripts that look for -lregex will work. Note that none of the wide-character and i18n functionality which is built when this is part of glibc gets compiled. Thus things like character classes most probably work only for single-byte codepages. Compiling that stuff would drag in lots of glibc's locale handling stuff which is completely incompatible with Microsoft's C library's locale handling anyway. Also, I am not sure whether the GNU regex code is prepared to handle a two-byte wchar_t, or does it assume that wchar_t is int as it is on Linux? Hmm, actually there is lots of sizeof(wchar_t) in glibc, so maybe it *is* prepared? Maybe later... But anyway, it would presumably mean we should have not just the regex functionality but a larger subset of glibc that would include all locale, ctype, wchar, mbs, etc stuff, presumably ending up with a very large part of glibc (not the system calls, obviously). Indeed, something to save for later, or never... --Tor Lillqvist , ======================================================================== * texlive-20200406-source/texk/detex/detex-src/README ======================================================================== OpenDetex - Version 2.8.5 OpenDetex is a program to remove TeX constructs from a text file. It recognizes the \input command. This program assumes it is dealing with LaTeX input if it sees the string "\begin{document}" in the text. It recognizes the \include and \includeonly commands. This directory contains the following files: README - you're looking at it. ChangeLog - detailed history of changes done in different versions of the program COPYRIGHT - information about program authors and license INSTALL - how to compile the program Makefile - makefile for generating detex detex.1l - troff source for the detex manual page. Assuming you have the -man macros, use "make man-page" to generate it. detex.c - C code generated from detex.l distributed to allow building from source without having Flex installed detex.h - Various global definitions. These should be modified to suit the local installation. detex.l - Lex/Flex and C source for the detex program. This software package is distributed under the NCSA/University of Illinois Open Source License. OpenDetex was created by Piotr Kubowicz from version 2.8 of Detex program by Daniel Trinkle, obtained from http://www.cs.purdue.edu/homes/trinkle/detex/ Currently home of OpenDetex is GitHub: https://github.com/pkubowicz/opendetex You can check for latest version, submit bug reports or patches, or ask for becoming team member there. ======================================================================== * texlive-20200406-source/texk/dvidvi/README ======================================================================== dvidvi 1.0, Copyright (C) 1988-2011, Radical Eye Software Anyone may freely use, modify, and/or distribute this file, without limitation. Here's a little hack I threw together for those doing pagination tricks. Any improvements are appreciated. Enjoy! The dvidvi program converts a dvi file into another dvi file, with perhaps certain changes. Invocation is dvidvi param infile outfile What are the parameters? The 'easy' paramaters are the following: -f n page n is first page selected -l n page n is last page selected -n n select at most n pages. Notice that n is the number of pages selected, independently of the number of pages actually contained in a sheet -i { n1..n2 | n1 }[,...] include pages (ranges allowed). When this option is used, ONLY the specified pages are selected. However, we can exclude from these pages with the option -x -x { n1..n2 | n1 }[,...] exclude pages (ranges allowed) -q work in quiet mode, that is do not print in the screen messages of how the work is being done. -r reverse the order of the pages. The page numbers for the above options -f -l -i and -x can be specified in different ways. 1) If a number n is given, it is interpreted as the n'th page from the begining of the .dvi file. Of course, this number is independent of the page number assigned by TeX. 2) TeX page numbers are those who are actually written in the page; these page numbers can be modified, for example, by using the TeX commands \pagenumbering, \setcounter{page}{n}, and \addtocounter{page}{n}. A TeX page number can be specified by preceding the number n with the character @. Thus, if you specify -f @25 -l @30 you select the pages between 25 and 30, these numbers being those assigned by TeX. 3) However, several pages can have the same TeX page number in a .dvi file. For example, the introductory pages in a book are numbered i, ii, and so on until the first chapter begins and then, the pages are numbered 1, 2, etc. In this case, the pages numbered i and 1 in the .dvi file have the same TeX page number. If you want to select for example the second occurrence of the page numbered 1, you can specify a page number as (@2)1. Thus @1 is equivalent to (@1)1. For example, if you specify -f (@2)1 -l(@2)10 you select the pages between 1 and 10 of the first chapter, not the introductory pages between i and x. There is another parameter that tells dvidvi how you want to change page layout and specifications. This is the -m parameter. The number preceding the colon is the modulo value. Everything will be done in chunks of pages this big. If there is no colon, than the default value is assumed to be one. The last chunk of pages is padded with as many blank pages as necessary. Following the colon is a comma-separated list of page numbers. These page numbers are with respect to the current chunk of pages, and must lie in the range zero to the modulo value less one. If a negative sign precedes the number, then the page is taken from the mirror chunk; if there are m chunks, then the mirror chunk of chunk n is the chunk numbered m-n-1. Put simply, it is the chunk numbered the same, only from the end. This can be used to reverse pages. If no number is given, the page number defaults to 1. Following each page number is an optional offset value in parenthesis, which consists of a pair of comma-separated dimensions. Each dimension is a decimal number with an optional unit of measure. The default unit of measure is inches, or the last unit of measure used. All units are in true dimensions. Allowable units of measure are the same that TeX allows: in, mm, cm, pt, pc, dd, and cc. Simple enough, eh? Okay, let's do some simple things. -m - Reverses the order of the pages. This time, both the modulo and the page number are defaulted. -m 2:0 Selects the first, third, fifth, etc. pages from the file. Print this one after printing the next, taking the paper out of the feed tray and reinserting it into the paper feed. -m 2:-1 Selects the second, fourth, etc. pages, and writes them in reverse order. -m 4:-1,2(4.25in,0in) -m 4:-3,0(4.25in,0in) Useful for printing a little booklet, four pages to a sheet, double-sided, for stapling in the middle. Print the first one, put the stack back into the printer upside down, and print the second. The `in' specifications are superfluous. -m ,(1pt,1) Scare your system administrator! Actually, things are so blurry with this option, you may want to send enemies letters printed like this. *Long* letters. -m 4:0(5.5in,4.25),3(0,4.25) -m 4:1(0in,4.25),2(5.5,4.25) Print a four-page card on one sheet. Print the first, rotate the paper 180 degrees and feed it again. (PostScript people can do funny tricks with PostScript so this isn't necessary.) Enjoy; this is an early release, so make suggestions, improvements, and I'll get back to you with a better version later. ======================================================================== * texlive-20200406-source/texk/dvipdfm-x/README ======================================================================== dvipdfmx and xdvipdfmx for TeX Live =================================== This package is released under the GNU GPL, version 2, or (at your option) any later version. dvipdfmx is now maintained as part of TeX Live. Mailing list for bug reports and all discussion: https://lists.tug.org/dvipdfmx; anyone can join the list, but it is not necessary to join to post. Archives are public. xdvipdfmx ========= xdvipdfmx is an extended version of dvipdfmx, and is now incorporated in the same sources. The extensions provided by xdvipdfmx provide support for the Extended DVI (.xdv) format used by xetex, including support for platform-native fonts and the xetex graphics primitives, as well as Unicode/OpenType text. Like its direct ancestor dvipdfmx, this is free software and may be redistributed under the terms of the GNU General Public License, version 2 or (at your option) any later version. Jonathan Kew mentions that in the past, XeTeX used a Mac-specific program xdv2pdf as the backend instead of xdvipdfmx. xdv2pdf supported a couple of special effects that are not yet available through xdvipdfmx: the Quartz graphics-based shadow support, AAT "variation" fonts like Skia, transparency as an attribute of font color, maybe other things. It would be nice for those things to continue to be supported, if anyone is looking for some nontrivial but not-impossible job and happens across this file. Contents -------- 1. Introduction 2. Installation 2.1. Compiling and Installation 2.2. TeX Directory Structure (TDS) 2.3. Auxiliary Files 3. CJK Support 3.1. Quick Test of Installation 3.2. CJK-LaTeX and HLaTeX 3.3. Omega and Other Extended TeX 3.4. Vertical Typesetting 4. Unicode Support 4.1. Unicode Support in General 4.2. ToUnicode CMap Support 4.3. OpenType Support and Unicode 4.4. Type1 Font Support and Unicode 5. Graphics and Image Format 5.1. Supported Graphics File Format 5.2. Graphics Extension 5.3. Using External Programs for Format Conversion 6. DVI Specials 6.1. Compatibility 6.2. Additions to Dvipdfm's pdf: Special 7. Font Mapping 8. Incompatible Changes From Dvipdfm 9. Other Improvement Over Dvipdfm 10. Font Licensing and Embedding 1. Introduction ------------ The dvipdfmx (formerly dvipdfm-cjk) project provides an eXtended version of the dvipdfm, a DVI to PDF translator developed by Mark A. Wicks. The primary goal of this project is to support multi-byte character encodings and large character sets for East Asian languages. The secondary goal is to support as many features as pdfTeX developed by Han The Thanh. This project is a combined work of the dvipdfm-jpn project by Shunsaku Hirata and its modified one, dvipdfm-kor, by Jin-Hwan Cho. 2. Installation ----------------------- Typical usage and installation steps are not different from the original dvipdfm. Please refer documents from dvipdfm distribution for detailed instruction on how to install and how to use dvipdfm. 2.1. Compiling and Installation If you have obtained older version, please use latest version unless you have a clear reason to choose older versions. The latest snapshot of dvipdfmx source is available at: http://project.ktug.or.kr/dvipdfmx/snapshot/ And the CVS repository for this project can be obtained through anonymous CVS access with the following command: cvs -d:pserver:anonymous@cvs.ktug.or.kr:/home/cvsroot login cvs -d:pserver:anonymous@cvs.ktug.or.kr:/home/cvsroot co dvipdfmx When prompted for a password, simply press the Enter key. The kpathsea library is required to compile and install dvipdfmx in UNIX or UNIX-like platforms. It is usually included for most of TeX distributions. If you already have installed dvipdfm (the original) by yourself, you should already have kpathsea library and it's headers. And zlib library is highly recommended as dvipdfmx can't compress data without this. Before starting things, you must check the location of your TeX installation. If other TeX related programs are installed under, e.g., '/usr/local/TeX/bin', you should specify directory '/usr/local/TeX' as an for ./configure script as ./configure --prefix=/usr/local/TeX --with-kpathsea=/usr/local/TeX If you are using libpaper to handle paper sizes for various program, you can use --with-paper option to ./configure. The location of libpaper library can be specified with this option as --with-paper=DIR Please note thath dvipdfmx uses JIS paper size for B-series paper instead of ISO's one for historical reason. (too late to change the default behavior) The most easiest way to fix this is to use libpaper if you already have that, otherwise define ISO_PAPERSIZE macro at compilation time. Dvipdfmx requires libpng library available from http://www.libpng.org/pub/png/libpng.html to read PNG format images. To tell dvipdfmx the location of libpng header and library, use configure option --with-png=DIR After you have finished ./configure, just type make && make install then dvipdfmx will be installed under the directory specified by the --prefix option to ./configure script. After you have successfully installed dvipdfmx, you may need to install various auxiliary files and slightly adjust location of files or configuration. Amount of additional files and modification depends on your environment, and briefly described in the sections follows. 2.2. TeX Directory Structure (TDS) If your TeX installation is conforming with TDS version 1.1 described in http://www.tug.org/ftp/tex/tds-1.1/ , then you'll need to adjust your dvipdfmx installtion. This also applies when you have updated programs without modifying existing platform independent files (files in texmf directory). Dvipdfmx installs few files in addition to dvipdfmx program itself, dvipdfmx.cnf, cid-x.map and others, but it currently does not choose installation directory as appropriate for TDS 1.1. If your 'kpsewhich' program recognizes '.sfd' file format, i.e., kpsewhich --show-path --format=.sfd does not answer as 'unknown format', then you should move several files under appropriate locations or should modify texmf.cnf as follows: * Subfont Definition (SFD) Files Recommended location of SFD files (.sfd) is $TEXMF/fonts/sfd/ and environmental variable for specifying additional search path for this file format files is SFDFONTS . To make those files visible to dvipdfmx under TDS 1.1 installation, you must move all .sfd files to the directory mentioned above or set SFDFONTS variable in texmf.cnf. As some programs may not be updated to follow this convention yet, it is recommended to preserve old installation directory. If you have .sfd files under "$TEXMF/dvipdfm/", please do not use that, please move all files to the directory mentioned above. * PostScript CMap Resources Recommended location of CMap files (no suffix or with suffix .cmap) is $TEXMF/fonts/cmap/ and environmental variable for adding extra search path for this format files is CMAPFONTS You may want to set CMAPFONTS to include GhostScript's Resource path, e.g., /usr/share/ghostscript/Resource/CMap// in your texmf.cnf file as this resource can be used by various programs that manipulates PS/PDF files. Dvipdfmx installs few additional files into the directory "$TEXMF/dvipdfm/CMap", please move this files to the directory for CMap files. But please note that file "Adobe-Identity-UCS2" is not meaningful to other programs at all, so you should place at least this file in different location than CMap files. (Or you can just remove this unless you see problems in copy-and-pasting text from dvipdfmx output PDF.) * Font Mapping Files Suggested place for dvipdfm's font mapping files (.map) is $TEXMF/fonts/map/dvipdfm/ and environmental variable for this format files is TEXFONTMAPS For files containing dvipdfmx extension to dvipdfm format, place them into $TEXMF/fonts/map/dvipdfmx/ instead of sub-directory 'dvipdfm'. * OpenType Fonts Appropriate place for OpenType font with PostScript outline (.otf) is $TEXMF/fonts/opentype/supplier/typeface/ where 'supplier' and 'typeface' should be replaced with font's supplier and typeface identifier strings. 2.3. Auxiliary Files 1) CMap PostScript Resources Dvipdfmx internally identifies glyphs in a font with identifier represented as numbers ranging from 0 to 65535. CMap PostScript Resources defines how the input character codes are translated to those ID's (CID). CID's should be uniquely assigned to every glyphs contained in a collection of glyphs. Adobe has defined several "character collection"s; Adobe-GB1 (Simplified Chinese), Adobe-CNS1 (Traditional Chinese), Adobe-Japan1 (Japanese), and Adobe-Korea1 (Korean), which contains much of glyphs necessary for publishing for each languages. Details on Adobe's character collections can be found at Adobe's developer site: http://partners.adobe.com/public/developer/font/index.html Please install CMap resource files under the directory ${TEXMF}/fonts/cmap , or set CMAPFONTS variable to point the directory containing CMap resource in texmf.cnf. If your TeX installation does not conforming TDS 1.1, then you should set CMAPINPUTS variable to make those files visible to dvipdfmx. For examples, CMAPINPUTS= .;$TEXMF/fonts/cmap// Adobe's "CMaps for PDF 1.4 CJK Fonts" are available from: http://partners.adobe.com/public/developer/acrobat/index_advanced.html or ftp://ftp.oreilly.com/pub/examples/nutshell/cjkv/adobe/ You can find a short explanation of each CMap files in cid2code.txt contained in the archive files found at the above FTP site. 2) SubFont Definition Files ..... 3) Adobe Glyph List and ToUnicode Mapping Files The Adobe glyph list (AGL) file describes correspondence between PostScript glyph names (e.g., AE, Aacute, ...) and it's Unicode character sequences. Most features described in the section "Unicode Support" requires this file. Dvipdfmx looks for file "glyphlist.txt" when conversion from PostScript glyph names to Unicode is necessary. This conversion is done in various situations; when creating ToUnicode CMap for 8bit encoded fonts, finding glyph description from TrueType/OpenType fonts supporting Unicode when the font itself does not provide the mapping from PostScript glyph names to glyph indices (version 2.0 "post" table), and when encoding "unicode" is specified for Type 1 font. The "glyphlist.txt" file written by Adobe is found at http://partners.adobe.com/asn/tech/type/glyphlist.txt You should place file "glyphlist.txt" in a directory shown by kpsewhich --progname=dvipdfm --show-path="other text files" Please check kpathsea library can find this file by 'kpsewhich' command: kpsewhich --progname=dvipdfm --format="other text files" glyphlist.txt The 'progname' is not dvipdfmx but dvipdfm here. ToUnicode mapping is similar to glyph list file but describes correspondence between CID numbers and Unicode values. The content of this file look like a CMap files and is contained in "CMaps for PDF 1.4 CJK Fonts" from Adobe (see "CMap PostScript Resources" above). This file is required to support TrueType font (including OpenType fonts with TrueType outline). Those files should be installed same directory as ordinary CMap files. 3. CJK Support 3.1. Quick Test of Installation 3.2. CJK-LaTeX and HLaTeX 3.3. Omega and Other Extended TeX 4. Unicode Support 4.1. Unicode Support in General 4.2. ToUnicode CMap Support 4.3. OpenType Support and Unicode 4.4. Type1 Font Support and Unicode 5. Graphics and Image Format 5.1. Supported Graphics File Format 5.2. Graphics Extension 5.3. Using External Programs for Format Conversion 6. DVI Specials 6.1. Compatibility 6.2. Additions to Dvipdfm's pdf: Special 7. Font Mapping 7.1. Options for CJK Font Few options are available in dvipdfmx (for CID-keyed fonts) in addition to the original dvipdfm. 1) TTC Index You can specify TrueType Collection index number with :n: option in front of TrueType font name. min10 H :1:mincho In this example, the option :1: tells dvipdfmx to select TrueType font #1 from TrueType collection font "mincho.ttc". 2) No-embed Switch It is possible to block embedding glyph data with the character `!' in front of the font name in the font mapping file. This feature reduces the size of the final PDF output, but the PDF file may not be viewed exactly in other systems on which appropriate fonts are not installed. Use of this option is not recommended for fonts that contains unusual characters (and characters having different width from default value). Please note that glyph metric information is not written in the output PDF file for TrueType fonts without embedding. It will be treated as fixed-pitch with all widths equal to the default value (will be fixed someday). 3) Stylistic Variants Keywords ",Bold", ",Italic", and ",BoldItalic" can be used to create synthetic bold, italic, and bolditalic style variants from other font using PDF viewer's (or OS's) function. jbtmo@UKS@ UniKSCms-UCS2-H :0:!batang,Italic jbtb@Unicode@ Identity-H !batang/UCS,Bold Availability of this feature highly depends on the implementation of PDF viewers. This feature is not supported for embedded fonts in the most of PDF viewers, like Adobe Acrobat Reader and GNU Ghostscript. Notice that this option automatically disable font embedding. 8. Incompatible Changes From Dvipdfm 9. Other Improvement Over Dvipdfm 9.1. Encryption 9.2. Font 10. Font Licensing and Embedding In OpenType format, information regarding how the font should be treated when creating documents can be recorded. Dvipdfmx uses this information to decide whether embedding font into the document is permitted. This font embedding information is indicated by a flag called as "fsType" flag; each bit representing different restrictions on font embedding. If multiple flag bits are set in fsType, the least restrictive license granted takes precedence in dvipdfmx. The fsType flag bits recognized by dvipdfmx is as follows: * Installable embedding All font with this type of license can be embedded. * Editable embedding All font with this type of license can be embedded. * Embedding for Preview & Print only Dvipdfmx give the following warning message for fonts with this type of license: This document contains `Preview & Print' only licensed font For the font with this type of licensing, font embedding is allowed solely for the purpose of (on-screen) viewing and/or printing the document; further editing of the document or extracting an embedded font data for other purpose is not allowed. To ensure this condition, you must at least protect your document with non-empty password. All other flags are treated as more restrictive license than any of the above flags and treated as "No embedding allowed"; e.g., if both of the editable-embedding flag and unrecognized license flag is set, the font is treated as editable-embedding allowed, however, if only unrecognized flags are set, the font is not embedded. Embedding flags are preserved in embedded font if the font is embedded as a TrueType font or a CIDFontType 2 CIDFont. For all font embedded as a PostScript font (CFF, CIDFontType 0 CIDFont), they are not preserved. Only /Copyright and /Notice in the FontInfo dictionary are preserved in this case. Some font vendors put different embedding restrictions for different condition; e.g., font embedding might be not permitted for commercial materials unless you acquire "commercial license" separately. Please read EULA carefully before making decision on font usage. Adobe provide a font licensing FAQ and a list of embedding permissions for Adobe Type Library fonts: http://www.adobe.com/type/browser/legal/ For Japanese font in general, embedding permission tend to be somewhat restrictive. Japanese users should read the statement regarding font embedding from Japan Typography Association (in Japanese): http://www.typography.or.jp/act/morals/moral4.html 11. Random number generating function Prefixes of font names are calculated by using a function which generates pseudo random numbers. In order to obtain a unique prefix on all platforms when current time is common, a special function MT19937, coded by Takuji Nishimura and Makoto Matsumoto, is used. The header of the C program by Takuji Nishimura and Makoto Matsumoto is the following: A C-program for MT19937, with initialization improved 2002/1/26. Coded by Takuji Nishimura and Makoto Matsumoto. Before using, initialize the state by using init_genrand(seed) or init_by_array(init_key, key_length). Copyright (C) 1997 - 2002, Makoto Matsumoto and Takuji Nishimura, All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. The names of its contributors may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Any feedback is very welcome. http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html email: m-mat @ math.sci.hiroshima-u.ac.jp (remove space) ======================================================================== * texlive-20200406-source/texk/dvipng/dvipng-src/README ======================================================================== dvipng ****** This program makes PNG and/or GIF graphics from DVI files as obtained from TeX and its relatives. If GIF support is enabled, GIF output is chosen by using the 'dvigif' binary or with the '--gif' option. It is intended to produce anti-aliased screen-resolution images as fast as is possible. The target audience is people who need to generate and regenerate many images again and again. The primary target is the preview-latex (X)Emacs package, a package to preview formulas from within (X)Emacs. Yes, you get to see your formulas in the (X)Emacs buffer, see . Another example is WeBWorK, an internet-based method for delivering homework problems to students over the internet, giving students instant feedback as to whether or not their answers are correct, see . A more recent addition to the dvipng-using applications out there is MediaWiki, the software behind Wikipedia and many other wikis out there. Dvipng is used to render mathematical formulae from version 1.8.0 of MediaWiki, see . Other applications may also benefit, like web applications as latex2html and WYSIWYG editors like LyX. Benefits of dvipng ================== The benefits of 'dvipng'/'dvigif' include * Speed. It is a very fast bitmap-rendering code for DVI files, which makes it suitable for generating large amounts of images on-the-fly, as needed in preview-latex, WeBWorK and others. * It does not read the postamble, so it can be started before TeX finishes. There is a '--follow' switch that makes dvipng wait at end-of-file for further output, unless it finds the POST marker that indicates the end of the DVI. * Interactive query of options. dvipng can read options interactively through stdin, and all options are usable. It is even possible to change the input file through this interface. * Supports PK, VF, PostScript Type1, and TrueType fonts, subfonts (i.e., as used in CJK-LaTeX), color specials, and inclusion of PostScript, PNG, JPEG or GIF images. * and more... Installation ============ Read 'INSTALL', included in the distribution. Usage ===== To use dvipng at its simplest, simply type dvipng foo where 'foo.dvi' is the output of TeX that you want to convert to PNG format. If there are four pages in 'foo.dvi', those pages will be output as 'foo1.png', 'foo2.png', 'foo3.png', and 'foo4.png', respectively. Many options are available (see the info manual). For a brief summary of available options, just type dvipng --help Availability ============ The dvipng package is available at Savannah, the GNU project site. Since dvipng is not part of the GNU project, although released under the GNU GPL, the web address is . Instructions for anonymous CVS access can be found at . Contacts ======== Bug reports should be sent to . Questions, suggestions for new features, pleas for help, and/or praise should go to . For more information on this mailing list, send a message with just the word 'help' as subject or body to or look at . Offers to support further development will be appreciated. For developer access, ask on . Copying ======= This program is released under the GNU Lesser General Public License version 3, see the COPYING file in the dvipng distribution or . Copyright (C) 2002-2014 Jan-AAke Larsson Todo ==== * Use gs interpreter library for speed and possibly for functionality. * Add more color models for xcolor compatibility * Enable a named pipe as DVI * Further speed improvements. * Other output specials and source specials. * Clean internal structures. Overhaul file handling. * Fix the SELFAUTO stuff at runtime rather than at build time ======================================================================== * texlive-20200406-source/texk/dvipsk/contrib/volker/README ======================================================================== NOTE S Rahtz 1998/01/18: renamed files to suite 8+3 .cfg style ******************************************************************** Release 1.13, 21 Aug 1995 Release 1.12, 02 Mar 1995 Release 1.0, 20 Feb 1995 This is a set of files which can be used with dvips to control certain parameters of the printer, like simplex/duplex printing, or screen frequencies of images. Put together by Volker Kuhlmann, VOLKER@ELEC.CANTERBURY.AC.NZ. No copyright. Freely distributable. If you make additions, please send me a copy. LIST OF FILES ============= README This file. config.* Configuration files and header files for dvips. Special format which serves both purposes. INSTALLATION ============ Copy these files into a directory which is searched by dvips both for configuration files and for header files. dvips looks in $TEXCONFIG for configuration files, and in $DVIPSHEADERS for header files. For details please see the dvips documentation. USAGE ===== dvips reads the instructions in a configuration file with the -P option: dvips -P All these configuration files contain the PostScript code for the respective operation as well, and can be used as header file as they are. Now to the stuff provided: -P simplex On a duplex printer, force printing in simplex mode. On a simplex printer, this will be ignored. -P duplong On a duplex printer, force duplex printing with binding on the long edge. On a simplex printer, this will be ignored. -P dupshort On a duplex printer, force duplex printing with binding on the short edge. On a simplex printer, this will be ignored. -P a3 Print on A3 paper. Note: this is just a demo - use "-t a3" instead! -P inv Print all pages inverted, i.e. white letters on black background. Note: this currently does not work properly. Any hints/fixes greatly appreciated! -P screenN Print images with a screen frequency of N lpi at 45 degrees. N = {70, 80, 85, 90, 100, 110, 120, 130, 140, 150} -P screen100-0 Print images with a screen frequency of 100lpi at 0 degrees. Note: When working with screen frequencies, it is possible that turning the printer off and back on solves the problem of the screen commands not having any effect. CONTROLLING SCREEN FREQUENCIES ============================== Various PostScript commands for controlling the screen frequencies of images exist, but not all work on all printers. See fragments of PostScript code and comments below. The form working on most printers is LPI DEGREES {FUNCTION} setscreen Insert numbers for LPI and DEGREES, and a function for FUNCTION about which I only know (right or wrong?): "Should read 2 values from the stack (x, y coordinates in a halftone cell), and return one in the range -1 to 1. The return values determine the order in which pixels within a halftone cell are whitened to produce any desired shade of gray." The simplest function is {pop}, creating a "linescreen" pattern. There is also a function "Dot" (currently used) and "Ellipse". For any other frequencies/angles/functions put the instructions in a file, and load the file with dvips -h Thanks to osakari@unda.fi (Olavi Sakari) for some help, and the "Dot" and "Ellipse" code. Notes follow: %currentscreen 3 1 roll pop pop 70 45 3 -1 roll setscreen % Works on HP LJ3Si, HP LJ4m. Ignored on HP LJ4mv (VK). %currentscreen 3 1 roll pop pop 70 45 3 -1 roll sethalftone % Ignored on HP LJ4mv (VK). %70 45 {pop} setscreen % Produces a funny, 1-diagonal pattern ("linescreen") on HP LJ4mv (VK). % "Dot": %70 45 {abs exch abs 2 copy add 1 gt {1 sub dup mul exch 1 sub dup mul add 1 % sub }{dup mul exch dup mul add 1 exch sub }ifelse} setscreen % Works on HP LJ3Si, HP LJ4m, HP LJ4mv (VK). % "Ellipse": %70 45 {dup 5 mul 8 div mul exch dup mul exch add sqrt 1 exch sub} setscreen % Works on HP LJ4mv (VK). %70 45 %<< % /HalftoneType 1 % 0 gives range check error, 2 gives undefined error (VK). % /Frequency 150 % /Angle 20 % the values for /Frequency, /Angle are irrelevant % /SpotFunction {pop} %>> %setscreen % 70 45 seem to replace /Frequency and /Angle in dict % - Note: NO curly braces around the dict! % Works on HP LJ4m, produces errors with HP LJ3Si, % Produces "linescreen" on HP LJ4mv caused by {pop} (VK). %<< % /HalftoneType 1 % % 0 gives range check error, 2 gives undefined error (VK). % /Frequency 70 % /Angle 45 % /SpotFunction {pop} %>> %sethalftone % Level 2 only % Produces "linescreen" on HP LJ4mv caused by {pop} (VK). ======================================================================== * texlive-20200406-source/texk/dvipsk/hps/README_HPS.txt ======================================================================== README_HPS, version 0.3 last modified Wed Jul 19 11:34:52 MDT 1995 This is an alpha release of a hacked version of dvips v5.58 for converting HyperTeX into HyperPostScript that in turn can be run through the Adobe distiller to produce a PDF file with chapter and section numbers, references, equation numbers, etc. all links. This program is intended for use with the TeX and LaTex macros modified to create HyperTeX (see http://xxx.lanl.gov/hypertex/). With these macros, TeX and LaTex can be converted into HyperTeX without any additional work by the user. The linking information is stamped into the dvi file via a set of html: \special commands. Normally conversion to PostScript involves a loss of this information. This program preserves all of the information in the Hyperdvi file and makes it available to all PostScript interpreters, as well as the Adobe PDF distiller. In addition, the HyperPostScript produced will work with ordinary PostScript interpreters as well. The software itself is availabe at http://nqcd.lanl.gov/people/doyle/ or at ftp://gita.lanl.gov/people/doyle . INSTALLATION: To compile this program, just follow the usual instructions. Since this version stems from the latest version of dvips, you should install the up-to-date versions of config.* and the *.pro files. You can edit the Makefile to put these in some other place besides the usual one. Compiling with the -DHPS option (enabled by default in the Makefile) will produce the hacked version of dvips. Disabling this option will produce the version of dvips that you already know and love. I have made an effort to keep my changes to the dvips source code minimal. Most of the important stuff is in the source file hps.c. Almost all of the changes to the dvips source code are mandated by the need for putting information at the beginning of the PostScript file that isn't normally available until the entire dvi file has been completely processed. Thus, two temporary files are created when running the program to create HyperPostScript, head.tmp and body.tmp. One can freely delete these after running the program. The files modified from the 5.58 dvips distribution are: dvips.c, dvips.h, paths.h, dosection.c, dopage.c, dospecial.c, output.c, header.c, Makefile, and a very minor (irrelevant) change to afm2tfm.c. Files added are README_HPS.txt, CHANGES_HPS.txt, hps.c, and hps.lpro. Anyone interested in going all the way to PDF is encouraged to install PostScript versions of the TeX fonts on their system. The Adobe PDF readers are extremely slow when dealing with bitmapped fonts. There is, however, a bug in the Adobe distillers that requires a workaround for certain characters. See below for more info. Commercial versions of the fonts are available from BlueSky and public domain versions are available at ftp://ftp.shsu.edu/pub/tex/fonts/postscript/bakoma/ and ftp://ftp.shsu.edu/pub/tex/fonts/postscript/paradissa/ . MS-DOS/Windows user beware: The latest Adobe Type Manager doesn't like the BlueSky fonts. I haven't tried the public domain ones. (On a new and different PC I was able to get the Blue Sky fonts installed with ATM and it works fine. Your mileage may vary. July 19, 1995.) USAGE: After compiling with -DHPS, a user can invoke the Hyperdvi to HyperPostScript conversion with the -z flag. If the flag is omitted, dvips simply will revert back to the default behavior and skip over the html: \special commands. There appears to be a bug in the Adobe distillers. For optimization purposes the distillers drop trailing blanks (character code 32) from strings. Unfortunately, the PostScript fonts use this character code for certain characters (notably the Greek letter psi), and so these characters are dropped. This bug still appears in the 2.0 distiller. -----HACK ALERT----- One way around this is to change all the trailing blanks of strings to a character code that isn't in the font. The default behavior is to substitute a blank for a missing character, i.e. the distiller is fooled into substituting the right character. For instance, with the BlueSky fonts, one can globally replace " )" with "\200)" and get the desired result. With the public domain fonts, one will probably have to use a character code in the range 128 to 191 since these fonts duplicate the first 32 characters starting at 192 to avoid MS-DOS problems. Fortunately, a simple sed will accomplish the replacements. OTHER NOTES: The program is rather straightforward and operates by converting the dvi html: href \specials into pdfmark operators in the PostScript that specify the links. The html: name \specials are combined into a PostScript dictionary with all of the target information. The hps.pro header tries to gracefully handle various contingencies. If the resulting HyperPostScript file is handed off to an ordinary PostScript interpreter, the pdfm operators are automatically defined to pop the irrelevant information off the stack. On the other hand, if it is handed to a distiller, the PostScript program in the header tries to determine of what vintage the distiller is so that various enhancements of the pdfmark operator can be used or ignored (color, border dashing, etc.). Thus the resulting files can be distilled using either the latest PC versions or the older Unix versions. The hps.pro header was written by Tanmoy Bhattacharya (http://nqcd.lanl.gov/people/tanmoy/tanmoy.html) with some additions by me. Other PostScript interpreters are free to pick up the pdfm operators as well. For instance, Tanmoy has hacked Ghostview to pick up the links and make them active. This can be found at ftp://gita.lanl.gov/people/tanmoy/hypertex/ . THINGS TO DO: 1) More robust error checking and avoidance. 2) Escaping html correctly for external URL's. 3) More support for external URL's 4) More flexibility in the appearance of links on the page 5) Automatically get the papersize and margins correct (hardcoded at the moment). 6) Make C source more platform independent (which T. Rokicki has tried very hard to maintain). Code has only been tested on NeXT 3.3 (Motorola and HP) and Sun/SPARC (SunOS 4.1.4), and HP-UX 9.0.5. No effort has been made to make the code portable for MS-DOS, OS/2, VMS, or any other of the platforms that appear in the #ifdef statements. Code improvements for MS-DOS and OS/2 are forthcoming. DISCLAIMER: This software is made available without any implied warranties. See http://xxx.lanl.gov/disclaimer.html for a more complete disclaimer. COPYRIGHT: The HyperPostScript additions to dvips are Copyright (C) 1994, 1995 by Mark Doyle and the University of California. You may modify and use this program to your heart's content, so long as you send modifications to Mark Doyle and abide by the rest of the dvips copyrights. The hps.lpro file is Copyright (C) 1994, 1995 by Tanmoy Bhattacharya, Mark Doyle, and the University of California. You may modify and use it to your heart's content, so long as you send modifications to Tanmoy Bhattacharya or Mark Doyle and abide by the rest of the dvips copyrights. Mark Doyle doyle@mmm.lanl.gov http://nqcd.lanl.gov/people/doyle/ ======================================================================== * texlive-20200406-source/texk/dvisvgm/dvisvgm-src/README ======================================================================== dvisvgm -- A DVI to SVG converter DESCRIPTION dvisvgm is a utility for TeX/LaTeX users. It converts DVI, EPS, and PDF files to the XML-based scalable vector graphics format SVG. DEPENDENCIES dvisvgm relies on the following free libraries: * Clipper (http://www.angusj.com/delphi/clipper.php) To compute the intersections of two curved paths, dvisvgm flattens the paths to polygons, intersects them using Clipper, and reconstructs the curves afterwards. * FontForge library (https://fontforge.github.io) dvisvgm can be built with optional WOFF support that allows to embed the font data in WOFF or TrueType format rather than as SVG. The FontForge library provides the required functions to create font files in these formats. A reduced version of the library is bundled with the dvisvgm sources. * FreeType 2 (http://www.freetype.org) This library is used to extract the glyph outlines from vector fonts (PFB, OTF, TTF). * Ghostscript (https://www.ghostscript.com) The PostScript special handler requires the Ghostscript shared library libgs.so.N (Linux) or gsdll32.dll/gsdll64.dll (Windows) to be installed. If the configure script finds the corresponding Ghostscript development files on the system, it directly links against libgs.so.N, where N is the library's ABI version. Otherwise, the library is looked up during runtime, and the PostScript support is enabled only if the shared library can be found. Due to incompatible changes of the Ghostscript API, dvisvgm requires Ghostscript 8.31 or later. * kpathsea (https://tug.org/kpathsea) This library is part of the Web2C package and is usually installed in conjunction with a TeX distribution. kpathsea provides functions for searching files in the large texmf tree. Please ensure that you use the kpathsea version coming with or matching your TeX system. * OpenSSL crypto library (https://www.openssl.org) dvisvgm comes with a bundled implementation of the MD5 hash algorithm which can optionally be replaced with the corresponding function of the OpenSSL crypto library. If the configuration script finds the OpenSSL development files on the build system, it links against libcrypto instead of the bundled MD5 module. * potracelib (http://potrace.sourceforge.net) Peter Selinger's bitmap tracing library is utilized to vectorize Metafont's bitmap output. A recent version is also part of the dvisvgm sources. * ttfautohint (https://www.freetype.org/ttfautohint) dvisvgm can optionally be built with ttfautohint support to replace the autohinting functionality of FontForge. Since it's still an experimental feature, ttfautohint support is disabled by default. The development files required for Windows can be found at https://github.com/mgieseki/ttfautohint-dll. * woff2 and brotli (https://github.com/google/woff2) These Google libraries are bundled with the dvisvgm sources. They are used to create WOFF2 from TrueType fonts. * xxHash (https://github.com/Cyan4973/xxHash) The xxHash library provides a fast hash algorithm. dvisvgm uses it to create unique integer values from PostScript character names in order to store them in a compact way together with their Unicode points. A recent version of xxHash is bundled with the dvisvgm sources. * zlib (http://www.zlib.org) This library is required to create compressed SVGZ files. BUILDING DVISVGM FROM SOURCE dvisvgm is written in C++11 (ISO C++ standard 2011) and requires an appropriate compiler, like GCC 4.9, Clang 3.3, or any later version. The configure script checks for the availability of C++11 support and adds the proper compiler options if necessary. Quick installation info: * ensure that the development packages of all libraries, listed above, are installed * type "./autogen.sh" if "configure" is not present in the dvisvgm root folder * either type "./configure" if you don't want to use the bundled libraries brotli, potrace, woff2, and xxHash but link against the corresponding system libraries, or type "./configure --enable-bundled-libs" in order to build and statically link the bundled libraries. * type "make" * type "make install" as root (or "sudo make install") For generic configuration instructions see the file INSTALL. The configure script should recognize all necessary parameters. If a library is installed but not detected, specify its location as commandline parameter of configure, e.g. ./configure --with-freetype=/usr/local/freetype (all available options can be displayed with ./configure --help) The tracer module calls Metafont in case of lacking TFM or PFB files via a system call. Please ensure that Metafont is installed and reachable through the system's search path. If you don't like compiling the sources yourself, you can download pre-compiled executables for Windows and MiKTeX from the project website instead (see below). USAGE Information about the command-line interface and the available options can be found in the manual page. ADDITIONAL INFORMATION This package is available from CTAN (dviware/dvisvgm) and can be downloaded from the project website as well: https://dvisvgm.de Here you can find the sources, pre-compiled binaries and further additional information about the converter and related topics. If you've found a bug, please let me know. You can either send me an email or preferably use the bug tracker at GitHub (https://github.com/mgieseki/dvisvgm). COPYRIGHT Copyright (C) 2005-2020 Martin Gieseking 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 3 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. See file COPYING for details. ======================================================================== * texlive-20200406-source/texk/lcdf-typetools/lcdf-typetools-src/README.md ======================================================================== LCDF Typetools ============== LCDF Typetools comprises several programs for manipulating PostScript Type 1, Type 1 Multiple Master, OpenType, and TrueType fonts. **cfftot1** translates a Compact Font Format (CFF) font, or a PostScript-flavored OpenType font, into PostScript Type 1 format. It correctly handles subroutines and hints. **mmafm** creates an AFM file (font metrics) corresponding to an instance of a Type 1 Multiple Master font. It reads the AMFM and AFM files distributed with the font. **mmpfb** creates a normal, single-master font program which looks like an instance of a Type 1 Multiple Master font. It reads the multiple master font program in PFA or PFB format. **otfinfo** reports information about OpenType and TrueType fonts, such as the OpenType features and Unicode code points they support, or the contents of their `size` optical size features. **otftotfm** creates TeX font metrics and encodings that correspond to an OpenType or TrueType font. It interprets glyph positionings, substitutions, and ligatures as far as it is able. You can say which OpenType features should be activated. **t1dotlessj** reads a Type 1 font, then creates a new Type 1 font whose only character is a dotless lower-case j matching the input font’s design. **t1lint** checks Type 1 fonts for correctness. It tests most of the requirements listed in Adobe Systems’ Black Book (“Adobe Type 1 Font Format”), and some others. **t1rawafm** creates an AFM font metrics file corresponding to a raw Type 1 font file (in PFA or PFB format). **t1reencode** reencodes a Type 1 font, replacing its internal encoding with one you specify. **t1testpage** creates PostScript test pages for a given Type 1 font. These pages show every character defined in the font. **ttftotype42** creates a Type 42 wrapper for a TrueType or TrueType-flavored OpenType font. This allows the font to be embedded in a PostScript file. Each of these programs has a manual page; `man PROGRAMNAME/PROGRAMNAME.1` for more information. See `NEWS` in this directory for changes in recent versions. The LCDF Typetools home page is: http://www.lcdf.org/type/ Installation ------------ Type `./configure`, then `make`. If `./configure` does not exist (you downloaded from Github), run `./bootstrap.sh` first. `./configure` accepts the usual options; see `INSTALL` for details. Some of the typetools programs can link with additional libraries. Otftotfm can use the Kpathsea library for integration with TeX directories; if your version of this library is in a nonstandard place, supply `./configure` with the `--with-kpathsea=PREFIX` option to find it. You can also disable individual programs by supplying `./configure` with `--disable-PROGNAME` options. See `./configure --help` for more information. Mmafm and mmpfb --------------- Run `mmafm --help` and `mmpfb --help` for a full option summary. Here are two example runs: % mmafm MyriadMM.amfm --weight=300 --width=585 > MyriadMM_300_585_.afm % mmpfb MyriadMM.pfb --weight=300 --width=585 > MyriadMM_300_585_.pfb Mmafm expects the name of an AMFM file on the command line. It also needs an AFM file for each master (these should have been distributed with the AMFM file). You can give the AFM files’ names on the command line, along with the AMFM file, or you let mmafm find the AFM files automatically. For the automatic method, you must follow one of these 2 conventions: 1. The AFM files are in the same directory as the AMFM file. They are named `FONTNAME.afm` -- `MyriadMM-LightCn.afm`, for example. 2. There is a `PSres.upr` file that lists the AFMs by font name, and the `PSRESOURCEPATH` environment variable contains the directory with that `PSres.upr` file. (`ps2pk` comes with a sample `PSres.upr` file.) Copyright and license --------------------- All source code is Copyright (c) 1997-2019 Eddie Kohler. This code is distributed under the GNU General Public License, Version 2 (and only Version 2). The GNU General Public License is available via the Web at , or in the COPYING file in this directory. Author ------ Eddie Kohler , http://www.lcdf.org/ The current version of the lcdf-typetools package is available on the Web at http://www.lcdf.org/type/ LCDF stands for Little Cambridgeport Design Factory. ======================================================================== * texlive-20200406-source/texk/makeindexk/README ======================================================================== ------------------------------------------------------------------------------ MakeIndexk General Release Information Copyright (C) 1998-2011 by the TeX Live project. Copyright (C) 1989 by Chen & Harrison International Systems, Inc. Copyright (C) 1988 by Olivetti Research Center Copyright (C) 1987 by Regents of the University of California Author: Pehong Chen MakeIndex is a general purpose index processor written for use with (La)TeX. makeindex is currently maintained in TeX Live and many more people have contributed changes. This incarnation uses the kpathsea library. Please send bug reports to tex-k@tug.org. Documentation is in the TeX Live directory texmf-dist/doc/support/makeindex and texmf/doc/man/man1/{make,mk}index.1. Basic index styles are in texmf-dist/makeindex/base. ------------------------------------------------------------------------------ Everyone should read COPYING before installing or distributing MakeIndex. ------------------------------------------------------------------------------ The CONTRIB file lists the names of people who have contributed to to this release, and the original author's acknowledgements. ------------------------------------------------------------------------------ For a detailed discussion on the design of MakeIndex, please read Pehong Chen and Michael Harrison, ``Automating Index Preparation'', Tech. Report No. 87/347, Computer Science Division, University of California, Berkeley, March 1987. A somewhat condensed version entitled ``Index Preparation and Processing'' appears in Software: Practice and Experience, 18(9):897-915, September 1988. ======================================================================== * texlive-20200406-source/texk/makejvf/README.txt ======================================================================== 日本語VF生成ツール makejvf ver.1.1a 株式会社アスキー・メディアワークス ptex-staff@ml.asciimw.jp makejvf は日本語対応 dvips を使用する際に必要なVFファイルを生成するためのツー ルです。 makejvf の使用および配布に関しては、付属の COPYRIGHT ファイルを参照してくださ い。 dvips で日本語を扱う場合、DVIを作る際に使用する和文TFMに記述してある文字幅と、 和文PSフォントの文字幅が異なるため、文字位置を調整するVF(Virtual Font)というファ イルが必要になります。makejvf はこのVFを生成するためのツールです。 また、縦書き時にはシングルクォート(‘’)、ダブルクォート(“”)をそれぞれシング ルミニュート(′とこれを180度回転させたもの)とダブルミニュート(″とこれを180度回 転させたもの)に変換して出力します。 ---------------------------------------- VFについて VF(Virtual Font)とは、フォントを合成して仮想的なフォントとして扱うためのファイ ルです。 欧文フォントではアクセント記号を持たないフォントに他のフォントのアクセント記号 を追加して1つのフォントとして扱ったり、任意のフォントの小文字部分を縮小した大文 字に置き換えて SmallCaps フォントのように扱うのに使用します。 VFファイルの中身はDVIファイルと似ており、各文字についての出力方法がDVI命令に よって記述されています。文字の位置を変えることも可能です。 dvips でのVFとTFMの関係は次のようになっています。 TeX がTFMを参照して組版 ↓ dvips がDVI中のTFMと同じ名前のVFを参照(なければ文字合成なし) ↓ VF中に記述されている各文字の定義(文字毎にフォントを設定できる)を参照 ↓ 文字定義に従って dvips が各文字を置換 dvipsで日本語を扱う場合、min10 や goth10 の文字位置と和文PSフォントの文字位置 の違いが問題になります。 例えば "(" のような、左に空きがある括弧類の場合、和文PSフォントでは左の空きも 含んだ文字として扱いますが、min10 や goth10 では左の空きは文字として扱わず、「空 き+"("」のような扱いになります。そのため min10 の "(" をそのままPSの "(" に置 き換えてしまうと、想定した位置より右に出力されてしまいます。 そこでVF中に「"(" は左にずらして置き換える」という記述をしておき、dvips がVF を参照して位置調整を行うようになっています。 ---------------------------------------- コンパイルおよびインストール: makejvf のインストール先を Makefile の DISTDIR に指定しておいて下さい。 make を実行すると makejvf が作られ、さらに make install を実行すると DISTDIR で指定したディレクトリにインストールされます。 必要なファイル: min10.tfm や goth10.tfm 等、pTeXで使用する和文TFMファイル。縦書き用(tmin10.tfm 等)も扱えます。 使用方法: % makejvf <和文TFMファイル名> <和文PSフォントTFM名> <和文TFMファイル名>: pTeX で使用する和文TFMの名前。カレントディレクトリ に用意しておく。この名前の拡張子を`.vf'にしたものが VFファイルとして生成される。 <和文PSフォントTFM名>: 実際に出力される和文PSフォントの文字幅情報を記述した TFMの名前。makejvf により生成される。また、この名前 がVF中に記述される。 オプション: -C 長体(左右の幅を縮めた書体)のTFMを元にVFを作成する場合に使用します。 長体VF作成時に-Cを付けないと、単に小さいフォントのTFMとして扱われて しまいます。 -K <和文PSフォントTFM名> 非漢字部のPSフォントTFMを指定します。これにより、1書体で漢字部と非 漢字部で異なるフォントが使用できます。 -b <数値> ベースライン補正の数値を指定します。文字の高さを1000として整数で指定、 プラスで文字が下がり、マイナスで文字が上がります。 -m 縦書き時にクオート類(’”)をミニュート(′″)へ変換します。 ---以下2つは正式にサポートされているオプションではありません--- -a PSフォントのAFMファイル名を指定します。 かな詰めフォント作成時に使用します。 -k <数値> かな詰めマージンを指定します。文字幅を1000として整数で指定。 -aオプションと共に使用します。 例1: min10 をリュウミン-Lとして使用する場合: % makejvf min10.tfm rml (min10.vf と rml.tfm が生成される) こうして生成されたVFおよびTFMを $TEXMF 以下の検索パスが通る場所に置きます。 さらに、rml が出力機のリュウミン-Lであることを宣言するために、$TEXMF/dvips 以下 にある psfonts.map に次のような記述を追加します。 rml Ryumin-Light-H これで min10 を使用した箇所が dvips によりリュウミン-Lに置きかえられます。 Ryumin-Light-H を ShinGo-Bold-H にすれば新ゴ-Bに、FutoMinA101-Bold-H にすれば 太ミンに置きかえられます。 このようなVFおよびTFMを多数作成することで多書体の使用が可能になります。なお、 元になるTFMは min10.tfm を別の名前にコピーして使用します。 例2: 非漢字部に見出しミン、漢字部に太ゴを使用する場合: % makejvf -K midashimin-ma31 jcomic.tfm futogo-b 漫画の台詞のような、かなを明朝書体、漢字をゴシック書体で使用する例です。 jcomic.tfm にはあらかじめ min10.tfm をコピーしておきます。psfonts.map には次の ような記述を追加します。 midashimin-ma31 MidashiMin-MA31-H futogo-b FutoGoB101-Bold-H これで jcomic.tfm を使用すると、生成された jcomic.vf によって非漢字部は見出しミ ン、漢字部は太ゴで出力されます。 ======================================================================== * texlive-20200406-source/texk/seetexk/README ======================================================================== Note that this is a *partial* repackaging of elements of the SeeTeX package by Chris Torek; the full package is in CTAN:drivers. Here we just want dviconcat and dviselect, plus Angus Duggan's dvibook and dvitodvi. -- Sebastian Rahtz (TeX Live), January 1998 Chris Torek assigned his copyright to the UMD CS department. They approved using the X11 license in February 2012, per geoffr (Geoffrey Ransom), and others. Best to use staff at cs dot umd dot edu if further discussion is needed with them. Duggan previously gave permission to use this license (on 22 Dec 2011). -- Karl Berry (TeX Live) and Tom Callaway (Fedora), March 2012 ======================================================================== * texlive-20200406-source/texk/texlive/linked_scripts/README ======================================================================== $Id: README 25340 2012-02-09 08:05:12Z peter $ Copyright (C) 2012 Norbert Preining You may freely use, modify and/or distribute this file. source/texk/texlive/linked_scripts ================================== This directory contains copies of the scripts that are shipped within TeX Live. See more discussion, rationale, etc., in ./Makefile.am. Steps to add a new script (take your time, do it right): * svn mkdir the directory with the package name, and add the script * add the dir/script-name to Makefile.am in the respective section (shell vs general interpreter, texmf vs texmf-dist) * add the package/script to ctan2tds so that is found and installed automatically (%specialscripts), etc. * get ctan2tl to run properly * cd .. && autoreconf -v But only commit the results of this last if you have the same version of GNU m4, libtool, autoconf, automake, etc., installed that were already used (generally the latest official releases). And if you have installed the original versions straight from ftp.gnu.org for yourself -- don't use versions from distro packages. * make -C BLD/texk/texlive/linked_scripts scripts-list where BLD is the build tree, to update the file scripts.lst in the source tree (or manually update that file). ======================================================================== * texlive-20200406-source/texk/texlive/w32_wrapper/context/readme.txt, texlive-20200406-source/texk/texlive/w64_mingw_wrapper/context/readme.txt ======================================================================== Copyright: The originally 'runscript' program was written by in 2009 by T.M.Trzeciak and is public domain. This derived mtxrun program is an adapted version by Hans Hagen and Luigi Scarso. Comment: In ConTeXt MkIV we have two core scripts: luatools.lua and mtxrun.lua where the second one is used to launch other scripts. The mtxrun.exe program calls luatex.exe. Normally a user will use a call like: mtxrun --script font --reload Here mtxrun is a lua script. In order to avoid the usage of a cmd file on windows this runner will start texlua directly. In TeXlive a runner is added for each cmd file but we don't want that overhead (and extra files). By using an exe we can call these scripts in batch files without the need for using call. The mtxrun.exe file can be copied to a mtxrunjit.exe file in which case luajittex.exe is called. mtxrunjit --script font --reload We also don't want to use other runners, like those that use kpse to locate the script as this is exactly what mtxrun itself is doing already. Therefore the runscript program is adapted to a more direct approach suitable for mtxrun. Compilation: with gcc (size optimized): gcc -Os -s -shared -o mtxrun.dll mtxrun_dll.c gcc -Os -s -o mtxrun.exe mtxrun_exe.c -L./ -lmtxrun with tcc (ver. 0.9.24), extra small size tcc -shared -o runscript.dll runscript_dll.c tcc -o runscript.exe runscript_exe.c runscript.def ======================================================================== * texlive-20200406-source/texk/web2c/ctiedir/README ======================================================================== This is the README file of the `CTIE' distribution, version 1.1 --------------------------------------------------------------- CTIE is based on the `TIE' program, a program which was first developed to allow WEB programmers to use more than one change file with their WEB programs. CWEB introduced a new command, @i, to handle "include files". The original TIE program was not designed to handle this situation, and so could not be used for all CWEB programs. CTIE behaves essentially identically to the original TIE, and identical results will be generated when TIE is applied to traditional WEB files with changes, as long as there are no errors. (Errors may lead to different output, but then the errors need correcting, anyway.) CTIE can be used to either create a new version of the (C)WEB file which incorporates the changes, or to merge multiple change files into a single change file. This program does not depend in an essential way on any special WEB dialect, nor on using WEB at all, as the only controls to be interpreted are the change requests in the change files (delimited by @x, @y and @z) and file include commands (indicated by @i). This makes `CTIE' also usable for any other language, or even data files. See the documentation ctiedoc.tex and the example file ctie.tie for more information. REQUIREMENTS: This version of `CTIE' is written in CWEB. To preprocess and compile the source you will need a working `ctangle'. A pretangled ctie.c is supplied if you do not have a working ctangle available. Please note, that the CWEB by Silvio Levy and Donald E. Knuth must probably be at least at version 2.8, to process and compile `ctie' without problems. Furthermore, a ctie-k.ch file is provided which links ctie against Karl Berry's kpathsea library. A tangled version of this file is provided as ctie-k.c. To use this, you will need to link against version 3.4.5 or higher of the kpathsea library. This version searches for files, both from the command line and included (@i) files using the CWEBINPUTS search path. DISTRIBUTION: This package has been uploaded to CTAN, and appears in the directory web/c_cpp/ctie/. LICENCE: This program is based on tie.w and common.w (part of CWEB). It is distributed with the following licence. Copyright (c) 2002,2003 by Julian Gilbey All rights reserved. This program is distributed WITHOUT ANY WARRANTY, express or implied. Permission is granted to make and distribute verbatim copies of this program provided that the copyright notice and this permission notice are preserved on all copies. Permission is granted to copy and distribute modified versions of this program under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one. BUGS/ENHANCEMENTS: If you detect bugs in the implementation of CTIE or have suggestions to enhance functionality or improve portability, please send a message to Julian Gilbey . ======================================================================== * texlive-20200406-source/texk/web2c/cwebdir/README ======================================================================== % This file is part of CWEB. % The CWEB programs by Silvio Levy are based on programs by D. E. Knuth. % They are distributed WITHOUT ANY WARRANTY, express or implied. % This README file last updated January 2016 by Don Knuth % Copyright (C) 1987,1990,1993,2000,2016 Silvio Levy and Donald E. Knuth % Permission is granted to make and distribute verbatim copies of this % document provided that the copyright notice and this permission notice % are preserved on all copies. % Permission is granted to copy and distribute modified versions of this % document under the conditions for verbatim copying, provided that the % entire resulting derived work is given a different name and distributed % under the terms of a permission notice identical to this one. % Please send comments, suggestions, etc. to tex-k@tug.org, and people % there will verify and forward bug reports. % % DEK takes no responsibility for the changefiles; they should be % maintained independently. His job is to correct errors in % ctangle.w, cweave.w, prod.w, common.w, cwebmac.tex, cwebman.tex, % and in the files of examples/*.w, nothing more. This directory contains the following files: Makefile README comm-amiga.ch comm-bs.ch comm-mac.ch comm-man.ch comm-pc.ch comm-ql.ch comm-vms.ch comm-w32.ch common.c common.h common.w ctang-bs.ch ctang-man.ch ctang-pc.ch ctang-ql.ch ctang-vms.ch ctang-w32.ch ctangle.c ctangle.w cweav-bs.ch cweav-man.ch cweav-pc.ch cweav-ql.ch cweav-vms.ch cweave-w32.ch cweave.w cweb.1 cweb.el cwebmac.tex cwebman.tex examples/ makefile.bs prod.w readme.ql c++lib.w The file cwebman.tex is the user manual. The examples directory contains additional examples of the use of CWEB. The files common.c and ctangle.c are used for bootstrapping. The file cweb.1 is a manual page. The file cweb.el is suggested for GNU-Emacs users. The file c++lib.w is for C++ users (say `@i c++lib.w' at beginning of program). The files *-man.ch are used if you want to make the full 239-page CWEB manual. The files *-bs.ch are used instead of *-pc.ch if you are doing BIG programs. You can use makefile.bs to make CWEB with *-bs.ch. The files *-ql.ch are for QDOS/SMSQ systems; see readme.ql for further info. The files *-w32.ch use __fastcall conventions on win32 systems. The file comm-mac.ch is for Macintosh conventions. The other files named *.ch are sample change files for local customization. IMPORTANT: Please touch *.c before proceeding. Then edit the opening lines of Makefile so that it has the proper directory information for your local system. To make ctangle and cweave say `make all'; this should produce roughly the following actions (possibly with harmless warning messages from cc): cc -g -w -c ctangle.c cc -g -w -DCWEBINPUTS=\"/usr/local/lib/cweb\" -c common.c cc -g -o ctangle ctangle.o common.o ./ctangle cweave cc -g -w -c cweave.c cc -g -w -o cweave cweave.o common.o To get some reassurance that things are OK, you can say `make cautiously', which ensures that CTANGLE will reproduce itself. (Otherwise the source files common.w and ctangle.w won't actually have been used.) To install cweave and ctangle say `make install'. You probably need to be superuser to do this; but it's wise to `make all' first, BEFORE becoming superuser and saying `make install'. Note that change files for VMS, AMIGA, MAC, and PCs are provided. When you are first bootstrapping to a new system, you may need to edit common.c and ctangle.c by hand, but the vast majority of the change-file changes are minor refinements that are not necessary for a rudimentary ctangle. ----------------------------------------- These archival sources are maintained only to the extent of fixing significant bugs that were unintended at the time of writing. A multi-decade ongoing project to improve and extend CWEB can be found at https://github.com/ascherer/cwebbin ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luafilesystem/README.md ======================================================================== [![License](http://img.shields.io/badge/Licence-MIT-brightgreen.svg)](LICENSE) [![Build Status](https://travis-ci.org/keplerproject/luafilesystem.svg?branch=master)](https://travis-ci.org/keplerproject/luafilesystem) [![Build status](https://ci.appveyor.com/api/projects/status/y04s4ms7u16trw8e?svg=true)](https://ci.appveyor.com/project/ignacio/luafilesystem) [![Coverage Status](https://coveralls.io/repos/keplerproject/luafilesystem/badge.png)](https://coveralls.io/r/keplerproject/luafilesystem) # LuaFileSystem - File System Library for Lua Copyright 2003-2017 Kepler Project https://keplerproject.github.io/luafilesystem # Description LuaFileSystem is a Lua library developed to complement the set of functions related to file systems offered by the standard Lua distribution. LuaFileSystem offers a portable way to access the underlying directory structure and file attributes. LuaFileSystem is free software and uses the same license as Lua 5.x (MIT). # LuaRocks Installation ``` luarocks install luafilesystem ``` # Documentation Please check the documentation at doc/us/ for more information. ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luazlib/README ======================================================================== ************************************************************************* * Author : Tiago Dionizio (tngd@mega.ist.utl.pt) * * Library : lzlib - Lua 5 interface to access zlib library functions * * * * Permission is hereby granted, free of charge, to any person obtaining * * a copy of this software and associated documentation files (the * * "Software"), to deal in the Software without restriction, including * * without limitation the rights to use, copy, modify, merge, publish, * * distribute, sublicense, and/or sell copies of the Software, and to * * permit persons to whom the Software is furnished to do so, subject to * * the following conditions: * * * * The above copyright notice and this permission notice shall be * * included in all copies or substantial portions of the Software. * * * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, * * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.* * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY * * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, * * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE * * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. * ************************************************************************* To use this library you need zlib library. You can get it from http://www.gzip.org/zlib/ Read description in zlib.lua and lzlib.c for details on how to use this library. ======================================================================== * texlive-20200406-source/texk/web2c/omegaware/README ======================================================================== Copyright (C) 2009 Peter Breitenlohner You may freely use, modify and/or distribute this file. Version 1.12 of the omfonts programs ==================================== ( p r e l i m i n a r y ) This directory contains a new Web Version 1.12 of the Omega font conversion programs ofm2opl, opl2ofm, ovf2ovp, and ovp2ovf. After numerous bugfixes and with a slight modification of one algorithm the programs are now able to process ofm_level=-1 (TFM/VF) as well as ofm_level=0,1 (OFM/OVF) files. A virtual font and the local fonts can have any combination of these ofm levels. Note, however, that all this is still somewhat preliminary. In particular the programs still lack the thorough checking of all input data done in TFtoPL&Co and required to diagnose problems with faulty binary files. ======================================================================== * texlive-20200406-source/texk/web2c/pdftexdir/README ======================================================================== pdfTeX is an extended version of eTeX that can create PDF directly from TeX source files and enhance the result of TeX typesetting with the help of PDF. When PDF output is not selected, pdfTeX produces normal DVI output, otherwise it produces PDF output that looks essentially identical to the DVI output An important aspect of this project was to investigate alternative justification algorithms, resulting in the "microtypography" features of margin kerning and font expansion. This was inspired by Peter Karow's and Hermann Zapf's work. pdfTeX is integrated with the original e-TeX sources and Web2c. It is actively maintained, but stability is paramount now; only bug fixes and small enhancements are expected. Releases are made through TeX Live. See the file NEWS for changes to the program. Documentation about pdfTeX can be found at http://www.pdftex.org. Mailing lists: http://lists.tug.org/pdftex - help requests, general user discussion http://www.ntg.nl/mailman/listinfo/ntg-pdftex - bug reports, development LEGAL ISSUES ============ pdfTeX 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. pdfTeX 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, see . pdfTeX uses code from TeX; for these parts the original copyright by Don Knuth applies. See the source files for details. pdfeTeX uses code from eTeX; for these parts the original copyright by Peter Breitenlohner applies. See the source files for details. CONTRIBUTORS ============ Karl Berry, Peter Breitenlohner, Ricardo Sanchez Carmenes, Otfried Cheong, Thomas Esser, Hans Hagen, Hartmut Henkel, Taco Hoekwater, Pawel Jackowski, Pavel Janik, Tom Kacvinsky, Akira Kakuto, Reinhard Kotucha, Derek B. Noonburg, Heiko Oberdiek, Jiri Osoba, Fabrice Popineau, Sebastian Rahtz, Bernd Raichle, Tomas Rokicki, Leonard Rosenthol, Martin Schröder, Petr Sojka, Ralf Utermann, Olaf Weber, Jiri Zlatuska. Some companies have supported the developement of pdfTeX: Adobe Systems Inc., ArtCom GmbH, Pragma ADE, QuinScape GmbH. pdfTeX is built on top of TeX, written by Donald Knuth cum suis (Frank Liang et al.), and e-TeX, written by Peter Breitenlohner cum suis; the advanced paragraph optimization is inspired by the work of Hermann Zapf. ======================================================================== * texlive-20200406-source/texk/web2c/ptexdir/README.txt ======================================================================== --------------------------------------------------------------------------- ● 日本語 TeX(pTeX: publishing TeX)について --------------------------------------------------------------------------- * 日本語 TeX(pTeX)は、本格的な商業出版に耐える TeX を開発する ことを目標にしています。 * pTeX は、横組み専用の「日本語 TeX」に縦組み機能を追加したもの です。日本語化のバグフィックスはすべて pTeX に対してのみ行ない、 横組のみの日本語 TeX に対しては行ないませんので、ご了承ください。 * pTeX は、WEB のチェンジファイルを使って実現されています。 * インストールの手順については、付属の INSTALL.txt ファイルを参照 してください。 * pTeX の使用および配付に関しては、付属の COPYRIGHT ファイルを 参照してください。 --------------------------------------------------------------------------- ● 問い合わせ先など --------------------------------------------------------------------------- pTeX についてのお問い合わせは、電子メールで ptex-staff@ml.asciimw.jp 宛て にお願いします。 pTeX の WEB ページ(http://ascii.asciimw.jp/pb/ptex/)では、バグ情報や インストールのヒント、pTeX で追加されたプリミティブ一覧などを掲載して います。こちらもご覧ください。 ------------------------------------- 株式会社アスキー・メディアワークス =============================================================== EOT ===== ======================================================================== * texlive-20200406-source/texk/web2c/synctexdir/README.txt ======================================================================== # Copyright (c) 2008, 2009, 2010, 2011 jerome DOT laurens AT u-bourgogne DOT fr # # This file is part of the SyncTeX package. # # License: # -------- # Permission is hereby granted, free of charge, to any person # obtaining a copy of this software and associated documentation # files (the "Software"), to deal in the Software without # restriction, including without limitation the rights to use, # copy, modify, merge, publish, distribute, sublicense, and/or sell # copies of the Software, and to permit persons to whom the # Software is furnished to do so, subject to the following # conditions: # # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES # OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT # HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, # WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR # OTHER DEALINGS IN THE SOFTWARE # # Except as contained in this notice, the name of the copyright holder # shall not be used in advertising or otherwise to promote the sale, # use or other dealings in this Software without prior written # authorization from the copyright holder. # # Acknowledgments: # ---------------- # The author received useful remarks from the pdfTeX developers, especially Hahn The Thanh, # and significant help from XeTeX developer Jonathan Kew # # Nota Bene: # ---------- # If you include or use a significant part of the synctex package into a software, # I would appreciate to be listed as contributor and see "SyncTeX" highlighted. # # Version 1 # Thu Jun 19 09:39:21 UTC 2008 This file gives the .synctex file specifications. SyncTeX output file specifications, Version 2, Lun 31 mar 2008 13:50:31 UTC =========================================================================== This is an EBNF file specification extended by ICU regex patterns (enclosed between 2 '/'s) The whole synctex file is made of various records gathered into four different sections: ::= Each record is a sequence of text characters following an end of record mark or starting the file, and ending with an end of record mark. The first characters of a record will determine the type of the record. ::= /\n/ ::= /[^\n]*/ The preamble: ------------- ::= * ::= /SyncTeX Version:/ ::= ::= /1/ ::= /Input:/ ::= /:/ ::= ::= /[^]*/ This is used to give a shortcut to filenames. ::= ? ? ? ? ? ::= /Output:/ ::= /dvi|pdf|xdv|[0-9a-zA-Z]*/ ::= /Magnification:/ ::= This is the TeX magnification. ::= /Unit:/ ::= The SyncTeX unit is scaled point, 1 in general, 8192 when not given. ::= /X Offset:/ ::= ::= /Y Offset:/ ::= The offset or the origin of the system of coordinates from the top left point of the page. This defaults to 1in for both the vertical and horizontal offsets. Both offsets are given in this section in scaled point unit. : The preamble, like any other section may contain in the future any other kind of record, except the one starting the next section. In order to ensure some forwards compatibility, parsers should anticipate and parse unknown records: an unexpected record should be silently ignored by the parser. This means that this format is somehow open an more types of records can be added without breaking existing software. The preamble ends when a record is found that fits the following section. The contents: ------------- ::= **...* ::=/Contents:// ::= ::= * ::= /{//:// ::= /}/ ::= ||| ::= (*)|* ::= ||| ::= * ::= /v//://:/ ::= /h//://:/ ::= /,//,/ ::= ::= ::= ::= /,/(/,/)? ::= ::= ::= /x//:/ ::= /k//://:/ ::= /g//:/ ::= /$//:/ The byte offset is an implicit anchor to navigate the synctex file from sheet to sheet. The postamble: -------------- The postamble closes the file If there is no postamble, it means that the typesetting process did not end correctly. ::= ::= /Postamble:/ ::= /Count:/ The post scriptum: ------------------ The post scriptum contains material possibly added by 3rd parties. It allows to append some transformation (shift and magnify). Typically, one applies a dvi to pdf filter with offset options and magnification, then he appends the same options to the synctex file, for example dvipdfmx -m 0.486 -x 9472573sp -y 13.3dd source.dvi echo "X Offset:9472573" >> source.synctex echo "Y Offset:13.3dd" >> source.synctex echo "Magnification:0.486" >> source.synctex ::= (||)* ::= /Magnification:/ ::= ::= /X Offset:/ ::= ::= ::= /(+|-)?/ ::= /(in|cm|mm|pt|bp|pc|sp|dd|cc|nd|nc)?/ ::= /[\n\r]*/ ::= /Y Offset:/ ::= This second information will override the offset and magnification previously available in the preamble section. All the numbers are encoded using the decimal representation with "C" locale. ======================================================================== * texlive-20200406-source/utils/asymptote/README ======================================================================== ASYMPTOTE Copyright 2004-20 Andy Hammerlindl, John Bowman, and Tom Prince Asymptote is a powerful descriptive vector graphics language for technical drawing, inspired by MetaPost but with an improved C++-like syntax. Asymptote provides for figures the same high-quality level of typesetting that LaTeX does for scientific text. Installation instructions, documentation, binaries, and source code are available at: https://asymptote.sourceforge.io Bugs/Patches/Feature Requests can be submitted to https://github.com/vectorgraphics/asymptote/issues Questions and comments should be sent to the Asymptote Forum: https://sourceforge.net/p/asymptote/discussion/409349 All source files in the Asymptote project, unless explicitly noted otherwise, are released under version 3 (or later) of the GNU Lesser General Public License (see the files LICENSE.LESSER and LICENSE in the top-level source directory). ======================================================================== This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . ======================================================================== Note that the MSWindows executable version of Asymptote can only be released under the GNU General Public License (GPL) as it is linked against the GNU Scientific Library, GNU Readline library, and other GPL libraries. This version of Asymptote also ships with the cygwin1.dll libraries noted below. ======================================================================== Source code for the x86_64 and i386 3.0.4 cygwin1.dll libraries is available under the GPL license: https://cygwin.com/snapshots/ Source for various icons is available under the MIT license from https://github.com/driftyco/ionicons/archive/v2.0.1.zip https://github.com/iconic/open-iconic/archive/master.zip under the CC-BY-SA 4.0 license: http://www.entypo.com/ and under a CC license: http://www.zondicons.com/zondicons.zip ======================================================================== * texlive-20200406-source/utils/axodraw2/axodraw2-src/README ======================================================================== Axodraw2 2.1.1b 2019/09/02 ========================== axodraw2.sty version is v2.1.1 2018/02/15 axohelp.c version is 1.3 2019/08/30 Axodraw2 is a package that defines macros for drawing Feynman graphs in LaTeX documents. It is an important development from the axodraw package, but since it is not completely backwards compatible, we have given the style file a changed name. Compared with axodraw, many new features have been added, with new types of line, and much more flexibility in their properties: For details see the documentation. In addition, it is now possible to use axodraw2 with pdflatex, as well as with the latex-dvips method. However with pdflatex (and also lualatex and xelatex), an external helper program, axohelp, is used to perform the geometrical calculations needed for the pdf code inserted in the output file. The processing involves a run of pdflatex, a run of axohelp, and then another run of pdflatex. The files in the distribution are: README This file axodraw2.sty The main style file axodraw2-man.pdf Documentation axodraw2-man.tex Source for documentation example.tex Example latex file for use of axodraw2 axohelp.c Source code of axohelp axohelp.1 Man page for axohelp axohelp.test Script for testing axohelp test.ax1 Input file for test test.ax2-std Comparison output file for test axohelp-big.test Script for comprehensive test of axohelp test-big.ax1 Input file for comprehensive test test-big.ax2-std Comparison output file for comprehensive test configure.ac For use with autoconf and automake Makefile.am For use with autoconf and automake AUTHORS COPYING ChangeLog INSTALL Authors, copyright, license --------------------------- (C) 1994-2019 John Collins (jcc8 at psu dot edu) and Jos Vermaseren (t68 at nikhef dot nl) Axodraw2 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 3 of the License, or (at your option) any later version. See the files axodraw2.sty or axohelp.c for more details. ======================================================================== * texlive-20200406-source/utils/pmx/README ======================================================================== Copyright (C) 2012 Peter Breitenlohner You may freely use, modify and/or distribute this file. In order to build pmx we don't need the complete libf2c library. Specifically, we can omit uninit.c and with it the necessity to build and run arithchk in order to create the arith.h header file (which would make cross compilation impossible). From all the preprocessor defines arithchk could generate we only might need 'VAX' (most probably irrelevant) and 'NO_LONG_LONG' which can be handled by the configure script. Thus an empty file arith.h suffices. ================ Actually, compiling neither signbit.c nor uninit.c the file arith.h is not used at all and can bbe omitted. ======================================================================== * texlive-20200406-source/utils/t1utils/t1utils-src/README.md ======================================================================== T1utils ======= T1utils is a collection of simple programs for manipulating PostScript Type 1 fonts. Together, they allow you to convert between PFA (ASCII) and PFB (binary) formats, disassemble PFA or PFB files into human-readable form, and reassemble them into PFA or PFB format. Additionally you can extract font resources from a Macintosh font file or create a Macintosh Type 1 font file from a PFA or PFB font. There are currently six programs: * **t1ascii**: Converts PFB files to PFA format. * **t1binary**: Converts PFA files to PFB format. * **t1disasm**: Disassembles a Type 1 font (PFA or PFB format) into a raw, human-readable text form for subsequent hand editing, tweaking, hint fixing, and so forth. * **t1asm**: Assembles the human-readable t1disasm text form into a Type 1 font in PFA or PFB format. * **t1unmac**: Extracts POST resources from a Macintosh Type 1 font file into PFA or PFB format for use outside the Macintosh environment. The Macintosh file should be stored in MacBinary, AppleSingle, AppleDouble, or BinHex format, or as a raw resource fork. Note that t1unmac does not have to run on a Macintosh. * **t1mac**: Creates a Macintosh Type 1 file from a PFA or PFB-format Type 1 font. Writes the Macintosh file in MacBinary, AppleSingle, AppleDouble, or BinHex format, or as a raw resource fork. WARNING: This will not suffice to use the new font on a Macintosh, as Macintoshes cannot read raw Type 1 fonts. You will need to create a font suitcase containing bitmap fonts if you do not have such a suitcase for the font already. T1utils cannot help you do this. Installation ------------ You need an ANSI C compiler, such as gcc. Just type `./configure`, then `make`. `make install` will build and install the utilities and their manual pages. `./configure` accepts the usual options. See `INSTALL` for more details. The most commonly used option is `--prefix`, which can be used to install the utilities in a place other than /usr/local. Copyright and license --------------------- The original t1utils were (c) 1992 I. Lee Hetherington, . Changes since version 1.2 are (c) 1998-2017 Eddie Kohler. Distribution is under the Click LICENSE, a BSD-like license described in the LICENSE file in this directory. Note that these tools should not be used to illegally copy Type 1 font programs. Typeface design is an intricate art that should be rewarded. Eddie Kohler, ekohler@gmail.com ======================================================================== * texlive-20200406-source/utils/texdoctk/README ======================================================================== texdoctk v.0.5.3 texdoctk is a Perl/Tk-based frontend for easy access of package documentation for the TeX typesetting system on Unix platforms. It includes the following files: texdoctk - the program source texdoctk.dat - the database containing the information about the accessible documentation files for teTeX-texmf texdocrc.defaults - the system-wide default specification for viewer and printer settings texdoctk.1 - manpage README.texdoctk - this file The current version is 0.6.0. REQUIREMENTS The program is written in Perl/Tk; it requires Perl 5 and Perl/Tk 8.x. It is known to run with Perl 5.004_04 or higher and PerlTk 800.015. The database file texdoctk.dat is made for the teTeX distribution. Note that the program is *not* a viewer, but an interface to access a document with the appropriate viewer. Thus, you need to have appropriate viewers for the different formats to actually read the files. Documentations are available as .dvi, .ps, .pdf, .html or plain text; some packages are only documented in the .sty files. For plain text files (.txt, .sty etc.), texdoctk's own text viewer can be used (default). If a document format is not known, texdoctk will by default assume that it is plain text and use the text file viewer; this behaviour can be switched off in the Settings menu. If you want to print the documentations, you will need converters to turn non-PS files into PostScript. Here are some suggestions: dvi->ps: dvips (is part of teTeX) http://www.radicaleye.com/dvips.html pdf->ps: pdf2ps http://www.cs.wisc.edu/~ghost Acrobat Reader http://www.adobe.com html->ps: html2ps http://user.it.uu.se/~jan/html2ps.html plain text->ps: a2ps http://www-inf.enst.fr/~demaille/a2ps/ To increase the font size automatically for high-resolution screen, the program xwininfo is used; texdoctk will work without as well, though. INSTALLATION The program texdoctk can be copied into any directory where programs are stored on your system, e.g. into /usr/local/bin or, probably more adequate, into /usr/local/teTeX/bin. It assumes that you have the env command in /usr/bin/ available to determine the location of the Perl executable; therefore, you may need to change the first line of the code if this is not the case for your system or if for some reason your Perl executable is not called "perl"; you will also have to change the perl call in the sub viewslc as well. The database file texdoctk.dat and the configuration file texdocrc.defaults must then be put into a subdirectory of the main texmf directory called texdoctk. If you want to include information for your local system, generate a file texdoctk-local.dat. Make sure to run texhash after installation. See the manpage for more info. Set the defaults in texdocrc.defaults according to your system; you can replace the settings which are specified in the shipped file, but do not uncomment variables for items which are not available or applicable for you, but just leave the value empty by specifying nothing. The individual users can define their own preferences by copying the system texdocrc.defaults to ~/.texdocrc and assign new values to the items to be changed. They can also establish an additional personal database for packages they might have installed in their respective $HOME; this database must be called texdoctk-pers.dat and reside in $HOMETEXMF/texdoctk/. If you meet the requirements concerning the teTeX distribution, I assume that the texdoctk.dat file should work without failures; if you have another distribution or if your texmf/doc tree is somehow modified, it may happen that a file is not found in spite of the program trying to find it elsewhere. You will have to edit the file then, but make sure to keep the right format for the entries: ;Short description for listbox (opt. );path in doc directory;optional keywords (without breaking the line!). If the documentation is included in the .sty file instead of a proper documentation file, the optional keywords should start with -?- directly after the semicolon, where ? is 0, 1, 2 or 3; these are flags which indicate in which part of the .sty the instructions are placed. See the database file and/or the manpage for more details if necessary. The documentation is grouped into 17 categories; the 18th button of the main panel is inactive by default. If you have special documents which do not fit into any of the categories, you can create a block with a new name in texdoctk-local.dat or texdoctk-pers.dat with the respective entries. In the settings window you see a checkbox in the html->ps and text->ps converter menus for switching on/off output redirect. This is due to the fact that some converters do not write their output into a file but to stdout by default, so a redirect is needed, e.g. a2ps myfile.txt >myfile.ps DISCLAIMER texdoctk v.0.6.0 (Sep 23, 2004) - GUI for TeX documentation access Copyright (C) 2000-2004 Thomas Ruedas 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. ACKNOWLEDGEMENTS Thomas Esser included the program in the teTeX distribution of TeX and Friends. He provided me with informations about changes in the texmf tree and made a number of very useful suggestions. He also has coordinated and kept track of several additions from other contributors, who fixed bugs and added extensions e.g. for use under Win32 systems. Reinhard Kotucha and Andreas Werner made very valuable comments and suggestions to enhance v.0.3.0, especially about the special treatment of Netscape. Reinhard Kotucha also made many useful suggestions and provided patches for v.0.4.0; unfortunately, I could not implement all these ideas yet. Hans Fredrik Nordhaug made some suggestions, e.g. concerning local and personal texmf trees, and reported several bugs in different releases; he also contributed fixes/patches. Adrian Bunk also has reported a bug and contributed a small manpage for the program. He made a Debian GNU/Linux package of texdoctk. Michael Sanders reminded me to set the permissions right in the tarball. As this is my first application written in PerlTk, it happened that I could not solve every problem with my book and the other documentation, but had to ask for help on comp.lang.perl.tk. Paul R. Andersen and Stephen O. Lidie have given helpful replies and examples for me to try out. Fabrice Popineau, and possibly others who I don't know, have provided portability to Win32 platforms for use with fpTeX. Staszek Wawrykiewicz helped making it ready for use with new TeXLive editions. Paul Szabo pointed out a potential security risk related to the way names of temporary files are generated. TO DO LIST Unfortunately, I didn't have time to implement all suggestions made by the aforementioned people; I hope that I can do that at some later time: - widget placement in topic toplevels becomes ugly when the toplevel is stretched or shrunk; should be made more elegant - raise existing texdoctk window instead of possibly running texdoctk twice; (this seems to be difficult, because it requires interprocess communication which is kind of unsafe and requires the use of perl -T) Possible further long-term enhancements: - maybe use Williams Catalogue for automatically building database during installation - refined printing facility BUGS Netscape error output will be written to stderr even if the quiet mode was set, because I didn't manage to start it with the "inline" perl script. Widget placement in topic toplevels becomes ugly when the toplevel is stretched or shrunk. The font in the frame labels of the Settings menu are not forced to the default font; this will become visible e.g. at hi-res screens, where the label font is not scaled up. Please let me know if you find bugs or have suggestions for improvements. HISTORY/CHANGES v.0.6.0 Sep 23, 2004 - Unknown document formats will be opened as plain text with the text file viewer by default; the Settings menu was given a new button to toggle this behaviour. - Allow for texmf-dist and texmf-doc trees for compliance with teTeX 3 and TeXLive. - Made an attempt to allow for additional personal user's databases to be located in $HOMETEXMF, following a long-standing suggestion of H.F.Nordhaug. Additional local and personal databases do not need to be copies of the system database; instead their contents will be appended to the entries of the default list. - Fixed a bug with the handling of the local texmf tree reported by Sebastian Luque. - Updated this README and the manpage. v.0.5.2 May 20, 2004 - Changed the name generation of temporary files to something random in order to address a potential security risk pointed out by Paul Szabo. - Replaced -q option for enabling "quiet" behaviour by -v option for enabling "verbose" behaviour; quiet behaviour is now the default and was extended to suppress the popup of Warning windows (popmsg level 1). - Added a possibility to have the Settings menu write the user's ~/.texdocrc (older suggestion by R.Kotucha). NB: It is not intended to write the system-wide texdocrc.defaults, because it does not set $TEXDOCPATH and $LOCALDOCPATH. - Button colours are made configurable through the texdocrc files or the Settings menu. This is intended to fix a problem H.F.Nordhaug reported with users of newer versions of the KDE, where some button colours suddenly where messed up. - Validity of entered colours is checked if X11's showrgb program is available. - DVIPS_OPTS, PDFPS_OPTS and PRINT_OPTS in texdocrc.defaults are now obsolete, but still supported. It seemed more reasonable to treat the contents of DVIPS_CONV, PDFPS_CONV and PRINT_CMD as command lines (which actually would have already been possible all the time). The same is true for the viewer variables. - Command line options can now be grouped (i.e. -av instead of -a -v). - Cursor changes from arrow to watch in some tasks, to indicate a process which takes a bit of time. - fixed some glitches in databases: semicolons at the end of the pdfTeX-related entries; corrected description of ltxtable (hint by Rolf Niepraschk) and changed its position; corrected description of AMSguide (AMS TeX instead of AMS LaTeX) (hint by H.F.Nordhaug) - several additions by other contributors, for instance support for Win32 systems v.0.5.1 April 21, 2001 - Enhanced right-button search function so that compressed doc files are also found. - Fixed a bug in the documentation finding subroutine reported by H.F. Nordhaug: the compression determination block in sub finddoc was broken. - Improved treatment of entering an empty string in the search: this is now explicitly treated as demand for display of the whole database, instead of search for a null string. - Automatic selection of list item in listbox if it contains only one element; this will frequently happen in search results. In this context, the autoview flag (option -a) has been introduced in the texdocrc.defaults and the Settings menu: if it is chosen, the appropriate viewer will be started automatically in the case of one-item listboxes. - Made , , and definitions active in all widgets; thus, you don't need to type in the main window to quit, for example. Introduced new global key binding for raising the main window (). - Fixed a braindead typo in the texdoc-*.dat files (too dumb to tell). - Some small changes/updates in the Help text; the button and window are now named "Help/About". - Added an emacs perl-mode directive at the end, mostly for my convenience. v.0.5.0a April 19, 2001 - Fixed bug in texdoc-102.dat reported by H.F.Nordhaug: correct path for multirow is latex/multirow/multirow.sty (instead of latex/misc/multirow.sty, as in texdoc-100.dat) v.0.5.0 April 18, 2001 - For some packages, the only documentation is included in the .sty file itself. This documentation is now made accessible by extracting the comments/instructions, writing them into a temporary text file and calling the text file viewer on it. Thus 38 additional documentation files are made accessible now. - implementation of a suggestion by Hans Fredrik Nordhaug: contents of the local texmf tree ($TEXMFLOCAL) can be included now. Arbitrary inclusion of additional private texmf trees is not yet possible, though. - Two fixes/improvements in the databases by R.Kotucha were made (concerning epslatex and the MetaPost tutorial) - R.Kotucha suggested the use of the program xwininfo to determine screen resolution and switch to a larger font size at hi-res screens. He provided a patch for this, which I added after a slight adaptation. - auto-determination of Perl's path (stolen from some script by Thomas Esser, IIRC) - If a beta release of teTeX is used, the teTeX-1.0.2 database will be used as a default instead of the 1.0.0 database - introduced new message type with transient windows - fatal error messages if essential config/database files are not found - some syntax cosmetics v.0.4.0 June 11, 2000 - implementation of several suggestions by Reinhard Kotucha and Andreas Werner: * More than 1 document can now be viewed at one time, because the viewers now run as background processes. They are not killed when texdoctk itself is quit. If Netscape is your browser, HTML documents are now loaded into an existing Netscape window; no new Netscape will be started. This is to be a bit economic with system resources. * The Search button resp. now switches on/off the search entry widget; this is to avoid that multiple entry widgets come up, because that doesn't make much sense. * If no TXT_VIEWER is defined, the environment variable $PAGER will be used, if defined (but see below). - bugs/fixes and suggestions reported by Hans Fredrik Nordhaug: * $j for loop in sub srchstr was too short: $j<$maxind[$i] --> $j<$maxind[$i]+1 * misplaced last SRCH in keywords branch of sub srchstr: last SRCH had to be put into inner if block * added support of zip compression format - bug/fix reported by Adrian Bunk: * ambiguous use of redirection flag/sign hor html and text->ps conversion - own text viewer for plain text documentation files; this is now the default in the original texdocrc.defaults - kpsewhich instead of find is used for rescue file search - temporary files generated when printing or possibly decompressing (as in Debian) now get different names to prevent overwriting files which are still in use - main, settings, and help windows made non-resizable - suppressed availability of listbox selection to X selection - document selection toplevel windows will be raised now instead of being opened twice or more times if they are already open - uniform font for all text-containing widgets explicitly set; I had some weird font configuration when running texdoctk under a CDE - environment v.0.3.0 March 11, 2000 - first full public release - implementation of some suggestions by Thomas Esser: use of kpsewhich, changes in directory and database configuration implemented cd to file directory to ensure rendering of graphics made viewer message output suppression really quiet better layout of help window v.0.2 March 7, 2000 - first public release (preliminary) v.0.1 - private trial version, does not exist anymore AUTHOR Thomas Ruedas tr@geol.ku.dk http://www.geophysik.uni-frankfurt.de/~ruedas/progs.html ======================================================================== * texlive-20200406-source/utils/xindy/xindy-src/make-rules/alphabets/persian/README ======================================================================== ________________________ The “xindy-persian” package v0.6 The “xindy-persian” package is the Persian language support for xindy program. Two Variants are provided: * Variant One: Sorts آ as ا * Variant Two: Sorts آ as a separate letter If you want to report any bugs or typos and corrections in the documentation, or ask for any new features, or suggest any improvements, or ask any questions about the package, then please do not send any direct emails to us; we will not answer any direct emails. Instead please use the issue tracker: In doing so, please always explain your issue well enough, always include a minimal working examples showing the issue, and always choose the appropriate label for your query (i.e. if you are reporting any bugs, choose `bug' label). Current version release date: 2013/10/14 _________________ Vafa Khalighi persian-tex@tug.org Copyright © 2011–2013 Vafa Khalighi Distributed under the LaTeX Project Public License It may be distributed and/or modified under the LaTeX Project Public License, version 1.3c or higher (your choice). The latest version of this license is at: http://www.latex-project.org/lppl.txt This work is “maintained” (as per LPPL maintenance status) by Vafa Khalighi. ======================================================================== * texlive-20200406-source/utils/xpdfopen/xpdfopen-src/README ======================================================================== --------------------------------------------------------------------------- xpdfopen 0.86 - Send open/close commands to Acrobat Reader, xpdf and evince --------------------------------------------------------------------------- This is a Linux (X11) implementation of Fabrice Popineau's pdfclose/ pdfopen commands to control Acrobat Reader, xpdf and evince. The libX code was borrowed from Reinhard Fobbe's Sendx library for Tcl/Tk, and the programs use the same license, copied below. Version 0.3 adds support for Adobe Reader 7.0 for Linux. (different window titles and key shortcuts) Version 0.4 uses autoconf Version 0.5 fixes an incorrect autoconf variable, supports building under X11R5, handles pathnames on the command-line, and fixes a bug where pdfopen did not exit correctly after (automatically) starting acroread. Version 0.51 uses the strrchr() function instead of rindex() to allow compilation on non-BSD derived unix platforms. Version 0.61 attempts to do something useful with Adobe Reader 8, even though it is impossible to restore the viewport. Version 0.80 adds an implementation for AR 9 and xpdf. Version 0.81 adds an implementation for evince. Version 0.82 adds a man page and -v/--version options for pdfopen. Version 0.83 adds the -r/-reset_focus option for pdfopen. Version 0.84 adds 'load at given page' support (-p option) for Adobe Reader 9, evince (at least 3.12, maybe earlier) and xpdf. Version 0.85 adds 'load at named destination' support (-g/--goto option) for xpdf, evince and (supposedly) AR9. The AR9 man page claims it should work, but it doesn't for me. I left the allegedly-correct code there anyway, in case it works for other people in other places. Also add aliases for option names to make ms-windows users feel at home. Version 0.86 fixes 'load at named destination' for AR9. The AR command lines do not behave precisely the same as under Windows, because the Linux Reader behaves somewhat differently: it is not scriptable, but it is possible to 'fake' key-presses. pdfopen has the following call sequence: pdfopen [-r|-reset_focus] \ [-viewer/--viewer ] \ [-p/--page ] \ [-g/--goto ] \ [--file] The "ar9" version uses AR9's "-openInNewInstance" option, the "ar9-tab" version does not (so if there is already an AR9 window open, a new tab will be opened in that window). pdfclose has the following call sequence: pdfclose [--file] This program closes an existing AR5, AR7, AR8, AR9, xpdf or evince window displaying the given PDF file. Version 0.85 compiles on Linux (Slackware64 14.1, anyway) with the following command: gcc -Wall pdfopen.c sendx.c utils.c -o pdfopen -lX11 -s gcc -Wall pdfclose.c sendx.c utils.c -o pdfclose -lX11 -s should you not want to go through the process of creating and running a configure program. Taco Hoekwater (Version(s) up to 0.61) Dordrecht, The Netherlands, December 2008. Jim Diamond (Version 0.80 through 0.84) Acadia University, Wolfville, Nova Scotia, Canada; May 2014. License terms: -------------- The following terms apply to all files associated with the software unless explicitly disclaimed in individual files. The authors hereby grant permission to use, copy, modify, distribute, and license this software and its documentation for any purpose, provided that existing copyright notices are retained in all copies and that this notice is included verbatim in any distributions. No written agreement, license, or royalty fee is required for any of the authorized uses. Modifications to this software may be copyrighted by their authors and need not follow the licensing terms described here, provided that the new terms are clearly indicated on the first page of each file where they apply. IN NO EVENT SHALL THE AUTHORS OR DISTRIBUTORS BE LIABLE TO ANY PARTY FOR DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OF THIS SOFTWARE, ITS DOCUMENTATION, OR ANY DERIVATIVES THEREOF, EVEN IF THE AUTHORS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. THE AUTHORS AND DISTRIBUTORS SPECIFICALLY DISCLAIM ANY WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT. THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, AND THE AUTHORS AND DISTRIBUTORS HAVE NO OBLIGATION TO PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. ======================================================================== * texmf-dist/doc/upmendex/README.md ======================================================================== upmendex --- Multilingual index processor ========================================== 2019.02.17 Ver0.52 TANAKA, Takuji ### About upmendex upmendex is a multilingual index processor with following features: * Mostly compatible with makeindex and upper compatible with mendex, based on mendex version 2.6f by ASCII media works. * Unicode for internal process and support UTF-8 encoding for input/output. Will work with upLaTeX, XeLaTeX and luaLaTeX. * Support Latin (including non-English), Greek, Cyrillic, Korean Hangul and Han (Hanzi ideographs) scripts as well as Japanese Kana. * Apply International Components for Unicode (ICU)[4] for sorting process. ### Contents * README.md :: This file * source/ :: sources * doc/ :: documents * doc/samples/ :: samples for test. More samples are distributed at Ref. [2]. * man/ :: manuals ### Building upmendex The source files are distributed at GitHub[2] and work with TeX Live svn r50040. Ref. [TeX Live and Subversion](http://www.tug.org/texlive/svn/) Tested with ICU 63.1 . ### Status Beta version. No warranty. ### Copyright Lisence notice is written in [COPYRIGHT](./COPYRIGHT). It is as same as [the BSD 3-Clause License](https://opensource.org/licenses/BSD-3-Clause) ### Supported locale In ICU collator, default "root" locale covers several lauguages: English, French, Germany, Italian and so on. Follows are available for setting into "icu_locale". #### Latin script "az" (Azerbaijani), "ca" (Catalan), "cs", "cs@collation=search" (Czech), "da" (Danish), "de@collation=phonebook" (German), "eo" (Espelanto), "es", "es@collation=traditional", "es@collation=search" (Spanish), "fi" (Finnish), "gl" (Galician), "hr", "hr@collation=search" (Croatian), "hu" (Hungarian), "lt" (Lithuanian), "nb", "nn", "no" (Norwegian), "pl" (Polish), "ro" (Romanian), "sk", "sk@collation=search" (Slovak), "sl" (Slovenian), "sq" (Albanian), "sr-Latn", "sr-Latn@collation=search" (Serbian), "sv" (Swedish), "tr" (Turkish), "vi" (Vietnamese) #### Cyrillic script "be" (Belarusian), "bg" (Bulgarian), "ru" (Russian), "sr" (Serbian), "uk" (Ukraine) #### Greek script "el" (Greek) #### CJK (Han script (Hanzi), Hangul, Kana) "ja", "ja@collation=unihan" (Japanese), "ko", "ko@collation=search", "ko@collation=unihan" (Korean), "zh", "zh@collation=unihan", "zh@collation=stroke", "zh@collation=zhuyin" (Chinese) ### References 1. [ASCII Nihongo TeX (Publishing TeX)](http://ascii.asciimw.jp/pb/ptex/) ASCII MEDIA WORKS (dead link) 2. [Source/Document distribution of upmendex --- multilingual index processor @ GitHub](https://github.com/t-tk/upmendex-package) 3. [upTeX, upLaTeX ― unicode version of pTeX, pLaTeX](http://www.t-lab.opal.ne.jp/tex/uptex_en.html) 4. [International Components for Unicode (ICU)](http://site.icu-project.org/) ======================================================================== * doc/fonts/fandol/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . As a special exception, if you create a document which uses this font, and embed this font or unaltered portions of this font into the document, this font does not by itself cause the resulting document to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the document might be covered by the GNU General Public License. If you modify this font, you may extend this exception to your version of the font, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. ======================================================================== * doc/fonts/japanese-otf-uptex/COPYRIGHT ======================================================================== Copyright (C) 2003--2019 SAITO Shuzaburo and INOUE Koichi Copyright (C) 2007--2020 TANAKA Takuji All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/fonts/japanese-otf/COPYRIGHT ======================================================================== Copyright (C) 2003--2019 SAITO Shuzaburo and INOUE Koichi All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/fonts/ptex-fonts/LICENSE ======================================================================== Copyright (C) 2010 ASCII MEDIA WORKS Copyright (C) 2016-2017 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/fonts/uptex-fonts/LICENSE ======================================================================== Copyright (c) 2010 ASCII MEDIA WORKS Copyright (c) 2016 Takuji Tanaka Copyright (c) 2016-2019 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/latex/ascmac/LICENSE ======================================================================== Copyright (c) 2010 ASCII MEDIA WORKS Copyright (c) 2016-2020 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/latex/platex-tools/LICENSE ======================================================================== Copyright (c) 2016-2021 Hironobu Yamashita All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/latex/units/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * doc/luatex/luatexja/COPYING ======================================================================== Copyright (c) 2011--2016 The LuaTeX-ja project, All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the LuaTeX-ja project nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE LUATEX-JA PROJECT OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/ptex/ptex-base/LICENSE ======================================================================== Copyright (C) 2010 ASCII MEDIA WORKS. Copyright (C) 2016-2020 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * doc/uptex/uptex-base/LICENSE ======================================================================== Copyright (c) 2010 ASCII MEDIA WORKS Copyright (c) 2016-2020 Takuji Tanaka Copyright (c) 2016-2020 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * fonts/cmap/adobemapping/cmap-resources/LICENSE.md, fonts/cmap/adobemapping/mapping-resources-pdf/LICENSE.txt ======================================================================== Copyright 1990-2019 Adobe. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. Neither the name of Adobe nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/libs/cairo/cairo-src/COPYING ======================================================================== Cairo is free software. Every source file in the implementation[*] of cairo is available to be redistributed and/or modified under the terms of either the GNU Lesser General Public License (LGPL) version 2.1 or the Mozilla Public License (MPL) version 1.1. Some files are available under more liberal terms, but we believe that in all cases, each file may be used under either the LGPL or the MPL. See the following files in this directory for the precise terms and conditions of either license: COPYING-LGPL-2.1 COPYING-MPL-1.1 Please see each file in the implementation for copyright and licensing information, (in the opening comment of each file). [*] The implementation of cairo is contained entirely within the "src" directory of the cairo source distribution. There are other components of the cairo source distribution (such as the "test", "util", and "perf") that are auxiliary to the library itself. None of the source code in these directories contributes to a build of the cairo library itself, (libcairo.so or cairo.dll or similar). These auxiliary components are also free software, but may be under different license terms than cairo itself. For example, most of the test cases in the perf and test directories are made available under an MIT license to simplify any use of this code for reference purposes in using cairo itself. Other files might be available under the GNU General Public License (GPL), for example. Again, please see the COPYING file under each directory and the opening comment of each file for copyright and licensing information. ======================================================================== * texlive-20200406-source/libs/cairo/cairo-src/COPYING-LGPL-2.1 ======================================================================== GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ======================================================================== * texlive-20200406-source/libs/cairo/cairo-src/COPYING-MPL-1.1 ======================================================================== MOZILLA PUBLIC LICENSE Version 1.1 --------------- 1. Definitions. 1.0.1. "Commercial Use" means distribution or otherwise making the Covered Code available to a third party. 1.1. "Contributor" means each entity that creates or contributes to the creation of Modifications. 1.2. "Contributor Version" means the combination of the Original Code, prior Modifications used by a Contributor, and the Modifications made by that particular Contributor. 1.3. "Covered Code" means the Original Code or Modifications or the combination of the Original Code and Modifications, in each case including portions thereof. 1.4. "Electronic Distribution Mechanism" means a mechanism generally accepted in the software development community for the electronic transfer of data. 1.5. "Executable" means Covered Code in any form other than Source Code. 1.6. "Initial Developer" means the individual or entity identified as the Initial Developer in the Source Code notice required by Exhibit A. 1.7. "Larger Work" means a work which combines Covered Code or portions thereof with code not governed by the terms of this License. 1.8. "License" means this document. 1.8.1. "Licensable" means having the right to grant, to the maximum extent possible, whether at the time of the initial grant or subsequently acquired, any and all of the rights conveyed herein. 1.9. "Modifications" means any addition to or deletion from the substance or structure of either the Original Code or any previous Modifications. When Covered Code is released as a series of files, a Modification is: A. Any addition to or deletion from the contents of a file containing Original Code or previous Modifications. B. Any new file that contains any part of the Original Code or previous Modifications. 1.10. "Original Code" means Source Code of computer software code which is described in the Source Code notice required by Exhibit A as Original Code, and which, at the time of its release under this License is not already Covered Code governed by this License. 1.10.1. "Patent Claims" means any patent claim(s), now owned or hereafter acquired, including without limitation, method, process, and apparatus claims, in any patent Licensable by grantor. 1.11. "Source Code" means the preferred form of the Covered Code for making modifications to it, including all modules it contains, plus any associated interface definition files, scripts used to control compilation and installation of an Executable, or source code differential comparisons against either the Original Code or another well known, available Covered Code of the Contributor's choice. The Source Code can be in a compressed or archival form, provided the appropriate decompression or de-archiving software is widely available for no charge. 1.12. "You" (or "Your") means an individual or a legal entity exercising rights under, and complying with all of the terms of, this License or a future version of this License issued under Section 6.1. For legal entities, "You" includes any entity which controls, is controlled by, or is under common control with You. For purposes of this definition, "control" means (a) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (b) ownership of more than fifty percent (50%) of the outstanding shares or beneficial ownership of such entity. 2. Source Code License. 2.1. The Initial Developer Grant. The Initial Developer hereby grants You a world-wide, royalty-free, non-exclusive license, subject to third party intellectual property claims: (a) under intellectual property rights (other than patent or trademark) Licensable by Initial Developer to use, reproduce, modify, display, perform, sublicense and distribute the Original Code (or portions thereof) with or without Modifications, and/or as part of a Larger Work; and (b) under Patents Claims infringed by the making, using or selling of Original Code, to make, have made, use, practice, sell, and offer for sale, and/or otherwise dispose of the Original Code (or portions thereof). (c) the licenses granted in this Section 2.1(a) and (b) are effective on the date Initial Developer first distributes Original Code under the terms of this License. (d) Notwithstanding Section 2.1(b) above, no patent license is granted: 1) for code that You delete from the Original Code; 2) separate from the Original Code; or 3) for infringements caused by: i) the modification of the Original Code or ii) the combination of the Original Code with other software or devices. 2.2. Contributor Grant. Subject to third party intellectual property claims, each Contributor hereby grants You a world-wide, royalty-free, non-exclusive license (a) under intellectual property rights (other than patent or trademark) Licensable by Contributor, to use, reproduce, modify, display, perform, sublicense and distribute the Modifications created by such Contributor (or portions thereof) either on an unmodified basis, with other Modifications, as Covered Code and/or as part of a Larger Work; and (b) under Patent Claims infringed by the making, using, or selling of Modifications made by that Contributor either alone and/or in combination with its Contributor Version (or portions of such combination), to make, use, sell, offer for sale, have made, and/or otherwise dispose of: 1) Modifications made by that Contributor (or portions thereof); and 2) the combination of Modifications made by that Contributor with its Contributor Version (or portions of such combination). (c) the licenses granted in Sections 2.2(a) and 2.2(b) are effective on the date Contributor first makes Commercial Use of the Covered Code. (d) Notwithstanding Section 2.2(b) above, no patent license is granted: 1) for any code that Contributor has deleted from the Contributor Version; 2) separate from the Contributor Version; 3) for infringements caused by: i) third party modifications of Contributor Version or ii) the combination of Modifications made by that Contributor with other software (except as part of the Contributor Version) or other devices; or 4) under Patent Claims infringed by Covered Code in the absence of Modifications made by that Contributor. 3. Distribution Obligations. 3.1. Application of License. The Modifications which You create or to which You contribute are governed by the terms of this License, including without limitation Section 2.2. The Source Code version of Covered Code may be distributed only under the terms of this License or a future version of this License released under Section 6.1, and You must include a copy of this License with every copy of the Source Code You distribute. You may not offer or impose any terms on any Source Code version that alters or restricts the applicable version of this License or the recipients' rights hereunder. However, You may include an additional document offering the additional rights described in Section 3.5. 3.2. Availability of Source Code. Any Modification which You create or to which You contribute must be made available in Source Code form under the terms of this License either on the same media as an Executable version or via an accepted Electronic Distribution Mechanism to anyone to whom you made an Executable version available; and if made available via Electronic Distribution Mechanism, must remain available for at least twelve (12) months after the date it initially became available, or at least six (6) months after a subsequent version of that particular Modification has been made available to such recipients. You are responsible for ensuring that the Source Code version remains available even if the Electronic Distribution Mechanism is maintained by a third party. 3.3. Description of Modifications. You must cause all Covered Code to which You contribute to contain a file documenting the changes You made to create that Covered Code and the date of any change. You must include a prominent statement that the Modification is derived, directly or indirectly, from Original Code provided by the Initial Developer and including the name of the Initial Developer in (a) the Source Code, and (b) in any notice in an Executable version or related documentation in which You describe the origin or ownership of the Covered Code. 3.4. Intellectual Property Matters (a) Third Party Claims. If Contributor has knowledge that a license under a third party's intellectual property rights is required to exercise the rights granted by such Contributor under Sections 2.1 or 2.2, Contributor must include a text file with the Source Code distribution titled "LEGAL" which describes the claim and the party making the claim in sufficient detail that a recipient will know whom to contact. If Contributor obtains such knowledge after the Modification is made available as described in Section 3.2, Contributor shall promptly modify the LEGAL file in all copies Contributor makes available thereafter and shall take other steps (such as notifying appropriate mailing lists or newsgroups) reasonably calculated to inform those who received the Covered Code that new knowledge has been obtained. (b) Contributor APIs. If Contributor's Modifications include an application programming interface and Contributor has knowledge of patent licenses which are reasonably necessary to implement that API, Contributor must also include this information in the LEGAL file. (c) Representations. Contributor represents that, except as disclosed pursuant to Section 3.4(a) above, Contributor believes that Contributor's Modifications are Contributor's original creation(s) and/or Contributor has sufficient rights to grant the rights conveyed by this License. 3.5. Required Notices. You must duplicate the notice in Exhibit A in each file of the Source Code. If it is not possible to put such notice in a particular Source Code file due to its structure, then You must include such notice in a location (such as a relevant directory) where a user would be likely to look for such a notice. If You created one or more Modification(s) You may add your name as a Contributor to the notice described in Exhibit A. You must also duplicate this License in any documentation for the Source Code where You describe recipients' rights or ownership rights relating to Covered Code. You may choose to offer, and to charge a fee for, warranty, support, indemnity or liability obligations to one or more recipients of Covered Code. However, You may do so only on Your own behalf, and not on behalf of the Initial Developer or any Contributor. You must make it absolutely clear than any such warranty, support, indemnity or liability obligation is offered by You alone, and You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of warranty, support, indemnity or liability terms You offer. 3.6. Distribution of Executable Versions. You may distribute Covered Code in Executable form only if the requirements of Section 3.1-3.5 have been met for that Covered Code, and if You include a notice stating that the Source Code version of the Covered Code is available under the terms of this License, including a description of how and where You have fulfilled the obligations of Section 3.2. The notice must be conspicuously included in any notice in an Executable version, related documentation or collateral in which You describe recipients' rights relating to the Covered Code. You may distribute the Executable version of Covered Code or ownership rights under a license of Your choice, which may contain terms different from this License, provided that You are in compliance with the terms of this License and that the license for the Executable version does not attempt to limit or alter the recipient's rights in the Source Code version from the rights set forth in this License. If You distribute the Executable version under a different license You must make it absolutely clear that any terms which differ from this License are offered by You alone, not by the Initial Developer or any Contributor. You hereby agree to indemnify the Initial Developer and every Contributor for any liability incurred by the Initial Developer or such Contributor as a result of any such terms You offer. 3.7. Larger Works. You may create a Larger Work by combining Covered Code with other code not governed by the terms of this License and distribute the Larger Work as a single product. In such a case, You must make sure the requirements of this License are fulfilled for the Covered Code. 4. Inability to Comply Due to Statute or Regulation. If it is impossible for You to comply with any of the terms of this License with respect to some or all of the Covered Code due to statute, judicial order, or regulation then You must: (a) comply with the terms of this License to the maximum extent possible; and (b) describe the limitations and the code they affect. Such description must be included in the LEGAL file described in Section 3.4 and must be included with all distributions of the Source Code. Except to the extent prohibited by statute or regulation, such description must be sufficiently detailed for a recipient of ordinary skill to be able to understand it. 5. Application of this License. This License applies to code to which the Initial Developer has attached the notice in Exhibit A and to related Covered Code. 6. Versions of the License. 6.1. New Versions. Netscape Communications Corporation ("Netscape") may publish revised and/or new versions of the License from time to time. Each version will be given a distinguishing version number. 6.2. Effect of New Versions. Once Covered Code has been published under a particular version of the License, You may always continue to use it under the terms of that version. You may also choose to use such Covered Code under the terms of any subsequent version of the License published by Netscape. No one other than Netscape has the right to modify the terms applicable to Covered Code created under this License. 6.3. Derivative Works. If You create or use a modified version of this License (which you may only do in order to apply it to code which is not already Covered Code governed by this License), You must (a) rename Your license so that the phrases "Mozilla", "MOZILLAPL", "MOZPL", "Netscape", "MPL", "NPL" or any confusingly similar phrase do not appear in your license (except to note that your license differs from this License) and (b) otherwise make it clear that Your version of the license contains terms which differ from the Mozilla Public License and Netscape Public License. (Filling in the name of the Initial Developer, Original Code or Contributor in the notice described in Exhibit A shall not of themselves be deemed to be modifications of this License.) 7. DISCLAIMER OF WARRANTY. COVERED CODE IS PROVIDED UNDER THIS LICENSE ON AN "AS IS" BASIS, WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, WITHOUT LIMITATION, WARRANTIES THAT THE COVERED CODE IS FREE OF DEFECTS, MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE OR NON-INFRINGING. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE COVERED CODE IS WITH YOU. SHOULD ANY COVERED CODE PROVE DEFECTIVE IN ANY RESPECT, YOU (NOT THE INITIAL DEVELOPER OR ANY OTHER CONTRIBUTOR) ASSUME THE COST OF ANY NECESSARY SERVICING, REPAIR OR CORRECTION. THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS LICENSE. NO USE OF ANY COVERED CODE IS AUTHORIZED HEREUNDER EXCEPT UNDER THIS DISCLAIMER. 8. TERMINATION. 8.1. This License and the rights granted hereunder will terminate automatically if You fail to comply with terms herein and fail to cure such breach within 30 days of becoming aware of the breach. All sublicenses to the Covered Code which are properly granted shall survive any termination of this License. Provisions which, by their nature, must remain in effect beyond the termination of this License shall survive. 8.2. If You initiate litigation by asserting a patent infringement claim (excluding declatory judgment actions) against Initial Developer or a Contributor (the Initial Developer or Contributor against whom You file such action is referred to as "Participant") alleging that: (a) such Participant's Contributor Version directly or indirectly infringes any patent, then any and all rights granted by such Participant to You under Sections 2.1 and/or 2.2 of this License shall, upon 60 days notice from Participant terminate prospectively, unless if within 60 days after receipt of notice You either: (i) agree in writing to pay Participant a mutually agreeable reasonable royalty for Your past and future use of Modifications made by such Participant, or (ii) withdraw Your litigation claim with respect to the Contributor Version against such Participant. If within 60 days of notice, a reasonable royalty and payment arrangement are not mutually agreed upon in writing by the parties or the litigation claim is not withdrawn, the rights granted by Participant to You under Sections 2.1 and/or 2.2 automatically terminate at the expiration of the 60 day notice period specified above. (b) any software, hardware, or device, other than such Participant's Contributor Version, directly or indirectly infringes any patent, then any rights granted to You by such Participant under Sections 2.1(b) and 2.2(b) are revoked effective as of the date You first made, used, sold, distributed, or had made, Modifications made by that Participant. 8.3. If You assert a patent infringement claim against Participant alleging that such Participant's Contributor Version directly or indirectly infringes any patent where such claim is resolved (such as by license or settlement) prior to the initiation of patent infringement litigation, then the reasonable value of the licenses granted by such Participant under Sections 2.1 or 2.2 shall be taken into account in determining the amount or value of any payment or license. 8.4. In the event of termination under Sections 8.1 or 8.2 above, all end user license agreements (excluding distributors and resellers) which have been validly granted by You or any distributor hereunder prior to termination shall survive termination. 9. LIMITATION OF LIABILITY. UNDER NO CIRCUMSTANCES AND UNDER NO LEGAL THEORY, WHETHER TORT (INCLUDING NEGLIGENCE), CONTRACT, OR OTHERWISE, SHALL YOU, THE INITIAL DEVELOPER, ANY OTHER CONTRIBUTOR, OR ANY DISTRIBUTOR OF COVERED CODE, OR ANY SUPPLIER OF ANY OF SUCH PARTIES, BE LIABLE TO ANY PERSON FOR ANY INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER INCLUDING, WITHOUT LIMITATION, DAMAGES FOR LOSS OF GOODWILL, WORK STOPPAGE, COMPUTER FAILURE OR MALFUNCTION, OR ANY AND ALL OTHER COMMERCIAL DAMAGES OR LOSSES, EVEN IF SUCH PARTY SHALL HAVE BEEN INFORMED OF THE POSSIBILITY OF SUCH DAMAGES. THIS LIMITATION OF LIABILITY SHALL NOT APPLY TO LIABILITY FOR DEATH OR PERSONAL INJURY RESULTING FROM SUCH PARTY'S NEGLIGENCE TO THE EXTENT APPLICABLE LAW PROHIBITS SUCH LIMITATION. SOME JURISDICTIONS DO NOT ALLOW THE EXCLUSION OR LIMITATION OF INCIDENTAL OR CONSEQUENTIAL DAMAGES, SO THIS EXCLUSION AND LIMITATION MAY NOT APPLY TO YOU. 10. U.S. GOVERNMENT END USERS. The Covered Code is a "commercial item," as that term is defined in 48 C.F.R. 2.101 (Oct. 1995), consisting of "commercial computer software" and "commercial computer software documentation," as such terms are used in 48 C.F.R. 12.212 (Sept. 1995). Consistent with 48 C.F.R. 12.212 and 48 C.F.R. 227.7202-1 through 227.7202-4 (June 1995), all U.S. Government End Users acquire Covered Code with only those rights set forth herein. 11. MISCELLANEOUS. This License represents the complete agreement concerning subject matter hereof. If any provision of this License is held to be unenforceable, such provision shall be reformed only to the extent necessary to make it enforceable. This License shall be governed by California law provisions (except to the extent applicable law, if any, provides otherwise), excluding its conflict-of-law provisions. With respect to disputes in which at least one party is a citizen of, or an entity chartered or registered to do business in the United States of America, any litigation relating to this License shall be subject to the jurisdiction of the Federal Courts of the Northern District of California, with venue lying in Santa Clara County, California, with the losing party responsible for costs, including without limitation, court costs and reasonable attorneys' fees and expenses. The application of the United Nations Convention on Contracts for the International Sale of Goods is expressly excluded. Any law or regulation which provides that the language of a contract shall be construed against the drafter shall not apply to this License. 12. RESPONSIBILITY FOR CLAIMS. As between Initial Developer and the Contributors, each party is responsible for claims and damages arising, directly or indirectly, out of its utilization of rights under this License and You agree to work with Initial Developer and Contributors to distribute such responsibility on an equitable basis. Nothing herein is intended or shall be deemed to constitute any admission of liability. 13. MULTIPLE-LICENSED CODE. Initial Developer may designate portions of the Covered Code as "Multiple-Licensed". "Multiple-Licensed" means that the Initial Developer permits you to utilize portions of the Covered Code under Your choice of the NPL or the alternative licenses, if any, specified by the Initial Developer in the file described in Exhibit A. EXHIBIT A -Mozilla Public License. ``The contents of this file are subject to the Mozilla Public License Version 1.1 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Original Code is ______________________________________. The Initial Developer of the Original Code is ________________________. Portions created by ______________________ are Copyright (C) ______ _______________________. All Rights Reserved. Contributor(s): ______________________________________. Alternatively, the contents of this file may be used under the terms of the _____ license (the "[___] License"), in which case the provisions of [______] License are applicable instead of those above. If you wish to allow use of your version of this file only under the terms of the [____] License and not to allow others to use your version of this file under the MPL, indicate your decision by deleting the provisions above and replace them with the notice and other provisions required by the [___] License. If you do not delete the provisions above, a recipient may use your version of this file under either the MPL or the [___] License." [NOTE: The text of this Exhibit A may differ slightly from the text of the notices in the Source Code files of the Original Code. You should use the text of this Exhibit A rather than the text found in the Original Code Source Code for Your Modifications.] ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/docs/GPLv2.TXT ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/libs/freetype2/freetype-src/docs/LICENSE.TXT ======================================================================== The FreeType 2 font engine is copyrighted work and cannot be used legally without a software license. In order to make this project usable to a vast majority of developers, we distribute it under two mutually exclusive open-source licenses. This means that *you* must choose *one* of the two licenses described below, then obey all its terms and conditions when using FreeType 2 in any of your projects or products. - The FreeType License, found in the file `FTL.TXT', which is similar to the original BSD license *with* an advertising clause that forces you to explicitly cite the FreeType project in your product's documentation. All details are in the license file. This license is suited to products which don't use the GNU General Public License. Note that this license is compatible to the GNU General Public License version 3, but not version 2. - The GNU General Public License version 2, found in `GPLv2.TXT' (any later version can be used also), for programs which already use the GPL. Note that the FTL is incompatible with GPLv2 due to its advertisement clause. The contributed BDF and PCF drivers come with a license similar to that of the X Window System. It is compatible to the above two licenses (see file src/bdf/README and src/pcf/README). The same holds for the files `fthash.c' and `fthash.h'; their code was part of the BDF driver in earlier FreeType versions. The gzip module uses the zlib license (see src/gzip/zlib.h) which too is compatible to the above two licenses. The MD5 checksum support (only used for debugging in development builds) is in the public domain. --- end of LICENSE.TXT --- ======================================================================== * texlive-20200406-source/libs/gd/libgd-src/COPYING ======================================================================== Credits and license terms: In order to resolve any possible confusion regarding the authorship of gd, the following copyright statement covers all of the authors who have required such a statement. If you are aware of any oversights in this copyright notice, please contact Pierre-A. Joye who will be pleased to correct them. * Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 by Cold Spring Harbor Laboratory. Funded under Grant P41-RR02188 by the National Institutes of Health. * Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 by Boutell.Com, Inc. * Portions relating to GD2 format copyright 1999, 2000, 2001, 2002, 2003, 2004 Philip Warner. * Portions relating to PNG copyright 1999, 2000, 2001, 2002, 2003, 2004 Greg Roelofs. * Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002, 2003, 2004 John Ellson (ellson@graphviz.org). * Portions relating to gdft.c copyright 2001, 2002, 2003, 2004 John Ellson (ellson@graphviz.org). * Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Pierre-Alain Joye (pierre@libgd.org). * Portions relating to JPEG and to color quantization copyright 2000, 2001, 2002, 2003, 2004, Doug Becker and copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004 Thomas G. Lane. This software is based in part on the work of the Independent JPEG Group. See the file README-JPEG.TXT for more information. * Portions relating to GIF compression copyright 1989 by Jef Poskanzer and David Rowley, with modifications for thread safety by Thomas Boutell. * Portions relating to GIF decompression copyright 1990, 1991, 1993 by David Koblas, with modifications for thread safety by Thomas Boutell. * Portions relating to WBMP copyright 2000, 2001, 2002, 2003, 2004 Maurice Szmurlo and Johan Van den Brande. * Portions relating to GIF animations copyright 2004 Jaakko Hyvätti (jaakko.hyvatti@iki.fi) Permission has been granted to copy, distribute and modify gd in any context without fee, including a commercial application, provided that this notice is present in user-accessible supporting documentation. This does not affect your ownership of the derived work itself, and the intent is to assure proper credit for the authors of gd, not to interfere with your productive use of gd. If you have questions, ask. "Derived works" includes all programs that utilize the library. Credit must be given in user-accessible documentation. This software is provided "AS IS." The copyright holders disclaim all warranties, either express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to this code and accompanying documentation. Although their code does not appear in the current release, the authors wish to thank David Koblas, David Rowley, and Hutchison Avenue Software Corporation for their prior contributions. ======================================================================== * texlive-20200406-source/libs/gd/libgd-src/src/COPYING ======================================================================== Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 by Cold Spring Harbor Laboratory. Funded under Grant P41-RR02188 by the National Institutes of Health. Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 by Boutell.Com, Inc. Portions relating to GD2 format copyright 1999, 2000, 2001, 2002 Philip Warner. Portions relating to PNG copyright 1999, 2000, 2001, 2002 Greg Roelofs. Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002 John Ellson (ellson@lucent.com). Portions relating to gdft.c copyright 2001, 2002 John Ellson (ellson@lucent.com). Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 2008 Pierre-Alain Joye (pierre@libgd.org). Portions relating to JPEG and to color quantization copyright 2000, 2001, 2002, Doug Becker and copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, Thomas G. Lane. This software is based in part on the work of the Independent JPEG Group. See the file README-JPEG.TXT for more information. Portions relating to WBMP copyright 2000, 2001, 2002 Maurice Szmurlo and Johan Van den Brande. Permission has been granted to copy, distribute and modify gd in any context without fee, including a commercial application, provided that this notice is present in user-accessible supporting documentation. This does not affect your ownership of the derived work itself, and the intent is to assure proper credit for the authors of gd, not to interfere with your productive use of gd. If you have questions, ask. "Derived works" includes all programs that utilize the library. Credit must be given in user-accessible documentation. This software is provided "AS IS." The copyright holders disclaim all warranties, either express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to this code and accompanying documentation. Although their code does not appear in gd, the authors wish to thank David Koblas, David Rowley, and Hutchison Avenue Software Corporation for their prior contributions. ======================================================================== * texlive-20200406-source/libs/graphite2/graphite2-src/COPYING ======================================================================== /* GRAPHITE2 LICENSING Copyright 2010, SIL International All rights reserved. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of 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 Lesser General Public License for more details. You should also have received a copy of the GNU Lesser General Public License along with this library in the file named "LICENSE". If not, write to the Free Software Foundation, 51 Franklin Street, Suite 500, Boston, MA 02110-1335, USA or visit their web page on the internet at http://www.fsf.org/licenses/lgpl.html. Alternatively, you may use this library under the terms of the Mozilla Public License (http://mozilla.org/MPL) or under the GNU General Public License, as published by the Free Sofware Foundation; either version 2 of the license or (at your option) any later version. */ ======================================================================== * texlive-20200406-source/libs/graphite2/graphite2-src/LICENSE ======================================================================== GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ======================================================================== * texlive-20200406-source/libs/icu/icu-src/LICENSE ======================================================================== COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later) Copyright © 1991-2019 Unicode, Inc. All rights reserved. Distributed under the Terms of Use in https://www.unicode.org/copyright.html. Permission is hereby granted, free of charge, to any person obtaining a copy of the Unicode data files and any associated documentation (the "Data Files") or Unicode software and any associated documentation (the "Software") to deal in the Data Files or Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Data Files or Software, and to permit persons to whom the Data Files or Software are furnished to do so, provided that either (a) this copyright and permission notice appear with all copies of the Data Files or Software, or (b) this copyright and permission notice appear in associated Documentation. THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THE DATA FILES OR SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in these Data Files or Software without prior written authorization of the copyright holder. --------------------- Third-Party Software Licenses This section contains third-party software notices and/or additional terms for licensed third-party software components included within ICU libraries. 1. ICU License - ICU 1.8.1 to ICU 57.1 COPYRIGHT AND PERMISSION NOTICE Copyright (c) 1995-2016 International Business Machines Corporation and others All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, provided that the above copyright notice(s) and this permission notice appear in all copies of the Software and that both the above copyright notice(s) and this permission notice appear in supporting documentation. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. All trademarks and registered trademarks mentioned herein are the property of their respective owners. 2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt) # The Google Chrome software developed by Google is licensed under # the BSD license. Other software included in this distribution is # provided under other licenses, as set forth below. # # The BSD License # http://opensource.org/licenses/bsd-license.php # Copyright (C) 2006-2008, Google Inc. # # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the following # disclaimer in the documentation and/or other materials provided with # the distribution. # Neither the name of Google Inc. nor the names of its # contributors may be used to endorse or promote products derived from # this software without specific prior written permission. # # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. # # # The word list in cjdict.txt are generated by combining three word lists # listed below with further processing for compound word breaking. The # frequency is generated with an iterative training against Google web # corpora. # # * Libtabe (Chinese) # - https://sourceforge.net/project/?group_id=1519 # - Its license terms and conditions are shown below. # # * IPADIC (Japanese) # - http://chasen.aist-nara.ac.jp/chasen/distribution.html # - Its license terms and conditions are shown below. # # ---------COPYING.libtabe ---- BEGIN-------------------- # # /* # * Copyright (c) 1999 TaBE Project. # * Copyright (c) 1999 Pai-Hsiang Hsiao. # * All rights reserved. # * # * Redistribution and use in source and binary forms, with or without # * modification, are permitted provided that the following conditions # * are met: # * # * . Redistributions of source code must retain the above copyright # * notice, this list of conditions and the following disclaimer. # * . Redistributions in binary form must reproduce the above copyright # * notice, this list of conditions and the following disclaimer in # * the documentation and/or other materials provided with the # * distribution. # * . Neither the name of the TaBE Project nor the names of its # * contributors may be used to endorse or promote products derived # * from this software without specific prior written permission. # * # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED # * OF THE POSSIBILITY OF SUCH DAMAGE. # */ # # /* # * Copyright (c) 1999 Computer Systems and Communication Lab, # * Institute of Information Science, Academia # * Sinica. All rights reserved. # * # * Redistribution and use in source and binary forms, with or without # * modification, are permitted provided that the following conditions # * are met: # * # * . Redistributions of source code must retain the above copyright # * notice, this list of conditions and the following disclaimer. # * . Redistributions in binary form must reproduce the above copyright # * notice, this list of conditions and the following disclaimer in # * the documentation and/or other materials provided with the # * distribution. # * . Neither the name of the Computer Systems and Communication Lab # * nor the names of its contributors may be used to endorse or # * promote products derived from this software without specific # * prior written permission. # * # * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, # * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED # * OF THE POSSIBILITY OF SUCH DAMAGE. # */ # # Copyright 1996 Chih-Hao Tsai @ Beckman Institute, # University of Illinois # c-tsai4@uiuc.edu http://casper.beckman.uiuc.edu/~c-tsai4 # # ---------------COPYING.libtabe-----END-------------------------------- # # # ---------------COPYING.ipadic-----BEGIN------------------------------- # # Copyright 2000, 2001, 2002, 2003 Nara Institute of Science # and Technology. All Rights Reserved. # # Use, reproduction, and distribution of this software is permitted. # Any copy of this software, whether in its original form or modified, # must include both the above copyright notice and the following # paragraphs. # # Nara Institute of Science and Technology (NAIST), # the copyright holders, disclaims all warranties with regard to this # software, including all implied warranties of merchantability and # fitness, in no event shall NAIST be liable for # any special, indirect or consequential damages or any damages # whatsoever resulting from loss of use, data or profits, whether in an # action of contract, negligence or other tortuous action, arising out # of or in connection with the use or performance of this software. # # A large portion of the dictionary entries # originate from ICOT Free Software. The following conditions for ICOT # Free Software applies to the current dictionary as well. # # Each User may also freely distribute the Program, whether in its # original form or modified, to any third party or parties, PROVIDED # that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear # on, or be attached to, the Program, which is distributed substantially # in the same form as set out herein and that such intended # distribution, if actually made, will neither violate or otherwise # contravene any of the laws and regulations of the countries having # jurisdiction over the User or the intended distribution itself. # # NO WARRANTY # # The program was produced on an experimental basis in the course of the # research and development conducted during the project and is provided # to users as so produced on an experimental basis. Accordingly, the # program is provided without any warranty whatsoever, whether express, # implied, statutory or otherwise. The term "warranty" used herein # includes, but is not limited to, any warranty of the quality, # performance, merchantability and fitness for a particular purpose of # the program and the nonexistence of any infringement or violation of # any right of any third party. # # Each user of the program will agree and understand, and be deemed to # have agreed and understood, that there is no warranty whatsoever for # the program and, accordingly, the entire risk arising from or # otherwise connected with the program is assumed by the user. # # Therefore, neither ICOT, the copyright holder, or any other # organization that participated in or was otherwise related to the # development of the program and their respective officials, directors, # officers and other employees shall be held liable for any and all # damages, including, without limitation, general, special, incidental # and consequential damages, arising out of or otherwise in connection # with the use or inability to use the program or any product, material # or result produced or otherwise obtained by using the program, # regardless of whether they have been advised of, or otherwise had # knowledge of, the possibility of such damages at any time during the # project or thereafter. Each user will be deemed to have agreed to the # foregoing by his or her commencement of use of the program. The term # "use" as used herein includes, but is not limited to, the use, # modification, copying and distribution of the program and the # production of secondary products from the program. # # In the case where the program, whether in its original form or # modified, was distributed or delivered to or received by a user from # any person, organization or entity other than ICOT, unless it makes or # grants independently of ICOT any specific warranty to the user in # writing, such person, organization or entity, will also be exempted # from and not be held liable to the user for any such damages as noted # above as far as the program is concerned. # # ---------------COPYING.ipadic-----END---------------------------------- 3. Lao Word Break Dictionary Data (laodict.txt) # Copyright (c) 2013 International Business Machines Corporation # and others. All Rights Reserved. # # Project: http://code.google.com/p/lao-dictionary/ # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt # (copied below) # # This file is derived from the above dictionary, with slight # modifications. # ---------------------------------------------------------------------- # Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell. # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, # are permitted provided that the following conditions are met: # # # Redistributions of source code must retain the above copyright notice, this # list of conditions and the following disclaimer. Redistributions in # binary form must reproduce the above copyright notice, this list of # conditions and the following disclaimer in the documentation and/or # other materials provided with the distribution. # # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED # OF THE POSSIBILITY OF SUCH DAMAGE. # -------------------------------------------------------------------------- 4. Burmese Word Break Dictionary Data (burmesedict.txt) # Copyright (c) 2014 International Business Machines Corporation # and others. All Rights Reserved. # # This list is part of a project hosted at: # github.com/kanyawtech/myanmar-karen-word-lists # # -------------------------------------------------------------------------- # Copyright (c) 2013, LeRoy Benjamin Sharon # All rights reserved. # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: Redistributions of source code must retain the above # copyright notice, this list of conditions and the following # disclaimer. Redistributions in binary form must reproduce the # above copyright notice, this list of conditions and the following # disclaimer in the documentation and/or other materials provided # with the distribution. # # Neither the name Myanmar Karen Word Lists, nor the names of its # contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS # BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED # TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, # DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON # ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR # TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF # THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -------------------------------------------------------------------------- 5. Time Zone Database ICU uses the public domain data and code derived from Time Zone Database for its time zone support. The ownership of the TZ database is explained in BCP 175: Procedure for Maintaining the Time Zone Database section 7. # 7. Database Ownership # # The TZ database itself is not an IETF Contribution or an IETF # document. Rather it is a pre-existing and regularly updated work # that is in the public domain, and is intended to remain in the # public domain. Therefore, BCPs 78 [RFC5378] and 79 [RFC3979] do # not apply to the TZ Database or contributions that individuals make # to it. Should any claims be made and substantiated against the TZ # Database, the organization that is providing the IANA # Considerations defined in this RFC, under the memorandum of # understanding with the IETF, currently ICANN, may act in accordance # with all competent court orders. No ownership claims will be made # by ICANN or the IETF Trust on the database or the code. Any person # making a contribution to the database or code waives all rights to # future claims in that contribution or in the TZ Database. 6. Google double-conversion Copyright 2006-2011, the V8 project authors. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Google Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/LICENSE ======================================================================== COPYRIGHT NOTICE, DISCLAIMER, and LICENSE ========================================= PNG Reference Library License version 2 --------------------------------------- * Copyright (c) 1995-2019 The PNG Reference Library Authors. * Copyright (c) 2018-2019 Cosmin Truta. * Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson. * Copyright (c) 1996-1997 Andreas Dilger. * Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. The software is supplied "as is", without warranty of any kind, express or implied, including, without limitation, the warranties of merchantability, fitness for a particular purpose, title, and non-infringement. In no event shall the Copyright owners, or anyone distributing the software, be liable for any damages or other liability, whether in contract, tort or otherwise, arising from, out of, or in connection with the software, or the use or other dealings in the software, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this software, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated, but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. PNG Reference Library License version 1 (for libpng 0.5 through 1.6.35) ----------------------------------------------------------------------- libpng versions 1.0.7, July 1, 2000, through 1.6.35, July 15, 2018 are Copyright (c) 2000-2002, 2004, 2006-2018 Glenn Randers-Pehrson, are derived from libpng-1.0.6, and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors: Simon-Pierre Cadieux Eric S. Raymond Mans Rullgard Cosmin Truta Gilles Vollant James Yu Mandar Sahastrabuddhe Google Inc. Vadim Barkov and with the following additions to the disclaimer: There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user. Some files in the "contrib" directory and some configure-generated files that are distributed with libpng have other copyright owners, and are released under other open source licenses. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998-2000 Glenn Randers-Pehrson, are derived from libpng-0.96, and are distributed according to the same disclaimer and license as libpng-0.96, with the following individuals added to the list of Contributing Authors: Tom Lane Glenn Randers-Pehrson Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996-1997 Andreas Dilger, are derived from libpng-0.88, and are distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: John Bowler Kevin Bracey Sam Bushell Magnus Holmgren Greg Roelofs Tom Tanner Some files in the "scripts" directory have other copyright owners, but are released under this license. libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright (c) 1995-1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: Andreas Dilger Dave Martindale Guy Eric Schalnat Paul Schmidt Tim Wegner The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/gregbook/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/gregbook/LICENSE ======================================================================== --------------------------------------------------------------------------- Copyright (c) 1998-2008 Greg Roelofs. All rights reserved. This software is provided "as is," without warranty of any kind, express or implied. In no event shall the author or contributors be held liable for any damages arising in any way from the use of this software. The contents of this file are DUAL-LICENSED. You may modify and/or redistribute this software according to the terms of one of the following two licenses (at your option): LICENSE 1 ("BSD-like with advertising clause"): Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. Redistributions of source code must retain the above copyright notice, disclaimer, and this list of conditions. 2. Redistributions in binary form must reproduce the above copyright notice, disclaimer, and this list of conditions in the documenta- tion and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: This product includes software developed by Greg Roelofs and contributors for the book, "PNG: The Definitive Guide," published by O'Reilly and Associates. LICENSE 2 (GNU GPL v2 or later): 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 --------------------------------------------------------------------------- ======================================================================== * texlive-20200406-source/libs/libpng/libpng-src/contrib/pngminus/LICENSE.txt ======================================================================== pnm2png / png2pnm --- conversion from PBM/PGM/PPM-file to PNG-file copyright (C) 1999-2019 by Willem van Schaik Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. The software is provided "as is", without warranty of any kind, express or implied, including but not limited to the warranties of merchantability, fitness for a particular purpose and noninfringement. In no event shall the authors or copyight holders be liable for any claim, damages or other liability, whether in an action of contract, tort or otherwise, arising from, out of or in connection with the software or the use or other dealings in the software. ======================================================================== * texlive-20200406-source/libs/luajit/LuaJIT-src/COPYRIGHT ======================================================================== =============================================================================== LuaJIT -- a Just-In-Time Compiler for Lua. http://luajit.org/ Copyright (C) 2005-2017 Mike Pall. All rights reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. [ MIT license: http://www.opensource.org/licenses/mit-license.php ] =============================================================================== [ LuaJIT includes code from Lua 5.1/5.2, which has this license statement: ] Copyright (C) 1994-2012 Lua.org, PUC-Rio. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. =============================================================================== [ LuaJIT includes code from dlmalloc, which has this license statement: ] This is a version (aka dlmalloc) of malloc/free/realloc written by Doug Lea and released to the public domain, as explained at http://creativecommons.org/licenses/publicdomain =============================================================================== ======================================================================== * texlive-20200406-source/libs/pixman/pixman-src/COPYING ======================================================================== The following is the MIT license, agreed upon by most contributors. Copyright holders of new code should use this license statement where possible. They may also add themselves to the list below. /* * Copyright 1987, 1988, 1989, 1998 The Open Group * Copyright 1987, 1988, 1989 Digital Equipment Corporation * Copyright 1999, 2004, 2008 Keith Packard * Copyright 2000 SuSE, Inc. * Copyright 2000 Keith Packard, member of The XFree86 Project, Inc. * Copyright 2004, 2005, 2007, 2008, 2009, 2010 Red Hat, Inc. * Copyright 2004 Nicholas Miell * Copyright 2005 Lars Knoll & Zack Rusin, Trolltech * Copyright 2005 Trolltech AS * Copyright 2007 Luca Barbato * Copyright 2008 Aaron Plattner, NVIDIA Corporation * Copyright 2008 Rodrigo Kumpera * Copyright 2008 André Tupinambá * Copyright 2008 Mozilla Corporation * Copyright 2008 Frederic Plourde * Copyright 2009, Oracle and/or its affiliates. All rights reserved. * Copyright 2009, 2010 Nokia Corporation * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), * to deal in the Software without restriction, including without limitation * the rights to use, copy, modify, merge, publish, distribute, sublicense, * and/or sell copies of the Software, and to permit persons to whom the * Software is furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice (including the next * paragraph) shall be included in all copies or substantial portions of the * Software. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER * DEALINGS IN THE SOFTWARE. */ ======================================================================== * texlive-20200406-source/libs/poppler/poppler-src/COPYING, texlive-20200406-source/utils/xindy/xindy-src/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. ======================================================================== * texlive-20200406-source/libs/poppler/poppler-src/COPYING3, texlive-20200406-source/libs/xpdf/xpdf-src/COPYING3, texlive-20200406-source/texk/dvipng/dvipng-src/COPYING, texlive-20200406-source/texk/dvisvgm/dvisvgm-src/COPYING, texlive-20200406-source/utils/asymptote/LICENSE, texlive-20200406-source/utils/autosp/autosp-src/COPYING, texlive-20200406-source/utils/axodraw2/axodraw2-src/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an "about box". You should also get your employer (if you work as a programmer) or school, if any, to sign a "copyright disclaimer" for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see . The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read . ======================================================================== * texlive-20200406-source/libs/teckit/TECkit-src/COPYING ======================================================================== see license/LICENSING.txt ======================================================================== * texlive-20200406-source/libs/teckit/TECkit-src/license/License_CPLv05.txt ======================================================================== Common Public License Version 0.5 THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS COMMON PUBLIC LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT. 1. DEFINITIONS "Contribution" means: a) in the case of the initial Contributor, the initial code and documentation distributed under this Agreement, and b) in the case of each subsequent Contributor: i) changes to the Program, and ii) additions to the Program; where such changes and/or additions to the Program originate from and are distributed by that particular Contributor. A Contribution 'originates' from a Contributor if it was added to the Program by such Contributor itself or anyone acting on such Contributor's behalf. Contributions do not include additions to the Program which: (i) are separate modules of software distributed in conjunction with the Program under their own license agreement, and (ii) are not derivative works of the Program. "Contributor" means any person or entity that distributes the Program. "Licensed Patents " mean patent claims licensable by a Contributor which are necessarily infringed by the use or sale of its Contribution alone or when combined with the Program. "Program" means the Contributions distributed in accordance with this Agreement. "Recipient" means anyone who receives the Program under this Agreement, including all Contributors. 2. GRANT OF RIGHTS a) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce, prepare derivative works of, publicly display, publicly perform, distribute and sublicense the Contribution of such Contributor, if any, and such derivative works, in source code and object code form. b) Subject to the terms of this Agreement, each Contributor hereby grants Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed Patents to make, use, sell, offer to sell, import and otherwise transfer the Contribution of such Contributor, if any, in source code and object code form. This patent license shall apply to the combination of the Contribution and the Program if, at the time the Contribution is added by the Contributor, such addition of the Contribution causes such combination to be covered by the Licensed Patents. The patent license shall not apply to any other combinations which include the Contribution. No hardware per se is licensed hereunder. c) Recipient understands that although each Contributor grants the licenses to its Contributions set forth herein, no assurances are provided by any Contributor that the Program does not infringe the patent or other intellectual property rights of any other entity. Each Contributor disclaims any liability to Recipient for claims brought by any other entity based on infringement of intellectual property rights or otherwise. As a condition to exercising the rights and licenses granted hereunder, each Recipient hereby assumes sole responsibility to secure any other intellectual property rights needed, if any. For example, if a third party patent license is required to allow Recipient to distribute the Program, it is Recipient's responsibility to acquire that license before distributing the Program. d) Each Contributor represents that to its knowledge it has sufficient copyright rights in its Contribution, if any, to grant the copyright license set forth in this Agreement. 3. REQUIREMENTS A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that: a) it complies with the terms and conditions of this Agreement; and b) its license agreement: i) effectively disclaims on behalf of all Contributors all warranties and conditions, express and implied, including warranties or conditions of title and non-infringement, and implied warranties or conditions of merchantability and fitness for a particular purpose; ii) effectively excludes on behalf of all Contributors all liability for damages, including direct, indirect, special, incidental and consequential damages, such as lost profits; iii) states that any provisions which differ from this Agreement are offered by that Contributor alone and not by any other party; and iv) states that source code for the Program is available from such Contributor, and informs licensees how to obtain it in a reasonable manner on or through a medium customarily used for software exchange. When the Program is made available in source code form: a) it must be made available under this Agreement; and b) a copy of this Agreement must be included with each copy of the Program. Contributors may not remove or alter any copyright notices contained within the Program. Each Contributor must identify itself as the originator of its Contribution, if any, in a manner that reasonably allows subsequent Recipients to identify the originator of the Contribution. 4. COMMERCIAL DISTRIBUTION Commercial distributors of software may accept certain responsibilities with respect to end users, business partners and the like. While this license is intended to facilitate the commercial use of the Program, the Contributor who includes the Program in a commercial product offering should do so in a manner which does not create potential liability for other Contributors. Therefore, if a Contributor includes the Program in a commercial product offering, such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify every other Contributor ("Indemnified Contributor") against any losses, damages and costs (collectively "Losses") arising from claims, lawsuits and other legal actions brought by a third party against the Indemnified Contributor to the extent caused by the acts or omissions of such Commercial Contributor in connection with its distribution of the Program in a commercial product offering. The obligations in this section do not apply to any claims or Losses relating to any actual or alleged intellectual property infringement. In order to qualify, an Indemnified Contributor must: a) promptly notify the Commercial Contributor in writing of such claim, and b) allow the Commercial Contributor to control, and cooperate with the Commercial Contributor in, the defense and any related settlement negotiations. The Indemnified Contributor may participate in any such claim at its own expense. For example, a Contributor might include the Program in a commercial product offering, Product X. That Contributor is then a Commercial Contributor. If that Commercial Contributor then makes performance claims, or offers warranties related to Product X, those performance claims and warranties are such Commercial Contributor's responsibility alone. Under this section, the Commercial Contributor would have to defend claims against the other Contributors related to those performance claims and warranties, and if a court requires any other Contributor to pay any damages as a result, the Commercial Contributor must pay those damages. 5. NO WARRANTY EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Each Recipient is solely responsible for determining the appropriateness of using and distributing the Program and assumes all risks associated with its exercise of rights under this Agreement, including but not limited to the risks and costs of program errors, compliance with applicable laws, damage to or loss of data, programs or equipment, and unavailability or interruption of operations. 6. DISCLAIMER OF LIABILITY EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 7. GENERAL If any provision of this Agreement is invalid or unenforceable under applicable law, it shall not affect the validity or enforceability of the remainder of the terms of this Agreement, and without further action by the parties hereto, such provision shall be reformed to the minimum extent necessary to make such provision valid and enforceable. If Recipient institutes patent litigation against a Contributor with respect to a patent applicable to software (including a cross-claim or counterclaim in a lawsuit), then any patent licenses granted by that Contributor to such Recipient under this Agreement shall terminate as of the date such litigation is filed. In addition, If Recipient institutes patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Program itself (excluding combinations of the Program with other software or hardware) infringes such Recipient's patent(s), then such Recipient's rights granted under Section 2(b) shall terminate as of the date such litigation is filed. All Recipient's rights under this Agreement shall terminate if it fails to comply with any of the material terms or conditions of this Agreement and does not cure such failure in a reasonable period of time after becoming aware of such noncompliance. If all Recipient's rights under this Agreement terminate, Recipient agrees to cease use and distribution of the Program as soon as reasonably practicable. However, Recipient's obligations under this Agreement and any licenses granted by Recipient relating to the Program shall continue and survive. Everyone is permitted to copy and distribute copies of this Agreement, but in order to avoid inconsistency the Agreement is copyrighted and may only be modified in the following manner. The Agreement Steward reserves the right to publish new versions (including revisions) of this Agreement from time to time. No one other than the Agreement Steward has the right to modify this Agreement. IBM is the initial Agreement Steward. IBM may assign the responsibility to serve as the Agreement Steward to a suitable separate entity. Each new version of the Agreement will be given a distinguishing version number. The Program (including Contributions) may always be distributed subject to the version of the Agreement under which it was received. In addition, after a new version of the Agreement is published, Contributor may elect to distribute the Program (including its Contributions) under the new version. Except as expressly stated in Sections 2(a) and 2(b) above, Recipient receives no rights or licenses to the intellectual property of any Contributor under this Agreement, whether expressly, by implication, estoppel or otherwise. All rights in the Program not expressly granted under this Agreement are reserved. This Agreement is governed by the laws of the State of New York and the intellectual property laws of the United States of America. No party to this Agreement will bring a legal action under this Agreement more than one year after the cause of action arose. Each party waives its rights to a jury trial in any resulting litigation. ======================================================================== * texlive-20200406-source/libs/teckit/TECkit-src/license/License_LGPLv21.txt ======================================================================== GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ======================================================================== * texlive-20200406-source/libs/xpdf/xpdf-src/COPYING, texlive-20200406-source/texk/bibtex-x/COPYING, texlive-20200406-source/texk/bibtex-x/csf/COPYING, texlive-20200406-source/texk/ttfdump/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/libs/zlib/zlib-src/contrib/dotzlib/LICENSE_1_0.txt, texlive-20200406-source/texk/dvisvgm/dvisvgm-src/libs/variant/LICENSE.md ======================================================================== Boost Software License - Version 1.0 - August 17th, 2003 Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following: The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/afm2pl/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/texk/chktex/chktex-src/COPYING ======================================================================== 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. The GNU General Public License version 2 is included below for your reference. ------------------------------------------------------------------------ GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/texk/chktex/regex/COPYING.LIB, texlive-20200406-source/texk/web2c/pdftexdir/regex/COPYING.LIB ======================================================================== GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 Copyright (C) 1991, 1999 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. [This is the first released version of the Lesser GPL. It also counts as the successor of the GNU Library Public License, version 2, hence the version number 2.1.] Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public Licenses are intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This license, the Lesser General Public License, applies to some specially designated software packages--typically libraries--of the Free Software Foundation and other authors who decide to use it. You can use it too, but we suggest you first think carefully about whether this license or the ordinary General Public License is the better strategy to use in any particular case, based on the explanations below. When we speak of free software, we are referring to freedom of use, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish); that you receive source code or can get it if you want it; that you can change the software and use pieces of it in new free programs; and that you are informed that you can do these things. To protect your rights, we need to make restrictions that forbid distributors to deny you these rights or to ask you to surrender these rights. These restrictions translate to certain responsibilities for you if you distribute copies of the library or if you modify it. For example, if you distribute copies of the library, whether gratis or for a fee, you must give the recipients all the rights that we gave you. You must make sure that they, too, receive or can get the source code. If you link other code with the library, you must provide complete object files to the recipients, so that they can relink them with the library after making changes to the library and recompiling it. And you must show them these terms so they know their rights. We protect your rights with a two-step method: (1) we copyright the library, and (2) we offer you this license, which gives you legal permission to copy, distribute and/or modify the library. To protect each distributor, we want to make it very clear that there is no warranty for the free library. Also, if the library is modified by someone else and passed on, the recipients should know that what they have is not the original version, so that the original author's reputation will not be affected by problems that might be introduced by others. ^L Finally, software patents pose a constant threat to the existence of any free program. We wish to make sure that a company cannot effectively restrict the users of a free program by obtaining a restrictive license from a patent holder. Therefore, we insist that any patent license obtained for a version of the library must be consistent with the full freedom of use specified in this license. Most GNU software, including some libraries, is covered by the ordinary GNU General Public License. This license, the GNU Lesser General Public License, applies to certain designated libraries, and is quite different from the ordinary General Public License. We use this license for certain libraries in order to permit linking those libraries into non-free programs. When a program is linked with a library, whether statically or using a shared library, the combination of the two is legally speaking a combined work, a derivative of the original library. The ordinary General Public License therefore permits such linking only if the entire combination fits its criteria of freedom. The Lesser General Public License permits more lax criteria for linking other code with the library. We call this license the "Lesser" General Public License because it does Less to protect the user's freedom than the ordinary General Public License. It also provides other free software developers Less of an advantage over competing non-free programs. These disadvantages are the reason we use the ordinary General Public License for many libraries. However, the Lesser license provides advantages in certain special circumstances. For example, on rare occasions, there may be a special need to encourage the widest possible use of a certain library, so that it becomes a de-facto standard. To achieve this, non-free programs must be allowed to use the library. A more frequent case is that a free library does the same job as widely used non-free libraries. In this case, there is little to gain by limiting the free library to free software only, so we use the Lesser General Public License. In other cases, permission to use a particular library in non-free programs enables a greater number of people to use a large body of free software. For example, permission to use the GNU C Library in non-free programs enables many more people to use the whole GNU operating system, as well as its variant, the GNU/Linux operating system. Although the Lesser General Public License is Less protective of the users' freedom, it does ensure that the user of a program that is linked with the Library has the freedom and the wherewithal to run that program using a modified version of the Library. The precise terms and conditions for copying, distribution and modification follow. Pay close attention to the difference between a "work based on the library" and a "work that uses the library". The former contains code derived from the library, whereas the latter must be combined with the library in order to run. ^L GNU LESSER GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License Agreement applies to any software library or other program which contains a notice placed by the copyright holder or other authorized party saying it may be distributed under the terms of this Lesser General Public License (also called "this License"). Each licensee is addressed as "you". A "library" means a collection of software functions and/or data prepared so as to be conveniently linked with application programs (which use some of those functions and data) to form executables. The "Library", below, refers to any such software library or work which has been distributed under these terms. A "work based on the Library" means either the Library or any derivative work under copyright law: that is to say, a work containing the Library or a portion of it, either verbatim or with modifications and/or translated straightforwardly into another language. (Hereinafter, translation is included without limitation in the term "modification".) "Source code" for a work means the preferred form of the work for making modifications to it. For a library, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the library. Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running a program using the Library is not restricted, and output from such a program is covered only if its contents constitute a work based on the Library (independent of the use of the Library in a tool for writing it). Whether that is true depends on what the Library does and what the program that uses the Library does. 1. You may copy and distribute verbatim copies of the Library's complete source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and distribute a copy of this License along with the Library. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Library or any portion of it, thus forming a work based on the Library, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) The modified work must itself be a software library. b) You must cause the files modified to carry prominent notices stating that you changed the files and the date of any change. c) You must cause the whole of the work to be licensed at no charge to all third parties under the terms of this License. d) If a facility in the modified Library refers to a function or a table of data to be supplied by an application program that uses the facility, other than as an argument passed when the facility is invoked, then you must make a good faith effort to ensure that, in the event an application does not supply such function or table, the facility still operates, and performs whatever part of its purpose remains meaningful. (For example, a function in a library to compute square roots has a purpose that is entirely well-defined independent of the application. Therefore, Subsection 2d requires that any application-supplied function or table used by this function must be optional: if the application does not supply it, the square root function must still compute square roots.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Library, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Library, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Library. In addition, mere aggregation of another work not based on the Library with the Library (or with a work based on the Library) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may opt to apply the terms of the ordinary GNU General Public License instead of this License to a given copy of the Library. To do this, you must alter all the notices that refer to this License, so that they refer to the ordinary GNU General Public License, version 2, instead of to this License. (If a newer version than version 2 of the ordinary GNU General Public License has appeared, then you can specify that version instead if you wish.) Do not make any other change in these notices. ^L Once this change is made in a given copy, it is irreversible for that copy, so the ordinary GNU General Public License applies to all subsequent copies and derivative works made from that copy. This option is useful when you wish to copy part of the code of the Library into a program that is not a library. 4. You may copy and distribute the Library (or a portion or derivative of it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange. If distribution of object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place satisfies the requirement to distribute the source code, even though third parties are not compelled to copy the source along with the object code. 5. A program that contains no derivative of any portion of the Library, but is designed to work with the Library by being compiled or linked with it, is called a "work that uses the Library". Such a work, in isolation, is not a derivative work of the Library, and therefore falls outside the scope of this License. However, linking a "work that uses the Library" with the Library creates an executable that is a derivative of the Library (because it contains portions of the Library), rather than a "work that uses the library". The executable is therefore covered by this License. Section 6 states terms for distribution of such executables. When a "work that uses the Library" uses material from a header file that is part of the Library, the object code for the work may be a derivative work of the Library even though the source code is not. Whether this is true is especially significant if the work can be linked without the Library, or if the work is itself a library. The threshold for this to be true is not precisely defined by law. If such an object file uses only numerical parameters, data structure layouts and accessors, and small macros and small inline functions (ten lines or less in length), then the use of the object file is unrestricted, regardless of whether it is legally a derivative work. (Executables containing this object code plus portions of the Library will still fall under Section 6.) Otherwise, if the work is a derivative of the Library, you may distribute the object code for the work under the terms of Section 6. Any executables containing that work also fall under Section 6, whether or not they are linked directly with the Library itself. ^L 6. As an exception to the Sections above, you may also combine or link a "work that uses the Library" with the Library to produce a work containing portions of the Library, and distribute that work under terms of your choice, provided that the terms permit modification of the work for the customer's own use and reverse engineering for debugging such modifications. You must give prominent notice with each copy of the work that the Library is used in it and that the Library and its use are covered by this License. You must supply a copy of this License. If the work during execution displays copyright notices, you must include the copyright notice for the Library among them, as well as a reference directing the user to the copy of this License. Also, you must do one of these things: a) Accompany the work with the complete corresponding machine-readable source code for the Library including whatever changes were used in the work (which must be distributed under Sections 1 and 2 above); and, if the work is an executable linked with the Library, with the complete machine-readable "work that uses the Library", as object code and/or source code, so that the user can modify the Library and then relink to produce a modified executable containing the modified Library. (It is understood that the user who changes the contents of definitions files in the Library will not necessarily be able to recompile the application to use the modified definitions.) b) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (1) uses at run time a copy of the library already present on the user's computer system, rather than copying library functions into the executable, and (2) will operate properly with a modified version of the library, if the user installs one, as long as the modified version is interface-compatible with the version that the work was made with. c) Accompany the work with a written offer, valid for at least three years, to give the same user the materials specified in Subsection 6a, above, for a charge no more than the cost of performing this distribution. d) If distribution of the work is made by offering access to copy from a designated place, offer equivalent access to copy the above specified materials from the same place. e) Verify that the user has already received a copy of these materials or that you have already sent this user a copy. For an executable, the required form of the "work that uses the Library" must include any data and utility programs needed for reproducing the executable from it. However, as a special exception, the materials to be distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. It may happen that this requirement contradicts the license restrictions of other proprietary libraries that do not normally accompany the operating system. Such a contradiction means you cannot use both them and the Library together in an executable that you distribute. ^L 7. You may place library facilities that are a work based on the Library side-by-side in a single library together with other library facilities not covered by this License, and distribute such a combined library, provided that the separate distribution of the work based on the Library and of the other library facilities is otherwise permitted, and provided that you do these two things: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities. This must be distributed under the terms of the Sections above. b) Give prominent notice with the combined library of the fact that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 8. You may not copy, modify, sublicense, link with, or distribute the Library except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense, link with, or distribute the Library is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 9. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Library or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Library (or any work based on the Library), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Library or works based on it. 10. Each time you redistribute the Library (or any work based on the Library), the recipient automatically receives a license from the original licensor to copy, distribute, link with or modify the Library subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties with this License. ^L 11. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Library at all. For example, if a patent license would not permit royalty-free redistribution of the Library by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Library. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply, and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 12. If the distribution and/or use of the Library is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Library under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 13. The Free Software Foundation may publish revised and/or new versions of the Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Library does not specify a license version number, you may choose any version ever published by the Free Software Foundation. ^L 14. If you wish to incorporate parts of the Library into other free programs whose distribution conditions are incompatible with these, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 15. BECAUSE THE LIBRARY IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE LIBRARY, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE LIBRARY "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE LIBRARY IS WITH YOU. SHOULD THE LIBRARY PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE LIBRARY AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE LIBRARY (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE LIBRARY TO OPERATE WITH ANY OTHER SOFTWARE), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS ^L How to Apply These Terms to Your New Libraries If you develop a new library, and you want it to be of the greatest possible use to the public, we recommend making it free software that everyone can redistribute and change. You can do so by permitting redistribution under these terms (or, alternatively, under the terms of the ordinary General Public License). To apply these terms, attach the following notices to the library. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the library, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the library `Frob' (a library for tweaking knobs) written by James Random Hacker. , 1 April 1990 Ty Coon, President of Vice That's all there is to it! ======================================================================== * texlive-20200406-source/texk/detex/detex-src/COPYRIGHT ======================================================================== Copyright (c) 1986-2007 Purdue University All rights reserved. Developed by: Daniel Trinkle Department of Computer Science, Purdue University http://www.cs.purdue.edu/ Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal with the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: o Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimers. o Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimers in the documentation and/or other materials provided with the distribution. o Neither the names of Daniel Trinkle, Purdue University, nor the names of its contributors may be used to endorse or promote products derived from this Software without specific prior written permission. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/dvi2tty/dvi2tty-src/COPYING ======================================================================== dvi2tty Copyright (C) 1989-2016 many, including Marcel J.E. Mol GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/texk/dviout-util/COPYING ======================================================================== (The Expat license) Copyright (c) 1998-2011 Toshio OSHIMA, Yoshiki OTOBE, Kazunori ASAYAMA. Copyright (c) 2017-2018 Hironobu YAMASHITA Copyright (c) 2018- Japanese TeX Development Community Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/dvipdfm-x/COPYING, texlive-20200406-source/utils/ps2eps/ps2eps-src/LICENSE.txt ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/texk/dvipng/dvipng-src/COPYING.LESSER, texlive-20200406-source/utils/asymptote/LICENSE.LESSER ======================================================================== GNU LESSER GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. This version of the GNU Lesser General Public License incorporates the terms and conditions of version 3 of the GNU General Public License, supplemented by the additional permissions listed below. 0. Additional Definitions. As used herein, "this License" refers to version 3 of the GNU Lesser General Public License, and the "GNU GPL" refers to version 3 of the GNU General Public License. "The Library" refers to a covered work governed by this License, other than an Application or a Combined Work as defined below. An "Application" is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. A "Combined Work" is a work produced by combining or linking an Application with the Library. The particular version of the Library with which the Combined Work was made is also called the "Linked Version". The "Minimal Corresponding Source" for a Combined Work means the Corresponding Source for the Combined Work, excluding any source code for portions of the Combined Work that, considered in isolation, are based on the Application, and not on the Linked Version. The "Corresponding Application Code" for a Combined Work means the object code and/or source code for the Application, including any data and utility programs needed for reproducing the Combined Work from the Application, but excluding the System Libraries of the Combined Work. 1. Exception to Section 3 of the GNU GPL. You may convey a covered work under sections 3 and 4 of this License without being bound by section 3 of the GNU GPL. 2. Conveying Modified Versions. If you modify a copy of the Library, and, in your modifications, a facility refers to a function or data to be supplied by an Application that uses the facility (other than as an argument passed when the facility is invoked), then you may convey a copy of the modified version: a) under this License, provided that you make a good faith effort to ensure that, in the event an Application does not supply the function or data, the facility still operates, and performs whatever part of its purpose remains meaningful, or b) under the GNU GPL, with none of the additional permissions of this License applicable to that copy. 3. Object Code Incorporating Material from Library Header Files. The object code form of an Application may incorporate material from a header file that is part of the Library. You may convey such object code under terms of your choice, provided that, if the incorporated material is not limited to numerical parameters, data structure layouts and accessors, or small macros, inline functions and templates (ten or fewer lines in length), you do both of the following: a) Give prominent notice with each copy of the object code that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the object code with a copy of the GNU GPL and this license document. 4. Combined Works. You may convey a Combined Work under terms of your choice that, taken together, effectively do not restrict modification of the portions of the Library contained in the Combined Work and reverse engineering for debugging such modifications, if you also do each of the following: a) Give prominent notice with each copy of the Combined Work that the Library is used in it and that the Library and its use are covered by this License. b) Accompany the Combined Work with a copy of the GNU GPL and this license document. c) For a Combined Work that displays copyright notices during execution, include the copyright notice for the Library among these notices, as well as a reference directing the user to the copies of the GNU GPL and this license document. d) Do one of the following: 0) Convey the Minimal Corresponding Source under the terms of this License, and the Corresponding Application Code in a form suitable for, and under terms that permit, the user to recombine or relink the Application with a modified version of the Linked Version to produce a modified Combined Work, in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source. 1) Use a suitable shared library mechanism for linking with the Library. A suitable mechanism is one that (a) uses at run time a copy of the Library already present on the user's computer system, and (b) will operate properly with a modified version of the Library that is interface-compatible with the Linked Version. e) Provide Installation Information, but only if you would otherwise be required to provide such information under section 6 of the GNU GPL, and only to the extent that such information is necessary to install and execute a modified version of the Combined Work produced by recombining or relinking the Application with a modified version of the Linked Version. (If you use option 4d0, the Installation Information must accompany the Minimal Corresponding Source and Corresponding Application Code. If you use option 4d1, you must provide the Installation Information in the manner specified by section 6 of the GNU GPL for conveying Corresponding Source.) 5. Combined Libraries. You may place library facilities that are a work based on the Library side by side in a single library together with other library facilities that are not Applications and are not covered by this License, and convey such a combined library under terms of your choice, if you do both of the following: a) Accompany the combined library with a copy of the same work based on the Library, uncombined with any other library facilities, conveyed under the terms of this License. b) Give prominent notice with the combined library that part of it is a work based on the Library, and explaining where to find the accompanying uncombined form of the same work. 6. Revised Versions of the GNU Lesser General Public License. The Free Software Foundation may publish revised and/or new versions of the GNU Lesser General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Library as you received it specifies that a certain numbered version of the GNU Lesser General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that published version or of any later version published by the Free Software Foundation. If the Library as you received it does not specify a version number of the GNU Lesser General Public License, you may choose any version of the GNU Lesser General Public License ever published by the Free Software Foundation. If the Library as you received it specifies that a proxy can decide whether future versions of the GNU Lesser General Public License shall apply, that proxy's public statement of acceptance of any version is permanent authorization for you to choose that version for the Library. ======================================================================== * texlive-20200406-source/texk/dvipng/dvipng-src/COPYING.gd ======================================================================== The below is the copyright notice of the gd library. ---------------------------------------------------- Portions copyright 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 by Cold Spring Harbor Laboratory. Funded under Grant P41-RR02188 by the National Institutes of Health. Portions copyright 1996, 1997, 1998, 1999, 2000, 2001, 2002 by Boutell.Com, Inc. Portions relating to GD2 format copyright 1999, 2000, 2001, 2002 Philip Warner. Portions relating to PNG copyright 1999, 2000, 2001, 2002 Greg Roelofs. Portions relating to gdttf.c copyright 1999, 2000, 2001, 2002 John Ellson (ellson@lucent.com). Portions relating to gdft.c copyright 2001, 2002 John Ellson (ellson@lucent.com). Portions copyright 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007 Pierre-Alain Joye (pierre@libgd.org). Portions relating to JPEG and to color quantization copyright 2000, 2001, 2002, Doug Becker and copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, Thomas G. Lane. This software is based in part on the work of the Independent JPEG Group. See the file README-JPEG.TXT for more information. Portions relating to WBMP copyright 2000, 2001, 2002 Maurice Szmurlo and Johan Van den Brande. Permission has been granted to copy, distribute and modify gd in any context without fee, including a commercial application, provided that this notice is present in user-accessible supporting documentation. This does not affect your ownership of the derived work itself, and the intent is to assure proper credit for the authors of gd, not to interfere with your productive use of gd. If you have questions, ask. "Derived works" includes all programs that utilize the library. Credit must be given in user-accessible documentation. This software is provided "AS IS." The copyright holders disclaim all warranties, either express or implied, including but not limited to implied warranties of merchantability and fitness for a particular purpose, with respect to this code and accompanying documentation. Although their code does not appear in gd, the authors wish to thank David Koblas, David Rowley, and Hutchison Avenue Software Corporation for their prior contributions. ======================================================================== * texlive-20200406-source/texk/dvisvgm/dvisvgm-src/libs/brotli/LICENSE ======================================================================== Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/dvisvgm/dvisvgm-src/libs/clipper/License.txt ======================================================================== Boost Software License - Version 1.0 - August 17th, 2003 http://www.boost.org/LICENSE_1_0.txt Permission is hereby granted, free of charge, to any person or organization obtaining a copy of the software and accompanying documentation covered by this license (the "Software") to use, reproduce, display, distribute, execute, and transmit the Software, and to prepare derivative works of the Software, and to permit third-parties to whom the Software is furnished to do so, all subject to the following: The copyright notices in the Software and this entire statement, including the above license grant, this restriction and the following disclaimer, must be included in all copies of the Software, in whole or in part, and all derivative works of the Software, unless such copies or derivative works are solely in the form of machine-executable object code generated by a source language processor. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/dvisvgm/dvisvgm-src/libs/ff-woff/LICENSE ======================================================================== # FontForge Licensing FontForge is available as a whole under the terms of the [GNU GPL](http://www.gnu.org/copyleft/gpl.html), version 3 or any later version. However, almost all of its parts are available under the "revised BSD license" ([pdf](http://www.law.yi.org/~sfllaw/talks/bsd.pdf)) because FontForge was mostly written by George Williams, using that license. The Revised BSD License is very permissive, and allows for code to be combined with other code under other licenses. There are many useful libraries available under copyleft libre licenses, such as the LGPL and GPL, which FontForge started to use in 2012. For example, Pango and Cairo are available under the LGPL, and gnulib is available under the GPL. Advanced features added since 2012 are licensed by their individual developers under the GPLv3. ## How To License Contributions - Contributions to existing files must be made under the existing license for that file - Contributions in new files should be made under the original Revised BSD License, but any license compatible with the GPLv3 is fine The majority of FontForge was written by George Williams and published under the revised BSD license. This license is permitted to be compiled with added GNU GPL source code to build a FontForge executable program. FontForge was known from 2000 to 2004 as PfaEdit, and was written and developed primarily by George Williams from 2000 until 2012. It is published as free/libre software and distributed under the 3-clause BSD license. Later, when development slowed down and then stopped in 2012, the FontForge community began to take an interest in improving FontForge further with fixes, modifications, libraries, patches, and other additions which have been introduced under the same, or different, yet, compatible licenses. ## Copyright Notices, Contributors, Translators See [`AUTHORS`](https://github.com/fontforge/fontforge/blob/master/AUTHORS) ## The Revised BSD License used by FontForge ``` Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ``` ## LGPL and GPL FontForge includes the GPLv3 in the source tree as [COPYING.gplv3](https://github.com/fontforge/fontforge/blob/master/COPYING.gplv3) You can read the [LGPL](http://www.gnu.org/licenses/lgpl.html) and [GPL](http://www.gnu.org/copyleft/gpl.html) on the GNU website. ## Source Files ### FontForge Files Using The Revised BSD License These files were created under the Revised BSD License: ``` fontforge-20120731-b/ install-sh fontforge-20120731-b/fontforge: alignment.c fontinfo.c savefont.h anchorsaway.c fontview.c savefontdlg.c asmfpst.c fontviewbase.c scriptfuncs.h autohint.c freetype.c scripting.c autosave.c freetypeui.c scripting.h autotrace.c ftdelta.c scriptingdlg.c autowidth.c fvcomposite.c scstyles.c autowidth2.c fvfonts.c scstylesui.c autowidth2.h fvfontsdlg.c sd.h autowidth2dlg.c fvmetrics.c search.c basedlg.c fvmetrics.h search.h baseviews.h fvmetricsdlg.c searchview.c bdfinfo.c glyphcomp.c sfd.c bitmapchar.c gotodlg.c sfd1.c bitmapcontrol.c groups.c sfd1.h bitmapcontrol.h groups.h sfddiff.c bitmapdlg.c groupsdlg.c sflayout.c bitmapview.c histograms.c sflayoutP.h bvedit.c http.c sftextfield.c charinfo.c ikarus.c sftextfieldP.h charview.c images.c showatt.c clipnoui.c justifydlg.c simplifydlg.c clipui.c kernclass.c spiro.c combinations.c layer2layer.c splashimage.c configure-fontforge.h lookups.c splinechar.c contextchain.c lookupui.c splinefill.c cursors.c macbinary.c splinefont.c cvaddpoints.c macenc.c splinefont.h cvdebug.c macencui.c splineorder2.c cvdgloss.c math.c splineoverlap.c cvexport.c mathconstants.c splinerefigure.c cvexportdlg.c metricsview.c splinesaveafm.c cvfreehand.c mm.c splinesave.c cvgetinfo.c mm.h splinestroke.c cvgridfit.c mmdlg.c splineutil.c cvhand.c namehash.h splineutil2.c cvhints.c namelist.c start.c cvimages.c nonlineartrans.c startnoui.c cvimportdlg.c nonlineartrans.h startui.c cvknife.c nonlineartransui.c statemachine.c cvpalettes.c noprefs.c stemdb.c cvpointer.c nouiutil.c stemdb.h cvruler.c nowakowskittfinstr.c svg.c cvshapes.c tilepath.c cvstroke.c openfontdlg.c tottf.c cvtranstools.c palmfonts.c tottfaat.c cvundoes.c parsepdf.c tottfgpos.c delta.h parsepfa.c tottfvar.c deltaui.c parsettf.c transform.c displayfonts.c parsettfatt.c ttf.h dumpbdf.c parsettfbmf.c ttfinstrs.c dumppfa.c parsettfvar.c ttfinstrs.h edgelist.h PfEd.h ttfinstrsui.c edgelist2.h plugins.c ttfspecial.c effects.c plugins.h ufo.c effectsui.c prefs.c uiinterface.h encoding.c print.c uiutil.c encodingui.c print.h unicoderange.c featurefile.c problems.c unicoderange.h fffreetype.h psfont.h utils.c ffpython.h psread.c views.h fontforge.h python.c windowmenu.c fontforgeui.h pythonui.c winfonts.c fontforgevw.h savefont.c woff.c fontforge-20120731-b/gdraw: choosericons.c gfiledlg.c gradio.c colorP.h ggadgetP.h gresedit.c ctlvalues.c ggadgets.c gresource.c drawboxborder.c ggroupbox.c gresourceimage.c gaskdlg.c ghvbox.c gresourceP.h gbuttons.c gimagebmpP.h growcol.c gchardlg.c gimageclut.c gsavefiledlg.c gcolor.c gimagecvt.c gscrollbar.c gcontainer.c gimagepsdraw.c gspacer.c gdraw.c gimagewriteeps.c gtabset.c gdrawable.c gimagexdraw.c gtextfield.c gdrawbuildchars.c gkeysym.c gtextinfo.c gdrawerror.c glist.c gwidgetP.h gdrawgimage.c gmatrixedit.c gwidgets.c gdrawP.h gmenu.c gxcdraw.c gdrawtxt.c gprogress.c gxcdrawP.h gdrawtxtinit.c gpsdraw.c gxdrawP.h gdrawwacomdriver.c gpsdrawP.h hotkeys.c gfilechooser.c gpstxtinit.c hotkeys.h fontforge-20120731-b/gutils: dynamic.c gimagereadrgb.c giofile.c fsys.c gimagereadtiff.c gioftp.c gcol.c gimagereadxbm.c gioftpP.h gimage.c gimagereadxpm.c giofuncP.h gimagebmpP.h gimagewritebmp.c giohosts.c gimageread.c gimagewritegimage.c giomime.c gimagereadbmp.c gimagewritejpeg.c gioP.h gimagereadgif.c gimagewritepng.c giothread.c gimagereadjpeg.c gimagewritexbm.c giotrans.c gimagereadpng.c gimagewritexpm.c gwwintl.c gimagereadras.c gio.c fontforge-20120731-b/inc: basics.h gfile.h gio.h gwidget.h charset.h ggadget.h gprogress.h gwwiconv.h fileutil.h gicons.h gresedit.h intl.h gdraw.h gimage.h gresource.h ustring.h fontforge-20120731-b/Packaging: fontforge.desktop FontForge.spec fontforge.xml FontForge-doc.spec FontForge.static.spec fontforge-20120731-b/pycontrib: excepthook.py fontforge-20120731-b/Unicode: char.c makebuildtables.c ucharmap.c dump.c makeutype.c usprintf.c gwwiconv.c memory.c ustring.c ``` ### FontForge Files Using The GPL Licenses These files were created under the GPL License: ``` fontforge-20120731-b/ aclocal.m4 configure.dynamic configure.static.in config.guess configure.dynamic.in ltmain.sh config.sub configure.in Makefile.dynamic.in configure configure.static Makefile.static.in fontforge-20120731-b/fontforge: Makefile.dynamic.in Makefile.static.in fontforge-20120731-b/gdraw: Makefile.dynamic.in Makefile.static.in fontforge-20120731-b/gutils: giomime.c Makefile.dynamic.in Makefile.static.in fontforge-20120731-b/inc: fontforge-config.h.in fontforge-20120731-b/plugins: ANALYZE_MAP.COM Makefile.in fontforge-20120731-b/Unicode: Makefile.dynamic.in Makefile.static.in ``` ### FontForge Files Using The Open Group License ``` fontforge-20120731-b/fontforge: fvimportbdf.c fontforge-20120731-b/gdraw: fontP.h fontforge-20120731-b/inc: gkeysym.h ### Other Files These are generated files, or do not have a license specified: ``` fontforge-20120731-b/ LICENSE README-Unix.html fontforge.pc.in README-Mac.html systemspecific.in INSTALL README-unix VERSION fontforge-20120731-b/fontforge: acorn2sfd.c fontimage.pe pottitle.patch autowidth.h fontlint.1 pua.c bezctx_ff.c fontlint.pe sfddiff.1 bezctx_ff.h langfreq.c sfddiff.pe crctab.c libffstamp.h stamp.c libstamp.pre stamper.c diffstubs.c threaddummy.c encoding.h lookups.h utf8.pot exelibstamp.pre MacFontForgeApp.zip fontforge.1 othersubrs.c zapfnomen.c fontimage.1 potmstitle.patch fontforge-20120731-b/gdraw: genkeysym.c gxdraw.c xkeysyms_unicode.c fontforge-20120731-b/inc: chardata.h dynamic.h utype.h fontforge-20120731-b/gutils: divisors.c fontforge-20120731-b/plugins: gb12345.c fontforge-20120731-b/po: ca.po el.po es.po it.po ml.po ru.po uk.po zh_CN.po de.po en_GB.po fr.po ja.po pl.po toengb.c vi.po zh_TW.po fontforge-20120731-b/pyhook: fontforgepyhook.c psMatpyhook.c setup.py.in loadfontforge.h README fontforge-20120731-b/Unicode: alphabet.c cjk.c README.TXT ArabicForms.c combiners.h unialt.c backtrns.c utype.c ``` ======================================================================== * texlive-20200406-source/texk/dvisvgm/dvisvgm-src/libs/woff2/LICENSE ======================================================================== Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ======================================================================== * texlive-20200406-source/texk/gregorio/gregorio-src/COPYING.md ======================================================================== #License of Gregorio The program Gregorio is Copyright (C) 2007-2019 The Gregorio Project, see [CONTRIBUTORS.md](CONTRIBUTORS.md) for authors. It is distributed under the GPLv3 license, printed below. The GPLv3 license applies to all files in the Gregorio sources and repository, except: - the *greciliae* font (C) 2007 Matthew Spencer, under the [SIL Open Font License](http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=OFL) - the other fonts, under the GPLv3 license with font exception. The font exception reads: As a special exception, if you create a document which uses this font, and embed this font or unaltered portions of this font into the document, this font does not by itself cause the resulting document to be covered by the GNU General Public License. This exception does not however invalidate any other reasons why the document might be covered by the GNU General Public License. If you modify this font, you may extend this exception to your version of the font, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version. Some files in fonts/ or contrib/ have individual copyright, but are distributed under the GPLv3. GNU GENERAL PUBLIC LICENSE ========================== *Version 3, 29 June 2007* *Copyright © 2007 Free Software Foundation, Inc. \<\>* Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble -------- The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: **(1)** assert copyright on the software, and **(2)** offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS -------------------- ### 0. Definitions. “This License” refers to version 3 of the GNU General Public License. “Copyright” also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. “The Program” refers to any copyrightable work licensed under this License. Each licensee is addressed as “you”. “Licensees” and “recipients” may be individuals or organizations. To “modify” a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a “modified version” of the earlier work or a work “based on” the earlier work. A “covered work” means either the unmodified Program or a work based on the Program. To “propagate” a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To “convey” a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays “Appropriate Legal Notices” to the extent that it includes a convenient and prominently visible feature that **(1)** displays an appropriate copyright notice, and **(2)** tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. ### 1. Source Code. The “source code” for a work means the preferred form of the work for making modifications to it. “Object code” means any non-source form of a work. A “Standard Interface” means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The “System Libraries” of an executable work include anything, other than the work as a whole, that **(a)** is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and **(b)** serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A “Major Component”, in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The “Corresponding Source” for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. ### 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. ### 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. ### 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. ### 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: - **a)** The work must carry prominent notices stating that you modified it, and giving a relevant date. - **b)** The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to “keep intact all notices”. - **c)** You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. - **d)** If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an “aggregate” if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. ### 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: - **a)** Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. - **b)** Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either **(1)** a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or **(2)** access to copy the Corresponding Source from a network server at no charge. - **c)** Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. - **d)** Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. - **e)** Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A “User Product” is either **(1)** a “consumer product”, which means any tangible personal property which is normally used for personal, family, or household purposes, or **(2)** anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, “normally used” refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. “Installation Information” for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. ### 7. Additional Terms. “Additional permissions” are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: - **a)** Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or - **b)** Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or - **c)** Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or - **d)** Limiting the use for publicity purposes of names of licensors or authors of the material; or - **e)** Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or - **f)** Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered “further restrictions” within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. ### 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated **(a)** provisionally, unless and until the copyright holder explicitly and finally terminates your license, and **(b)** permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. ### 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. ### 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An “entity transaction” is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. ### 11. Patents. A “contributor” is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's “contributor version”. A contributor's “essential patent claims” are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, “control” includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a “patent license” is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To “grant” such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either **(1)** cause the Corresponding Source to be so available, or **(2)** arrange to deprive yourself of the benefit of the patent license for this particular work, or **(3)** arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. “Knowingly relying” means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is “discriminatory” if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license **(a)** in connection with copies of the covered work conveyed by you (or copies made from those copies), or **(b)** primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. ### 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. ### 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. ### 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License “or any later version” applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. ### 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM “AS IS” WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. ### 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. ### 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. *END OF TERMS AND CONDITIONS* How to Apply These Terms to Your New Programs --------------------------------------------- If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively state the exclusion of warranty; and each file should have at least the “copyright” line and a pointer to where the full notice is found. Copyright (C) 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 3 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, see . Also add information on how to contact you by electronic and paper mail. If the program does terminal interaction, make it output a short notice like this when it starts in an interactive mode: Copyright (C) This program comes with ABSOLUTELY NO WARRANTY; for details type 'show w'. This is free software, and you are welcome to redistribute it under certain conditions; type 'show c' for details. The hypothetical commands `show w` and `show c` should show the appropriate parts of the General Public License. Of course, your program's commands might be different; for a GUI interface, you would use an “about box”. You should also get your employer (if you work as a programmer) or school, if any, to sign a “copyright disclaimer” for the program, if necessary. For more information on this, and how to apply and follow the GNU GPL, see \<\>. The GNU General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. But first, please read \<\>. ======================================================================== * texlive-20200406-source/texk/lcdf-typetools/lcdf-typetools-src/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS Appendix: How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 19yy 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., 675 Mass Ave, Cambridge, MA 02139, USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) 19yy name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/texk/makeindexk/COPYING ======================================================================== MakeIndex Distribution Notice 11/11/1989 Copyright (C) 1989 by Chen & Harrison International Systems, Inc. Copyright (C) 1988 by Olivetti Research Center Copyright (C) 1987 by Regents of the University of California Author: Pehong Chen Chen & Harrison International Systems, Inc. Palo Alto, California USA Permission is hereby granted to make and distribute original copies of this program provided that the copyright notice and this permission notice are preserved and provided that the recipient is not asked to waive or limit his right to redistribute copies as allowed by this permission notice and provided that anyone who receives an executable form of this program is granted access to a machine-readable form of the source code for this program at a cost not greater than reasonable reproduction, shipping, and handling costs. Executable forms of this program distributed without the source code must be accompanied by a conspicuous copy of this permission notice and a statement that tells the recipient how to obtain the source code. Permission is granted to distribute modified versions of all or part of this program under the conditions above with the additional requirement that the entire modified work must be covered by a permission notice identical to this permission notice. Anything distributed with and usable only in conjunction with something derived from this program, whose useful purpose is to extend or adapt or add capabilities to this program, is to be considered a modified version of this program under the requirement above. Ports of this program to other systems not supported in the distribution are also considered modified versions. All modified versions should be reported back to the author. This program is distributed with no warranty of any sort. No contributor accepts responsibility for the consequences of using this program or for whether it serves any particular purpose. ======================================================================== * texlive-20200406-source/texk/makejvf/COPYRIGHT ======================================================================== Copyright (C) 2009 ASCII MEDIA WORKS Copyright (C) 2010-2017 Takuji TANAKA Copyright (C) 2017-2020 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/makejvf/COPYRIGHT.ja ======================================================================== (注) 以下は日本語の方が分かりやすい人のために、英語の著作権表示を訳し た文章である。正式な著作権は、英語の原本に従う。 Copyright (C) 2009 ASCII MEDIA WORKS. All rights reserved. 変更の有無にかかわらず、ソースおよびバイナリ形式の再配布および利用は、 以下の条件を満たしていれば、これを許可する。 1. ソース・コードの再配布は、上記の著作権表示、この条件項目、および、 以下の免責事項を保存しなければならない。 2. バイナリ形式の再配布は、上記の著作権表示、この条件項目、および、以 下の免責事項を、その配布に付随する説明書、あるいはその他の資料のいずれ かに明記しなければならない。 3. 前もって特別に許諾を得ない限り、このソフトウェアから派生した製品の 推奨や販売促進のために、この著作権者名を利用してはならない。 このソフトウェアは「このままの形で」提供され、明示的あるいは言外の保証 は、商用利用および特定目的への適合に対する言外の保証も含み、またこれら だけに限らず、存在しない。たとえ以下のような損害の可能性を示唆されてい たとしても、どのような形にしろこのソフトウェアの利用から発生した問題に おいて、この著作権者は、(代替製品やサービスの調達; 利用権、データ、あ るいは利益の損失; あるいは営業の中断を含む、またこれらだけに限らず)直 接的に、間接的に、偶然に、特別に、懲罰上、あるいは、必然的に生じてしまっ た損害に対し責任はなく、いかなる責任理論上でも契約の有無に係わらず厳密 な責任はなく、また(過失あるいはその他を含む)不法行為に対しても責任はな い。 ======================================================================== * texlive-20200406-source/texk/mendexk/COPYRIGHT ======================================================================== Copyright (C) 1995 ASCII Corporation, 2009 ASCII MEDIA WORKS Copyright (C) 2017-2020 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/mendexk/COPYRIGHT.ja ======================================================================== (注) 以下は、英文の契約条項を日本語に翻訳したものである。日本語訳と英 語表記の間に齟齬があった場合には、契約条件は英語表記による契約条項に従 う。 【著作権表示】 Copyright (C) 1995 ASCII Corporation. All rights reserved. 【契約条件】 改変の有無にかかわらず、本ソフトウェアのソースコード及びバイナリーコー ド形式による再頒布及び使用は、次の契約条件の下に許諾される。 1. ソースコードの再頒布に際しては、上記の【著作権表示】、この【契約条 件】及び次の【免責条項】の表記を、引き続き維持して明記しなければな らない。 2. バイナリー形式による再頒布に際しては、上記の【著作権表示】、この 【契約条件】及び次の【免責条項】を、再頒布に際し提供する説明書及び その他の関連資料に改めて明記しなければならない。 3. 特別な事前の書面による許諾がない限り、本ソフトウェアから派生した製 品を推奨又は宣伝するために、著作権者名は使用してはならない。 【免責条項】 本ソフトウェアは、著作権者により、「現状有姿のまま(そのままの形で)」 提供されるものであり、商品性又は特定目的への適合性に関する黙示的保証な ど、明示又は黙示の保証を問わず、いかなる保証をも行うものではない。 いかなる理由によっても、また、契約責任、厳格責任又は(過失によるものを 含む)不法行為責任を問わずどのような責任の理論によっても、著作権者は、 いかなる場合も、本ソフトウェアを使用することにより発生する、あらゆる直 接損害、間接損害、偶発損害、特別損害、懲罰的損害あるいは派生的損害(代 替製品・代替サービスの調達、使用利益、データ又は収益に関する損失、営業 中断による損失など)について何らの責任も負わない。これは、本ソフトウェ アを使用することにより、これらの損害が発生する可能性について、あらかじ め示唆されていた場合であっても同様である。 ======================================================================== * texlive-20200406-source/texk/psutils/psutils-src/LICENSE ======================================================================== PS Utilities Package PSUtils is copyright (C) 1991-1997 Angus J. C. Duggan, and (c) 2012-2013 Reuben Thomas It may be copied and used for any purpose (including distribution as part of a for-profit product), provided: 1) The original attribution of the programs is clearly displayed in the product and/or documentation, even if the programs are modified and/or renamed as part of the product. 2) The original source code of the programs is provided free of charge (except for reasonable distribution costs). For a definition of reasonable distribution costs, see the Gnu General Public License or Larry Wall's Artistic License (provided with the Perl 4 kit). The GPL and Artistic License in NO WAY affect this license; they are merely used as examples of the spirit in which it is intended. 3) These programs are provided "as-is". No warranty or guarantee of their fitness for any particular task is provided. Use of these programs is completely at your own risk. Basically, I don't mind how you use the programs so long as you acknowledge the author, and give people the originals if they want them. AJCD 4/4/95 ======================================================================== * texlive-20200406-source/texk/ptexenc/COPYRIGHT ======================================================================== Copyright (C) 2009 ASCII MEDIA WORKS. Copyright (C) 2006, 2007 N. Tsuchimura All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/upmendex/COPYRIGHT ======================================================================== Copyright (C) 1995 ASCII Corporation, 2009 ASCII MEDIA WORKS, 2015-2020 TANAKA Takuji All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/web2c/euptexdir/COPYRIGHT, texlive-20200406-source/texk/web2c/ptexdir/COPYRIGHT ======================================================================== Copyright (C) 2009 ASCII MEDIA WORKS. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/web2c/euptexdir/COPYRIGHT.jis, texlive-20200406-source/texk/web2c/ptexdir/COPYRIGHT.jis ======================================================================== ($BCm(B) $B0J2<$O!"1QJ8$N7@Ls>r9`$rF|K\8l$KK]Lu$7$?$b$N$G$"$k!#F|K\8lLu$H1Q(B $B8lI=5-$N4V$Ksrsw$,$"$C$?>l9g$K$O!"7@Ls>r7o$O1Q8lI=5-$K$h$k7@Ls>r9`$K=>(B $B$&!#(B $B!ZCx:n8"I=<(![(B Copyright (C) 2009 ASCII MEDIA WORKS. All rights reserved. $B!Z7@Ls>r7o![(B $B2~JQ$NM-L5$K$+$+$o$i$:!"K\%=%U%H%&%'%"$N%=!<%9%3!<%I5Z$S%P%$%J%j!<%3!<(B $B%I7A<0$K$h$k:FHRI[5Z$S;HMQ$O!"r7o$N2<$K5vBz$5$l$k!#(B 1. $B%=!<%9%3!<%I$N:FHRI[$K:]$7$F$O!">e5-$N!ZCx:n8"I=<(![!"$3$N!Z7@Ls>r(B $B7o![5Z$Sr9`![$NI=5-$r!"0z$-B3$-0];}$7$FL@5-$7$J$1$l$P$J(B $B$i$J$$!#(B 2. $B%P%$%J%j!<7A<0$K$h$k:FHRI[$K:]$7$F$O!">e5-$N!ZCx:n8"I=<(![!"$3$N(B $B!Z7@Ls>r7o![5Z$Sr9`![$r!":FHRI[$K:]$7Ds6!$9$k@bL@=q5Z$S(B $B$=$NB>$N4XO";qNA$K2~$a$FL@5-$7$J$1$l$P$J$i$J$$!#(B 3. $BFCJL$J;vA0$N=qLL$K$h$k5vBz$,$J$$8B$j!"K\%=%U%H%&%'%"$+$iGI@8$7$?@=(B $BIJ$r?d>)Kt$O@kEA$9$k$?$a$K!"Cx:n8"$O;HMQ$7$F$O$J$i$J$$!#(B $B!ZLH@U>r9`![(B $BK\%=%U%H%&%'%"$O!"Cx:n8"uM-;Q$N$^$^!J$=$N$^$^$N7A$G!K!W(B $BDs6!$5$l$k$b$N$G$"$j!">&IJ@-Kt$OFCDjL\E*$X$NE,9g@-$K4X$9$kL[<(E*J]>Z$J(B $B$I!"L@<(Kt$OL[<($NJ]>Z$rLd$o$:!"$$$+$J$kJ]>Z$r$b9T$&$b$N$G$O$J$$!#(B $B$$$+$J$kM}M3$K$h$C$F$b!"$^$?!"7@Ls@UG$!"873J@UG$Kt$O!J2a<:$K$h$k$b$N$r(B $B4^$`!KITK!9T0Y@UG$$rLd$o$:$I$N$h$&$J@UG$$NM}O@$K$h$C$F$b!"Cx:n8"l9g$b!"K\%=%U%H%&%'%"$r;HMQ$9$k$3$H$K$h$jH/@8$9$k!"$"$i$f$kD>(B $B@\B;32!"4V@\B;32!"6vH/B;32!"FCJLB;32!"D(H3E*B;32$"$k$$$OGI@8E*B;32!JBe(B $BBX@=IJ!&BeBX%5!<%S%9$ND4C#!";HMQMx1W!"%G!<%?Kt$O<}1W$K4X$9$kB;<:!"1D6H(B $BCfCG$K$h$kB;<:$J$I!K$K$D$$$F2?$i$N@UG$$bIi$o$J$$!#$3$l$O!"K\%=%U%H%&%'(B $B%"$r;HMQ$9$k$3$H$K$h$j!"$3$l$i$NB;32$,H/@8$9$k2DG=@-$K$D$$$F!"$"$i$+$8(B $B$a<(:6$5$l$F$$$?>l9g$G$"$C$F$bF1MM$G$"$k!#(B ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luaffi/LICENSE ======================================================================== BSD License For luaffifb software Copyright (c) 2015, Facebook, Inc. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name Facebook nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -------------------------------------------------------------------------- This product contains portions of third party software provided under this license: luaffi software Copyright (c) 2011 James R. McKaskill Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Facebook provides this code under the BSD License above. ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luafilesystem/LICENSE ======================================================================== Copyright © 2003-2014 Kepler Project. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luafontloader/fontforge/LICENSE ======================================================================== FontForge is copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007,2008 by George Williams. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. The name of the author may not be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. The configure script is subject to the GNU public license. See the file COPYING. ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luaharfbuzz/LICENSE ======================================================================== The MIT License (MIT) Copyright (c) 2015-16 Deepak Jois Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/web2c/luatexdir/luasocket/LICENSE ======================================================================== LuaSocket 3.0 license Copyright ゥ 2004-2013 Diego Nehab Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/texk/web2c/uptexdir/COPYRIGHT ======================================================================== Copyright (C) 2009 ASCII MEDIA WORKS. Copyright (C) 2007-2020 Takuji Tanaka All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texlive-20200406-source/texk/web2c/uptexdir/COPYRIGHT.ja ======================================================================== (注) 以下は、英文の契約条項を日本語に翻訳したものである。日本語訳と英 語表記の間に齟齬があった場合には、契約条件は英語表記による契約条項に従 う。 【著作権表示】 Copyright (C) 2009 ASCII MEDIA WORKS. Copyright (C) 2007-2020 Takuji Tanaka All rights reserved. 【契約条件】 改変の有無にかかわらず、本ソフトウェアのソースコード及びバイナリーコー ド形式による再頒布及び使用は、次の契約条件の下に許諾される。 1. ソースコードの再頒布に際しては、上記の【著作権表示】、この【契約条 件】及び次の【免責条項】の表記を、引き続き維持して明記しなければな らない。 2. バイナリー形式による再頒布に際しては、上記の【著作権表示】、この 【契約条件】及び次の【免責条項】を、再頒布に際し提供する説明書及び その他の関連資料に改めて明記しなければならない。 3. 特別な事前の書面による許諾がない限り、本ソフトウェアから派生した製 品を推奨又は宣伝するために、著作権者名は使用してはならない。 【免責条項】 本ソフトウェアは、著作権者により、「現状有姿のまま(そのままの形で)」 提供されるものであり、商品性又は特定目的への適合性に関する黙示的保証な ど、明示又は黙示の保証を問わず、いかなる保証をも行うものではない。 いかなる理由によっても、また、契約責任、厳格責任又は(過失によるものを 含む)不法行為責任を問わずどのような責任の理論によっても、著作権者は、 いかなる場合も、本ソフトウェアを使用することにより発生する、あらゆる直 接損害、間接損害、偶発損害、特別損害、懲罰的損害あるいは派生的損害(代 替製品・代替サービスの調達、使用利益、データ又は収益に関する損失、営業 中断による損失など)について何らの責任も負わない。これは、本ソフトウェ アを使用することにより、これらの損害が発生する可能性について、あらかじ め示唆されていた場合であっても同様である。 ======================================================================== * texlive-20200406-source/texk/web2c/xetexdir/COPYING ======================================================================== The XeTeX typesetting system (an extended version of Donald Knuth's TeX) The XeTeX changes/additions are Copyright (c) 1994-2008 by SIL International Copyright (c) 2009-2012 by Jonathan Kew Copyright (c) 2010-2012 by Han The Thanh Copyright (c) 2012-2015 by Khaled Hosny Copyright (c) 2012-2013 by Jiang Jiang For full copyright notices consult the individual files in the package. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of the copyright holders shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from the copyright holders. ======================================================================== * texlive-20200406-source/utils/asymptote/gl-matrix-2.4.0-pruned/LICENSE.js ======================================================================== /*@license for gl-matrix mat3 and mat4 functions: Copyright (c) 2015, Brandon Jones, Colin MacKenzie IV. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.*/ ======================================================================== * texlive-20200406-source/utils/asymptote/webgl/license ======================================================================== /*@license AsyGL: Render Bezier patches and triangles via subdivision with WebGL. Copyright 2019: John C. Bowman and Supakorn "Jamie" Rassameemasmuang University of Alberta This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 3 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 Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this program. If not, see . */ ======================================================================== * texlive-20200406-source/utils/devnag/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) 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 Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. ======================================================================== * texlive-20200406-source/utils/m-tx/mtx-src/COPYING ======================================================================== The MIT License (MIT) Copyright (c) 2014 Dirk Laurie Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texlive-20200406-source/utils/pmx/pmx-src/COPYING ======================================================================== GNU GENERAL PUBLIC LICENSE Version 3, 29 June 2007 Copyright (C) 2007 Free Software Foundation, Inc. Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The GNU General Public License is a free, copyleft license for software and other kinds of works. The licenses for most software and other practical works are designed to take away your freedom to share and change the works. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change all versions of a program--to make sure it remains free software for all its users. We, the Free Software Foundation, use the GNU General Public License for most of our software; it applies also to any other work released this way by its authors. You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for them if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs, and that you know you can do these things. To protect your rights, we need to prevent others from denying you these rights or asking you to surrender the rights. Therefore, you have certain responsibilities if you distribute copies of the software, or if you modify it: responsibilities to respect the freedom of others. For example, if you distribute copies of such a program, whether gratis or for a fee, you must pass on to the recipients the same freedoms that you received. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. Developers that use the GNU GPL protect your rights with two steps: (1) assert copyright on the software, and (2) offer you this License giving you legal permission to copy, distribute and/or modify it. For the developers' and authors' protection, the GPL clearly explains that there is no warranty for this free software. For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions. Some devices are designed to deny users access to install or run modified versions of the software inside them, although the manufacturer can do so. This is fundamentally incompatible with the aim of protecting users' freedom to change the software. The systematic pattern of such abuse occurs in the area of products for individuals to use, which is precisely where it is most unacceptable. Therefore, we have designed this version of the GPL to prohibit the practice for those products. If such problems arise substantially in other domains, we stand ready to extend this provision to those domains in future versions of the GPL, as needed to protect the freedom of users. Finally, every program is threatened constantly by software patents. States should not allow patents to restrict development and use of software on general-purpose computers, but in those that do, we wish to avoid the special danger that patents applied to a free program could make it effectively proprietary. To prevent this, the GPL assures that patents cannot be used to render the program non-free. The precise terms and conditions for copying, distribution and modification follow. TERMS AND CONDITIONS 0. Definitions. "This License" refers to version 3 of the GNU General Public License. "Copyright" also means copyright-like laws that apply to other kinds of works, such as semiconductor masks. "The Program" refers to any copyrightable work licensed under this License. Each licensee is addressed as "you". "Licensees" and "recipients" may be individuals or organizations. To "modify" a work means to copy from or adapt all or part of the work in a fashion requiring copyright permission, other than the making of an exact copy. The resulting work is called a "modified version" of the earlier work or a work "based on" the earlier work. A "covered work" means either the unmodified Program or a work based on the Program. To "propagate" a work means to do anything with it that, without permission, would make you directly or secondarily liable for infringement under applicable copyright law, except executing it on a computer or modifying a private copy. Propagation includes copying, distribution (with or without modification), making available to the public, and in some countries other activities as well. To "convey" a work means any kind of propagation that enables other parties to make or receive copies. Mere interaction with a user through a computer network, with no transfer of a copy, is not conveying. An interactive user interface displays "Appropriate Legal Notices" to the extent that it includes a convenient and prominently visible feature that (1) displays an appropriate copyright notice, and (2) tells the user that there is no warranty for the work (except to the extent that warranties are provided), that licensees may convey the work under this License, and how to view a copy of this License. If the interface presents a list of user commands or options, such as a menu, a prominent item in the list meets this criterion. 1. Source Code. The "source code" for a work means the preferred form of the work for making modifications to it. "Object code" means any non-source form of a work. A "Standard Interface" means an interface that either is an official standard defined by a recognized standards body, or, in the case of interfaces specified for a particular programming language, one that is widely used among developers working in that language. The "System Libraries" of an executable work include anything, other than the work as a whole, that (a) is included in the normal form of packaging a Major Component, but which is not part of that Major Component, and (b) serves only to enable use of the work with that Major Component, or to implement a Standard Interface for which an implementation is available to the public in source code form. A "Major Component", in this context, means a major essential component (kernel, window system, and so on) of the specific operating system (if any) on which the executable work runs, or a compiler used to produce the work, or an object code interpreter used to run it. The "Corresponding Source" for a work in object code form means all the source code needed to generate, install, and (for an executable work) run the object code and to modify the work, including scripts to control those activities. However, it does not include the work's System Libraries, or general-purpose tools or generally available free programs which are used unmodified in performing those activities but which are not part of the work. For example, Corresponding Source includes interface definition files associated with source files for the work, and the source code for shared libraries and dynamically linked subprograms that the work is specifically designed to require, such as by intimate data communication or control flow between those subprograms and other parts of the work. The Corresponding Source need not include anything that users can regenerate automatically from other parts of the Corresponding Source. The Corresponding Source for a work in source code form is that same work. 2. Basic Permissions. All rights granted under this License are granted for the term of copyright on the Program, and are irrevocable provided the stated conditions are met. This License explicitly affirms your unlimited permission to run the unmodified Program. The output from running a covered work is covered by this License only if the output, given its content, constitutes a covered work. This License acknowledges your rights of fair use or other equivalent, as provided by copyright law. You may make, run and propagate covered works that you do not convey, without conditions so long as your license otherwise remains in force. You may convey covered works to others for the sole purpose of having them make modifications exclusively for you, or provide you with facilities for running those works, provided that you comply with the terms of this License in conveying all material for which you do not control copyright. Those thus making or running the covered works for you must do so exclusively on your behalf, under your direction and control, on terms that prohibit them from making any copies of your copyrighted material outside their relationship with you. Conveying under any other circumstances is permitted solely under the conditions stated below. Sublicensing is not allowed; section 10 makes it unnecessary. 3. Protecting Users' Legal Rights From Anti-Circumvention Law. No covered work shall be deemed part of an effective technological measure under any applicable law fulfilling obligations under article 11 of the WIPO copyright treaty adopted on 20 December 1996, or similar laws prohibiting or restricting circumvention of such measures. When you convey a covered work, you waive any legal power to forbid circumvention of technological measures to the extent such circumvention is effected by exercising rights under this License with respect to the covered work, and you disclaim any intention to limit operation or modification of the work as a means of enforcing, against the work's users, your or third parties' legal rights to forbid circumvention of technological measures. 4. Conveying Verbatim Copies. You may convey verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice; keep intact all notices stating that this License and any non-permissive terms added in accord with section 7 apply to the code; keep intact all notices of the absence of any warranty; and give all recipients a copy of this License along with the Program. You may charge any price or no price for each copy that you convey, and you may offer support or warranty protection for a fee. 5. Conveying Modified Source Versions. You may convey a work based on the Program, or the modifications to produce it from the Program, in the form of source code under the terms of section 4, provided that you also meet all of these conditions: a) The work must carry prominent notices stating that you modified it, and giving a relevant date. b) The work must carry prominent notices stating that it is released under this License and any conditions added under section 7. This requirement modifies the requirement in section 4 to "keep intact all notices". c) You must license the entire work, as a whole, under this License to anyone who comes into possession of a copy. This License will therefore apply, along with any applicable section 7 additional terms, to the whole of the work, and all its parts, regardless of how they are packaged. This License gives no permission to license the work in any other way, but it does not invalidate such permission if you have separately received it. d) If the work has interactive user interfaces, each must display Appropriate Legal Notices; however, if the Program has interactive interfaces that do not display Appropriate Legal Notices, your work need not make them do so. A compilation of a covered work with other separate and independent works, which are not by their nature extensions of the covered work, and which are not combined with it such as to form a larger program, in or on a volume of a storage or distribution medium, is called an "aggregate" if the compilation and its resulting copyright are not used to limit the access or legal rights of the compilation's users beyond what the individual works permit. Inclusion of a covered work in an aggregate does not cause this License to apply to the other parts of the aggregate. 6. Conveying Non-Source Forms. You may convey a covered work in object code form under the terms of sections 4 and 5, provided that you also convey the machine-readable Corresponding Source under the terms of this License, in one of these ways: a) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by the Corresponding Source fixed on a durable physical medium customarily used for software interchange. b) Convey the object code in, or embodied in, a physical product (including a physical distribution medium), accompanied by a written offer, valid for at least three years and valid for as long as you offer spare parts or customer support for that product model, to give anyone who possesses the object code either (1) a copy of the Corresponding Source for all the software in the product that is covered by this License, on a durable physical medium customarily used for software interchange, for a price no more than your reasonable cost of physically performing this conveying of source, or (2) access to copy the Corresponding Source from a network server at no charge. c) Convey individual copies of the object code with a copy of the written offer to provide the Corresponding Source. This alternative is allowed only occasionally and noncommercially, and only if you received the object code with such an offer, in accord with subsection 6b. d) Convey the object code by offering access from a designated place (gratis or for a charge), and offer equivalent access to the Corresponding Source in the same way through the same place at no further charge. You need not require recipients to copy the Corresponding Source along with the object code. If the place to copy the object code is a network server, the Corresponding Source may be on a different server (operated by you or a third party) that supports equivalent copying facilities, provided you maintain clear directions next to the object code saying where to find the Corresponding Source. Regardless of what server hosts the Corresponding Source, you remain obligated to ensure that it is available for as long as needed to satisfy these requirements. e) Convey the object code using peer-to-peer transmission, provided you inform other peers where the object code and Corresponding Source of the work are being offered to the general public at no charge under subsection 6d. A separable portion of the object code, whose source code is excluded from the Corresponding Source as a System Library, need not be included in conveying the object code work. A "User Product" is either (1) a "consumer product", which means any tangible personal property which is normally used for personal, family, or household purposes, or (2) anything designed or sold for incorporation into a dwelling. In determining whether a product is a consumer product, doubtful cases shall be resolved in favor of coverage. For a particular product received by a particular user, "normally used" refers to a typical or common use of that class of product, regardless of the status of the particular user or of the way in which the particular user actually uses, or expects or is expected to use, the product. A product is a consumer product regardless of whether the product has substantial commercial, industrial or non-consumer uses, unless such uses represent the only significant mode of use of the product. "Installation Information" for a User Product means any methods, procedures, authorization keys, or other information required to install and execute modified versions of a covered work in that User Product from a modified version of its Corresponding Source. The information must suffice to ensure that the continued functioning of the modified object code is in no case prevented or interfered with solely because modification has been made. If you convey an object code work under this section in, or with, or specifically for use in, a User Product, and the conveying occurs as part of a transaction in which the right of possession and use of the User Product is transferred to the recipient in perpetuity or for a fixed term (regardless of how the transaction is characterized), the Corresponding Source conveyed under this section must be accompanied by the Installation Information. But this requirement does not apply if neither you nor any third party retains the ability to install modified object code on the User Product (for example, the work has been installed in ROM). The requirement to provide Installation Information does not include a requirement to continue to provide support service, warranty, or updates for a work that has been modified or installed by the recipient, or for the User Product in which it has been modified or installed. Access to a network may be denied when the modification itself materially and adversely affects the operation of the network or violates the rules and protocols for communication across the network. Corresponding Source conveyed, and Installation Information provided, in accord with this section must be in a format that is publicly documented (and with an implementation available to the public in source code form), and must require no special password or key for unpacking, reading or copying. 7. Additional Terms. "Additional permissions" are terms that supplement the terms of this License by making exceptions from one or more of its conditions. Additional permissions that are applicable to the entire Program shall be treated as though they were included in this License, to the extent that they are valid under applicable law. If additional permissions apply only to part of the Program, that part may be used separately under those permissions, but the entire Program remains governed by this License without regard to the additional permissions. When you convey a copy of a covered work, you may at your option remove any additional permissions from that copy, or from any part of it. (Additional permissions may be written to require their own removal in certain cases when you modify the work.) You may place additional permissions on material, added by you to a covered work, for which you have or can give appropriate copyright permission. Notwithstanding any other provision of this License, for material you add to a covered work, you may (if authorized by the copyright holders of that material) supplement the terms of this License with terms: a) Disclaiming warranty or limiting liability differently from the terms of sections 15 and 16 of this License; or b) Requiring preservation of specified reasonable legal notices or author attributions in that material or in the Appropriate Legal Notices displayed by works containing it; or c) Prohibiting misrepresentation of the origin of that material, or requiring that modified versions of such material be marked in reasonable ways as different from the original version; or d) Limiting the use for publicity purposes of names of licensors or authors of the material; or e) Declining to grant rights under trademark law for use of some trade names, trademarks, or service marks; or f) Requiring indemnification of licensors and authors of that material by anyone who conveys the material (or modified versions of it) with contractual assumptions of liability to the recipient, for any liability that these contractual assumptions directly impose on those licensors and authors. All other non-permissive additional terms are considered "further restrictions" within the meaning of section 10. If the Program as you received it, or any part of it, contains a notice stating that it is governed by this License along with a term that is a further restriction, you may remove that term. If a license document contains a further restriction but permits relicensing or conveying under this License, you may add to a covered work material governed by the terms of that license document, provided that the further restriction does not survive such relicensing or conveying. If you add terms to a covered work in accord with this section, you must place, in the relevant source files, a statement of the additional terms that apply to those files, or a notice indicating where to find the applicable terms. Additional terms, permissive or non-permissive, may be stated in the form of a separately written license, or stated as exceptions; the above requirements apply either way. 8. Termination. You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11). However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation. Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice. Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10. 9. Acceptance Not Required for Having Copies. You are not required to accept this License in order to receive or run a copy of the Program. Ancillary propagation of a covered work occurring solely as a consequence of using peer-to-peer transmission to receive a copy likewise does not require acceptance. However, nothing other than this License grants you permission to propagate or modify any covered work. These actions infringe copyright if you do not accept this License. Therefore, by modifying or propagating a covered work, you indicate your acceptance of this License to do so. 10. Automatic Licensing of Downstream Recipients. Each time you convey a covered work, the recipient automatically receives a license from the original licensors, to run, modify and propagate that work, subject to this License. You are not responsible for enforcing compliance by third parties with this License. An "entity transaction" is a transaction transferring control of an organization, or substantially all assets of one, or subdividing an organization, or merging organizations. If propagation of a covered work results from an entity transaction, each party to that transaction who receives a copy of the work also receives whatever licenses to the work the party's predecessor in interest had or could give under the previous paragraph, plus a right to possession of the Corresponding Source of the work from the predecessor in interest, if the predecessor has it or can get it with reasonable efforts. You may not impose any further restrictions on the exercise of the rights granted or affirmed under this License. For example, you may not impose a license fee, royalty, or other charge for exercise of rights granted under this License, and you may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 11. Patents. A "contributor" is a copyright holder who authorizes use under this License of the Program or a work on which the Program is based. The work thus licensed is called the contributor's "contributor version". A contributor's "essential patent claims" are all patent claims owned or controlled by the contributor, whether already acquired or hereafter acquired, that would be infringed by some manner, permitted by this License, of making, using, or selling its contributor version, but do not include claims that would be infringed only as a consequence of further modification of the contributor version. For purposes of this definition, "control" includes the right to grant patent sublicenses in a manner consistent with the requirements of this License. Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. In the following three paragraphs, a "patent license" is any express agreement or commitment, however denominated, not to enforce a patent (such as an express permission to practice a patent or covenant not to sue for patent infringement). To "grant" such a patent license to a party means to make such an agreement or commitment not to enforce a patent against the party. If you convey a covered work, knowingly relying on a patent license, and the Corresponding Source of the work is not available for anyone to copy, free of charge and under the terms of this License, through a publicly available network server or other readily accessible means, then you must either (1) cause the Corresponding Source to be so available, or (2) arrange to deprive yourself of the benefit of the patent license for this particular work, or (3) arrange, in a manner consistent with the requirements of this License, to extend the patent license to downstream recipients. "Knowingly relying" means you have actual knowledge that, but for the patent license, your conveying the covered work in a country, or your recipient's use of the covered work in a country, would infringe one or more identifiable patents in that country that you have reason to believe are valid. If, pursuant to or in connection with a single transaction or arrangement, you convey, or propagate by procuring conveyance of, a covered work, and grant a patent license to some of the parties receiving the covered work authorizing them to use, propagate, modify or convey a specific copy of the covered work, then the patent license you grant is automatically extended to all recipients of the covered work and works based on it. A patent license is "discriminatory" if it does not include within the scope of its coverage, prohibits the exercise of, or is conditioned on the non-exercise of one or more of the rights that are specifically granted under this License. You may not convey a covered work if you are a party to an arrangement with a third party that is in the business of distributing software, under which you make payment to the third party based on the extent of your activity of conveying the work, and under which the third party grants, to any of the parties who would receive the covered work from you, a discriminatory patent license (a) in connection with copies of the covered work conveyed by you (or copies made from those copies), or (b) primarily for and in connection with specific products or compilations that contain the covered work, unless you entered into that arrangement, or that patent license was granted, prior to 28 March 2007. Nothing in this License shall be construed as excluding or limiting any implied license or other defenses to infringement that may otherwise be available to you under applicable patent law. 12. No Surrender of Others' Freedom. If conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot convey a covered work so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not convey it at all. For example, if you agree to terms that obligate you to collect a royalty for further conveying from those to whom you convey the Program, the only way you could satisfy both those terms and this License would be to refrain entirely from conveying the Program. 13. Use with the GNU Affero General Public License. Notwithstanding any other provision of this License, you have permission to link or combine any covered work with a work licensed under version 3 of the GNU Affero General Public License into a single combined work, and to convey the resulting work. The terms of this License will continue to apply to the part which is the covered work, but the special requirements of the GNU Affero General Public License, section 13, concerning interaction through a network will apply to the combination as such. 14. Revised Versions of this License. The Free Software Foundation may publish revised and/or new versions of the GNU General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies that a certain numbered version of the GNU General Public License "or any later version" applies to it, you have the option of following the terms and conditions either of that numbered version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of the GNU General Public License, you may choose any version ever published by the Free Software Foundation. If the Program specifies that a proxy can decide which future versions of the GNU General Public License can be used, that proxy's public statement of acceptance of a version permanently authorizes you to choose that version for the Program. Later license versions may give you additional or different permissions. However, no additional obligations are imposed on any author or copyright holder as a result of your choosing to follow a later version. 15. Disclaimer of Warranty. THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 16. Limitation of Liability. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. 17. Interpretation of Sections 15 and 16. If the disclaimer of warranty and limitation of liability provided above cannot be given local legal effect according to their terms, reviewing courts shall apply local law that most closely approximates an absolute waiver of all civil liability in connection with the Program, unless a warranty or assumption of liability accompanies a copy of the Program in return for a fee. END OF TERMS AND CONDITIONS ======================================================================== * texlive-20200406-source/utils/t1utils/t1utils-src/LICENSE ======================================================================== Portions of this software are subject to the license below. The relevant source files are clearly marked; they refer to this file using the phrase "the Click LICENSE file". This license is an MIT license, plus a clause (taken from the W3C license) requiring prior written permission to use our names in publicity. =========================================================================== Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the Software without specific, written prior permission. Title to copyright in this Software and any associated documentation will at all times remain with copyright holders. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ======================================================================== * texmf-dist/doc/platex/base/LICENSE ======================================================================== Copyright (c) 2010 ASCII MEDIA WORKS Copyright (c) 2016-2021 Japanese TeX Development Community All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ======================================================================== * texmf-dist/doc/upmendex/COPYRIGHT ======================================================================== Copyright (C) 1995 ASCII Corporation, 2009 ASCII MEDIA WORKS, 2015-2019 TANAKA Takuji All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the author may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.