[tlbuild] TeX Live 2017 status report from Utah

Nelson H. F. Beebe beebe at math.utah.edu
Wed Feb 8 19:44:11 CET 2017


On Saturday 4-Feb-2017, I began the first builds of TeX Live 2017 on
our growing collection of test systems (now 140+), and created a new
Web site at

	http://www.math.utah.edu/pub/texlive-utah-2017/

analogous to last year's 

	http://www.math.utah.edu/pub/texlive-utah/

[which should have included a year, but I wasn't thinking clearly
about its name, which changed in mid-year].

The first of those now records 26 builds, with many more planned.
However, about half of our test systems are on a machine whose disk
space is low, and moving them to another server with more disk space
is tedious and time consuming, and in a few cases, impossible because
of CPU model expections in the virtual O/S.

As happened last year, the two big barriers to getting a complete TeX
Live build are asymptote and clisp (needed for xindy).  Also new this
year is the foolish requirement for C++-2011 in dvisvgm.

I've had enough aggravation with asymptote and dvisvgm that I think
that we should seriously consider dropping them from future TeX Live
releases.  Both are largely written in C++, a language that has always
been a barrier to portability, with ISO Standards from 1998, 2003,
2011, and 2014, and with compilers lagging up to a decade behind.

Other popular packages that require C++ are groff, sgmls, and the R
statistical language: in each of those, I've had extensive grief from
C++ compilation issues.

It isn't just evolving C++ syntax and header files either.  The
library -lstdc++ is highly dependent on gcc compiler versions, and it
is generally impossible to mix code compiled from different versions.

That gcc-version dependency also effects clang, which is generally
bootstrapped with gcc and g++, and thus, depends on a particular gcc
version too.

To make matters worse, various components of clang are done by
different developer groups, and not properly synchronized, so some
versions of clang require additional include-file and library options
to point into version- and platform-dependent gcc installation trees.
What a mess!

Among the systems in our test lab, default gcc versions (usually
/usr/bin/cc and /usr/bin/gcc) range from 4.1.2 to 6.3.1.  On
recent Apple Mac OS X systems, and FreeBSD 10, 11, and 12, 
/usr/bin/cc is actually a version of clang, from 3.3 to 3.8.

Many of the test systems have additional, both older and newer,
versions of gcc and LLVM/clang compilers; for example, on FreeBSD 12,
/usr/local/bin/clang-devel reports version 5.0.0, and
/usr/local/bin/gcc7 is currently 7.0.1 (and updated weekly).

For reasons explained at

	http://www.math.utah.edu/pub/llvm/

LLCM/Clang will not build on many older systems, and getting them
correctly built on newer systems remains challenging because of their
abysmal packaging practices.

The xindy indexing system needs CLisp, and CLisp has had serious
portability issues in the past, and is not even distributed at all in
the binary package systems for Red Hat, CentOS, Scientific Linux,
DragonFlyBSD, FreeBSD, TrueOS, and many other less-popular O/S
distributions.

The good news is that the CLisp author and maintainer, Bruno Haible,
has taken up my portability challenge, and fixed some of the build
issues, so that I expect that newer CLisp releases should soon be
available that will allow ports to more systems.

Bruno also kindly investigated whether xindy could be retargeted at
other Common Lisp implementations, such as ecl, gcl, and sbcl, but
found that it requires some CLisp-specific interfaces, so xindy
appears to be permanently dependent on CLisp.

-------------------------------------------------------------------------------
- Nelson H. F. Beebe                    Tel: +1 801 581 5254                  -
- University of Utah                    FAX: +1 801 581 4148                  -
- Department of Mathematics, 110 LCB    Internet e-mail: beebe at math.utah.edu  -
- 155 S 1400 E RM 233                       beebe at acm.org  beebe at computer.org -
- Salt Lake City, UT 84112-0090, USA    URL: http://www.math.utah.edu/~beebe/ -
-------------------------------------------------------------------------------


More information about the tlbuild mailing list