Xindy is an index processor that can be used to generate book-like indexes for arbitrary document-preparation systems. This includes systems such as TeX and LaTeX, the roff-family, SGML/XML-based systems (e.g., HTML) that process some kind of text and generate indexing information.
This package is known to build and work properly using an LFS-8.1 platform.
Download (HTTP): http://tug.ctan.org/support/xindy/base/xindy-2.5.1.tar.gz
Download MD5 sum: 221acfeeb0f6f8388f89a59c56491041
Download size: 506 KB
Estimated disk space required: 15 MB
Estimated build time: less than 0.1 SBU
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/xindy
Install xindy by running the following commands:
export TEXARCH=$(uname -m | sed -e 's/i.86/i386/' -e 's/$/-linux/') && sed -i "s/ grep -v '^;'/ awk NF/" make-rules/inputenc/Makefile.in && sed -i 's%\(indexentry\)%\1\\%' make-rules/inputenc/make-inp-rules.pl && patch -Np1 -i ../xindy-2.5.1-upstream_fixes-1.patch && ./configure --prefix=/opt/texlive/2017 \ --bindir=/opt/texlive/2017/bin/$TEXARCH \ --datarootdir=/opt/texlive/2017 \ --includedir=/usr/include \ --libdir=/opt/texlive/2017/texmf-dist \ --mandir=/opt/texlive/2017/texmf-dist/doc/man && make LC_ALL=POSIX
This package does not have a testsuite.
Now, as the root
user:
make install
sed -i "s/ grep -v '^;'/ awk NF/" ...: The build sorts files in latin{1..3} encodings to create latin.xdy, and unicode versions of these to create utf8.xdy after using grep -v '^;' to remove blank lines. With grep-2.23 any data not in the expected encoding is treated as binary, resulting in a useless file. This command uses an alternative way of removing blank lines.
sed -i 's%\(indexentry\)%\1\\%'
...: A regexp contains indexentry{
- perl has warned about the unescaped
left brace for some time and now treats it as illegal. Change it to
indexentry\{
, doubling the backslash
for sed.
patch -Np1 -i ../xindy-2.5.1-upstream_fixes-1.patch: Xindy is now maintained at CTAN. This patch updates the source with some of the changes made there (but ignoring changes which were only made to allow for spaces in pathnames and some trivial recent changes).
--prefix=, --bindir=, --datarootdir=,
--infodir=, --mandir= ...
: these switches ensure that
the files installed from source will overwrite any corresponding
files previously installed by install-tl-unx so that the alternative methods
of installing texlive are
consistent..
--includedir=/usr/include
:
This parameter ensures that the kpathsea
headers from texlive-20170524
will be found.
make LC_ALL=POSIX:
with the current version of coreutils it is essential to build
xindy in the POSIX (or C) locale
because in a UTF-8 locale the file latin.xdy
will contain only a heading and then a
line 'Binary file (standard input)
matches
' instead of the many lines of lisp merge-rule commands it ought to contain.
Last updated on 2017-08-26 10:08:22 -0700