annotate kpathsea/INSTALL @ 3830:77a11ed451d4

[project @ 2001-05-02 19:37:48 by jwe]
author jwe
date Wed, 02 May 2001 19:37:48 +0000
parents 6929a31e7624
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
1 Contents:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
2
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
3 Installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
4 Simple installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
5 Custom installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
6 Disk space
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
7 Kpathsea application distributions
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
8 Changing search paths
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
9 Default path features
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
10 Default path generation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
11 Running `configure'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
12 `configure' shells
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
13 `configure' options
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
14 `configure' environment
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
15 `configure' scenarios
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
16 Shared library
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
17 Running `make'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
18 Installing files
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
19 Cleaning up
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
20 Filename database generation
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
21 `mktex' scripts
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
22 `mktex' configuration
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
23 `mktex' script names
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
24 `mktex' script arguments
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
25 Installation testing
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
26 Security
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
27
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
28
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
29 Installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
30 ************
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
31
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
32 The procedure for Kpathsea (and Web2c, etc.) configuration and
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
33 installation follows. If you encounter trouble, see *Note Common
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
34 problems::, a copy of which is in the file `kpathsea/BUGS'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
35
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
36 Simple installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
37 ===================
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
38
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
39 Installing TeX and friends for the first time can be a daunting
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
40 experience. Thus, you may prefer to skip this whole thing and just get
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
41 precompiled executables: see *Note unixtex.ftp::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
42
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
43 This section explains what to do if you wish to take the defaults for
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
44 everything, and generally to install in the simplest possible way. Most
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
45 steps here refer to corresponding subsection in the next section which
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
46 explains how to override defaults and generally gives more details.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
47
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
48 By default everything will be installed under `/usr/local' and the
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
49 following discussion assumes this. However, if you already have TeX
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
50 installed, its location is used to derive the directory under which
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
51 everything is to be installed.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
52
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
53 1. Be sure you have enough disk space: approximately 8 megabytes for
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
54 the compressed archives, 15MB for sources, 45MB for compilation,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
55 40MB for the (initial) installed system (including library files).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
56 *Note Disk space::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
57
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
58 2. Retrieve these two distribution archives:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
59 `ftp://ftp.tug.org/tex/texk.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
60 These are the sources, which you will be compiling.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
61
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
62 `ftp://ftp.tug.org/tex/texmflib.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
63 This is a basic set of input files. You should unpack it in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
64 the directory `/usr/local/share'; doing so will create a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
65 `texmf' subdirectory there.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
66
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
67 *Note Kpathsea application distributions::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
68
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
69 3. When using the default search paths, there is no need to edit any
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
70 distribution files. *Note Changing search paths::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
71
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
72 4. At the top level of the distribution, run `sh configure'. (If you
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
73 have the GNU Bash shell installed, run `bash configure'.) *Note
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
74 Running configure::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
75
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
76 5. `make'. *Note Running make::. If you are using a BSD 4.4 system
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
77 such as FreeBSD or NetBSD, use GNU make (often installed in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
78 `/usr/local/bin'), not the BSD make.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
79
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
80 If you are using a HP-UX 10 system and the native compiler,
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
81 specify the `+u' flag in `XCFLAGS'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
82
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
83 6. `make install'. *Note Installing files::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
84
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
85 7. `make distclean'. *Note Cleaning up::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
86
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
87 8. Set up a cron job to rebuild the filename database that makes
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
88 searching faster. This line will rebuild it every midnight:
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
89 0 0 * * * cd /usr/local/share/texmf && /BINDIR/mktexlsr
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
90 *Note Filename database generation::, and *Note Filename
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
91 database::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
92
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
93 9. If you're installing Dvips, you also need to set up configuration
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
94 files for your printers and make any additional PostScript fonts
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
95 available. *Note Installation: (dvips)Installation. If you have
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
96 any color printers, see *Note Color device configuration:
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
97 (dvips)Color device configuration.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
98
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
99 10. The first time you run a DVI driver, a bunch of PK fonts will be
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
100 built by Metafont via `mktexpk' (and added to the filename
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
101 database). This will take some time. Don't be alarmed; they will
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
102 created only this first time (unless something is wrong with your
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
103 path definitions).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
104
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
105 By default, `mktexpk' will create these fonts in a hierarchy under
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
106 `/var/tmp/texfonts'; it simply assumes that `/var/tmp' exists and
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
107 is globally writable. If you need a different arrangement, see
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
108 *Note mktex configuration::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
109
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
110 *Note mktex scripts::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
111
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
112 11. For some simple tests, try `tex story \\bye' and `latex sample2e'.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
113 Then run `xdvi story' or `dvips sample2e' on the resulting DVI
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
114 files to preview/print the documents. *Note Installation
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
115 testing::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
116
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
117 Custom installation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
118 ===================
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
119
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
120 Most sites need to modify the default installation procedure in some
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
121 way, perhaps merely changing the prefix from `/usr/local', perhaps
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
122 adding extra compiler or loader options to work around `configure'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
123 bugs. This section explains how to override default choices. For
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
124 additional distribution-specific information:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
125 * `dviljk/INSTALL'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
126
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
127 * *Note Installation: (dvips)Installation.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
128
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
129 * *Note Installation: (web2c)Installation.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
130
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
131 * `xdvik/INSTALL'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
132
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
133 These instructions are for Unix systems. Other operating-system
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
134 specific distributions have their own instructions. The code base
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
135 itself supports Amiga, DOS, OS/2, and VMS.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
136
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
137 Following are the same steps as in the previous section (which
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
138 describes the simplest installation), but with much more detail.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
139
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
140 Disk space
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
141 ----------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
142
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
143 Here is a table showing the disk space needed for each distribution
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
144 (described in the next section). The `(totals)' line reflects the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
145 `texk' source distribution and `texmflib'; the individual distributions
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
146 don't enter into it. Sizes are in megabytes. All numbers are
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
147 approximate.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
148
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
149 Distribution .tar.gz Unpacked Compiled Installed
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
150 dviljk .9 3.8
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
151 dvipsk .9 3.2
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
152 xdvik .7 2.5
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
153 web2c 1.3 5.0
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
154 web 1.9 6.5 - -
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
155 texk 3.8 14.1 43.1 23.5
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
156 texmflib 3.8 15.0 - 15.0
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
157 (totals) 7.6 29.1 43.1 38.5
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
158
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
159 Kpathsea application distributions
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
160 ----------------------------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
161
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
162 The archive `ftp://ftp.tug.org/tex/texk.tar.gz' contains all of the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
163 Kpathsea applications I maintain, and the library itself. For example,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
164 since NeXT does not generally support X11, you'd probably want to skip
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
165 `xdvik' (or simply remove it after unpacking `texk.tar.gz'. If you are
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
166 not interested in all of them, you can also retrieve them separately:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
167
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
168 `dviljk.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
169 DVI to PCL, for LaserJet printers.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
170
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
171 `dvipsk.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
172 DVI to PostScript, for previewers, printers, or PDF generation.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
173
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
174 `web2c.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
175 The software needed to compile TeX and friends.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
176
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
177 `web.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
178 The original WEB source files, also used in compilation.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
179
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
180 `xdvik.tar.gz'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
181 DVI previewing under the X window system.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
182
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
183 If you want to use the Babel LaTeX package for support of non-English
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
184 typesetting, you may need to retrieve additional files. See the file
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
185 `install.txt' in the Babel distribution.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
186
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
187 Changing search paths
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
188 ---------------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
189
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
190 If the search paths for your installation differ from the standard
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
191 TeX directory structure (*note Introduction: (tds)Top.), edit the file
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
192 `kpathsea/texmf.in' as desired, before running `configure'. For
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
193 example, if you have all your fonts or macros in one big directory.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
194
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
195 You may also wish to edit the file `mktex.cnf', either before or
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
196 after installation, to control various aspects of `mktexpk' and
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
197 friends. *Note mktex configuration::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
198
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
199 You do not need to edit `texmf.in' to change the default top-level or
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
200 other installation *directories* (only the paths). You can and should
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
201 do that when you run `configure' (next step).
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
202
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
203 You also do not need to edit `texmf.in' if you are willing to rely on
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
204 `texmf.cnf' at runtime to define the paths, and let the compile-time
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
205 default paths be incorrect. Usually there is no harm in doing this.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
206
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
207 The section below explains default generation in more detail.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
208
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
209 Default path features
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
210 .....................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
211
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
212 The purpose of having all the different files described in the section
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
213 above is to avoid having the same information in more than one place. If
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
214 you change the installation directories or top-level prefix at
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
215 `configure'-time, those changes will propagate through the whole
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
216 sequence. And if you change the default paths in `texmf.in', those
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
217 changes are propagated to the compile-time defaults.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
218
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
219 The Make definitions are all repeated in several Makefile's; but
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
220 changing the top-level `Makefile' should suffice, as it passes down all
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
221 the variable definitions, thus overriding the submakes. (The
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
222 definitions are repeated so you can run Make in the subdirectories, if
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
223 you should have occasion to.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
224
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
225 By default, the bitmap font paths end with `/$MAKETEX_MODE', thus
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
226 including the device name (usually a Metafont mode name such as
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
227 `ljfour'). This distinguishes two different devices with the same
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
228 resolution--a write/white from a write/black 300dpi printer, for
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
229 example.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
230
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
231 However, since most sites don't have this complication, Kpathsea
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
232 (specifically, the `kpse_init_prog' function in `kpathsea/proginit.c')
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
233 has a special case: if the mode has not been explicitly set by the user
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
234 (or in a configuration file), it sets `MAKETEX_MODE' to `/'. This
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
235 makes the default PK path, for example, expand into `.../pk//', so
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
236 fonts will be found even if there is no subdirectory for the mode (if
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
237 you arranged things that way because your site has only one printer,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
238 for example) or if the program is mode-independent (e.g., `pktype').
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
239
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
240 To make the paths independent of the mode, simply edit `texmf.in'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
241 before installation, or the installed `texmf.cnf', and remove the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
242 `$MAKETEX_MODE'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
243
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
244 *Note mktex script arguments::, for how this interacts with `mktexpk'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
245
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
246 *Note TeX directory structure: TeX directory structure, for a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
247 description of the default arrangement of the input files that comprise
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
248 the TeX system. The file `kpathsea/HIER' is a copy of that section.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
249
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
250 Default path generation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
251 .......................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
252
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
253 This section describes how the default paths are constructed.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
254
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
255 You may wish to ignore the whole mess and simply edit `texmf.cnf'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
256 after it is installed, perhaps even copying it into place beforehand so
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
257 you can complete the installation, if it seems necessary.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
258
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
259 To summarize the chain of events that go into defining the default
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
260 paths:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
261
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
262 1. `configure' creates a `Makefile' from each `Makefile.in'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
263
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
264 2. When Make runs in the `kpathsea' directory, it creates a file
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
265 `texmf.sed' that substitutes the Make value of `$(var)' for a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
266 string `@var@'. The variables in question are the one that define
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
267 the installation directories.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
268
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
269 3. `texmf.sed' (together with a little extra magic--see
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
270 `kpathsea/Makefile') is applied to `texmf.in' to generate
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
271 `texmf.cnf'. This is the file that will eventually be installed
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
272 and used.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
273
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
274 4. The definitions in `texmf.cnf' are recast as C `#define''s in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
275 `paths.h'. These values will be the compile-time defaults; they
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
276 are not used at runtime unless no `texmf.cnf' file can be found.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
277
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
278 (That's a lie: the compile-time defaults are what any extra :'s in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
279 `texmf.cnf' expand into; but the paths as distributed have no extra
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
280 :'s, and there's no particular reason for them to.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
281
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
282 Running `configure'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
283 -------------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
284
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
285 Run `sh configure OPTIONS' (in the top-level directory, the one
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
286 containing `kpathsea/'), possibly using a shell other than `sh' (*note
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
287 configure shells::.).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
288
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
289 `configure' adapts the source distribution to the present system via
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
290 `#define''s in `*/c-auto.h', which are created from the corresponding
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
291 `c-auto.in'. It also creates a `Makefile' from the corresponding
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
292 `Makefile.in', doing `@VAR@' and `ac_include' substitutions).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
293
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
294 `configure' is the best place to control the configuration,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
295 compilation, and installed location of the software, either via
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
296 command-line options, or by setting environment variables before
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
297 invoking it. For example, you can disable `mktexpk' by default with
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
298 the option `--disable-mktexpk'. *Note configure options::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
299
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
300 `configure' shells
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
301 ..................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
302
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
303 If you have Bash, the GNU shell, use it if `sh' runs into trouble
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
304 (*note Top: (features)Top.).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
305
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
306 Most Bourne shell variants other than Bash cannot handle `configure'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
307 scripts as generated by GNU Autoconf (*note Introduction:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
308 (autoconf)Top.). Specifically:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
309 `ksh'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
310 The Korn shell may be installed as `/bin/sh' on AIX. `/bin/bsh'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
311 may serve instead.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
312
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
313 `ash'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
314 Ash is sometimes installed as `/bin/sh' on NetBSD, FreeBSD, and
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
315 Linux systems. `/bin/bash' should be available.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
316
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
317 `Ultrix /bin/sh'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
318 `/bin/sh' under Ultrix is a DEC-grown shell that is notably
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
319 deficient in many ways. `/bin/sh5' may be necessary.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
320
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
321 `configure' options
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
322 ...................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
323
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
324 For a complete list of all `configure' options, run `configure
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
325 --help' or see *Note Running `configure' scripts: (autoconf)Invoking
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
326 configure, (a copy is in the file `kpathsea/README.CONFIGURE'). The
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
327 generic options are listed first in the `--help' output, and the
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
328 package-specific options come last. The environment variables
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
329 `configure' pays attention to are listed below.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
330
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
331 Options particularly likely to be useful are `--prefix', `--datadir',
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
332 and the like; see *Note configure scenarios::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
333
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
334 This section gives pointers to descriptions of the `--with' and
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
335 `--enable' options to `configure' that Kpathsea-using programs accept.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
336
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
337 `--without-mktexmf-default'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
338 `--without-mktexpk-default'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
339 `--without-mktextfm-default'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
340 `--with-mktextex-default'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
341 Enable or disable the dynamic generation programs. *Note mktex
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
342 configuration::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
343
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
344 `--enable-shared'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
345 Build Kpathsea as a shared library, and link against it. Also
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
346 build the usual static library. *Note Shared library::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
347
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
348 `--disable-static'
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
349 Build only the shared library. Implies `--enable-shared'.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
350
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
351 `--enable-maintainer-mode'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
352 Enables make targets that are useful for the maintainer and likely
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
353 to be a pain for anyone else; the makefiles created when this
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
354 option is enabled may not work at all for you. You have been
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
355 warned.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
356
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
357 `configure' environment
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
358 .......................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
359
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
360 `configure' uses the value of the following environment variables in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
361 determining your system's characteristics, and substitutes for them in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
362 Makefile's:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
363
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
364 `CC'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
365 The compiler to use: default is `gcc' if it's installed, otherwise
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
366 `cc'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
367
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
368 `CFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
369 Options to give the compiler: default is `-g -O2' for `gcc', `-g'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
370 otherwise. `CFLAGS' comes after any other options. You may need
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
371 to include `-w' here if your compilations commonly have useless
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
372 warnings (e.g., `NULL redefined'), or `configure' may fail to
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
373 detect the presence of header files (it takes the messages on
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
374 standard error to mean the header file doesn't exist).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
375
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
376 `CPPFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
377 Options to pass to the compiler preprocessor; this matters most for
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
378 configuration, not the actual source compilation. The `configure'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
379 script often does only preprocessing (e.g., to check for the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
380 existence of #include files), and `CFLAGS' is not used for this.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
381 You may need to set this to something like
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
382 `-I/usr/local/include/wwwhatever' if you have the libwww library
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
383 installed for hyper-xdvik (see `xdvik/INSTALL').
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
384
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
385 `DEFS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
386 Additional preprocessor options, but not used by `configure'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
387 Provided for enabling or disabling program features, as documented
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
388 in the various program-specific installation instructions. `DEFS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
389 comes before any compiler options included by the distribution
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
390 `Makefile's or by `configure'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
391
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
392 `LDFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
393 Additional options to give to the loader. `LDFLAGS' comes before
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
394 any other linker options.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
395
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
396 `LIBS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
397 Additional libraries to link with.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
398
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
399 `configure' scenarios
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
400 .....................
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
401
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
402 Here are some common installation scenarios:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
403
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
404 * Including X support in Metafont. This is disabled by default,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
405 since many sites have no use for it, and it's a leading cause of
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
406 configuration problems.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
407 configure --with-x-toolkit
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
408
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
409 * Putting the binaries, TeX files, GNU info files, etc. into a single
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
410 TeX hierarchy, say `/texmf', requires overriding defaults in both
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
411 `configure' and `make':
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
412 configure --prefix=`/texmf' --datadir=`/texmf'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
413 make texmf=`/texmf'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
414
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
415 * You can compile on multiple architectures simultaneously either by
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
416 building symbolic link trees with the `lndir' script from the X11
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
417 distribution, or with the `--srcdir' option:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
418 configure --srcdir=SRCDIR
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
419
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
420 * If you are installing binaries for multiple architectures into a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
421 single hierarchy, you will probably want to override the default
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
422 `bin' and `lib' directories, something like this:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
423 configure --prefix=TEXMF --datadir=TEXMF \
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
424 --bindir=TEXMF/ARCH/bin --libdir=TEXMF/ARCH/lib
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
425 make texmf=TEXMF
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
426 (Unless you make provisions for architecture-specific files in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
427 other ways, e.g., with Depot or an automounter.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
428
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
429 * To compile with optimization (to compile without debugging, remove
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
430 the `-g'):
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
431 env CFLAGS="-g -O" sh configure ...
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
432 For a potential problem if you optimize, see *Note TeX or
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
433 Metafont failing: TeX or Metafont failing.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
434
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
435 Shared library
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
436 ..............
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
437
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
438 You can compile Kpathsea as a shared library on a few systems, by
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
439 specifying the option `--enable-shared' when you run `configure'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
440
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
441 The main advantage in doing this is that the executables can then
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
442 share the code, thus decreasing memory and disk space requirements.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
443
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
444 On some systems, you can record the location of shared libraries in a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
445 binary, usually by giving certain options to the linker. Then
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
446 individual users do not need to set their system's environment variable
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
447 (e.g., `LD_LIBRARY_PATH') to find shared libraries. If you want to do
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
448 this, you will need to add the necessary options to `LDFLAGS' yourself;
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
449 for example, on Solaris, include something like `-R${prefix}/lib', on
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
450 IRIX or Linux, use `-rpath${prefix}/lib'. (Unfortunately, making this
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
451 happen by default is very difficult, because of interactions with an
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
452 existing installed shared library.)
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
453
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
454 Currently, shared library support is implemented only on Linux, SunOS
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
455 4 (Solaris 1), SunOS 5 (Solaris 2), IRIX 5, and IRIX 6. If you're
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
456 interested and willing in adding support for other systems, please see
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
457 the `configure' mode in the `klibtool' script, especially the
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
458 host-specific case statement around line 250.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
459
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
460 Running `make'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
461 --------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
462
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
463 `make' (still in the top-level directory). This also creates the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
464 `texmf.cnf' and `paths.h' files that define the default search paths,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
465 and (by default) the `plain' and `latex' TeX formats.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
466
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
467 You can override directory names and other values at `make'-time.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
468 `make/paths.make' lists the variables most commonly reset. For
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
469 example, `make default_texsizes=600' changes the list of fallback
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
470 resolutions.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
471
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
472 You can also override each of `configure''s environment variables
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
473 (*note configure environment::.). The Make variables have the same
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
474 names.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
475
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
476 Finally, you can supply additional options via the following
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
477 variables. (`configure' does not use these.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
478
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
479 `XCPPFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
480 `XDEFS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
481 Preprocessor options.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
482
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
483 `XCFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
484 Compiler options.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
485
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
486 `XLDFLAGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
487 Loader options (included at beginning of link commands).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
488
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
489 `XLOADLIBES'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
490 More loader options (included at end of link commands).
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
491
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
492 `XMAKEARGS'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
493 Additional Make arguments passed to all sub-`make''s. You may need
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
494 to include assignments to the other variables here via `XMAKEARGS';
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
495 for example: `make XMAKEARGS="CFLAGS=-O XDEFS=-DA4"'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
496
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
497 It's generally a bad idea to use a different compiler (`CC') or
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
498 libraries (`LIBS') for compilation than you did for configuration,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
499 since the values `configure' determined may then be incorrect.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
500
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
501 Adding compiler options to change the "universe" you are using
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
502 (typically BSD vs. system V) is generally a cause of trouble. It's
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
503 best to use the native environment, whatever that is; `configure' and
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
504 the software usually adapt best to that. In particular, under Solaris
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
505 2.x, you should not use the BSD-compatibility library (`libucb') or
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
506 include files (`ucbinclude').
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
507
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
508 If you want to use the Babel LaTeX package for support of non-English
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
509 typesetting, you need to modify some files before making the LaTeX
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
510 format. See the file `install.txt' in the Babel distribution.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
511
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
512 Installing files
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
513 ----------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
514
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
515 The basic command is the usual `make install'. For security issues,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
516 *note Security::..
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
517
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
518 The first time you install any manual in the GNU Info system, you
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
519 should add a line (you choose where) to the file `dir' in your
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
520 `$(infodir)' directory. Sample text for this is given near the top of
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
521 the Texinfo source files (`kpathsea/kpathsea.texi',
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
522 `dvipsk/dvips.texi', and `web2c/doc/web2c.texi'). If you have a recent
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
523 version of the GNU Texinfo distribution installed
3285
6929a31e7624 [project @ 1999-10-13 21:59:11 by jwe]
jwe
parents: 3172
diff changeset
524 (`ftp://ftp.gnu.org/pub/gnu/texinfo/texinfo-3.9.tar.gz' or later), this
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
525 should happen automatically.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
526
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
527 On the offchance that this is your first Info installation, the `dir'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
528 file I use is included in the distribution as `etc/dir-example'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
529
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
530 You may wish to use one of the following targets, especially if you
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
531 are installing on multiple architectures:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
532 * `make install-exec' to install in architecture-dependent
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
533 directories, i.e., ones that depend on the `$(exec_prefix)' Make
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
534 variable. This includes links to binaries, libraries, etc., not
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
535 just "executables".
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
536
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
537 * `make install-data' to install in architecture-independent
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
538 directories, such as documentation, configuration files, pool
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
539 files, etc.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
540
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
541 If you use the Andrew File System, the normal path (e.g., PREFIX/bin)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
542 only gets you to a read-only copy of the files, and you must specify a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
543 different path for installation. The best way to do this is by setting
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
544 the `prefix' variable on the `make' command line. The sequence becomes
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
545 something like this:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
546 configure --prefix=/whatever
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
547 make
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
548 make install prefix=/afs/.SYSTEM.NAME/system/1.3/@sys/whatever
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
549 With AFS, you will definitely want to use relative filenames in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
550 `ls-R' (*note Filename database::.), not absolute filenames. This is
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
551 done by default, but check anyway.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
552
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
553 Cleaning up
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
554 -----------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
555
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
556 The basic command is `make distclean'. This removes all files created
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
557 by the build.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
558
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
559 Alternatively,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
560 * `make mostlyclean' if you intend to compile on another
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
561 architecture. For Web2C, since the generated C files are portable,
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
562 they are not removed. If the `lex' vs. `flex' situation is going
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
563 to be different on the next machine, `rm web2c/lex.yy.c'.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
564
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
565 * `make clean' to remove files created by compiling, but leave
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
566 configuration files and Makefiles.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
567
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
568 * `make maintainer-clean' to remove everything that the Makefiles can
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
569 rebuild. This is more than `distclean' removes, and you should
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
570 only use it if you are thoroughly conversant with (and have the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
571 necessary versions of) Autoconf.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
572
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
573 * `make extraclean' to remove other junk, e.g., core files, log
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
574 files, patch rejects. This is independent of the other `clean'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
575 targets.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
576
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
577 Filename database generation
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
578 ----------------------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
579
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
580 You will probably want to set up a `cron' entry on the appropriate
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
581 machine(s) to rebuild the filename database nightly or so, as in:
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
582 0 0 * * * cd TEXMF && /BINDIR/mktexlsr
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
583 *Note Filename database::.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
584
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
585 Although the `mktex...' scripts make every effort to add newly-created
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
586 files on the fly, it can't hurt to make sure you get a fresh version
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
587 every so often.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
588
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
589 `mktex' scripts
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
590 ---------------
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
591
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
592 If Kpathsea cannot otherwise find a file, for some file types it is
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
593 configured by default to invoke an external program to create it
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
594 dynamically (*note mktex configuration::.). This is most useful for
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
595 fonts (bitmaps, TFM's, and arbitrarily-sizable Metafont sources such as
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
596 the Sauter and EC fonts), since any given document can use fonts never
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
597 before referenced. Trying to build all fonts in advance is therefore
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
598 impractical, if not impossible.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
599
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
600 The script is passed the name of the file to create and possibly other
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
601 arguments, as explained below. It must echo the full pathname of the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
602 file it created (and nothing else) to standard output; it can write
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
603 diagnostics to standard error.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
604
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
605 `mktex' configuration
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
606 .....................
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
607
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
608 The following file types can run an external program to create missing
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
609 files: `pk', `tfm', `mf', `tex'; the scripts are named `mktexpk',
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
610 `mktextfm', `mktexmf', and `mktextex'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
611
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
612 In the absence of `configure' options specifying otherwise,
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
613 everything but `mktextex' will be enabled by default. The `configure'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
614 options to change the defaults are:
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
615
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
616 --without-mktexmf-default
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
617 --without-mktexpk-default
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
618 --without-mktextfm-default
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
619 --with-mktextex-default
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
620
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
621 The `configure' setting is overridden if the environment variable or
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
622 configuration file value named for the script is set; e.g., `MKTEXPK'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
623 (*note mktex script arguments::.).
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
624
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
625 As distributed, all the scripts source a file `texmf/web2c/mktex.cnf'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
626 if it exists, so you can override various defaults. See `mktex.opt',
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
627 for instance, which defines the default mode, resolution, some special
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
628 directory names, etc. If you prefer not to change the distributed
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
629 scripts, you can simply create `mktex.cnf' with the appropriate
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
630 definitions (you do not need to create it if you have nothing to put in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
631 it). `mktex.cnf' has no special syntax; it's an arbitrary Bourne shell
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
632 script. The distribution contains a sample `mktex.cnf' for you to copy
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
633 and modify as you please (it is not installed anywhere).
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
634
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
635 In addition, you can configure a number of features with the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
636 `MT_FEATURES' variable, which you can define:
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
637 * in `mktex.opt', as just mentioned;
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
638
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
639 * by editing the file `mktex.opt', either before `make install' (in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
640 the source hierarchy) or after (in the installed hierarchy);
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
641
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
642 * or in the environment.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
643
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
644 If none of the options below are enabled, `mktexpk', `mktextfm', and
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
645 `mktexmf' follow the following procedure to decide where fonts should
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
646 be installed. Find the tree where the font's sources are, and test the
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
647 permissions of the `fonts' directory of that tree to determine whether
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
648 it is writable. If it is, put the files in the tree in appropriate
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
649 locations. If it isn't writable, see whether the tree is a system tree
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
650 (named in `SYSTEXMF'). If so, the `VARTEXFONTS' tree is used. In all
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
651 other cases the working directory is used.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
652
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
653 The `appendonlydir' option is enabled by default.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
654
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
655 `appendonlydir'
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
656 Tell `mktexdir' to create directories append-only, i.e., set their
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
657 sticky bit (*note Mode Structure: (fileutils)Mode Structure.).
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
658 This feature is silently ignored on non-Unix platforms (e.g.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
659 Windows/NT and MS-DOS) which don't support similar functionality.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
660 This feature is enabled by default.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
661
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
662 `dosnames'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
663 Use 8.3 names; e.g., `dpi600/cmr10.pk' instead of `cmr10.600pk'.
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
664 Note that this feature only affects filenames that would otherwise
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
665 clash with other TeX-related filenames; `mktex' scripts do nothing
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
666 about filenames which exceed the 8+3 MS-DOS limits but remain
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
667 unique when truncated (by the OS) to these limits, and nether do
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
668 the scripts care about possible clashes with files which aren't
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
669 related with TeX. For example, `cmr10.600pk' would clash with
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
670 `cmr10.600gf' and is therefore changed when `dosnames' is in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
671 effect, but `mf.pool' and `mp.base' don't clash with any
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
672 TeX-related files and are therefore unchanged.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
673
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
674 This feature is turned on by default on MS-DOS. If you do not wish
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
675 `dosnames' to be set on an MS-DOS platform, you need to set the
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
676 `MT_FEATURES' environment variable to a value that doesn't include
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
677 `dosnames'. You can also change the default setting by editing
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
678 `mktex.opt', but only if you use the `mktex' shell scripts; the
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
679 emulation programs don't consult `mktex.opt'.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
680
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
681 `fontmaps'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
682 Instead of deriving the location of a font in the destination tree
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
683 from the location of the sources, the aliases and directory names
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
684 from the Fontname distribution are used. (*note Introduction:
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
685 (fontname)Top.).
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
686
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
687 `nomode'
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
688 Omit the directory level for the mode name; this is fine as long as
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
689 you generate fonts for only one mode.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
690
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
691 `stripsupplier'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
692 Omit the font supplier name directory level.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
693
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
694 `striptypeface'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
695 Omit the font typeface name directory level.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
696
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
697 `strip'
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
698 Omit the font supplier and typeface name directory levels. This
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
699 feature is deprecated in favour of `stripsupplier' and
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
700 `striptypeface'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
701
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
702 `varfonts'
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
703 When this option is enabled, fonts that would otherwise be written
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
704 in system texmf tree go to the `VARTEXFONTS' tree instead. The
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
705 default value in `kpathsea/Makefile.in' is `/var/tmp/texfonts'.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
706 The `Linux File System Standard' recommends `/var/tex/fonts'.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
707
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
708 The `varfonts' setting in `MT_FEATURES' is overridden by the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
709 `USE_VARTEXFONTS' environment variable: if set to `1', the feature
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
710 is enabled, and if set to `0', the feature is disabled.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
711
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
712 `mktex' script names
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
713 ....................
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
714
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
715 The following table shows the default name of the script for each
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
716 possible file types. (The source is the variable `kpse_make_specs' in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
717 `kpathsea/tex-make.c'.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
718
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
719 `mktexpk'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
720 Glyph fonts.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
721
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
722 `mktextex'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
723 TeX input files.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
724
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
725 `mktexmf'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
726 Metafont input files.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
727
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
728 `mktextfm'
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
729 TFM files.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
730
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
731 These names are overridden by an environment variable specific to the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
732 program--for example, `DVIPSMAKEPK' for Dvipsk.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
733
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
734 If a `mktex...' script fails, the invocation is appended to a file
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
735 `missfont.log' (by default) in the current directory. You can then
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
736 execute the log file to create the missing files after fixing the
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
737 problem.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
738
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
739 If the current directory is not writable and the environment variable
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
740 or configuration file value `TEXMFOUTPUT' is set, its value is used.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
741 Otherwise, nothing is written. The name `missfont.log' is overridden
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
742 by the `MISSFONT_LOG' environment variable or configuration file value.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
743
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
744 `mktex' script arguments
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
745 ........................
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
746
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
747 The first argument to a `mktex' script is always the name of the file
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
748 to be created.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
749
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
750 In the default `mktexpk' implementation, additional arguments may
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
751 also be passed:
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
752
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
753 `--dpi NUM'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
754 Sets the resolution of the generated font to NUM.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
755
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
756 `--mfmode NAME'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
757 Sets the Metafont mode to NAME.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
758
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
759 `--bdpi NUM'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
760 Sets the the "base dpi" for the font. This must match the mode
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
761 being used.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
762
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
763 `--mag STRING'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
764 A "magstep" string suitable for the Metafont `mag' variable. This
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
765 must match the combination of BDPI and DPI being used.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
766
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
767 `--destdir STRING'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
768 A directory name. If the directory is absolute, it is used as-is.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
769 Otherwise, it is appended to the root destination directory set in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
770 the script.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
771
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
772 Installation testing
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
773 --------------------
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
774
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
775 Besides the tests listed in *Note Simple installation::, you can try
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
776 running `make check'. This includes the torture tests (trip, trap, and
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
777 mptrap) that come with Web2c (*note Triptrap: (web2c)Triptrap.).
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
778
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
779 Security
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
780 ========
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
781
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
782 None of the programs in the TeX system require any special system
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
783 privileges, so there's no first-level security concern of people gaining
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
784 illegitimate root access.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
785
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
786 A TeX document, however, can write to arbitrary files, e.g.,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
787 `~/.rhosts', and thus an unwitting user who runs TeX on a random
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
788 document is vulnerable to a trojan horse attack. This loophole is
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
789 closed by default, but you can be permissive if you so desire in
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
790 `texmf.cnf'. *Note tex invocation: (web2c)tex invocation. MetaPost has
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
791 the same issue.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
792
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
793 Dvips, Xdvi, and TeX can also execute shell commands under some
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
794 circumstances. To disable this, see the `-R' option in *Note Option
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
795 details: (dvips)Option details, the xdvi man page, and *Note tex
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
796 invocation: (web2c)tex invocation, respectively.
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
797
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
798 Another security issue arises because it's very useful--almost
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
799 necessary--to make arbitrary fonts on user demand with `mktexpk' and
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
800 friends. Where do these files get installed? By default, the
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
801 `mktexpk' distributed with Kpathsea assumes a world-writable `/var/tmp'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
802 directory; this is a simple and convenient approach, but it may not
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
803 suit your situation because it means that a local cache of fonts is
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
804 created on every machine.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
805
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
806 To avoid this duplication, many people consider a shared, globally
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
807 writable font tree desirable, in spite of the potential security
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
808 problems. To do this you should change the value of `VARTEXFONTS' in
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
809 `texmf.cnf' to refer to some globally known directory. *Note mktex
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
810 configuration::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
811
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
812 The first restriction you can apply is to make newly-created
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
813 directories under `texmf' be append-only with an option in `mktex.cnf'.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
814 *Note mktex configuration::.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
815
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
816 Another approach is to establish a group (or user) for TeX files,
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
817 make the `texmf' tree writable only to that group (or user), and make
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
818 `mktexpk' et al. setgid to that group (or setuid to that user). Then
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
819 users must invoke the scripts to install things. (If you're worried
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
820 about the inevitable security holes in scripts, then you could write a
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
821 C wrapper to exec the script.)
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
822
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
823 The `mktex...' scripts install files with the same read and write
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
824 permissions as the directory they are installed in. The executable,
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
825 sgid, suid, and sticky bits are always cleared.
2999
faa5d0421460 [project @ 1997-05-23 03:02:09 by jwe]
jwe
parents:
diff changeset
826
3172
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
827 Any directories created by the `mktex...' scripts have the same
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
828 permissions as their parent directory, unless the `appendonlydir'
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
829 feature is used, in which case the sticky bit is always set.
1f0b06020e36 [project @ 1998-04-24 04:24:34 by jwe]
jwe
parents: 2999
diff changeset
830