summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-05-03 17:42:44 +0000
committerKarl Berry <karl@freefriends.org>2017-05-03 17:42:44 +0000
commit4e7b82c1404873f4f33e88f28265132a09b95ae7 (patch)
treedc41d4b8d942b105093971d865c2111a1ab71f6f /Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html
parentb44542791aed9e9287e23c5e749881555b42ccee (diff)
TL2017 texinfo updates
git-svn-id: svn://tug.org/texlive/trunk@44167 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html')
-rw-r--r--Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html183
1 files changed, 104 insertions, 79 deletions
diff --git a/Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html b/Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html
index 59f738c98c0..a190b650f10 100644
--- a/Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html
+++ b/Master/texmf-dist/doc/texlive/tlbuild/tlbuild.html
@@ -2,9 +2,9 @@
<html>
<!-- This file documents the TeX Live build system and more.
-Copyright (C) 2016 Karl Berry.
+Copyright (C) 2016-2017 Karl Berry.
-Copyright (C) 2013, 2014, 2015 Karl Berry & Peter Breitenlohner.
+Copyright (C) 2013-2015 Karl Berry & Peter Breitenlohner.
Permission is granted to make and distribute verbatim copies of this
manual provided the copyright notice and this permission notice are
@@ -20,12 +20,12 @@ Permission is granted to copy and distribute translations of this manual
into another language, under the above conditions for modified versions,
except that this permission notice may be stated in a translation
approved by the TeX Users Group. -->
-<!-- Created by GNU Texinfo 6.1, http://www.gnu.org/software/texinfo/ -->
+<!-- Created by GNU Texinfo 6.3, http://www.gnu.org/software/texinfo/ -->
<head>
-<title>Building TeX Live (2016)</title>
+<title>Building TeX Live (2017)</title>
-<meta name="description" content="Building TeX Live (2016)">
-<meta name="keywords" content="Building TeX Live (2016)">
+<meta name="description" content="Building TeX Live (2017)">
+<meta name="keywords" content="Building TeX Live (2017)">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
@@ -66,7 +66,8 @@ ul.no-bullet {list-style: none}
</head>
<body lang="en">
-<h1 class="settitle" align="center">Building TeX Live (2016)</h1>
+<h1 class="settitle" align="center">Building TeX Live (2017)</h1>
+
@@ -292,8 +293,8 @@ ul.no-bullet {list-style: none}
<p>
Next: <a href="#Introduction" accesskey="n" rel="next">Introduction</a>, Up: <a href="http://tug.org/texinfohtml" accesskey="u" rel="up">(dir)</a> &nbsp; [<a href="#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="#Index" title="Index" rel="index">Index</a>]</p>
</div>
-<a name="Building-TeX-Live-_00282016_0029"></a>
-<h1 class="top">Building TeX Live (2016)</h1>
+<a name="Building-TeX-Live-_00282017_0029"></a>
+<h1 class="top">Building TeX Live (2017)</h1>
<p>For an overview of this manual, see <a href="#Introduction">Introduction</a>.
</p>
@@ -336,8 +337,8 @@ Next: <a href="#Overview-of-build-system" accesskey="n" rel="next">Overview of b
<a name="index-introduction"></a>
-<p>This manual (dated April 2016) corresponds to the TeX Live
-2016 release.
+<p>This manual (dated April 2017) corresponds to the TeX Live
+2017 release.
</p>
<p>This manual is aimed at system installers and programmers, and focuses
on how to configure, build, and develop the TeX Live (TL) sources. It is
@@ -379,7 +380,7 @@ the GNU Info system.
<code>tlmgr</code> is included here, just because it is convenient to do so.
The same text is available online (linked from
<a href="http://tug.org/texlive/doc.html">http://tug.org/texlive/doc.html</a>, or by invoking the program with
-&lsquo;<samp>--help</samp>&rsquo; (or look at the end of the source file).
+&lsquo;<samp>--help</samp>&rsquo; (or look at the end of the source).
</p>
@@ -434,8 +435,8 @@ all <code>configure</code> options.
program and library module (or package) specifies its own requirements
and properties, such as required libraries, whether an installed
(system) version of a library can be used, <code>configure</code> options to
-be seen at the top-level, and more. An explicit list of all available
-modules is kept in only one, central, place (<samp>m4/kpse-pkgs.m4</samp>).
+be seen at the top level, and more. An explicit list of all available
+modules is kept in only one central place, namely <samp>m4/kpse-pkgs.m4</samp>.
</p>
<p>A second, related goal is to configure and build each library before
configuring any other (program or library) module which uses that
@@ -447,9 +448,9 @@ system version of that library.
independently. The corresponding modules use (most of) the
distributed source tree and document any modifications of that source.
</p>
-<p>All this is for the sake of simplifying both upgrading of modules
-maintained independently and integrating new modules into the
-TL build system. (Not to say that either task is trivial.)
+<p>All this is for the sake of simplifying both upgrading of modules and
+integrating new modules into the TL build system. (Not to say that
+either task is trivial.)
</p>
<hr>
@@ -473,14 +474,21 @@ you can set <code>MAKE</code> in the environment to whatever is necessary.)
<a name="index-GNU-make_002c-required"></a>
<a name="index-gmake_002c-required"></a>
<a name="index-FreeType"></a>
-<p>Indeed, GNU <code>make</code> is required only because of some
-third-party libraries, notably FreeType; all the TL-maintained
-directories (and Automake/Autoconf output in general) should work with
-any reasonable <code>make</code>.
+<p>GNU <code>make</code> is required only because of some third-party
+libraries, notably FreeType; all the TL-maintained directories (and
+Automake/Autoconf output in general) should work with any reasonable
+<code>make</code>.
</p>
<p>However, a few programs in the tree have additional requirements:
</p>
<dl compact="compact">
+<dt><samp>dvisvgm</samp></dt>
+<dd><a name="index-dvisvgm-requirement-for-C_002b_002b11"></a>
+<a name="index-C_002b_002b11_002c-required-by-dvisvgm"></a>
+<p>requires a C++11 compiler, such as gcc 4.8.1 (or later) or clang 3.3
+(or later).
+</p>
+</dd>
<dt><samp>web2c</samp></dt>
<dd><a name="index-perl_002c-required-by-web2c_002c-etc_002e"></a>
<p>requires <code>perl</code> for some tests run by <code>make check</code>.
@@ -643,7 +651,7 @@ Next: <a href="#Build-in-parallel" accesskey="n" rel="next">Build in parallel</a
<a name="index-_002d_002dno_002dclean-Build-option"></a>
<p>If configuring or building a module fails, you should first find and fix the
problem, then perhaps remove the subdirectory for that module from the build
-tree, and finally rerun the top-level <code>make</code> (or <samp>Build</samp> with
+tree, and finally rerun the top level <code>make</code> (or <samp>Build</samp> with
<code>--no-clean</code> as its first argument).
</p>
@@ -688,7 +696,7 @@ Next: <a href="#Build-one-package" accesskey="n" rel="next">Build one package</a
<a name="index-distribution-tarball_002c-making"></a>
<a name="index-dist-and-distcheck-targets-for-make"></a>
-<p>Running <code>make dist</code> at the top-level creates a tarball
+<p>Running <code>make dist</code> at the top level creates a tarball
<samp>tex-live-<var>yyyy</var>-<var>mm</var>-<var>dd</var>.tar.xz</samp> from the TL source
tree. Running <code>make distcheck</code> also verifies that this tarball
suffices to build and install all of TL.
@@ -767,38 +775,32 @@ things are working. There are many <code>configure</code> options you can
tweak as desired; check the output from <code>configure --help</code>.
</p>
<a name="index-size-of-source-tree"></a>
-<p>Finally, the above retrieves the entire TL source tree (some 300mb).
-It is natural to ask if this is really necessary. Strictly speaking,
-the answer is no, but it is vastly more convenient to do so. If you
-cut down the source tree, you must also give additional
-<code>configure</code> flags to individually disable using system versions
-of libraries, or the intricacies of the dependencies (such as
+<p>Finally, the above retrieves the entire TL source tree (several
+hundred megabytes). It is natural to ask if this is really necessary.
+Strictly speaking, the answer is no, but it is vastly more convenient
+to do so. If you cut down the source tree, you must also give
+additional <code>configure</code> flags to individually disable using system
+versions of libraries, or the intricacies of the dependencies (such as
<code>teckit</code> requiring <code>zlib</code>) will have undesired side effects.
For an example, see the <code>build-pdftex.sh</code> script in the
-<code>pdftex</code> development sources (<a href="http://pdftex.org">http://pdftex.org</a>), which are
+<code>pdftex</code> development source (<a href="http://pdftex.org">http://pdftex.org</a>), which is
indeed a cut-down TL source tree.
</p>
<a name="index-_002d_002denable_002dmissing-to-ignore-dependencies"></a>
-<p>Caveat 1: even with <code>--disable-all-pkgs</code>, dependencies will be
-checked. For instance, if a non-MacOSX system does not have
-<code>fontconfig</code>, XeTeX cannot be built (see <a href="#Prerequisites">Prerequisites</a>)
-and <code>configure</code> will terminate. To proceed without such
-dependencies, specify <code>--enable-missing</code> also. (Arguably this
-should happen automatically.)
+<p>Even with <code>--disable-all-pkgs</code>, dependencies will be checked.
+For instance, if a non-MacOSX system does not have <code>fontconfig</code>,
+XeTeX cannot be built (see <a href="#Prerequisites">Prerequisites</a>) and <code>configure</code>
+will terminate. To proceed without such dependencies, specify
+<code>--enable-missing</code> also. (Arguably this should happen
+automatically.)
</p>
<a name="index-CC_003dc_002dcompiler"></a>
<a name="index-CXX_003dc_002b_002b_002dcompiler"></a>
<a name="index-OBJCXX_003dobjc_002dcompiler"></a>
-<a name="index-ICU_002c-prefers-clang-compilers"></a>
-<a name="index-clang-compilers_002c-preferred-by-ICU"></a>
-<p>Caveat 2: unless <code>CC</code> and <code>CXX</code> and <code>OBJCXX</code> are
-explicitly specified, each package will configure its own compiler(s).
-In practice, this results in a conflict in only one instance: the ICU
-(<samp>libs/icu</samp>) library will prefer <code>clang</code> and <code>clang++</code>
-over all others if they are installed, whereas everything else prefers
-<code>gcc</code> and <code>g++</code>. Usually the results will be interoperable,
-but it can cause extra confusion and problems when debugging a program
-that uses ICU.
+<p>By default, the <code>gcc</code> compilers will be used if present;
+otherwise, individual packages may use something different. You can
+explicitly specify the compilers to be used with the environment
+variables <code>CC</code>, <code>CXX</code>, and <code>OBJCXX</code>.
</p>
<hr>
@@ -1055,15 +1057,15 @@ rules to build and install them together with some of their support
files.
</p>
<table class="menu" border="0" cellspacing="0">
-<tr><td align="left" valign="top">&bull; <a href="#Build-system-tools" accesskey="1">Build system tools</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">If modifying infrastructure files.
+<tr><td align="left" valign="top">&bull; <a href="#Build-system-tools" accesskey="1">Build system tools</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Modifying infrastructure files.
</td></tr>
-<tr><td align="left" valign="top">&bull; <a href="#Top_002dlevel-directories" accesskey="2">Top-level directories</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
+<tr><td align="left" valign="top">&bull; <a href="#Top_002dlevel-directories" accesskey="2">Top-level directories</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">libs texk utils; am auxdir build-aux m4; doc extra.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="#Autoconf-macros" accesskey="3">Autoconf macros</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">TL-specific Autoconf macros.
</td></tr>
-<tr><td align="left" valign="top">&bull; <a href="#Library-modules" accesskey="4">Library modules</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Details on some specific libraries,
+<tr><td align="left" valign="top">&bull; <a href="#Library-modules" accesskey="4">Library modules</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Handling libraries, with examples.
</td></tr>
-<tr><td align="left" valign="top">&bull; <a href="#Program-modules" accesskey="5">Program modules</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">and on some programs.
+<tr><td align="left" valign="top">&bull; <a href="#Program-modules" accesskey="5">Program modules</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Handling programs, with examples.
</td></tr>
<tr><td align="left" valign="top">&bull; <a href="#Extending-TeX-Live" accesskey="6">Extending TeX Live</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">Adding a new module.
</td></tr>
@@ -1105,7 +1107,7 @@ automake (GNU automake) 1.15
bison (GNU Bison) 3.0.4
flex 2.6.0
ltmain.sh (GNU libtool) 2.4.6
-m4 (GNU M4) 1.4.17
+m4 (GNU M4) 1.4.18
makeinfo (GNU texinfo) 6.1
</pre></div>
@@ -1158,11 +1160,12 @@ programs), and <samp>libs/</samp> (generic libraries).
</p>
<a name="index-am_002f-top_002dlevel-directory"></a>
<a name="index-m4_002f-top_002dlevel-directory"></a>
-<p>The top-level directories <samp>am/</samp> and <samp>m4/</samp> contain
-<samp>Makefile.am</samp> fragments and Autoconf macros, respectively, used
-in many places. Specifically, the file <samp>m4/kpse-pkgs.m4</samp>
-contains lists of all program and library modules; missing modules are
-silently ignored. (This helps in creating cut-down source trees.)
+<p>In addition, the top-level directories <samp>am/</samp> and <samp>m4/</samp>
+contain <samp>Makefile.am</samp> fragments and Autoconf macros,
+respectively, used in many places. Specifically, the file
+<samp>m4/kpse-pkgs.m4</samp> contains lists of all program and library
+modules; missing modules are silently ignored. (This helps in
+creating cut-down source trees.)
</p>
<p>Each module contributes fragments (in separate files) defining its
capabilities and requirements to the <samp>configure.ac</samp> scripts at
@@ -1174,22 +1177,32 @@ library can be used. This ultimately determines which modules need to
be built&mdash;although all modules must be configured for the benefit of
<samp>make</samp> targets such as <code>dist</code> or <code>distcheck</code>.
</p>
-<a name="index-config_002eguess_002c-config_002esub"></a>
+<a name="index-build_002daux_002f-top_002dlevel-directory"></a>
+<a name="index-config_002eguess_002c-config_002esub_002c-_2026"></a>
<a name="index-Gnulib_002c-used-for-common-files"></a>
<p>The top-level <samp>build-aux/</samp> directory contains the common files
<samp>compile</samp>, <samp>config.guess</samp>, <samp>config.sub</samp>,
-<samp>depcomp</samp>, etc.&nbsp;for most packages, pulled from the GNU Gnulib
-sources (<a href="http://www.gnu.org/software/gnulib">http://www.gnu.org/software/gnulib</a>), which in turn
-synchronizes with the appropriate ultimate upstream repository. There
-are, however, independent copies in, e.g.,
-<samp>libs/freetype2/freetype-*/builds/unix/</samp>, and similar places.
+<samp>depcomp</samp>, etc.&nbsp;used by most packages. These are from the GNU
+Gnulib sources (<a href="http://www.gnu.org/software/gnulib">http://www.gnu.org/software/gnulib</a>), which in
+turn synchronizes with the appropriate ultimate upstream repository.
+There are, however, independent copies in, e.g.,
+<samp>libs/freetype2/freetype-*/builds/unix/</samp>, and a few other places.
The <code>reautoconf</code> script does not touch those, but a TL cron job
keeps them in sync (nightly).
</p>
<a name="index-extra_002f-top_002dlevel-directory"></a>
<p>The directory <samp>extra/</samp> contains things which are not part of the
TL build, but are present just for (someone&rsquo;s) convenience, e.g.,
-<samp>epstopdf</samp> which is developed here.
+is <samp>epstopdf</samp> development source is here.
+</p>
+<a name="index-Work_002f-top_002dlevel-directory"></a>
+<a name="index-inst_002f-top_002dlevel-directory"></a>
+<p>When the top-level <samp>./Build</samp> script is used to build TL, two more
+two more top-level directories appear: <samp>Work/</samp> for the build tree,
+and <samp>inst/</samp> for the install tree (from <code>make install</code>).
+These names (and everything else about <samp>Build</samp>&rsquo;s operation) can
+be changed by setting environment variables before running it; see the
+script file.
</p>
<hr>
@@ -1539,8 +1552,8 @@ Next: <a href="#zlib-library" accesskey="n" rel="next"><code>zlib</code> library
<a name="index-png-library"></a>
<a name="index-libpng-library"></a>
<p>This generic library uses the source tree in, e.g., the subdirectory
-<samp>libpng-1.6.16</samp> with all modifications for TL recorded in
-<samp>libpng-1.6.16-PATCHES/*</samp>. The <samp>configure.ac</samp> fragment
+<samp>libpng-src/</samp> with all modifications for TL recorded in
+<samp>TLpatches/*</samp>. The <samp>configure.ac</samp> fragment
<samp>ac/withenable.ac</samp> contains
</p>
<div class="example">
@@ -1717,8 +1730,8 @@ Next: <a href="#xindy-package" accesskey="n" rel="next"><code>xindy</code> packa
<a name="index-t1utils-package"></a>
-<p>Once again we use the distributed source tree <samp>t1utils-1.39</samp>
-with modifications documented in <samp>t1utils-1.39-PATCHES/*</samp> and
+<p>Once again we use the distributed source tree <samp>t1utils-src</samp>
+with modifications documented in <samp>TLpatches/*</samp> and
a proxy build system consisting of <samp>configure.ac</samp> and
<samp>Makefile.am</samp>. The fragment <samp>ac/withenable.ac</samp> contains
</p>
@@ -1741,13 +1754,13 @@ Next: <a href="#xdvik-package" accesskey="n" rel="next"><code>xdvik</code> packa
<a name="index-xindy-1"></a>
-<p>This module uses the distributed source tree <samp>xindy-2.5.1</samp>
-with modifications documented in <samp>xindy-2.5.1-PATCHES/*</samp>, a
-proxy <samp>configure.ac</samp>, and a wrapper <samp>Makefile.am</samp> that descends
-into <samp>xindy-2.5.1</samp>. The <code>xindy</code> build requires that the
-distributed <samp>Makefile</samp>s allow a <code>VPATH</code> build, can handle all
-targets, and do not refer to <code>${top_srcdir}</code> or
-<code>${top_builddir}</code>. The fragment <code>ac/withenable.ac</code> contains
+<p>This module uses the distributed source tree <samp>xindy-src/</samp> with
+modifications documented in <samp>TLpatches/*</samp>, a proxy
+<samp>configure.ac</samp>, and a wrapper <samp>Makefile.am</samp> that descends
+into <samp>xindy-src</samp>. The <code>xindy</code> build requires a <samp>make</samp>
+that supports a <code>VPATH</code> build, can handle all targets, and do not
+refer to <code>${top_srcdir}</code> or <code>${top_builddir}</code>. The
+fragment <code>ac/withenable.ac</code> contains
</p>
<div class="example">
<pre class="example">KPSE_ENABLE_PROG([xindy], , [disable native])
@@ -1837,6 +1850,14 @@ Previous: <a href="#Program-modules" accesskey="p" rel="prev">Program modules</a
<p>This section outlines the basic process for adding new packages to the
TL build system.
</p>
+<p>In any case, a new package directory <samp>foo</samp> should contain the
+original sources, as modified for TL, in <samp>foo/foo-src</samp>, and the
+changes should be documented in <samp>foo/TLpatches/*</samp>; changes should
+also be submitted upstream whenever reasonable, of course. In
+addition, <samp>foo/</samp> will need the usual Automake build-related files
+(<samp>configure.ac</samp>, <samp>Makefile.am</samp>, etc. Please keep a
+<samp>ChangeLog</samp> for all TL changes.
+</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="#Adding-a-new-program-module" accesskey="1">Adding a new program module</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
</td></tr>
@@ -3028,8 +3049,9 @@ should produce no (GCC) compiler warnings at all. In spite of
considerable efforts into that direction we are still far from that goal and
there are reasons that we may never fully reach it. Below are some rules
about declarations of functions or variables and the use of <code>const</code>.
-These rules should be applied to all parts of the TeX Live tree, except some of
-those maintained independently.
+These rules should be applied to most of the TeX Live tree, the exception
+being code that is maintained independently and whose maintainers
+don&rsquo;t want to accept patches.
</p>
<table class="menu" border="0" cellspacing="0">
<tr><td align="left" valign="top">&bull; <a href="#Declarations-and-definitions" accesskey="1">Declarations and definitions</a>:</td><td>&nbsp;&nbsp;</td><td align="left" valign="top">
@@ -6223,12 +6245,14 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><td></td><td valign="top"><a href="#index-build-problems">build problems</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-problems">Build problems</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Build-script"><code>Build <span class="roman">script</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Building">Building</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-build-system_002c-design-of">build system, design of</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Overview-of-build-system">Overview of build system</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-build_002daux_002f-top_002dlevel-directory"><samp>build-aux/</samp> top-level directory</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Top_002dlevel-directories">Top-level directories</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-BUILDCC_002c-BUILDCFLAGS_002c-_2026"><code>BUILDCC<span class="roman">,</span> BUILDCFLAGS<span class="roman">, &hellip;</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Cross-configuring">Cross configuring</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-building">building</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Building">Building</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-building-a-distribution">building a distribution</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-distribution">Build distribution</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-building-in-parallel">building in parallel</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-in-parallel">Build in parallel</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-C">C</a></th><td></td><td></td></tr>
+<tr><td></td><td valign="top"><a href="#index-C_002b_002b11_002c-required-by-dvisvgm">C++11, required by <code>dvisvgm</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Prerequisites">Prerequisites</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-C_002c-ANSI_002c-required">C, ANSI, required</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Declarations-and-definitions">Declarations and definitions</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-C99_002c-avoided">C99, avoided</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Declarations-and-definitions">Declarations and definitions</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-cache-file_002c-for-configure">cache file, for <code>configure</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-in-parallel">Build in parallel</a></td></tr>
@@ -6238,7 +6262,6 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><td></td><td valign="top"><a href="#index-CC_003dc_002dcompiler"><code>CC=<var>c-compiler</var></code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-one-package">Build one package</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-CC_005fBUILD"><code>CC_BUILD</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Cross-problems">Cross problems</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-chktex"><code>chktex</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Declarations-and-definitions">Declarations and definitions</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-clang-compilers_002c-preferred-by-ICU"><code>clang</code> compilers, preferred by ICU</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-one-package">Build one package</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-clisp"><code>clisp</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Variables-for-configure">Variables for configure</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-CLISP-1"><code>CLISP</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Variables-for-configure">Variables for configure</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-CLISP">CLISP</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options-for-utils_002fxindy">Configure options for <samp>utils/xindy</samp></a></td></tr>
@@ -6246,7 +6269,7 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><td></td><td valign="top"><a href="#index-Cocoa-Mac-framework_002c-required-by-xetex"><code>Cocoa</code> Mac framework, required by <code>xetex</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Prerequisites">Prerequisites</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-coding-conventions">coding conventions</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Coding-conventions">Coding conventions</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-compilers_002c-C-and-C_002b_002b">compilers, C and C++</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Prerequisites">Prerequisites</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-config_002eguess_002c-config_002esub"><code>config.guess<span class="roman">,</span> config.sub</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Top_002dlevel-directories">Top-level directories</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-config_002eguess_002c-config_002esub_002c-_2026"><code>config.guess<span class="roman">,</span> config.sub, &hellip;</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Top_002dlevel-directories">Top-level directories</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-configure-options"><code>configure</code> options</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options">Configure options</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-configure-options_002c-for-bibtex_002dx"><code>configure</code> options, for <code>bibtex-x</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options-for-texk_002fbibtex_002dx">Configure options for <samp>texk/bibtex-x</samp></a></td></tr>
<tr><td></td><td valign="top"><a href="#index-configure-options_002c-for-dvipdfm_002dx"><code>configure</code> options, for <code>dvipdfm-x</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options-for-texk_002fdvipdfm_002dx">Configure options for <samp>texk/dvipdfm-x</samp></a></td></tr>
@@ -6286,6 +6309,7 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><td></td><td valign="top"><a href="#index-distro_002c-building-for">distro, building for</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Distro-builds">Distro builds</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-dvipdfmx"><code>dvipdfmx</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options-for-texk_002fdvipdfm_002dx">Configure options for <samp>texk/dvipdfm-x</samp></a></td></tr>
<tr><td></td><td valign="top"><a href="#index-dvisvgm"><code>dvisvgm</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options-for-texk_002fdvisvgm">Configure options for <samp>texk/dvisvgm</samp></a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-dvisvgm-requirement-for-C_002b_002b11"><code>dvisvgm</code> requirement for C++11</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Prerequisites">Prerequisites</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-E">E</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-environment-variables_002c-for-configure">environment variables, for <code>configure</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Configure-options">Configure options</a></td></tr>
@@ -6319,10 +6343,10 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><th><a name="Index_cp_letter-I">I</a></th><td></td><td></td></tr>
<tr><td></td><td valign="top"><a href="#index-ICU-cross-compiling">ICU cross compiling</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Cross-problems">Cross problems</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-ICU-libraries">ICU libraries</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Variables-for-configure">Variables for configure</a></td></tr>
-<tr><td></td><td valign="top"><a href="#index-ICU_002c-prefers-clang-compilers">ICU, prefers <code>clang</code> compilers</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-one-package">Build one package</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-icu_002dconfig"><code>icu-config</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Variables-for-configure">Variables for configure</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-ICU_005fCONFIG"><code>ICU_CONFIG</code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Variables-for-configure">Variables for configure</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-infrastructure_002c-tools-needed-for">infrastructure, tools needed for</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Build-system-tools">Build system tools</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-inst_002f-top_002dlevel-directory"><samp>inst/</samp> top-level directory</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Top_002dlevel-directories">Top-level directories</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-install_002dtl_002c-TeX-Live-installer"><code>install-tl<span class="roman">, TeX Live installer</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Installing">Installing</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-installation-directories">installation directories</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Installation-directories">Installation directories</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-installing">installing</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Installing">Installing</a></td></tr>
@@ -6507,6 +6531,7 @@ Previous: <a href="#tlmgr" accesskey="p" rel="prev">tlmgr</a>, Up: <a href="#Top
<tr><td></td><td valign="top"><a href="#index-Windows_002c-invoking-scripts-on">Windows, invoking scripts on</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Linked-scripts">Linked scripts</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-Windows_002c-macros-for">Windows, macros for</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Macros-for-Windows">Macros for Windows</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-withenable_002eac_002c-for-new-modules"><code>withenable.ac<span class="roman">, for new modules</span></code></a>:</td><td>&nbsp;</td><td valign="top"><a href="#Adding-a-new-program-module">Adding a new program module</a></td></tr>
+<tr><td></td><td valign="top"><a href="#index-Work_002f-top_002dlevel-directory"><samp>Work/</samp> top-level directory</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Top_002dlevel-directories">Top-level directories</a></td></tr>
<tr><td></td><td valign="top"><a href="#index-wrapper-binary-for-scripts-on-Windows">wrapper binary for scripts on Windows</a>:</td><td>&nbsp;</td><td valign="top"><a href="#Linked-scripts">Linked scripts</a></td></tr>
<tr><td colspan="4"> <hr></td></tr>
<tr><th><a name="Index_cp_letter-X">X</a></th><td></td><td></td></tr>