summaryrefslogtreecommitdiff
path: root/Build/source/README
blob: 2a53f4b369919b86ee5d8ffaae966433501fda6d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
$Id$
Public domain.  Originally written 2005 by Karl Berry.

For a high-level overview of building TeX Live, see
http://tug.org/texlive/build.html.  In brief:

- To configure and make the source tree, run ./Build.
  This builds in subdirectory Work/, and installs into subdirectory inst/.

- To build (mostly) without optimization, run ./Build --debug.

- If the make fails and you want to rebuild without starting from scratch:
  cd Work/whatever/subdir && make

Email tlbuild@tug.org if problems.

(Nearly everything the Build script does can be overridden via
environment variables; just take a look to see the names.)

Many more details about the TL build system, such as configuring to work
on a single program, adding new programs or libraries, documentation
about the many pieces of the system, etc., are in the doc/tlbuild*
document and the sibling README* files here (which are generated from
that document).


Build information for some of the platforms.
See also Master/tlpkg/bin/tl-update-bindir.

aarch64-linux:
  Built on contextgarden, see below, except for asy:
  aarch64 Debian GNU/Linux 10 (buster)
  gcc (Debian 8.3.0-6) 8.3.0
  ./Build --enable-arm-neon=on

armhf-linux:
  Built on contextgarden, see below.
  Raspbian/Raspberry Pi OS (Debian Buster)
  Previously, built by Simon Dales:
  gcc version 10.2.1 20210110 (Raspbian 10.2.1-6+rpi1)
  ./Build --enable-xindy CLISP=${BUILD_ROOT_DIR}/clisp/clisp-build/clisp}
  armhf-linux binaries are created and tested on RPi;
  they run on RPi, as well as ARMv7 CPUs, but are untested on non-RPi
  ARMv6 machines.

x86_64-cygwin: gcc-10.2.0, cygwin-3.1.7
  TL_CONFIGURE_ARGS="--enable-xindy --enable-shared CLISP=/path/to/clisp.exe
    LDFLAGS='-Wl,--no-insert-timestamp -Wl,--stack,0x800000'" \
  ./Build
  
i386-freebsd, amd64-freebsd:
  Built on contextgarden, see below.
  FreeBSD 11.4

i386-linux: see travis below.

i386-netbsd, amd64-netbsd:
  NetBSD/amd64 9.2
  gcc version 7.5.0 (nb4 20200810)
    TL_MAKE=gmake CC=gcc CXX=g++ \
    CFLAGS=-D_NETBSD_SOURCE \
    CXXFLAGS='-D_NETBSD_SOURCE -std=c++11' \
    LDFLAGS='-L/usr/X11R7/lib -Wl,-rpath,/usr/X11R7/lib' \
  ./Build --enable-xindy CLISP=/usr/local/bin/clisp

i386-solaris, x86_64-solaris:
  Built on contextgarden, see below.
  Solaris 10, gcc 5.5.  See doc/README.solaris.

universal-darwin: See Master/source/mactexdoc.tar.xz.

windows:
  Makefiles written by hand, see Master/source/windows-src.tar.xz.
  Visual Studio 2010 and Visual Studio 2015.

x86_64-darwinlegacy:
  Mac OS X 10.6, clang 5.0, libc++ required
  auxiliary installer binaries: Mac OS X 10.6, gcc -std=c99.
  https://github.com/TeXLive-M/texlive-buildbot
  http://build.contextgarden.net/waterfall?tag=c/texlive
  (These links have info on all platforms built by Mojca.)

i386-linux,
x86_64-linux,
x86_64-linuxmusl:
  CentOS 7 Docker image with musl libc 1.1.5, plus gcc10:
    yum -y install centos-release-scl-rh
    yum -y install devtoolset-9-gcc-c++
    yum install -y fontconfig-devel libX11-devel libXmu-devel libXaw-devel
  Binaries are taken from the CI testing via github;
  see the source/.github/* files for details on how to build,
  and tlpkg/bin/tl-update-bindir for updating binaries (in general).