summaryrefslogtreecommitdiff
path: root/Build/source/doc
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/doc')
-rw-r--r--Build/source/doc/tlbuild.info674
-rw-r--r--Build/source/doc/tlbuild.texi50
2 files changed, 386 insertions, 338 deletions
diff --git a/Build/source/doc/tlbuild.info b/Build/source/doc/tlbuild.info
index 280cdfa5030..e79706e17be 100644
--- a/Build/source/doc/tlbuild.info
+++ b/Build/source/doc/tlbuild.info
@@ -53,8 +53,7 @@ File: tlbuild.info, Node: Introduction, Next: Overview of build system, Prev:
1 Introduction
**************
-This manual (dated February 2016) corresponds to the TeX Live 2016
-release.
+This manual (dated April 2016) corresponds to the TeX Live 2016 release.
This manual is aimed at system installers and programmers, and
focuses on how to configure, build, and develop the TeX Live (TL)
@@ -172,7 +171,8 @@ Automake/Autoconf output in general) should work with any reasonable
that are not installed by default.
'xetex'
- requires 'fontconfig' (again both headers and library).
+ requires 'fontconfig' (again both headers and library), or, for
+ MacOSX only, the 'ApplicationServices' and 'Cocoa' frameworks.
'xindy'
requires GNU 'clisp' and in addition 'perl', 'latex', and
@@ -209,13 +209,13 @@ File: tlbuild.info, Node: Building, Next: Installing, Prev: Prerequisites, U
The top-level 'Build' script is intended to simplify building the
binaries distributed with TeX Live itself--we call this the "native" TL
build. It configures and makes everything in a subdirectory of the main
-build tree (default 'Work/'), installs everything in an other
+build tree (default 'Work/'), installs everything in another
subdirectory (default 'inst/'), and finally runs 'make check'. The
exact directory and command names can be specified via environment
variables and a few leading options. All remaining arguments
(assignments or options) are passed to the 'configure' script. Please
-take a look at the script itself for more information; it is not
-complicated.
+take a look at the './Build' source file itself for more information; it
+is a straightforward shell script.
An alternative, and the one we will mainly discuss here, is to run
'configure' and 'make' oneself in a suitable empty subdirectory.
@@ -308,12 +308,12 @@ library modules are configured but none are made. However, the
invoked to build an individual program or library and causes to first
build any required libraries.
- This "build-on-demand" procedure is used, e.g., in the 'luatex'
-repository to build LuaTeX, essentially from a subset of the complete
-TeX Live tree. Similarly, when, e.g., building the original e-TeX has
-been disabled (as it is by default), one can run 'make etex' (or 'make
-etex.exe') in 'texk/web2c/' to build e-TeX (although there is no
-comparably simple way to install e-TeX).
+ This "build-on-demand" procedure is used, e.g., in the upstream
+LuaTeX repository to build LuaTeX, essentially from a subset of the
+complete TeX Live tree. Similarly, when, e.g., building the original
+e-TeX has been disabled (as it is by default), one can run 'make etex'
+(or 'make etex.exe') in 'texk/web2c/' to build e-TeX (although there is
+no comparably simple way to install e-TeX).
If you want to work on a single program within the TL sources, this
is the recommended way to do it. Here is an example from start to
@@ -362,6 +362,21 @@ have undesired side effects. For an example, see the 'build-pdftex.sh'
script in the 'pdftex' development sources (<http://pdftex.org>), which
are indeed a cut-down TL source tree.
+ Caveat 1: even with '--disable-all-pkgs', dependencies will be
+checked. For instance, if a non-MacOSX system does not have
+'fontconfig', XeTeX cannot be built (*note Prerequisites::) and
+'configure' will terminate. To proceed without such dependencies,
+specify '--enable-missing' also. (Arguably this should happen
+automatically.)
+
+ Caveat 2: unless 'CC' and 'CXX' and 'OBJCXX' are explicitly
+specified, each package will configure its own compiler(s). In
+practice, this results in a conflict in only one instance: the ICU
+('libs/icu') library will prefer 'clang' and 'clang++' over all others
+if they are installed, whereas everything else prefers 'gcc' and 'g++'.
+Usually the results will be interoperable, but it can cause extra
+confusion and problems when debugging a program that uses ICU.
+

File: tlbuild.info, Node: Installing, Next: Layout and infrastructure, Prev: Building, Up: Top
@@ -4370,7 +4385,7 @@ Index
* --bindir configure option <1>: --enable-multiplatform.
(line 6)
* --build=HOST: Cross configuring. (line 6)
-* --disable-all-packages configure option: Build one package. (line 6)
+* --disable-all-packages: Build one package. (line 6)
* --disable-all-pkgs: --disable-all-pkgs. (line 6)
* --disable-bibtex8: Configure options for texk/bibtex-x.
(line 9)
@@ -4408,16 +4423,15 @@ Index
(line 45)
* --enable-compiler-warnings=LEVEL: --enable-compiler-warnings=LEVEL.
(line 6)
-* --enable-cxx-runtime-hack configure option: Macros for compilers.
- (line 29)
+* --enable-cxx-runtime-hack: Macros for compilers. (line 29)
* --enable-etex: Configure options for texk/web2c.
(line 37)
* --enable-libtool-hack: Configure options for texk/web2c.
(line 50)
-* --enable-maintainer-mode: --enable-maintainer-mode.
+* --enable-maintainer-mode: Build system tools. (line 28)
+* --enable-maintainer-mode <1>: --enable-maintainer-mode.
(line 6)
-* --enable-maintainer-mode configure option: Build system tools.
- (line 28)
+* --enable-missing to ignore dependencies: Build one package. (line 67)
* --enable-mktextfm-default: kpathsea library. (line 20)
* --enable-multiplatform: --enable-multiplatform.
(line 6)
@@ -4490,6 +4504,8 @@ Index
(line 14)
* ANSI C: Declarations and definitions.
(line 6)
+* ApplicationServices Mac framework, required by xetex: Prerequisites.
+ (line 27)
* asymptote: Linked scripts. (line 22)
* asymptote <1>: asymptote. (line 6)
* Autoconf: Overview of build system.
@@ -4526,16 +4542,19 @@ Index
* callexe.c: Macros for Windows. (line 32)
* CC: Variables for configure.
(line 10)
+* CC=C-COMPILER: Build one package. (line 74)
* CC_BUILD: Cross problems. (line 13)
* chktex: Declarations and definitions.
(line 18)
+* clang compilers, preferred by ICU: Build one package. (line 74)
* clisp: Variables for configure.
(line 18)
* CLISP: Variables for configure.
(line 17)
* CLISP <1>: Configure options for utils/xindy.
(line 14)
-* clisp, required by xindy: Prerequisites. (line 30)
+* clisp, required by xindy: Prerequisites. (line 31)
+* Cocoa Mac framework, required by xetex: Prerequisites. (line 27)
* coding conventions: Coding conventions. (line 6)
* compilers, C and C++: Prerequisites. (line 6)
* config.guess, config.sub: Top-level directories.
@@ -4579,6 +4598,7 @@ Index
* ctangle: Cross problems. (line 26)
* CXX: Variables for configure.
(line 11)
+* CXX=C++-COMPILER: Build one package. (line 74)
* declarations and definitions, in source code: Declarations and definitions.
(line 6)
* dependencies, with several output files: Build in parallel. (line 6)
@@ -4605,7 +4625,7 @@ Index
* extra/ top-level directory: Top-level directories.
(line 39)
* failure to build: Build problems. (line 6)
-* ffcall, required by xindy: Prerequisites. (line 30)
+* ffcall, required by xindy: Prerequisites. (line 31)
* flags, macros for library and header: Macros for library and header flags.
(line 6)
* fontconfig library, required by xetex: Prerequisites. (line 27)
@@ -4631,6 +4651,7 @@ Index
* ICU cross compiling: Cross problems. (line 20)
* ICU libraries: Variables for configure.
(line 24)
+* ICU, prefers clang compilers: Build one package. (line 74)
* icu-config: Variables for configure.
(line 24)
* ICU_CONFIG: Variables for configure.
@@ -4762,6 +4783,7 @@ Index
* motif: Configure options for texk/xdvik.
(line 9)
* native cross compilation: Cross compilation. (line 10)
+* OBJCXX=OBJC-COMPILER: Build one package. (line 74)
* one package, building: Build one package. (line 6)
* OpenGL, required for Asymptote: asymptote. (line 6)
* operating system distribution, building for: Distro builds. (line 6)
@@ -4888,311 +4910,311 @@ Index
Tag Table:
Node: Top1030
Node: Introduction1948
-Node: Overview of build system3708
-Node: Prerequisites5772
-Node: Building7834
-Node: Build iteration9053
-Node: Build problems10125
-Node: Build in parallel10528
-Node: Build distribution11120
-Node: Build one package11691
-Node: Installing14465
-Node: Installation directories15480
-Node: Linked scripts17296
-Node: Distro builds18777
-Node: Layout and infrastructure21167
-Node: Build system tools21956
-Node: Top-level directories23965
-Node: Autoconf macros26006
-Node: General setup macros26707
-Node: Macros for programs27574
-Node: Macros for compilers28386
-Node: Macros for libraries29820
-Node: Macros for library and header flags30246
-Node: Macros for Windows32126
-Node: Library modules33703
-Node: png library34192
-Node: zlib library36481
-Node: freetype library36996
-Node: kpathsea library37524
-Node: Program modules38923
-Node: t1utils package39351
-Node: xindy package39914
-Node: xdvik package41093
-Node: asymptote42166
-Node: Extending TeX Live42617
-Node: Adding a new program module42985
-Node: Adding a new generic library module44504
-Node: Adding a new TeX-specific library module46717
-Node: Configure options47404
-Node: Global configure options48786
-Node: --disable-native-texlive-build49328
-Node: --prefix --bindir ...50318
-Node: --disable-largefile50858
-Node: --disable-missing51543
-Node: --enable-compiler-warnings=LEVEL51944
-Node: --enable-cxx-runtime-hack52683
-Node: --enable-maintainer-mode53110
-Node: --enable-multiplatform53639
-Node: --enable-shared54177
-Node: --enable-silent-rules54548
-Node: --without-ln-s55004
-Node: --without-x55355
-Node: Program-specific configure options55543
-Node: --enable-PROG --disable-PROG56186
-Node: --disable-all-pkgs56463
-Node: Configure options for texk/web2c57449
-Node: Configure options for texk/bibtex-x59967
-Node: Configure options for texk/dvipdfm-x60510
-Node: Configure options for texk/dvisvgm61283
-Node: Configure options for texk/texlive62169
-Node: Configure options for texk/xdvik62590
-Node: Configure options for utils/xindy63194
-Node: Library-specific configure options64095
-Node: Configure options for kpathsea65106
-Node: Configure options for system poppler65815
-Node: Variables for configure66606
-Node: Cross compilation68034
-Node: Cross configuring69333
-Node: Cross problems71006
-Node: Coding conventions72653
-Node: Declarations and definitions73322
-Node: Const75504
-Node: install-tl77367
-Node: install-tl NAME77708
-Node: install-tl SYNOPSIS77866
-Node: install-tl DESCRIPTION78074
-Node: install-tl REFERENCES79075
-Node: install-tl OPTIONS79591
-Ref: install-tl *-gui* [[=]_module_]79945
-Ref: install-tl text80154
-Ref: install-tl wizard80277
-Ref: install-tl perltk80431
-Ref: install-tl *-no-gui*80865
-Ref: install-tl *-lang* _llcode_80946
-Ref: install-tl *-repository* _url|path_81633
-Ref: install-tl *-select-repository*83444
-Ref: install-tl *-all-options*83880
-Ref: install-tl *-custom-bin* _path_84187
-Ref: install-tl *-debug-translation*84842
-Ref: install-tl *-force-platform* _platform_85061
-Ref: install-tl *-help*, *--help*, *-?*85305
-Ref: install-tl *-in-place*85698
-Ref: install-tl *-logfile* _file_86225
-Ref: install-tl *-no-cls*86576
-Ref: install-tl *-non-admin*86707
-Ref: install-tl *--persistent-downloads*86812
-Ref: install-tl *--no-persistent-downloads*86840
-Ref: install-tl *-portable*87448
-Ref: install-tl *-print-platform*87587
-Ref: install-tl *-profile* _profile_87780
-Ref: install-tl *-q*89274
-Ref: install-tl *-scheme* _scheme_89336
-Ref: install-tl *-v*89810
-Ref: install-tl *-version*, *--version*89971
-Node: install-tl ENVIRONMENT VARIABLES90102
-Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK90491
-Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE90693
-Ref: install-tl TEXLIVE_INSTALL_PREFIX90799
-Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG90830
-Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME90859
-Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL90889
-Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG90923
-Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR90954
-Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR90982
-Ref: install-tl NOPERLDOC91037
-Node: install-tl AUTHORS AND COPYRIGHT91101
-Node: tlmgr91459
-Node: tlmgr NAME91896
-Node: tlmgr SYNOPSIS92021
-Node: tlmgr DESCRIPTION92211
-Node: tlmgr EXAMPLES93307
-Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet93598
-Ref: tlmgr tlmgr update --list93779
-Ref: tlmgr tlmgr update --all93872
-Ref: tlmgr tlmgr info _pkg_94028
-Node: tlmgr OPTIONS94234
-Ref: tlmgr *--repository* _url|path_94754
-Ref: tlmgr *--gui* [_action_]95479
-Ref: tlmgr *--gui-lang* _llcode_95886
-Ref: tlmgr *--debug-translation*96569
-Ref: tlmgr *--machine-readable*96772
-Ref: tlmgr *--no-execute-actions*97040
-Ref: tlmgr *--package-logfile* _file_97233
-Ref: tlmgr *--pause*97488
-Ref: tlmgr *--persistent-downloads*97643
-Ref: tlmgr *--no-persistent-downloads*97671
-Ref: tlmgr *--pin-file*98165
-Ref: tlmgr *--usermode*98383
-Ref: tlmgr *--usertree* _dir_98503
-Node: tlmgr ACTIONS99053
-Node: tlmgr help100285
-Node: tlmgr version100761
-Node: tlmgr backup [--clean[=_N_]] [--backupdir _dir_] [--all | _pkg_]...101079
-Ref: tlmgr *--backupdir* _directory_102173
-Ref: tlmgr *--all*102370
-Ref: tlmgr *--clean*[=_N_]102592
-Ref: tlmgr *--dry-run*102889
-Node: tlmgr candidates _pkg_103009
-Ref: tlmgr *candidates _pkg_* 1103296
-Node: tlmgr check [_option_]... [files|depends|executes|runfiles|all]103440
-Ref: tlmgr *files*103883
-Ref: tlmgr *depends*104018
-Ref: tlmgr *executes*104360
-Ref: tlmgr *runfiles*104478
-Ref: tlmgr *--use-svn*104590
-Node: tlmgr conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]104707
-Node: tlmgr dump-tlpdb [--local|--remote]106779
-Ref: tlmgr *--local*107289
-Ref: tlmgr *--remote*107328
-Node: tlmgr generate [_option_]... _what_107750
-Ref: tlmgr *generate language*107991
-Ref: tlmgr *generate language.dat*108016
-Ref: tlmgr *generate language.def*108041
-Ref: tlmgr *generate language.dat.lua*108070
-Ref: tlmgr *generate fmtutil*108090
-Ref: tlmgr *--dest* _output_file_110327
-Ref: tlmgr *--localcfg* _local_conf_file_110903
-Ref: tlmgr *--rebuild-sys*111026
-Node: tlmgr gui111887
-Node: tlmgr info [_option_...] [collections|schemes|_pkg_...]112131
-Ref: tlmgr *--list*113336
-Ref: tlmgr *--only-installed*113615
-Ref: tlmgr *--taxonomy*113830
-Ref: tlmgr *--keyword*113842
-Ref: tlmgr *--functionality*113860
-Ref: tlmgr *--characterization*113881
-Node: tlmgr init-usertree114094
-Node: tlmgr install [_option_]... _pkg_...114520
-Ref: tlmgr *--file*114884
-Ref: tlmgr *--reinstall*115110
-Ref: tlmgr *--no-depends*115490
-Ref: tlmgr *--no-depends-at-all*115649
-Ref: tlmgr *--dry-run* 1116047
-Ref: tlmgr *--force*116165
-Node: tlmgr option116371
-Ref: tlmgr *option [show]*116544
-Ref: tlmgr *option showall*116562
-Ref: tlmgr *option _key_ [_value_]*116588
-Node: tlmgr paper120436
-Ref: tlmgr *paper [a4|letter]*120621
-Ref: tlmgr *[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*120695
-Node: tlmgr path [--w32mode=user|admin] [add|remove]121722
-Node: tlmgr pinning123205
-Ref: tlmgr pinning show123512
-Ref: tlmgr pinning add _repo_ _pkgglob_...123585
-Ref: tlmgr pinning remove _repo_ _pkgglob_...123704
-Ref: tlmgr pinning remove _repo_ --all123857
-Node: tlmgr platform list|add|remove _platform_...123911
-Node: tlmgr platform set _platform_124159
-Node: tlmgr platform set auto124387
-Ref: tlmgr *--dry-run* 2125504
-Node: tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] [install|remove] [shortcut|fileassoc|script] [_pkg_]...125613
-Node: tlmgr print-platform126915
-Node: tlmgr restore [--backupdir _dir_] [--all | _pkg_ [_rev_]]127387
-Ref: tlmgr *--all* 1128283
-Ref: tlmgr *--backupdir* _directory_ 1128477
-Ref: tlmgr *--dry-run* 3128633
-Ref: tlmgr *--force* 1128750
-Node: tlmgr remove [_option_]... _pkg_...128778
-Ref: tlmgr *--no-depends* 1129301
-Ref: tlmgr *--no-depends-at-all* 1129363
-Ref: tlmgr *--force* 2129419
-Ref: tlmgr *--dry-run* 4129891
-Node: tlmgr repository129998
-Ref: tlmgr *repository list*130206
-Ref: tlmgr *repository list _path|tag_*130236
-Ref: tlmgr *repository add _path_ [_tag_]*130269
-Ref: tlmgr *repository remove _path|tag_*130301
-Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*130355
-Node: tlmgr search [_option_...] _what_131439
-Node: tlmgr search [_option_...] --file _what_131950
-Node: tlmgr search [_option_...] --taxonomy _what_132201
-Node: tlmgr search [_option_...] --keyword _what_132512
-Node: tlmgr search [_option_...] --functionality _what_132830
-Node: tlmgr search [_option_...] --characterization _what_133168
-Node: tlmgr search [_option_...] --all _what_133508
-Ref: tlmgr *--global*133956
-Ref: tlmgr *--word*134068
-Ref: tlmgr *--list* 1134307
-Ref: tlmgr *--file* 1134653
-Ref: tlmgr *--taxonomy* 1134710
-Ref: tlmgr *--keyword* 1134722
-Ref: tlmgr *--functionality* 1134740
-Ref: tlmgr *--characterization* 1134761
-Ref: tlmgr *--all* 2134916
-Node: tlmgr uninstall134999
-Ref: tlmgr *--force* 3135253
-Node: tlmgr update [_option_]... [_pkg_]...135309
-Ref: tlmgr *--all* 3135680
-Ref: tlmgr *--self*137421
-Ref: tlmgr *--dry-run* 5138185
-Ref: tlmgr *--list* [_pkg_]138362
-Ref: tlmgr *--exclude* _pkg_139051
-Ref: tlmgr *--no-auto-remove* [_pkg_]...139744
-Ref: tlmgr *--no-auto-install* [_pkg_]...140195
-Ref: tlmgr *--reinstall-forcibly-removed*140851
-Ref: tlmgr *--backup* and *--backupdir* _directory_141415
-Ref: tlmgr *--no-depends* 2142596
-Ref: tlmgr *--no-depends-at-all* 2142799
-Ref: tlmgr *--force* 4142855
-Node: tlmgr USER MODE143281
-Node: tlmgr user mode install146092
-Node: tlmgr user mode backup; restore; remove; update147039
-Node: tlmgr user mode generate; option; paper147481
-Node: tlmgr CONFIGURATION FILE FOR TLMGR147857
-Node: tlmgr TAXONOMIES148948
-Ref: tlmgr --keyword 2149574
-Ref: tlmgr --functionality 2149659
-Ref: tlmgr --characterization 2149815
-Ref: tlmgr --taxonomy 2149956
-Node: tlmgr MULTIPLE REPOSITORIES150497
-Node: tlmgr Pinning152218
-Node: tlmgr GUI FOR TLMGR154193
-Node: tlmgr Main display155415
-Node: tlmgr Display configuration area155667
-Ref: tlmgr Status156028
-Ref: tlmgr Category156192
-Ref: tlmgr Match156378
-Ref: tlmgr Selection156638
-Ref: tlmgr Display configuration buttons156842
-Node: tlmgr Package list area157025
-Ref: tlmgr a checkbox157609
-Ref: tlmgr package name157745
-Ref: tlmgr local revision (and version)157844
-Ref: tlmgr remote revision (and version)158219
-Ref: tlmgr short description158516
-Node: tlmgr Main display action buttons158561
-Ref: tlmgr Update all installed158827
-Ref: tlmgr Update159199
-Ref: tlmgr Install159249
-Ref: tlmgr Remove159435
-Ref: tlmgr Backup159613
-Node: tlmgr Menu bar159770
-Ref: tlmgr tlmgr menu159967
-Ref: tlmgr Options menu160275
-Ref: tlmgr Actions menu161358
-Ref: tlmgr Help menu161786
-Node: tlmgr MACHINE-READABLE OUTPUT161919
-Node: tlmgr Machine-readable update and install output162729
-Ref: tlmgr location-url _location_164005
-Ref: tlmgr total-bytes _count_164221
-Ref: tlmgr _pkgname_164631
-Ref: tlmgr _status_164841
-Ref: tlmgr d164919
-Ref: tlmgr f164979
-Ref: tlmgr u165158
-Ref: tlmgr r165204
-Ref: tlmgr a165327
-Ref: tlmgr i165505
-Ref: tlmgr I165624
-Ref: tlmgr _localrev_165726
-Ref: tlmgr _serverrev_165833
-Ref: tlmgr _size_165945
-Ref: tlmgr _runtime_166114
-Ref: tlmgr _esttot_166184
-Node: tlmgr Machine-readable option output166217
-Node: tlmgr AUTHORS AND COPYRIGHT166729
-Node: Index167076
+Node: Overview of build system3705
+Node: Prerequisites5769
+Node: Building7907
+Node: Build iteration9155
+Node: Build problems10227
+Node: Build in parallel10630
+Node: Build distribution11222
+Node: Build one package11793
+Node: Installing15379
+Node: Installation directories16394
+Node: Linked scripts18210
+Node: Distro builds19691
+Node: Layout and infrastructure22081
+Node: Build system tools22870
+Node: Top-level directories24879
+Node: Autoconf macros26920
+Node: General setup macros27621
+Node: Macros for programs28488
+Node: Macros for compilers29300
+Node: Macros for libraries30734
+Node: Macros for library and header flags31160
+Node: Macros for Windows33040
+Node: Library modules34617
+Node: png library35106
+Node: zlib library37395
+Node: freetype library37910
+Node: kpathsea library38438
+Node: Program modules39837
+Node: t1utils package40265
+Node: xindy package40828
+Node: xdvik package42007
+Node: asymptote43080
+Node: Extending TeX Live43531
+Node: Adding a new program module43899
+Node: Adding a new generic library module45418
+Node: Adding a new TeX-specific library module47631
+Node: Configure options48318
+Node: Global configure options49700
+Node: --disable-native-texlive-build50242
+Node: --prefix --bindir ...51232
+Node: --disable-largefile51772
+Node: --disable-missing52457
+Node: --enable-compiler-warnings=LEVEL52858
+Node: --enable-cxx-runtime-hack53597
+Node: --enable-maintainer-mode54024
+Node: --enable-multiplatform54553
+Node: --enable-shared55091
+Node: --enable-silent-rules55462
+Node: --without-ln-s55918
+Node: --without-x56269
+Node: Program-specific configure options56457
+Node: --enable-PROG --disable-PROG57100
+Node: --disable-all-pkgs57377
+Node: Configure options for texk/web2c58363
+Node: Configure options for texk/bibtex-x60881
+Node: Configure options for texk/dvipdfm-x61424
+Node: Configure options for texk/dvisvgm62197
+Node: Configure options for texk/texlive63083
+Node: Configure options for texk/xdvik63504
+Node: Configure options for utils/xindy64108
+Node: Library-specific configure options65009
+Node: Configure options for kpathsea66020
+Node: Configure options for system poppler66729
+Node: Variables for configure67520
+Node: Cross compilation68948
+Node: Cross configuring70247
+Node: Cross problems71920
+Node: Coding conventions73567
+Node: Declarations and definitions74236
+Node: Const76418
+Node: install-tl78281
+Node: install-tl NAME78622
+Node: install-tl SYNOPSIS78780
+Node: install-tl DESCRIPTION78988
+Node: install-tl REFERENCES79989
+Node: install-tl OPTIONS80505
+Ref: install-tl *-gui* [[=]_module_]80859
+Ref: install-tl text81068
+Ref: install-tl wizard81191
+Ref: install-tl perltk81345
+Ref: install-tl *-no-gui*81779
+Ref: install-tl *-lang* _llcode_81860
+Ref: install-tl *-repository* _url|path_82547
+Ref: install-tl *-select-repository*84358
+Ref: install-tl *-all-options*84794
+Ref: install-tl *-custom-bin* _path_85101
+Ref: install-tl *-debug-translation*85756
+Ref: install-tl *-force-platform* _platform_85975
+Ref: install-tl *-help*, *--help*, *-?*86219
+Ref: install-tl *-in-place*86612
+Ref: install-tl *-logfile* _file_87139
+Ref: install-tl *-no-cls*87490
+Ref: install-tl *-non-admin*87621
+Ref: install-tl *--persistent-downloads*87726
+Ref: install-tl *--no-persistent-downloads*87754
+Ref: install-tl *-portable*88362
+Ref: install-tl *-print-platform*88501
+Ref: install-tl *-profile* _profile_88694
+Ref: install-tl *-q*90188
+Ref: install-tl *-scheme* _scheme_90250
+Ref: install-tl *-v*90724
+Ref: install-tl *-version*, *--version*90885
+Node: install-tl ENVIRONMENT VARIABLES91016
+Ref: install-tl TEXLIVE_INSTALL_ENV_NOCHECK91405
+Ref: install-tl TEXLIVE_INSTALL_NO_CONTEXT_CACHE91607
+Ref: install-tl TEXLIVE_INSTALL_PREFIX91713
+Ref: install-tl TEXLIVE_INSTALL_TEXMFCONFIG91744
+Ref: install-tl TEXLIVE_INSTALL_TEXMFHOME91773
+Ref: install-tl TEXLIVE_INSTALL_TEXMFLOCAL91803
+Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSCONFIG91837
+Ref: install-tl TEXLIVE_INSTALL_TEXMFSYSVAR91868
+Ref: install-tl TEXLIVE_INSTALL_TEXMFVAR91896
+Ref: install-tl NOPERLDOC91951
+Node: install-tl AUTHORS AND COPYRIGHT92015
+Node: tlmgr92373
+Node: tlmgr NAME92810
+Node: tlmgr SYNOPSIS92935
+Node: tlmgr DESCRIPTION93125
+Node: tlmgr EXAMPLES94221
+Ref: tlmgr tlmgr option repository http://mirror.ctan.org/systems/texlive/tlnet94512
+Ref: tlmgr tlmgr update --list94693
+Ref: tlmgr tlmgr update --all94786
+Ref: tlmgr tlmgr info _pkg_94942
+Node: tlmgr OPTIONS95148
+Ref: tlmgr *--repository* _url|path_95668
+Ref: tlmgr *--gui* [_action_]96393
+Ref: tlmgr *--gui-lang* _llcode_96800
+Ref: tlmgr *--debug-translation*97483
+Ref: tlmgr *--machine-readable*97686
+Ref: tlmgr *--no-execute-actions*97954
+Ref: tlmgr *--package-logfile* _file_98147
+Ref: tlmgr *--pause*98402
+Ref: tlmgr *--persistent-downloads*98557
+Ref: tlmgr *--no-persistent-downloads*98585
+Ref: tlmgr *--pin-file*99079
+Ref: tlmgr *--usermode*99297
+Ref: tlmgr *--usertree* _dir_99417
+Node: tlmgr ACTIONS99967
+Node: tlmgr help101199
+Node: tlmgr version101675
+Node: tlmgr backup [--clean[=_N_]] [--backupdir _dir_] [--all | _pkg_]...101993
+Ref: tlmgr *--backupdir* _directory_103087
+Ref: tlmgr *--all*103284
+Ref: tlmgr *--clean*[=_N_]103506
+Ref: tlmgr *--dry-run*103803
+Node: tlmgr candidates _pkg_103923
+Ref: tlmgr *candidates _pkg_* 1104210
+Node: tlmgr check [_option_]... [files|depends|executes|runfiles|all]104354
+Ref: tlmgr *files*104797
+Ref: tlmgr *depends*104932
+Ref: tlmgr *executes*105274
+Ref: tlmgr *runfiles*105392
+Ref: tlmgr *--use-svn*105504
+Node: tlmgr conf [texmf|tlmgr|updmap [--conffile _file_] [--delete] [_key_ [_value_]]]105621
+Node: tlmgr dump-tlpdb [--local|--remote]107693
+Ref: tlmgr *--local*108203
+Ref: tlmgr *--remote*108242
+Node: tlmgr generate [_option_]... _what_108664
+Ref: tlmgr *generate language*108905
+Ref: tlmgr *generate language.dat*108930
+Ref: tlmgr *generate language.def*108955
+Ref: tlmgr *generate language.dat.lua*108984
+Ref: tlmgr *generate fmtutil*109004
+Ref: tlmgr *--dest* _output_file_111241
+Ref: tlmgr *--localcfg* _local_conf_file_111817
+Ref: tlmgr *--rebuild-sys*111940
+Node: tlmgr gui112801
+Node: tlmgr info [_option_...] [collections|schemes|_pkg_...]113045
+Ref: tlmgr *--list*114250
+Ref: tlmgr *--only-installed*114529
+Ref: tlmgr *--taxonomy*114744
+Ref: tlmgr *--keyword*114756
+Ref: tlmgr *--functionality*114774
+Ref: tlmgr *--characterization*114795
+Node: tlmgr init-usertree115008
+Node: tlmgr install [_option_]... _pkg_...115434
+Ref: tlmgr *--file*115798
+Ref: tlmgr *--reinstall*116024
+Ref: tlmgr *--no-depends*116404
+Ref: tlmgr *--no-depends-at-all*116563
+Ref: tlmgr *--dry-run* 1116961
+Ref: tlmgr *--force*117079
+Node: tlmgr option117285
+Ref: tlmgr *option [show]*117458
+Ref: tlmgr *option showall*117476
+Ref: tlmgr *option _key_ [_value_]*117502
+Node: tlmgr paper121350
+Ref: tlmgr *paper [a4|letter]*121535
+Ref: tlmgr *[xdvi|pdftex|dvips|dvipdfmx|context|psutils] paper [_papersize_|--list]*121609
+Node: tlmgr path [--w32mode=user|admin] [add|remove]122636
+Node: tlmgr pinning124119
+Ref: tlmgr pinning show124426
+Ref: tlmgr pinning add _repo_ _pkgglob_...124499
+Ref: tlmgr pinning remove _repo_ _pkgglob_...124618
+Ref: tlmgr pinning remove _repo_ --all124771
+Node: tlmgr platform list|add|remove _platform_...124825
+Node: tlmgr platform set _platform_125073
+Node: tlmgr platform set auto125301
+Ref: tlmgr *--dry-run* 2126418
+Node: tlmgr postaction [--w32mode=user|admin] [--fileassocmode=1|2] [--all] [install|remove] [shortcut|fileassoc|script] [_pkg_]...126527
+Node: tlmgr print-platform127829
+Node: tlmgr restore [--backupdir _dir_] [--all | _pkg_ [_rev_]]128301
+Ref: tlmgr *--all* 1129197
+Ref: tlmgr *--backupdir* _directory_ 1129391
+Ref: tlmgr *--dry-run* 3129547
+Ref: tlmgr *--force* 1129664
+Node: tlmgr remove [_option_]... _pkg_...129692
+Ref: tlmgr *--no-depends* 1130215
+Ref: tlmgr *--no-depends-at-all* 1130277
+Ref: tlmgr *--force* 2130333
+Ref: tlmgr *--dry-run* 4130805
+Node: tlmgr repository130912
+Ref: tlmgr *repository list*131120
+Ref: tlmgr *repository list _path|tag_*131150
+Ref: tlmgr *repository add _path_ [_tag_]*131183
+Ref: tlmgr *repository remove _path|tag_*131215
+Ref: tlmgr *repository set _path_[#_tag_] [_path_[#_tag_] ...]*131269
+Node: tlmgr search [_option_...] _what_132353
+Node: tlmgr search [_option_...] --file _what_132864
+Node: tlmgr search [_option_...] --taxonomy _what_133115
+Node: tlmgr search [_option_...] --keyword _what_133426
+Node: tlmgr search [_option_...] --functionality _what_133744
+Node: tlmgr search [_option_...] --characterization _what_134082
+Node: tlmgr search [_option_...] --all _what_134422
+Ref: tlmgr *--global*134870
+Ref: tlmgr *--word*134982
+Ref: tlmgr *--list* 1135221
+Ref: tlmgr *--file* 1135567
+Ref: tlmgr *--taxonomy* 1135624
+Ref: tlmgr *--keyword* 1135636
+Ref: tlmgr *--functionality* 1135654
+Ref: tlmgr *--characterization* 1135675
+Ref: tlmgr *--all* 2135830
+Node: tlmgr uninstall135913
+Ref: tlmgr *--force* 3136167
+Node: tlmgr update [_option_]... [_pkg_]...136223
+Ref: tlmgr *--all* 3136594
+Ref: tlmgr *--self*138335
+Ref: tlmgr *--dry-run* 5139099
+Ref: tlmgr *--list* [_pkg_]139276
+Ref: tlmgr *--exclude* _pkg_139965
+Ref: tlmgr *--no-auto-remove* [_pkg_]...140658
+Ref: tlmgr *--no-auto-install* [_pkg_]...141109
+Ref: tlmgr *--reinstall-forcibly-removed*141765
+Ref: tlmgr *--backup* and *--backupdir* _directory_142329
+Ref: tlmgr *--no-depends* 2143510
+Ref: tlmgr *--no-depends-at-all* 2143713
+Ref: tlmgr *--force* 4143769
+Node: tlmgr USER MODE144195
+Node: tlmgr user mode install147006
+Node: tlmgr user mode backup; restore; remove; update147953
+Node: tlmgr user mode generate; option; paper148395
+Node: tlmgr CONFIGURATION FILE FOR TLMGR148771
+Node: tlmgr TAXONOMIES149862
+Ref: tlmgr --keyword 2150488
+Ref: tlmgr --functionality 2150573
+Ref: tlmgr --characterization 2150729
+Ref: tlmgr --taxonomy 2150870
+Node: tlmgr MULTIPLE REPOSITORIES151411
+Node: tlmgr Pinning153132
+Node: tlmgr GUI FOR TLMGR155107
+Node: tlmgr Main display156329
+Node: tlmgr Display configuration area156581
+Ref: tlmgr Status156942
+Ref: tlmgr Category157106
+Ref: tlmgr Match157292
+Ref: tlmgr Selection157552
+Ref: tlmgr Display configuration buttons157756
+Node: tlmgr Package list area157939
+Ref: tlmgr a checkbox158523
+Ref: tlmgr package name158659
+Ref: tlmgr local revision (and version)158758
+Ref: tlmgr remote revision (and version)159133
+Ref: tlmgr short description159430
+Node: tlmgr Main display action buttons159475
+Ref: tlmgr Update all installed159741
+Ref: tlmgr Update160113
+Ref: tlmgr Install160163
+Ref: tlmgr Remove160349
+Ref: tlmgr Backup160527
+Node: tlmgr Menu bar160684
+Ref: tlmgr tlmgr menu160881
+Ref: tlmgr Options menu161189
+Ref: tlmgr Actions menu162272
+Ref: tlmgr Help menu162700
+Node: tlmgr MACHINE-READABLE OUTPUT162833
+Node: tlmgr Machine-readable update and install output163643
+Ref: tlmgr location-url _location_164919
+Ref: tlmgr total-bytes _count_165135
+Ref: tlmgr _pkgname_165545
+Ref: tlmgr _status_165755
+Ref: tlmgr d165833
+Ref: tlmgr f165893
+Ref: tlmgr u166072
+Ref: tlmgr r166118
+Ref: tlmgr a166241
+Ref: tlmgr i166419
+Ref: tlmgr I166538
+Ref: tlmgr _localrev_166640
+Ref: tlmgr _serverrev_166747
+Ref: tlmgr _size_166859
+Ref: tlmgr _runtime_167028
+Ref: tlmgr _esttot_167098
+Node: tlmgr Machine-readable option output167131
+Node: tlmgr AUTHORS AND COPYRIGHT167643
+Node: Index167990

End Tag Table
diff --git a/Build/source/doc/tlbuild.texi b/Build/source/doc/tlbuild.texi
index ea5c854460e..8aa305f8267 100644
--- a/Build/source/doc/tlbuild.texi
+++ b/Build/source/doc/tlbuild.texi
@@ -2,7 +2,7 @@
@setfilename tlbuild.info
@set version 2016
-@set month-year February 2016
+@set month-year April 2016
@set mytitle Building @TeX{} Live (@value{version})
@settitle @value{mytitle}
@@ -238,7 +238,11 @@ that are not installed by default.
@item xetex
@cindex @code{fontconfig} library, required by @code{xetex}
-requires @file{fontconfig} (again both headers and library).
+@cindex @code{ApplicationServices} Mac framework, required by @code{xetex}
+@cindex @code{Cocoa} Mac framework, required by @code{xetex}
+requires @file{fontconfig} (again both headers and library), or, for
+MacOSX only, the @code{ApplicationServices} and @code{Cocoa}
+frameworks.
@item xindy
@cindex @code{clisp}, required by @code{xindy}
@@ -289,13 +293,13 @@ do a normal build.
The top-level @file{Build} script is intended to simplify building the
binaries distributed with @TL{} itself---we call this the ``native''
TL build. It configures and makes everything in a subdirectory of the
-main build tree (default @file{Work/}), installs everything in an
-other subdirectory (default @file{inst/}), and finally runs @code{make
+main build tree (default @file{Work/}), installs everything in another
+subdirectory (default @file{inst/}), and finally runs @code{make
check}. The exact directory and command names can be specified via
environment variables and a few leading options. All remaining
arguments (assignments or options) are passed to the @file{configure}
-script. Please take a look at the script itself for more information;
-it is not complicated.
+script. Please take a look at the @file{./Build} source file itself
+for more information; it is a straightforward shell script.
@cindex source directory building, not supported
@cindex build directory, required
@@ -404,7 +408,7 @@ system, since all the support files are lacking; @pxref{Installing}.
@cindex build one package
@cindex one package, building
-@vindex --disable-all-packages configure @r{option}
+@vindex --disable-all-packages
@cindex build on demand
To build one package, the basic idea is to use the @code{configure}
option @code{--disable-all-pkgs} (@pxref{@code{--disable-all-pkgs}}).
@@ -413,9 +417,9 @@ However, the @file{Makefile}s still contain all build rules and
dependencies and can be invoked to build an individual program or
library and causes to first build any required libraries.
-This ``build-on-demand'' procedure is used, e.g., in the @code{luatex}
-repository to build Lua@TeX{}, essentially from a subset of the
-complete @TL{} tree. Similarly, when, e.g., building the original
+This ``build-on-demand'' procedure is used, e.g., in the upstream
+Lua@TeX{} repository to build Lua@TeX{}, essentially from a subset of
+the complete @TL{} tree. Similarly, when, e.g., building the original
e-@TeX{} has been disabled (as it is by default), one can run
@code{make etex} (or @code{make etex.exe}) in @file{texk/web2c/} to
build e-@TeX{} (although there is no comparably simple way to install
@@ -472,6 +476,28 @@ For an example, see the @code{build-pdftex.sh} script in the
@code{pdftex} development sources (@url{http://pdftex.org}), which are
indeed a cut-down TL source tree.
+@vindex --enable-missing @r{to ignore dependencies}
+Caveat 1: even with @code{--disable-all-pkgs}, dependencies will be
+checked. For instance, if a non-MacOSX system does not have
+@code{fontconfig}, Xe@TeX{} cannot be built (@pxref{Prerequisites})
+and @code{configure} will terminate. To proceed without such
+dependencies, specify @code{--enable-missing} also. (Arguably this
+should happen automatically.)
+
+@vindex CC=@var{c-compiler}
+@vindex CXX=@var{c++-compiler}
+@vindex OBJCXX=@var{objc-compiler}
+@cindex ICU, prefers @code{clang} compilers
+@cindex @code{clang} compilers, preferred by ICU
+Caveat 2: unless @code{CC} and @code{CXX} and @code{OBJCXX} are
+explicitly specified, each package will configure its own compiler(s).
+In practice, this results in a conflict in only one instance: the ICU
+(@file{libs/icu}) library will prefer @code{clang} and @code{clang++}
+over all others if they are installed, whereas everything else prefers
+@code{gcc} and @code{g++}. Usually the results will be interoperable,
+but it can cause extra confusion and problems when debugging a program
+that uses ICU.
+
@node Installing
@chapter Installing
@@ -727,7 +753,7 @@ Currently the versions we use are:
@end display
@pindex reautoconf
-@vindex --enable-maintainer-mode configure @r{option}
+@vindex --enable-maintainer-mode
These versions should be used to update the generated files (e.g.,
@file{configure} or @file{Makefile.in}) in all or parts of the TL tree
after their dependencies have been changed. This can be done
@@ -929,7 +955,7 @@ or @code{kpse_cv_visibility_cxxflags} variable.
@defmac KPSE_CXX_HACK
@cindex static linking for C++
@cindex linking C++ libraries statically
-@vindex --enable-cxx-runtime-hack configure @r{option}
+@vindex --enable-cxx-runtime-hack
@pindex libstc++@r{, statically linking}
Provide the configure option @code{--enable-cxx-runtime-hack}. If
enabled and when using @code{g++}, try to statically link with