summaryrefslogtreecommitdiff
path: root/Build
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2009-12-24 19:06:53 +0000
committerKarl Berry <karl@freefriends.org>2009-12-24 19:06:53 +0000
commit5d073ea1c013de6b73c47c8d3686f72e262d3546 (patch)
tree5f4cb6362b0661a6a7dd2049e2ea109f474aaca3 /Build
parent2dc78a5f296037350461b7c662d0dd4ebf316424 (diff)
remove stale HIER, INSTALL, (sort of) update PROJECTS
git-svn-id: svn://tug.org/texlive/trunk@16502 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build')
-rw-r--r--Build/source/texk/kpathsea/ChangeLog5
-rw-r--r--Build/source/texk/kpathsea/HIER88
-rw-r--r--Build/source/texk/kpathsea/INSTALL849
-rw-r--r--Build/source/texk/kpathsea/Makefile.am2
-rw-r--r--Build/source/texk/kpathsea/Makefile.in7
-rw-r--r--Build/source/texk/kpathsea/PROJECTS2
-rw-r--r--Build/source/texk/kpathsea/doc/install.texi7
-rw-r--r--Build/source/texk/kpathsea/doc/kpathsea.info156
8 files changed, 89 insertions, 1027 deletions
diff --git a/Build/source/texk/kpathsea/ChangeLog b/Build/source/texk/kpathsea/ChangeLog
index 2092d8830bb..edaa0139d43 100644
--- a/Build/source/texk/kpathsea/ChangeLog
+++ b/Build/source/texk/kpathsea/ChangeLog
@@ -1,7 +1,8 @@
2009-12-24 Karl Berry <karl@tug.org>
- * README.CONFIGURE: remove, stale.
- * README,
+ * HIER, INSTALL, README.CONFIGURE: remove, stale.
+ * Makefile.am (EXTRA_DIST): change accordingly.
+ * README, PROJECTS,
access.c, readlink.c,
mktex.opt, mktexdir, mktexdir.opt, mktexmf, mktexnam,
mktexnam.opt, mktextfm, mktexupd: doc/email updates.
diff --git a/Build/source/texk/kpathsea/HIER b/Build/source/texk/kpathsea/HIER
deleted file mode 100644
index bfcaf10b133..00000000000
--- a/Build/source/texk/kpathsea/HIER
+++ /dev/null
@@ -1,88 +0,0 @@
-TeX directory structure
-=======================
-
- This section describes the default installation hierarchy of the
-distribution. It conforms to both the GNU coding standards and the TeX
-directory structure (TDS) standard. For rationale and further
-explanation, please see those documents. The GNU standard is available
-as `ftp://prep.ai.mit.edu/pub/gnu/standards/standards.texi' and
-mirrors. The TDS document is available from `CTAN:/tex-archive/tds'
-(*note unixtex.ftp::.).
-
- You can change the default paths in many ways (*note Changing search
-paths::.). One common desire is to put everything (binaries and all)
-under a single top-level directory such as `/usr/local/texmf' or
-`/opt/texmf'--in the terms used below, make PREFIX and TEXMF the same.
-For specific instructions on doing that, see *Note configure
-scenarios::.
-
- Here is a skeleton of the default directory structure, extracted from
-the TDS document:
-
- PREFIX/ installation root (`/usr/local' by default)
- bin/ executables
- man/ man pages
- include/ C header files
- info/ GNU info files
- lib/ libraries (`libkpathsea.*')
- share/ architecture-independent files
- texmf/ TDS root
- bibtex/ BibTeX input files
- bib/ BibTeX databases
- base/ base distribution (e.g., `xampl.bib')
- misc/ single-file databases
- PKG/ name of a package
- bst/ BibTeX style files
- base/ base distribution (e.g., `plain.bst', `acm.bst')
- misc/ single-file styles
- PKG/ name of a package
- doc/ additional documentation
- dvips/ `.pro', `.ps', `psfonts.map'
- fonts/ font-related files
- TYPE/ file type (e.g., `tfm', `pk')
- MODE/ type of output device (types `pk' and `gf' only)
- SUPPLIER/ name of a font supplier (e.g., `public')
- TYPEFACE/ name of a typeface (e.g., `cm')
- dpiNNN/ font resolution (types `pk' and `gf' only)
- metafont/ Metafont (non-font) input files
- base/ base distribution (e.g., `plain.mf')
- misc/ single-file packages (e.g., `modes.mf')
- PKG/ name of a package (e.g., `mfpic')
- metapost/ MetaPost input files
- base/ base distribution (e.g., `plain.mp')
- misc/ single-file packages
- PKG/ name of a package
- support/ support files for MetaPost-related utilities (e.g., `trfonts.map')
- mft/ `MFT' inputs (e.g., `plain.mft')
- tex/ TeX input files
- FORMAT/ name of a format (e.g., `plain')
- base/ base distribution for FORMAT (e.g., `plain.tex')
- misc/ single-file packages (e.g., `webmac.tex')
- local/ local additions to or local configuration files for FORMAT
- PKG/ name of a package (e.g., `graphics', `mfnfss')
- generic/ format-independent packages
- hyphen/ hyphenation patterns (e.g., `hyphen.tex')
- images/ image input files (e.g., Encapsulated PostScript)
- misc/ single-file format-independent packages (e.g., `null.tex').
- PKG/ name of a package (e.g., `babel')
- web2c/ implementation-dependent files (`.pool', `.fmt', `texmf.cnf', etc.)
-
- Some concrete examples for most file types:
-
- /usr/local/bin/tex
- /usr/local/man/man1/xdvi.1
- /usr/local/info/kpathsea.info
- /usr/local/lib/libkpathsea.a
- /usr/local/share/texmf/bibtex/bst/base/plain.bst
- /usr/local/share/texmf/fonts/pk/ljfour/public/cm/cmr10.600pk
- /usr/local/share/texmf/fonts/source/public/pandora/pnr10.mf
- /usr/local/share/texmf/fonts/tfm/public/cm/cmr10.tfm
- /usr/local/share/texmf/fonts/type1/adobe/utopia/putr.pfa
- /usr/local/share/texmf/metafont/base/plain.mf
- /usr/local/share/texmf/metapost/base/plain.mp
- /usr/local/share/texmf/tex/plain/base/plain.tex
- /usr/local/share/texmf/tex/generic/hyphen/hyphen.tex
- /usr/local/share/texmf/web2c/tex.pool
- /usr/local/share/texmf/web2c/tex.fmt
- /usr/local/share/texmf/web2c/texmf.cnf
-
diff --git a/Build/source/texk/kpathsea/INSTALL b/Build/source/texk/kpathsea/INSTALL
deleted file mode 100644
index 9b3e5621cb7..00000000000
--- a/Build/source/texk/kpathsea/INSTALL
+++ /dev/null
@@ -1,849 +0,0 @@
-Contents:
-
-1 Installation
- 1.1 Simple installation
- 1.2 Custom installation
- 1.2.1 Disk space
- 1.2.2 Kpathsea application distributions
- 1.2.3 Changing search paths
- 1.2.3.1 Default path features
- 1.2.3.2 Default path generation
- 1.2.4 Running `configure'
- 1.2.4.1 `configure' shells
- 1.2.4.2 `configure' options
- 1.2.4.3 `configure' environment
- 1.2.4.4 `configure' scenarios
- 1.2.4.5 Shared library
- 1.2.5 Running `make'
- 1.2.6 Installing files
- 1.2.7 Cleaning up
- 1.2.8 Filename database generation
- 1.2.9 `mktex' scripts
- 1.2.9.1 `mktex' configuration
- 1.2.9.2 `mktex' script names
- 1.2.9.3 `mktex' script arguments
- 1.2.10 Installation testing
- 1.3 Security
-
-
-1 Installation
-**************
-
-The procedure for Kpathsea (and Web2c, etc.) configuration and
-installation follows. If you encounter trouble, see *Note Common
-problems::, a copy of which is in the file `kpathsea/BUGS'.
-
-1.1 Simple installation
-=======================
-
-Installing TeX and friends for the first time can be a daunting
-experience. Thus, you may prefer to skip this whole thing and just get
-precompiled executables: see *Note unixtex.ftp::.
-
- This section explains what to do if you wish to take the defaults for
-everything, and generally to install in the simplest possible way. Most
-steps here refer to corresponding subsection in the next section which
-explains how to override defaults and generally gives more details.
-
- By default everything will be installed under `/usr/local' and the
-following discussion assumes this. However, if you already have TeX
-installed, its location is used to derive the directory under which
-everything is to be installed.
-
- 1. Be sure you have enough disk space: approximately 8 megabytes for
- the compressed archives, 15MB for sources, 50MB for compilation,
- 40MB for the (initial) installed system (including library files).
- *Note Disk space::.
-
- 2. Retrieve these distribution archives:
- `ftp://ftp.tug.org/tex/texk.tar.gz'
- These are the sources, which you will be compiling.
-
- `ftp://ftp.tug.org/tex/texklib.tar.gz'
- This is a basic set of input files. You should unpack it in
- the directory `/usr/local/share'; doing so will create a
- `texmf' subdirectory there.
-
- These archives are mirrored on the CTAN hosts, in the
- `systems/web2c' directory.
-
- *Note Kpathsea application distributions::.
-
- 3. When using the default search paths, there is no need to edit any
- distribution files. *Note Changing search paths::.
-
- 4. At the top level of the distribution, run `sh configure'. (If you
- have the GNU Bash shell installed, run `bash configure'.) *Note
- Running configure::.
-
- 5. `make'. *Note Running make::. If you are using a BSD 4.4 system
- such as FreeBSD or NetBSD, you may have to use GNU make (often
- installed in `/usr/local/bin'), not the BSD make.
-
- 6. `make install'. *Note Installing files::.
-
- 7. `make distclean'. *Note Cleaning up::.
-
- 8. Set up a cron job to rebuild the filename database that makes
- searching faster. This line will rebuild it every midnight:
- 0 0 * * * cd /usr/local/share/texmf && /BINDIR/mktexlsr
- *Note Filename database generation::, and *Note Filename
- database::.
-
- 9. If you're installing Dvips, you also need to set up configuration
- files for your printers and make any additional PostScript fonts
- available. *Note Installation: (dvips)Installation. If you have
- any color printers, see *Note Color device configuration:
- (dvips)Color device configuration.
-
- 10. The first time you run a DVI driver, a bunch of PK fonts will be
- built by Metafont via `mktexpk' (and added to the filename
- database). This will take some time. Don't be alarmed; they will
- created only this first time (unless something is wrong with your
- path definitions).
-
- By default, `mktexpk' will create these fonts in a hierarchy under
- `/var/tmp/texfonts'; it simply assumes that `/var/tmp' exists and
- is globally writable. If you need a different arrangement, see
- *Note mktex configuration::.
-
- *Note mktex scripts::.
-
- 11. For some simple tests, try `tex story \\bye' and `latex sample2e'.
- Then run `xdvi story' or `dvips sample2e' on the resulting DVI
- files to preview/print the documents. *Note Installation
- testing::.
-
-1.2 Custom installation
-=======================
-
-Most sites need to modify the default installation procedure in some
-way, perhaps merely changing the prefix from `/usr/local', perhaps
-adding extra compiler or loader options to work around `configure'
-bugs. This section explains how to override default choices. For
-additional distribution-specific information:
- * `dviljk/INSTALL'.
-
- * *Note Installation: (dvips)Installation.
-
- * *Note Installation: (web2c)Installation.
-
- * `xdvik/INSTALL'.
-
- These instructions are for Unix systems. Other operating-system
-specific distributions have their own instructions. The code base
-itself supports Amiga, DOS, OS/2, and VMS.
-
- Following are the same steps as in the previous section (which
-describes the simplest installation), but with much more detail.
-
-1.2.1 Disk space
-----------------
-
-Here is a table showing the disk space needed for each distribution
-(described in the next section). The `(totals)' line reflects the
-`texk' source distribution and `texklib'; the individual distributions
-don't enter into it. Sizes are in megabytes. All numbers are
-approximate.
-
-Distribution .tar.gz Unpacked Compiled Installed
-dviljk .9 3.8
-dvipsk .9 3.2
-xdvik .7 2.5
-web2c 1.3 5.0
-web 1.9 6.5 - -
-texk 7.5 32.1 95.3 33.5
-texklib 6.3 15.0 - 15.0
-(totals) 14.6 47.1 95.3 48.5
-
-1.2.2 Kpathsea application distributions
-----------------------------------------
-
-The archive `ftp://ftp.tug.org/tex/texk.tar.gz' contains all of the
-Kpathsea applications I maintain, and the library itself. For example,
-since NeXT does not generally support X11, you'd probably want to skip
-`xdvik' (or simply remove it after unpacking `texk.tar.gz'. If you are
-not interested in all of them, you can also retrieve them separately:
-
-`dviljk.tar.gz'
- DVI to PCL, for LaserJet printers.
-
-`dvipsk.tar.gz'
- DVI to PostScript, for previewers, printers, or PDF generation.
-
-`web2c.tar.gz'
- The software needed to compile TeX and friends.
-
-`web.tar.gz'
- The original WEB source files, also used in compilation.
-
-`xdvik.tar.gz'
- DVI previewing under the X window system.
-
-
- If you want to use the Babel LaTeX package for support of non-English
-typesetting, you may need to retrieve additional files. See the file
-`install.txt' in the Babel distribution.
-
-1.2.3 Changing search paths
----------------------------
-
-If the search paths for your installation differ from the standard TeX
-directory structure (*note Introduction: (tds)Top.), edit the file
-`kpathsea/texmf.in' as desired, before running `configure'. For
-example, if you have all your fonts or macros in one big directory.
-
- You may also wish to edit the file `mktex.cnf', either before or
-after installation, to control various aspects of `mktexpk' and
-friends. *Note mktex configuration::.
-
- You do not need to edit `texmf.in' to change the default top-level or
-other installation _directories_ (only the paths). You can and should
-do that when you run `configure' (next step).
-
- You also do not need to edit `texmf.in' if you are willing to rely on
-`texmf.cnf' at runtime to define the paths, and let the compile-time
-default paths be incorrect. Usually there is no harm in doing this.
-
- The section below explains default generation in more detail.
-
-1.2.3.1 Default path features
-.............................
-
-The purpose of having all the different files described in the section
-above is to avoid having the same information in more than one place. If
-you change the installation directories or top-level prefix at
-`configure'-time, those changes will propagate through the whole
-sequence. And if you change the default paths in `texmf.in', those
-changes are propagated to the compile-time defaults.
-
- The Make definitions are all repeated in several Makefile's; but
-changing the top-level `Makefile' should suffice, as it passes down all
-the variable definitions, thus overriding the submakes. (The
-definitions are repeated so you can run Make in the subdirectories, if
-you should have occasion to.)
-
- By default, the bitmap font paths end with `/$MAKETEX_MODE', thus
-including the device name (usually a Metafont mode name such as
-`ljfour'). This distinguishes two different devices with the same
-resolution--a write/white from a write/black 300dpi printer, for
-example.
-
- However, since most sites don't have this complication, Kpathsea
-(specifically, the `kpse_init_prog' function in `kpathsea/proginit.c')
-has a special case: if the mode has not been explicitly set by the user
-(or in a configuration file), it sets `MAKETEX_MODE' to `/'. This
-makes the default PK path, for example, expand into `.../pk//', so
-fonts will be found even if there is no subdirectory for the mode (if
-you arranged things that way because your site has only one printer,
-for example) or if the program is mode-independent (e.g., `pktype').
-
- To make the paths independent of the mode, simply edit `texmf.in'
-before installation, or the installed `texmf.cnf', and remove the
-`$MAKETEX_MODE'.
-
- *Note mktex script arguments::, for how this interacts with `mktexpk'.
-
- *Note TeX directory structure: TeX directory structure, for a
-description of the default arrangement of the input files that comprise
-the TeX system. The file `kpathsea/HIER' is a copy of that section.
-
-1.2.3.2 Default path generation
-...............................
-
-This section describes how the default paths are constructed.
-
- You may wish to ignore the whole mess and simply edit `texmf.cnf'
-after it is installed, perhaps even copying it into place beforehand so
-you can complete the installation, if it seems necessary.
-
- To summarize the chain of events that go into defining the default
-paths:
-
- 1. `configure' creates a `Makefile' from each `Makefile.in'.
-
- 2. When Make runs in the `kpathsea' directory, it creates a file
- `texmf.sed' that substitutes the Make value of `$(var)' for a
- string `@var@'. The variables in question are the one that define
- the installation directories.
-
- 3. `texmf.sed' (together with a little extra magic--see
- `kpathsea/Makefile') is applied to `texmf.in' to generate
- `texmf.cnf'. This is the file that will eventually be installed
- and used.
-
- 4. The definitions in `texmf.cnf' are recast as C `#define''s in
- `paths.h'. These values will be the compile-time defaults; they
- are not used at runtime unless no `texmf.cnf' file can be found.
-
- (That's a lie: the compile-time defaults are what any extra :'s in
- `texmf.cnf' expand into; but the paths as distributed have no extra
- :'s, and there's no particular reason for them to.)
-
-1.2.4 Running `configure'
--------------------------
-
-Run `sh configure OPTIONS' (in the top-level directory, the one
-containing `kpathsea/'), possibly using a shell other than `sh' (*note
-configure shells::).
-
- `configure' adapts the source distribution to the present system via
-`#define''s in `*/c-auto.h', which are created from the corresponding
-`c-auto.in'. It also creates a `Makefile' from the corresponding
-`Makefile.in', doing `@VAR@' and `ac_include' substitutions).
-
- `configure' is the best place to control the configuration,
-compilation, and installed location of the software, either via
-command-line options, or by setting environment variables before
-invoking it. For example, you can disable `mktexpk' by default with
-the option `--disable-mktexpk'. *Note configure options::.
-
-1.2.4.1 `configure' shells
-..........................
-
-Considerable effort has gone into trying to ensure that the `configure'
-scripts can be run by most Bourne shell variants. If `sh' runs into
-trouble, your best bet is to use Bash, the GNU Bourne-again shell
-(*note Top: (bash)Top.).
-
- Bourne shell variants for which problems have been reported in the
-past are:
-`ksh'
- Old versions of the Korn shell may fail to handle the scripts.
- The Korn shell may be installed as `/bin/sh' on AIX, in which case
- `/bin/bsh' may serve instead.
-
-`ash'
- Old versions of ash are unable to handle the scripts. Ash is
- sometimes installed as `/bin/sh' on NetBSD, FreeBSD, and Linux
- systems. `/bin/bash' should be available for those systems, but
- might not be part of a default installation.
-
-`Ultrix /bin/sh'
- `/bin/sh' under Ultrix is a DEC-grown shell that is notably
- deficient in many ways. `/bin/sh5' may be necessary.
-
-1.2.4.2 `configure' options
-...........................
-
-For a complete list of all `configure' options, run `configure --help'
-or see *Note Running `configure' scripts: (autoconf)Invoking configure,
-(a copy is in the file `kpathsea/README.CONFIGURE'). The generic
-options are listed first in the `--help' output, and the
-package-specific options come last. The environment variables
-`configure' pays attention to are listed below.
-
- Options particularly likely to be useful are `--prefix', `--datadir',
-and the like; see *Note configure scenarios::.
-
- This section gives pointers to descriptions of the `--with' and
-`--enable' options to `configure' that Kpathsea-using programs accept.
-
-`--without-mktexmf-default'
-`--without-mktexpk-default'
-`--without-mktextfm-default'
-`--with-mktextex-default'
- Enable or disable the dynamic generation programs. *Note mktex
- configuration::.
-
-`--enable-shared'
- Build Kpathsea as a shared library, and link against it. Also
- build the usual static library. *Note Shared library::.
-
-`--disable-static'
- Build only the shared library. Implies `--enable-shared'.
-
-`--enable-maintainer-mode'
- Enables make targets that are useful for the maintainer and likely
- to be a pain for anyone else; the makefiles created when this
- option is enabled may not work at all for you. You have been
- warned.
-
-1.2.4.3 `configure' environment
-...............................
-
-`configure' uses the value of the following environment variables in
-determining your system's characteristics, and substitutes for them in
-Makefile's:
-
-`CC'
- The compiler to use: default is `gcc' if it's installed, otherwise
- `cc'.
-
-`CFLAGS'
- Options to give the compiler: default is `-g -O2' for `gcc', `-g'
- otherwise. `CFLAGS' comes after any other options. You may need
- to include `-w' here if your compilations commonly have useless
- warnings (e.g., `NULL redefined'), or `configure' may fail to
- detect the presence of header files (it takes the messages on
- standard error to mean the header file doesn't exist).
-
-`CPPFLAGS'
- Options to pass to the compiler preprocessor; this matters most for
- configuration, not the actual source compilation. The `configure'
- script often does only preprocessing (e.g., to check for the
- existence of #include files), and `CFLAGS' is not used for this.
- You may need to set this to something like
- `-I/usr/local/include/wwwhatever' if you have the libwww library
- installed for hyper-xdvik (see `xdvik/INSTALL').
-
-`DEFS'
- Additional preprocessor options, but not used by `configure'.
- Provided for enabling or disabling program features, as documented
- in the various program-specific installation instructions. `DEFS'
- comes before any compiler options included by the distribution
- `Makefile's or by `configure'.
-
-`LDFLAGS'
- Additional options to give to the loader. `LDFLAGS' comes before
- any other linker options.
-
-`LIBS'
- Additional libraries to link with.
-
-1.2.4.4 `configure' scenarios
-.............................
-
-Here are some common installation scenarios:
-
- * Including X support in Metafont. This is disabled by default,
- since many sites have no use for it, and it's a leading cause of
- configuration problems.
- configure --with-x
-
- * Putting the binaries, TeX files, GNU info files, etc. into a single
- TeX hierarchy, say `/here/texmf', requires overriding defaults in
- `configure':
- configure --prefix=/here/texmf --datadir=/here
-
- * You can compile on multiple architectures simultaneously either by
- building symbolic link trees with the `lndir' script from the X11
- distribution, or with the `--srcdir' option:
- configure --srcdir=SRCDIR
-
- * If you are installing binaries for multiple architectures into a
- single hierarchy, you will probably want to override the default
- `bin' and `lib' directories, something like this:
- configure --prefix=TEXMF --datadir=TEXMF \
- --bindir=TEXMF/ARCH/bin --libdir=TEXMF/ARCH/lib
- make texmf=TEXMF
- (Unless you make provisions for architecture-specific files in
- other ways, e.g., with Depot or an automounter.)
-
- * To compile with optimization (to compile without debugging, remove
- the `-g'):
- env CFLAGS="-g -O" sh configure ...
- For a potential problem if you optimize, see *Note TeX or Metafont
- failing: TeX or Metafont failing.
-
-1.2.4.5 Shared library
-......................
-
-You can compile Kpathsea as a shared library on a few systems, by
-specifying the option `--enable-shared' when you run `configure'.
-
- The main advantage in doing this is that the executables can then
-share the code, thus decreasing memory and disk space requirements.
-
- On some systems, you can record the location of shared libraries in a
-binary, usually by giving certain options to the linker. Then
-individual users do not need to set their system's environment variable
-(e.g., `LD_LIBRARY_PATH') to find shared libraries. If you want to do
-this, you will need to add the necessary options to `LDFLAGS' yourself;
-for example, on Solaris, include something like `-R${prefix}/lib', on
-IRIX or Linux, use `-rpath${prefix}/lib'. (Unfortunately, making this
-happen by default is very difficult, because of interactions with an
-existing installed shared library.)
-
- Currently, shared library support is implemented only on Linux, SunOS
-4 (Solaris 1), SunOS 5 (Solaris 2), IRIX 5, and IRIX 6. If you're
-interested and willing in adding support for other systems, please see
-the `configure' mode in the `klibtool' script, especially the
-host-specific case statement around line 250.
-
-1.2.5 Running `make'
---------------------
-
-`make' (still in the top-level directory). This also creates the
-`texmf.cnf' and `paths.h' files that define the default search paths,
-and (by default) the `plain' and `latex' TeX formats.
-
- You can override directory names and other values at `make'-time.
-`make/paths.make' lists the variables most commonly reset. For
-example, `make default_texsizes=600' changes the list of fallback
-resolutions.
-
- You can also override each of `configure''s environment variables
-(*note configure environment::). The Make variables have the same
-names.
-
- Finally, you can supply additional options via the following
-variables. (`configure' does not use these.)
-
-`XCPPFLAGS'
-`XDEFS'
- Preprocessor options.
-
-`XCFLAGS'
- Compiler options.
-
-`XLDFLAGS'
- Loader options (included at beginning of link commands).
-
-`XLOADLIBES'
- More loader options (included at end of link commands).
-
-`XMAKEARGS'
- Additional Make arguments passed to all sub-`make''s. You may need
- to include assignments to the other variables here via `XMAKEARGS';
- for example: `make XMAKEARGS="CFLAGS=-O XDEFS=-DA4"'.
-
- It's generally a bad idea to use a different compiler (`CC') or
-libraries (`LIBS') for compilation than you did for configuration,
-since the values `configure' determined may then be incorrect.
-
- Adding compiler options to change the "universe" you are using
-(typically BSD vs. system V) is generally a cause of trouble. It's
-best to use the native environment, whatever that is; `configure' and
-the software usually adapt best to that. In particular, under Solaris
-2.x, you should not use the BSD-compatibility library (`libucb') or
-include files (`ucbinclude').
-
- If you want to use the Babel LaTeX package for support of non-English
-typesetting, you need to modify some files before making the LaTeX
-format. See the file `install.txt' in the Babel distribution.
-
-1.2.6 Installing files
-----------------------
-
-The basic command is the usual `make install'. For security issues,
-*note Security::.
-
- The first time you install any manual in the GNU Info system, you
-should add a line (you choose where) to the file `dir' in your
-`$(infodir)' directory. Sample text for this is given near the top of
-the Texinfo source files (`kpathsea/kpathsea.texi',
-`dvipsk/dvips.texi', and `web2c/doc/web2c.texi'). If you have a recent
-version of the GNU Texinfo distribution installed
-(`ftp://prep.ai.mit.edu/pub/gnu/texinfo-3.9.tar.gz' or later), this
-should happen automatically.
-
- On the offchance that this is your first Info installation, the `dir'
-file I use is included in the distribution as `etc/dir-example'.
-
- You may wish to use one of the following targets, especially if you
-are installing on multiple architectures:
- * `make install-exec' to install in architecture-dependent
- directories, i.e., ones that depend on the `$(exec_prefix)' Make
- variable. This includes links to binaries, libraries, etc., not
- just "executables".
-
- * `make install-data' to install in architecture-independent
- directories, such as documentation, configuration files, pool
- files, etc.
-
- If you use the Andrew File System, the normal path (e.g., PREFIX/bin)
-only gets you to a read-only copy of the files, and you must specify a
-different path for installation. The best way to do this is by setting
-the `prefix' variable on the `make' command line. The sequence becomes
-something like this:
- configure --prefix=/whatever
- make
- make install prefix=/afs/.SYSTEM.NAME/system/1.3/@sys/whatever
- With AFS, you will definitely want to use relative filenames in
-`ls-R' (*note Filename database::), not absolute filenames. This is
-done by default, but check anyway.
-
-1.2.7 Cleaning up
------------------
-
-The basic command is `make distclean'. This removes all files created
-by the build.
-
- Alternatively,
- * `make mostlyclean' if you intend to compile on another
- architecture. For Web2C, since the generated C files are portable,
- they are not removed. If the `lex' vs. `flex' situation is going
- to be different on the next machine, `rm web2c/lex.yy.c'.
-
- * `make clean' to remove files created by compiling, but leave
- configuration files and Makefiles.
-
- * `make maintainer-clean' to remove everything that the Makefiles can
- rebuild. This is more than `distclean' removes, and you should
- only use it if you are thoroughly conversant with (and have the
- necessary versions of) Autoconf.
-
- * `make extraclean' to remove other junk, e.g., core files, log
- files, patch rejects. This is independent of the other `clean'
- targets.
-
-1.2.8 Filename database generation
-----------------------------------
-
-You will probably want to set up a `cron' entry on the appropriate
-machine(s) to rebuild the filename database nightly or so, as in:
- 0 0 * * * cd TEXMF && /BINDIR/mktexlsr
- *Note Filename database::.
-
- Although the `mktex...' scripts make every effort to add
-newly-created files on the fly, it can't hurt to make sure you get a
-fresh version every so often.
-
-1.2.9 `mktex' scripts
----------------------
-
-If Kpathsea cannot otherwise find a file, for some file types it is
-configured by default to invoke an external program to create it
-dynamically (*note mktex configuration::). This is most useful for
-fonts (bitmaps, TFM's, and arbitrarily-sizable Metafont sources such as
-the Sauter and EC fonts), since any given document can use fonts never
-before referenced. Trying to build all fonts in advance is therefore
-impractical, if not impossible.
-
- The script is passed the name of the file to create and possibly other
-arguments, as explained below. It must echo the full pathname of the
-file it created (and nothing else) to standard output; it can write
-diagnostics to standard error.
-
-1.2.9.1 `mktex' configuration
-.............................
-
-The following file types can run an external program to create missing
-files: `pk', `tfm', `mf', `tex'; the scripts are named `mktexpk',
-`mktextfm', `mktexmf', and `mktextex'.
-
- In the absence of `configure' options specifying otherwise,
-everything but `mktextex' will be enabled by default. The `configure'
-options to change the defaults are:
-
- --without-mktexmf-default
- --without-mktexpk-default
- --without-mktextfm-default
- --with-mktextex-default
-
- The `configure' setting is overridden if the environment variable or
-configuration file value named for the script is set; e.g., `MKTEXPK'
-(*note mktex script arguments::).
-
- As distributed, all the scripts source a file `texmf/web2c/mktex.cnf'
-if it exists, so you can override various defaults. See `mktex.opt',
-for instance, which defines the default mode, resolution, some special
-directory names, etc. If you prefer not to change the distributed
-scripts, you can simply create `mktex.cnf' with the appropriate
-definitions (you do not need to create it if you have nothing to put in
-it). `mktex.cnf' has no special syntax; it's an arbitrary Bourne shell
-script. The distribution contains a sample `mktex.cnf' for you to copy
-and modify as you please (it is not installed anywhere).
-
- In addition, you can configure a number of features with the
-`MT_FEATURES' variable, which you can define:
- * in `mktex.opt', as just mentioned;
-
- * by editing the file `mktex.opt', either before `make install' (in
- the source hierarchy) or after (in the installed hierarchy);
-
- * or in the environment.
-
- If none of the options below are enabled, `mktexpk', `mktextfm', and
-`mktexmf' follow the following procedure to decide where fonts should
-be installed. Find the tree where the font's sources are, and test the
-permissions of the `fonts' directory of that tree to determine whether
-it is writable. If it is, put the files in the tree in appropriate
-locations. If it isn't writable, see whether the tree is a system tree
-(named in `SYSTEXMF'). If so, the `VARTEXFONTS' tree is used. In all
-other cases the working directory is used.
-
- The `appendonlydir' option is enabled by default.
-
-`appendonlydir'
- Tell `mktexdir' to create directories append-only, i.e., set their
- sticky bit (*note Mode Structure: (coreutils)Mode Structure.).
- This feature is silently ignored on non-Unix platforms (e.g.
- Windows/NT and MS-DOS) which don't support similar functionality.
- This feature is enabled by default.
-
-`dosnames'
- Use 8.3 names; e.g., `dpi600/cmr10.pk' instead of `cmr10.600pk'.
- Note that this feature only affects filenames that would otherwise
- clash with other TeX-related filenames; `mktex' scripts do nothing
- about filenames which exceed the 8+3 MS-DOS limits but remain
- unique when truncated (by the OS) to these limits, and nether do
- the scripts care about possible clashes with files which aren't
- related with TeX. For example, `cmr10.600pk' would clash with
- `cmr10.600gf' and is therefore changed when `dosnames' is in
- effect, but `mf.pool' and `mp.base' don't clash with any
- TeX-related files and are therefore unchanged.
-
- This feature is turned on by default on MS-DOS. If you do not wish
- `dosnames' to be set on an MS-DOS platform, you need to set the
- `MT_FEATURES' environment variable to a value that doesn't include
- `dosnames'. You can also change the default setting by editing
- `mktex.opt', but only if you use the `mktex' shell scripts; the
- emulation programs don't consult `mktex.opt'.
-
-`fontmaps'
- Instead of deriving the location of a font in the destination tree
- from the location of the sources, the aliases and directory names
- from the Fontname distribution are used. (*note Introduction:
- (fontname)Top.).
-
-`nomfdrivers'
- Let mktexpk and mktextfm create metafont driver files in a
- temporary directory. These will be used for just one metafont run
- and not installed permanently.
-
-`nomode'
- Omit the directory level for the mode name; this is fine as long as
- you generate fonts for only one mode.
-
-`stripsupplier'
- Omit the font supplier name directory level.
-
-`striptypeface'
- Omit the font typeface name directory level.
-
-`strip'
- Omit the font supplier and typeface name directory levels. This
- feature is deprecated in favour of `stripsupplier' and
- `striptypeface'.
-
-`varfonts'
- When this option is enabled, fonts that would otherwise be written
- in system texmf tree go to the `VARTEXFONTS' tree instead. The
- default value in `kpathsea/Makefile.in' is `/var/tmp/texfonts'.
- The `Linux File System Standard' recommends `/var/tex/fonts'.
-
- The `varfonts' setting in `MT_FEATURES' is overridden by the
- `USE_VARTEXFONTS' environment variable: if set to `1', the feature
- is enabled, and if set to `0', the feature is disabled.
-
-`texmfvar'
- Force generated files that would go into a system tree (as defined
- by `SYSTEXMF') into `TEXMFVAR'. Starting with teTeX-3.0, the
- variable `TEXMFVAR' is always set. The `varfonts' feature takes
- precedence if also set.
-
- The `texmfvar' setting in `MT_FEATURES' is overridden by the
- `USE_TEXMFVAR' environment variable: if set to `1', the feature is
- enabled, and if set to `0', the feature is disabled.
-
-1.2.9.2 `mktex' script names
-............................
-
-The following table shows the default name of the script for each
-possible file types. (The source is the variable `kpse_make_specs' in
-`kpathsea/tex-make.c'.)
-
-`mktexpk'
- Glyph fonts.
-
-`mktextex'
- TeX input files.
-
-`mktexmf'
- Metafont input files.
-
-`mktextfm'
- TFM files.
-
-These names are overridden by an environment variable specific to the
-program--for example, `DVIPSMAKEPK' for Dvipsk.
-
- If a `mktex...' script fails, the invocation is appended to a file
-`missfont.log' (by default) in the current directory. You can then
-execute the log file to create the missing files after fixing the
-problem.
-
- If the current directory is not writable and the environment variable
-or configuration file value `TEXMFOUTPUT' is set, its value is used.
-Otherwise, nothing is written. The name `missfont.log' is overridden
-by the `MISSFONT_LOG' environment variable or configuration file value.
-
-1.2.9.3 `mktex' script arguments
-................................
-
-The first argument to a `mktex' script is always the name of the file
-to be created.
-
- In the default `mktexpk' implementation, additional arguments may
-also be passed:
-
-`--dpi NUM'
- Sets the resolution of the generated font to NUM.
-
-`--mfmode NAME'
- Sets the Metafont mode to NAME.
-
-`--bdpi NUM'
- Sets the the "base dpi" for the font. This must match the mode
- being used.
-
-`--mag STRING'
- A "magstep" string suitable for the Metafont `mag' variable. This
- must match the combination of BDPI and DPI being used.
-
-`--destdir STRING'
- A directory name. If the directory is absolute, it is used as-is.
- Otherwise, it is appended to the root destination directory set in
- the script.
-
-1.2.10 Installation testing
----------------------------
-
-Besides the tests listed in *Note Simple installation::, you can try
-running `make check'. This includes the torture tests (trip, trap, and
-mptrap) that come with Web2c (*note Triptrap: (web2c)Triptrap.).
-
-1.3 Security
-============
-
-None of the programs in the TeX system require any special system
-privileges, so there's no first-level security concern of people gaining
-illegitimate root access.
-
- A TeX document, however, can write to arbitrary files, e.g.,
-`~/.rhosts', and thus an unwitting user who runs TeX on a random
-document is vulnerable to a trojan horse attack. This loophole is
-closed by default, but you can be permissive if you so desire in
-`texmf.cnf'. *Note tex invocation: (web2c)tex invocation. MetaPost has
-the same issue.
-
- Dvips, Xdvi, and TeX can also execute shell commands under some
-circumstances. To disable this, see the `-R' option in *Note Option
-details: (dvips)Option details, the xdvi man page, and *Note tex
-invocation: (web2c)tex invocation, respectively.
-
- Another security issue arises because it's very useful--almost
-necessary--to make arbitrary fonts on user demand with `mktexpk' and
-friends. Where do these files get installed? By default, the
-`mktexpk' distributed with Kpathsea assumes a world-writable `/var/tmp'
-directory; this is a simple and convenient approach, but it may not
-suit your situation because it means that a local cache of fonts is
-created on every machine.
-
- To avoid this duplication, many people consider a shared, globally
-writable font tree desirable, in spite of the potential security
-problems. To do this you should change the value of `VARTEXFONTS' in
-`texmf.cnf' to refer to some globally known directory. *Note mktex
-configuration::.
-
- The first restriction you can apply is to make newly-created
-directories under `texmf' be append-only with an option in `mktex.cnf'.
-*Note mktex configuration::.
-
- Another approach is to establish a group (or user) for TeX files,
-make the `texmf' tree writable only to that group (or user), and make
-`mktexpk' et al. setgid to that group (or setuid to that user). Then
-users must invoke the scripts to install things. (If you're worried
-about the inevitable security holes in scripts, then you could write a
-C wrapper to exec the script.)
-
- The `mktex...' scripts install files with the same read and write
-permissions as the directory they are installed in. The executable,
-sgid, suid, and sticky bits are always cleared.
-
- Any directories created by the `mktex...' scripts have the same
-permissions as their parent directory, unless the `appendonlydir'
-feature is used, in which case the sticky bit is always set.
-
diff --git a/Build/source/texk/kpathsea/Makefile.am b/Build/source/texk/kpathsea/Makefile.am
index 6a796fa0ae4..29bc038e9bf 100644
--- a/Build/source/texk/kpathsea/Makefile.am
+++ b/Build/source/texk/kpathsea/Makefile.am
@@ -11,7 +11,7 @@ rebuild: all
SUBDIRS = . doc man
-EXTRA_DIST = BUGS HIER PROJECTS README.CONFIGURE
+EXTRA_DIST = BUGS PROJECTS
INCLUDES = -I$(top_builddir)/.. -I$(top_srcdir)/..
AM_CFLAGS = $(WARNING_CFLAGS)
diff --git a/Build/source/texk/kpathsea/Makefile.in b/Build/source/texk/kpathsea/Makefile.in
index fe999188a5b..a3ba0117cc4 100644
--- a/Build/source/texk/kpathsea/Makefile.in
+++ b/Build/source/texk/kpathsea/Makefile.in
@@ -56,7 +56,7 @@ DIST_COMMON = README $(am__configure_deps) $(dist_noinst_DATA) \
../../build-aux/config.sub ../../build-aux/depcomp \
../../build-aux/install-sh ../../build-aux/ltmain.sh \
../../build-aux/missing ../../build-aux/texinfo.tex \
- ../../build-aux/ylwrap AUTHORS ChangeLog INSTALL NEWS putenv.c \
+ ../../build-aux/ylwrap AUTHORS ChangeLog NEWS putenv.c \
strcasecmp.c strstr.c strtol.c
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/../../m4/kpse-common.m4 \
@@ -350,9 +350,8 @@ top_builddir = @top_builddir@
top_srcdir = @top_srcdir@
ACLOCAL_AMFLAGS = -I ../../m4
SUBDIRS = . doc man
-EXTRA_DIST = BUGS HIER PROJECTS README.CONFIGURE putenv.c strcasecmp.c \
- strtol.c strstr.c mktex.cnf Makefile.in.orig common.ac.orig \
- withenable.ac
+EXTRA_DIST = BUGS PROJECTS putenv.c strcasecmp.c strtol.c strstr.c \
+ mktex.cnf Makefile.in.orig common.ac.orig withenable.ac
INCLUDES = -I$(top_builddir)/.. -I$(top_srcdir)/..
AM_CFLAGS = $(WARNING_CFLAGS)
lib_LTLIBRARIES = libkpathsea.la
diff --git a/Build/source/texk/kpathsea/PROJECTS b/Build/source/texk/kpathsea/PROJECTS
index 80d5063a79d..c8f2bef47ec 100644
--- a/Build/source/texk/kpathsea/PROJECTS
+++ b/Build/source/texk/kpathsea/PROJECTS
@@ -1,5 +1,5 @@
Here are some ideas for improvements. If you would like to contribute,
-please send mail to me (infovore@xs4all.nl) first.
+please send mail to tex-k@tug.org first.
If the library is built shared, it would be nice if the binaries did not
diff --git a/Build/source/texk/kpathsea/doc/install.texi b/Build/source/texk/kpathsea/doc/install.texi
index 67e82a8acd1..dd78b88a9aa 100644
--- a/Build/source/texk/kpathsea/doc/install.texi
+++ b/Build/source/texk/kpathsea/doc/install.texi
@@ -332,12 +332,11 @@ To make the paths independent of the mode, simply edit
@xref{mktex script arguments}, for how this interacts with @code{mktexpk}.
-@flindex HIER
-@flindex kpathsea/HIER
+@cindex TDS
+@cindex @TeX{} directory structure
@xref{TeX directory structure,, @TeX{} directory structure}, for a
description of the default arrangement of the input files that comprise
-the @TeX{} system. The file @file{kpathsea/HIER} is a copy of that
-section.
+the @TeX{} system.
@node Default path generation
diff --git a/Build/source/texk/kpathsea/doc/kpathsea.info b/Build/source/texk/kpathsea/doc/kpathsea.info
index b9701102961..de65f5a3bb0 100644
--- a/Build/source/texk/kpathsea/doc/kpathsea.info
+++ b/Build/source/texk/kpathsea/doc/kpathsea.info
@@ -454,7 +454,7 @@ before installation, or the installed `texmf.cnf', and remove the
*Note TeX directory structure: TeX directory structure, for a
description of the default arrangement of the input files that comprise
-the TeX system. The file `kpathsea/HIER' is a copy of that section.
+the TeX system.

File: kpathsea.info, Node: Default path generation, Prev: Default path features, Up: Changing search paths
@@ -4215,8 +4215,6 @@ Index
* hash table routines: Calling sequence. (line 112)
* hash_summary_only variable for debugging: Debugging. (line 105)
* help, mailing list for general TeX: Mailing lists. (line 25)
-* HIER: Default path features.
- (line 41)
* history of Kpathsea: History. (line 6)
* home directories in paths: Tilde expansion. (line 6)
* HOME, as ~ expansion: Tilde expansion. (line 6)
@@ -4263,8 +4261,6 @@ Index
(line 6)
* kpathsea.h: Programming overview.
(line 24)
-* kpathsea/HIER: Default path features.
- (line 41)
* kpathsea/README.CONFIGURE: Running configure. (line 15)
* kpathsea_cnf_get: Programming with config files.
(line 23)
@@ -4654,14 +4650,18 @@ Index
(line 204)
* tcfmgr.map: Specially-recognized files.
(line 47)
-* TDS: TeX directory structure.
+* TDS <1>: TeX directory structure.
(line 6)
+* TDS: Default path features.
+ (line 41)
* testing, post-installation: Installation testing.
(line 6)
* tests, simple: Simple installation. (line 79)
* teTeX: Other TeX packages. (line 13)
-* TeX directory structure: TeX directory structure.
+* TeX directory structure <1>: TeX directory structure.
(line 6)
+* TeX directory structure: Default path features.
+ (line 41)
* TeX distributions besides Web2c: Other TeX packages. (line 6)
* TeX environment variables: Supported file formats.
(line 6)
@@ -4855,76 +4855,76 @@ Node: Disk space13713
Node: Kpathsea application distributions14597
Node: Changing search paths15712
Node: Default path features16894
-Node: Default path generation19030
-Node: Running configure20473
-Node: configure shells21524
-Node: configure options22576
-Node: configure environment24083
-Node: configure scenarios25885
-Node: Shared library27471
-Node: Running make28485
-Node: Installing files30532
-Node: Cleaning up32479
-Node: Filename database generation33527
-Node: mktex scripts34094
-Node: mktex configuration35371
-Node: mktex script names41190
-Node: mktex script arguments42581
-Node: Installation testing43471
-Node: Security43835
-Node: TeX directory structure46402
-Node: unixtex.ftp50824
-Node: Electronic distribution52834
-Node: CD-ROM distribution55599
-Node: Other TeX packages56414
-Node: Reporting bugs57710
-Node: Bug checklist58445
-Node: Mailing lists62142
-Node: Debugging63351
-Node: Logging68429
-Node: Common problems70299
-Node: Unable to find files71130
-Node: Slow path searching73541
-Node: Unable to generate fonts74918
-Node: TeX or Metafont failing77427
-Node: Empty Makefiles79306
-Node: XtStrings80536
-Node: dlopen81372
-Node: ShellWidgetClass82190
-Node: Pointer combination warnings83822
-Node: Path searching84211
-Node: Searching overview84858
-Node: Path sources88254
-Node: Config files89325
-Node: Path expansion92970
-Node: Default expansion93919
-Node: Variable expansion95989
-Node: Tilde expansion97392
-Node: Brace expansion98372
-Node: KPSE_DOT expansion99477
-Node: Subdirectory expansion99990
-Node: Filename database102341
-Node: ls-R103395
-Node: Filename aliases106289
-Node: Database format107467
-Node: Invoking kpsewhich108480
-Node: Path searching options109425
-Node: Specially-recognized files117086
-Node: Auxiliary tasks118442
-Node: Standard options120267
-Node: TeX support120587
-Node: Supported file formats121878
-Node: File lookup129394
-Node: Glyph lookup131126
-Node: Basic glyph lookup132250
-Node: Fontmap133129
-Node: Fallback font135746
-Node: Suppressing warnings136659
-Node: Programming137764
-Node: Programming overview138277
-Node: Calling sequence140971
-Node: Program-specific files147494
-Node: Programming with config files148536
-Node: Index149848
+Node: Default path generation18977
+Node: Running configure20420
+Node: configure shells21471
+Node: configure options22523
+Node: configure environment24030
+Node: configure scenarios25832
+Node: Shared library27418
+Node: Running make28432
+Node: Installing files30479
+Node: Cleaning up32426
+Node: Filename database generation33474
+Node: mktex scripts34041
+Node: mktex configuration35318
+Node: mktex script names41137
+Node: mktex script arguments42528
+Node: Installation testing43418
+Node: Security43782
+Node: TeX directory structure46349
+Node: unixtex.ftp50771
+Node: Electronic distribution52781
+Node: CD-ROM distribution55546
+Node: Other TeX packages56361
+Node: Reporting bugs57657
+Node: Bug checklist58392
+Node: Mailing lists62089
+Node: Debugging63298
+Node: Logging68376
+Node: Common problems70246
+Node: Unable to find files71077
+Node: Slow path searching73488
+Node: Unable to generate fonts74865
+Node: TeX or Metafont failing77374
+Node: Empty Makefiles79253
+Node: XtStrings80483
+Node: dlopen81319
+Node: ShellWidgetClass82137
+Node: Pointer combination warnings83769
+Node: Path searching84158
+Node: Searching overview84805
+Node: Path sources88201
+Node: Config files89272
+Node: Path expansion92917
+Node: Default expansion93866
+Node: Variable expansion95936
+Node: Tilde expansion97339
+Node: Brace expansion98319
+Node: KPSE_DOT expansion99424
+Node: Subdirectory expansion99937
+Node: Filename database102288
+Node: ls-R103342
+Node: Filename aliases106236
+Node: Database format107414
+Node: Invoking kpsewhich108427
+Node: Path searching options109372
+Node: Specially-recognized files117033
+Node: Auxiliary tasks118389
+Node: Standard options120214
+Node: TeX support120534
+Node: Supported file formats121825
+Node: File lookup129341
+Node: Glyph lookup131073
+Node: Basic glyph lookup132197
+Node: Fontmap133076
+Node: Fallback font135693
+Node: Suppressing warnings136606
+Node: Programming137711
+Node: Programming overview138224
+Node: Calling sequence140918
+Node: Program-specific files147441
+Node: Programming with config files148483
+Node: Index149795

End Tag Table