summaryrefslogtreecommitdiff
path: root/Build/source/utils
diff options
context:
space:
mode:
authorVladimir Volovich <vvv@vsu.ru>2008-03-18 00:00:20 +0000
committerVladimir Volovich <vvv@vsu.ru>2008-03-18 00:00:20 +0000
commitabdd2d2892b5ee0071ef7bf1a387251d74e78055 (patch)
treedc561d5309e02baceac6cc2a7ad9980c7a3a0adf /Build/source/utils
parent1f50183588e388206c13d505102dbd9525871429 (diff)
*original* xindy-2.3 sources downloaded from
http://surfnet.dl.sourceforge.net/sourceforge/xindy/xindy-2.3.tar.gz except the directory "rte/clisp-2.43/", which contained original clisp-2.43 sources (nearly 48 MB), is removed. git-svn-id: svn://tug.org/texlive/trunk@7003 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils')
-rw-r--r--Build/source/utils/xindy/AUTHORS39
-rw-r--r--Build/source/utils/xindy/COPYING339
-rw-r--r--Build/source/utils/xindy/ChangeLog.Gour338
-rw-r--r--Build/source/utils/xindy/INSTALL265
-rw-r--r--Build/source/utils/xindy/Makefile.am45
-rw-r--r--Build/source/utils/xindy/Makefile.in448
-rw-r--r--Build/source/utils/xindy/NEWS25
-rw-r--r--Build/source/utils/xindy/README127
-rw-r--r--Build/source/utils/xindy/aclocal.m4852
-rw-r--r--Build/source/utils/xindy/binaries/Makefile.am66
-rw-r--r--Build/source/utils/xindy/binaries/Makefile.in367
-rwxr-xr-xBuild/source/utils/xindy/config.guess1473
-rwxr-xr-xBuild/source/utils/xindy/config.sub1576
-rwxr-xr-xBuild/source/utils/xindy/configure6216
-rw-r--r--Build/source/utils/xindy/configure.ac175
-rwxr-xr-xBuild/source/utils/xindy/depcomp530
-rw-r--r--Build/source/utils/xindy/doc/Makefile.am62
-rw-r--r--Build/source/utils/xindy/doc/Makefile.in479
-rw-r--r--Build/source/utils/xindy/doc/README14
-rw-r--r--Build/source/utils/xindy/doc/dataflow.gifbin0 -> 1988 bytes
-rw-r--r--Build/source/utils/xindy/doc/faq-1.html169
-rw-r--r--Build/source/utils/xindy/doc/faq-2.html95
-rw-r--r--Build/source/utils/xindy/doc/faq-3.html83
-rw-r--r--Build/source/utils/xindy/doc/faq-4.html668
-rw-r--r--Build/source/utils/xindy/doc/faq.html90
-rw-r--r--Build/source/utils/xindy/doc/index.gifbin0 -> 9066 bytes
-rw-r--r--Build/source/utils/xindy/doc/makeindex4.pdfbin0 -> 5054 bytes
-rw-r--r--Build/source/utils/xindy/doc/manual-1.html42
-rw-r--r--Build/source/utils/xindy/doc/manual-2.html302
-rw-r--r--Build/source/utils/xindy/doc/manual-3.html1160
-rw-r--r--Build/source/utils/xindy/doc/manual-4.html230
-rw-r--r--Build/source/utils/xindy/doc/manual-5.html63
-rw-r--r--Build/source/utils/xindy/doc/manual-6.html53
-rw-r--r--Build/source/utils/xindy/doc/manual-7.html53
-rw-r--r--Build/source/utils/xindy/doc/manual.html73
-rw-r--r--Build/source/utils/xindy/doc/mappings.gifbin0 -> 878 bytes
-rw-r--r--Build/source/utils/xindy/doc/next.gifbin0 -> 172 bytes
-rw-r--r--Build/source/utils/xindy/doc/prev.gifbin0 -> 220 bytes
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial-1.html92
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial-2.html361
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial-3.html263
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial-4.html41
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial.html66
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/Makefile.am38
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/Makefile.in317
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/ex1.raw20
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/ex1.tex16
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/ex2.raw35
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/ex2.tex16
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/index.tex16
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/style1.xdy55
-rw-r--r--Build/source/utils/xindy/doc/style-tutorial/style2.xdy80
-rw-r--r--Build/source/utils/xindy/doc/tex2xindy.pdfbin0 -> 4825 bytes
-rw-r--r--Build/source/utils/xindy/doc/texindy.pdfbin0 -> 12313 bytes
-rw-r--r--Build/source/utils/xindy/doc/toc.gifbin0 -> 145 bytes
-rw-r--r--Build/source/utils/xindy/doc/xindy.pdfbin0 -> 11444 bytes
-rw-r--r--Build/source/utils/xindy/doc/xindy.v2.pdfbin0 -> 8507 bytes
-rwxr-xr-xBuild/source/utils/xindy/install-sh323
-rw-r--r--Build/source/utils/xindy/m4/ac_prog_latex.m419
-rw-r--r--Build/source/utils/xindy/m4/ac_prog_pdflatex.m419
-rw-r--r--Build/source/utils/xindy/make-rules/Makefile.am25
-rw-r--r--Build/source/utils/xindy/make-rules/Makefile.in416
-rw-r--r--Build/source/utils/xindy/make-rules/README40
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/Makefile.am1177
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/Makefile.in2418
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/albanian/latin1.pl144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/albanian/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/alphabets-doc.tex42
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.am37
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.in285
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/belarusian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/belarusian/iso88595.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/belarusian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/belarusian/utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.am37
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.in285
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/bulgarian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/bulgarian/iso88595.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/bulgarian/koi8-r.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/bulgarian/utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/croatian/cp1250.pl148
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/croatian/latin2.pl148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/croatian/utf8.pl.in148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/czech/cp1250.pl145
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/czech/latin2.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/czech/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.am37
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.in286
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/danish/cp1252.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/danish/latin1.xdy299
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/danish/latin9.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/danish/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.am36
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.in286
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-utf8.pl.in148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-y-utf8.pl.in148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/latin1.xdy300
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/dutch/tex-latin1.xdy8
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/english/Makefile.am36
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/english/Makefile.in286
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/english/ascii.xdy272
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/english/cp1252.pl146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/english/latin9.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/english/tex-ascii.xdy11
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/english/utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/esperanto/latin3.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/esperanto/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/estonian/cp1252.pl144
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/estonian/latin9.pl144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/estonian/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.am37
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.in286
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/finnish/cp1252.pl145
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/finnish/latin9.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/finnish/tex-cp1252.xdy16
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/finnish/tex-latin9.xdy18
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/finnish/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/french/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/french/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/french/cp1252.pl146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/french/latin9.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/french/utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/general/Makefile.am38
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/general/Makefile.in288
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/general/cp1252.pl150
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/general/cp850.pl150
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/general/latin1.xdy500
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/general/latin9.pl150
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/general/template.pl150
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/general/utf8.pl.in150
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.am30
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/georgian/utf8.pl.in55
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/Makefile.am41
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/Makefile.in291
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/braille-utf8.pl.in156
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/german/din5007-latin1.pl149
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/din5007-utf8.pl.in149
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/german/duden-latin1.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/duden-utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/tex-din5007-latin1.xdy13
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/tex-duden-latin1.xdy14
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/german/tex-latin1.xdy9
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.am42
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.in291
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/greek/iso88597.pl47
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/polytonic-utf8.pl.in50
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/greek/translit-latin4.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/translit-tex.xdy230
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/translit-utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/greek/utf8.pl.in47
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.am29
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/gypsy/northrussian-utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.am30
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hausa/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/hebrew/iso88598.pl45
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hebrew/utf8.pl.in45
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/hungarian/cp1250.pl147
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/hungarian/latin2.pl147
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/hungarian/utf8.pl.in147
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.am37
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.in286
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/icelandic/cp1252.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/icelandic/latin1.xdy320
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/icelandic/latin9.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/icelandic/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/italian/latin1.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/italian/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.am33
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.in282
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/klingon/translit-ascii.pl45
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/klingon/utf8.pl.in41
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.am38
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.in289
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/kurdish/latin5.xdy304
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.am30
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latin/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/latvian/latin4.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/latvian/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/lithuanian/latin4.pl144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lithuanian/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl145
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/lower-sorbian/latin2.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.am36
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.in285
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/macedonian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/macedonian/iso88595.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/macedonian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/macedonian/utf8.pl.in72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/make-rules.pl265
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.am30
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/mongolian/cyrillic-utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/norwegian/latin1.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/norwegian/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/polish/cp1250.pl145
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/polish/latin2.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/polish/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/portuguese/latin1.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/portuguese/utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/rom-comma-kludge.sed6
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.am32
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.in281
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/romanian/latin2.pl144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/romanian/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.am40
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.in290
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/russian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/russian/iso88595.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/russian/koi8-r.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-tex.xdy307
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/translit-tex.xdy291
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/translit-tgl-tex.xdy315
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/russian/utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.am36
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.in285
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/serbian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/serbian/iso88595.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/serbian/isoir111.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/serbian/utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.am42
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.in292
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovak/large-cp1250.pl146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovak/large-latin2.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovak/large-utf8.pl.in146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovak/small-cp1250.pl146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovak/small-latin2.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovak/small-utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovenian/cp1250.pl148
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/slovenian/latin2.pl148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/slovenian/utf8.pl.in148
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.am38
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.in288
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/spanish/modern-latin1.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/spanish/modern-utf8.pl.in146
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/spanish/traditional-latin1.pl146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-utf8.pl.in146
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.am36
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.in286
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/swedish/cp1252.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/swedish/latin1.xdy298
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/swedish/latin9.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/swedish/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/test.xdy82
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.am28
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.in274
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/test1/test1.pl166
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/turkish/latin3.pl144
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/turkish/latin5.pl144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/turkish/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/ukrainian/cp1251.pl72
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/ukrainian/koi8-u.pl72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/ukrainian/utf8.pl.in72
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.am34
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.in283
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl145
-rwxr-xr-xBuild/source/utils/xindy/make-rules/alphabets/upper-sorbian/latin2.pl145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/utf8.pl.in145
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/utf8-to-tex.sed105
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.am30
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.in279
-rw-r--r--Build/source/utils/xindy/make-rules/alphabets/vietnamese/utf8.pl.in144
-rw-r--r--Build/source/utils/xindy/make-rules/inputenc/Makefile.am142
-rw-r--r--Build/source/utils/xindy/make-rules/inputenc/Makefile.in421
-rwxr-xr-xBuild/source/utils/xindy/make-rules/inputenc/make-inp-rules.pl31
-rwxr-xr-xBuild/source/utils/xindy/make-rules/inputenc/make-testidx.pl20
-rwxr-xr-xBuild/source/utils/xindy/make-rules/makeindex.sh354
-rw-r--r--Build/source/utils/xindy/make-rules/styles/Makefile.am35
-rw-r--r--Build/source/utils/xindy/make-rules/styles/Makefile.in312
-rw-r--r--Build/source/utils/xindy/make-rules/styles/example.xdy101
-rw-r--r--Build/source/utils/xindy/make-rules/styles/makeindex.xdy89
-rw-r--r--Build/source/utils/xindy/make-rules/styles/vermeer.xdy89
-rwxr-xr-xBuild/source/utils/xindy/missing360
-rw-r--r--Build/source/utils/xindy/modules/Makefile.am22
-rw-r--r--Build/source/utils/xindy/modules/Makefile.in415
-rw-r--r--Build/source/utils/xindy/modules/base/Makefile.am48
-rw-r--r--Build/source/utils/xindy/modules/base/Makefile.in326
-rw-r--r--Build/source/utils/xindy/modules/base/book-order.xdy24
-rw-r--r--Build/source/utils/xindy/modules/base/ff-ranges-only.xdy25
-rw-r--r--Build/source/utils/xindy/modules/base/ff-ranges.xdy27
-rw-r--r--Build/source/utils/xindy/modules/base/german-sty.xdy24
-rw-r--r--Build/source/utils/xindy/modules/base/ignore-hyphen.xdy18
-rw-r--r--Build/source/utils/xindy/modules/base/ignore-punctuation.xdy42
-rw-r--r--Build/source/utils/xindy/modules/base/keep-blanks.xdy40
-rw-r--r--Build/source/utils/xindy/modules/base/latex-loc-fmts.xdy25
-rw-r--r--Build/source/utils/xindy/modules/base/latex.xdy83
-rw-r--r--Build/source/utils/xindy/modules/base/latin-lettergroups.xdy26
-rw-r--r--Build/source/utils/xindy/modules/base/letter-order.xdy18
-rw-r--r--Build/source/utils/xindy/modules/base/makeindex.xdy46
-rw-r--r--Build/source/utils/xindy/modules/base/numeric-sort.xdy25
-rw-r--r--Build/source/utils/xindy/modules/base/page-ranges.xdy18
-rw-r--r--Build/source/utils/xindy/modules/base/tex.xdy71
-rw-r--r--Build/source/utils/xindy/modules/base/texindy.xdy20
-rw-r--r--Build/source/utils/xindy/modules/base/word-order.xdy20
-rw-r--r--Build/source/utils/xindy/modules/class/Makefile.am32
-rw-r--r--Build/source/utils/xindy/modules/class/Makefile.in310
-rw-r--r--Build/source/utils/xindy/modules/class/pagenums.xdy7
-rw-r--r--Build/source/utils/xindy/modules/lang/Makefile.am22
-rw-r--r--Build/source/utils/xindy/modules/lang/Makefile.in415
-rw-r--r--Build/source/utils/xindy/modules/lang/german/Makefile.am34
-rw-r--r--Build/source/utils/xindy/modules/lang/german/Makefile.in313
-rw-r--r--Build/source/utils/xindy/modules/lang/german/din5007.xdy20
-rw-r--r--Build/source/utils/xindy/modules/lang/german/duden.xdy37
-rw-r--r--Build/source/utils/xindy/modules/lang/german/tex.xdy21
-rw-r--r--Build/source/utils/xindy/modules/lang/latin/Makefile.am33
-rw-r--r--Build/source/utils/xindy/modules/lang/latin/Makefile.in311
-rw-r--r--Build/source/utils/xindy/modules/lang/latin/caseisrt.xdy34
-rw-r--r--Build/source/utils/xindy/modules/lang/latin/letgroup.xdy10
-rw-r--r--Build/source/utils/xindy/modules/ord/Makefile.am32
-rw-r--r--Build/source/utils/xindy/modules/ord/Makefile.in310
-rw-r--r--Build/source/utils/xindy/modules/ord/letorder.xdy8
-rw-r--r--Build/source/utils/xindy/modules/rules/Makefile.am35
-rw-r--r--Build/source/utils/xindy/modules/rules/Makefile.in313
-rw-r--r--Build/source/utils/xindy/modules/rules/isolatin1-exchange.xdy88
-rw-r--r--Build/source/utils/xindy/modules/rules/isolatin1-tolower.xdy52
-rw-r--r--Build/source/utils/xindy/modules/rules/latin-exchange.xdy64
-rw-r--r--Build/source/utils/xindy/modules/rules/latin-tolower.xdy37
-rw-r--r--Build/source/utils/xindy/modules/styles/Makefile.am30
-rw-r--r--Build/source/utils/xindy/modules/styles/Makefile.in308
-rw-r--r--Build/source/utils/xindy/modules/styles/basic.xdy36
-rw-r--r--Build/source/utils/xindy/modules/styles/makeidx.xdy148
-rw-r--r--Build/source/utils/xindy/rte/Makefile.am99
-rw-r--r--Build/source/utils/xindy/rte/Makefile.in336
-rw-r--r--Build/source/utils/xindy/rte/NEWS16
-rw-r--r--Build/source/utils/xindy/rte/README31
-rw-r--r--Build/source/utils/xindy/rte/ordrules/Makefile.in38
-rw-r--r--Build/source/utils/xindy/rte/ordrules/debug.h166
-rwxr-xr-xBuild/source/utils/xindy/rte/ordrules/link.sh11
-rw-r--r--Build/source/utils/xindy/rte/ordrules/mkind.h67
-rw-r--r--Build/source/utils/xindy/rte/ordrules/ordrulei.lsp111
-rw-r--r--Build/source/utils/xindy/rte/ordrules/ordrules.c733
-rw-r--r--Build/source/utils/xindy/rte/ordrules/ordrules.h208
-rw-r--r--Build/source/utils/xindy/rte/ordrules/rxsub.c173
-rw-r--r--Build/source/utils/xindy/rte/ordrules/rxsub.h102
-rw-r--r--Build/source/utils/xindy/rte/ordrules/version.lisp.in13
-rwxr-xr-xBuild/source/utils/xindy/setup.sh14
-rw-r--r--Build/source/utils/xindy/src/base.lsp237
-rw-r--r--Build/source/utils/xindy/src/dump-xindy.lsp32
-rw-r--r--Build/source/utils/xindy/src/idxstyle.lsp2131
-rw-r--r--Build/source/utils/xindy/src/index.lsp1332
-rw-r--r--Build/source/utils/xindy/src/locref.lsp556
-rw-r--r--Build/source/utils/xindy/src/markup.lsp1291
-rw-r--r--Build/source/utils/xindy/src/version.lsp11
-rw-r--r--Build/source/utils/xindy/tex2xindy/Makefile.am35
-rw-r--r--Build/source/utils/xindy/tex2xindy/Makefile.in456
-rw-r--r--Build/source/utils/xindy/tex2xindy/tex2xindy.1206
-rw-r--r--Build/source/utils/xindy/tex2xindy/tex2xindy.l503
-rw-r--r--Build/source/utils/xindy/user-commands/Makefile.am38
-rw-r--r--Build/source/utils/xindy/user-commands/Makefile.in386
-rwxr-xr-xBuild/source/utils/xindy/user-commands/texindy521
-rw-r--r--Build/source/utils/xindy/user-commands/texindy.1406
-rw-r--r--Build/source/utils/xindy/user-commands/xindy.1380
-rw-r--r--Build/source/utils/xindy/user-commands/xindy.in777
-rw-r--r--Build/source/utils/xindy/user-commands/xindy.v2.190
-rw-r--r--Build/source/utils/xindy/user-commands/xindy.v2.in302
399 files changed, 75011 insertions, 0 deletions
diff --git a/Build/source/utils/xindy/AUTHORS b/Build/source/utils/xindy/AUTHORS
new file mode 100644
index 00000000000..c775c7bc814
--- /dev/null
+++ b/Build/source/utils/xindy/AUTHORS
@@ -0,0 +1,39 @@
+
+AUTHORS OF XINDY
+================
+
+The xindy base system (CLISP plugins and kernel) was written by Roger
+Kehr, under supervision of Joachim Schrod as a student project in
+1995. It used an architectural design from Joachim that was prototyped
+in his research work on International Makeindex and STIL (SGML
+Transformations In Lisp). Roger continued to work on xindy until 2000,
+but is not involved in xindy development any more. In these years he
+especially designed and realized the current sort-rules framework.
+
+Having been involved as the project's supervisor from the start,
+Joachim Schrod is xindy's lead maintainer since 2000. Together with
+Christine Detig, he wrote the LaTeX Companion (2nd ed.) chapter on
+indexing where xindy is presented. As part of that work, he designed
+and realized user commands and xindy base modules. Ordrules, the basic
+rule evaluation facility, is also his work; though he tries to forget
+this when he looks at the code. Joachim also creates the `official'
+releases, eventually, after some time, well, after a long time.
+
+Thomas Henlich wrote the make-rules package that generates xindy
+sort-rules for many languages, with special support for LaTeX Internal
+Character Representations (the markup that appears in *.idx files).
+Martin Vermeer contributed many improvements to this package.
+
+Gour took over the herculian task to create a source distribution from
+the shattered source parts, i.e., this current distribution form that
+uses autoconf/automake and can be installed with the canonical
+"./configure ; make ; make install" procedure. He also maintains the
+Gentoo ebuild package of xindy.
+
+Jörg Sommer chimed in and improved Gour's installation process by
+enabling to use an already installed CLISP. He is also the Debian
+package maintainer of xindy.
+
+
+Email addresses for the authors are best looked up in the mailing list
+archives.
diff --git a/Build/source/utils/xindy/COPYING b/Build/source/utils/xindy/COPYING
new file mode 100644
index 00000000000..d511905c164
--- /dev/null
+++ b/Build/source/utils/xindy/COPYING
@@ -0,0 +1,339 @@
+ GNU GENERAL PUBLIC LICENSE
+ Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+ Preamble
+
+ The licenses for most software are designed to take away your
+freedom to share and change it. By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users. This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it. (Some other Free Software Foundation software is covered by
+the GNU Lesser General Public License instead.) You can apply it to
+your programs, too.
+
+ When we speak of free software, we are referring to freedom, not
+price. Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+ To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+ For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have. You must make sure that they, too, receive or can get the
+source code. And you must show them these terms so they know their
+rights.
+
+ We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+ Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software. If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+ Finally, any free program is threatened constantly by software
+patents. We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary. To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+ The precise terms and conditions for copying, distribution and
+modification follow.
+
+ GNU GENERAL PUBLIC LICENSE
+ TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+ 0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License. The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language. (Hereinafter, translation is included without limitation in
+the term "modification".) Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope. The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+ 1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+ 2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+ a) You must cause the modified files to carry prominent notices
+ stating that you changed the files and the date of any change.
+
+ b) You must cause any work that you distribute or publish, that in
+ whole or in part contains or is derived from the Program or any
+ part thereof, to be licensed as a whole at no charge to all third
+ parties under the terms of this License.
+
+ c) If the modified program normally reads commands interactively
+ when run, you must cause it, when started running for such
+ interactive use in the most ordinary way, to print or display an
+ announcement including an appropriate copyright notice and a
+ notice that there is no warranty (or else, saying that you provide
+ a warranty) and that users may redistribute the program under
+ these conditions, and telling the user how to view a copy of this
+ License. (Exception: if the Program itself is interactive but
+ does not normally print such an announcement, your work based on
+ the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole. If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works. But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+ 3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+ a) Accompany it with the complete corresponding machine-readable
+ source code, which must be distributed under the terms of Sections
+ 1 and 2 above on a medium customarily used for software interchange; or,
+
+ b) Accompany it with a written offer, valid for at least three
+ years, to give any third party, for a charge no more than your
+ cost of physically performing source distribution, a complete
+ machine-readable copy of the corresponding source code, to be
+ distributed under the terms of Sections 1 and 2 above on a medium
+ customarily used for software interchange; or,
+
+ c) Accompany it with the information you received as to the offer
+ to distribute corresponding source code. (This alternative is
+ allowed only for noncommercial distribution and only if you
+ received the program in object code or executable form with such
+ an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it. For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable. However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+ 4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License. Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+ 5. You are not required to accept this License, since you have not
+signed it. However, nothing else grants you permission to modify or
+distribute the Program or its derivative works. These actions are
+prohibited by law if you do not accept this License. Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+ 6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions. You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+ 7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License. If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all. For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices. Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+ 8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded. In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+ 9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time. Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number. If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation. If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+ 10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission. For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this. Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+ NO WARRANTY
+
+ 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+ 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+ END OF TERMS AND CONDITIONS
+
+ How to Apply These Terms to Your New Programs
+
+ If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+ To do so, attach the following notices to the program. It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+ <one line to give the program's name and a brief idea of what it does.>
+ Copyright (C) <year> <name of author>
+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+ Gnomovision version 69, Copyright (C) year name of author
+ Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+ This is free software, and you are welcome to redistribute it
+ under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License. Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary. Here is a sample; alter the names:
+
+ Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+ `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+ <signature of Ty Coon>, 1 April 1989
+ Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs. If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library. If this is what you want to do, use the GNU Lesser General
+Public License instead of this License.
diff --git a/Build/source/utils/xindy/ChangeLog.Gour b/Build/source/utils/xindy/ChangeLog.Gour
new file mode 100644
index 00000000000..fea2da3a6e0
--- /dev/null
+++ b/Build/source/utils/xindy/ChangeLog.Gour
@@ -0,0 +1,338 @@
+Fri Jul 8 13:26:54 CEST 2005 dev@atmarama.org
+ tagged xindy-0.8.0 (aka xindy-2.2-beta2)
+
+Fri Jul 8 13:24:33 CEST 2005 dev@atmarama.org
+ * added setup.sh script to fix-perms script
+
+Fri Jul 8 11:32:18 CEST 2005 dev@atmarama.org
+ * bump version to xindy-2.2-beta2
+
+Fri Jul 8 11:31:06 CEST 2005 dev@atmarama.org
+ * applied changes for BUILDRULES (Makefile.ins)
+
+Fri Jul 8 11:19:55 CEST 2005 dev@atmarama.org
+ * added yindy.ebuild to the repo
+
+Fri Jul 8 11:16:12 CEST 2005 dev@atmarama.org
+ * added 'build make-rules' as a FEATURE
+
+Fri Jul 8 09:39:04 CEST 2005 dev@atmarama.org
+ * moving to beta2 target
+
+Fri Jul 8 09:38:11 CEST 2005 dev@atmarama.org
+ * added setup.sh to EXTRA_DIST
+
+Fri Jul 8 08:33:05 CEST 2005 dev@atmarama.org
+ * replaced iconv .. -t LATIN? --> iconv .. -t ISO8859-? to make Solaris & co. happy
+
+Fri Jul 8 07:57:26 CEST 2005 dev@atmarama.org
+ * replaced iconv --from-code .. to iconv -f ..
+
+Fri Jul 8 07:42:15 CEST 2005 dev@atmarama.org
+ * applied Joachim's clisp patch
+
+Thu Jul 7 21:41:13 CEST 2005 dev@atmarama.org
+ * added setup.sh script for handling binary distribution
+
+Thu Jul 7 21:40:14 CEST 2005 dev@atmarama.org
+ * removed some confusing trailing spaces in ../alphabets/Makefile.am and made BUILDDOCS=yes
+
+Mon Jul 4 15:18:04 CEST 2005 dev@atmarama.org
+ * removed some extra trailing spaces which confuse some 'make' program(s)
+
+Sun Jul 3 12:02:10 CEST 2005 dev@atmarama.org
+ tagged xindy-0.7.0 (aka xindy-2.2-beta1)
+
+Sun Jul 3 11:48:48 CEST 2005 dev@atmarama.org
+ * added some missing (& obscure) .* clisp files
+
+Sun Jul 3 11:32:48 CEST 2005 dev@atmarama.org
+ * $(clispdir)/src/.gdbinit added to fix-perms script
+
+Sun Jul 3 11:27:50 CEST 2005 dev@atmarama.org
+ * clisp's configure --> fix-perms
+
+Sun Jul 3 11:20:44 CEST 2005 dev@atmarama.org
+ * added clisp's configure to fix-perms #$:#"#!%&$#!!
+
+Sun Jul 3 11:11:39 CEST 2005 dev@atmarama.org
+ * added ../user-commands/texindy to fix-perms script
+
+Sun Jul 3 11:05:28 CEST 2005 dev@atmarama.org
+ * added modified fix-perms script
+
+Sun Jul 3 11:03:31 CEST 2005 dev@atmarama.org
+ * fix for xindy.in
+
+Sun Jul 3 10:20:24 CEST 2005 dev@atmarama.org
+ * new Makefile.am rule for xindy.in --> xindy
+
+Sun Jul 3 10:17:42 CEST 2005 dev@atmarama.org
+ * removing some generated files in $clispdir
+
+Sun Jul 3 10:14:46 CEST 2005 dev@atmarama.org
+ * 'xindy' script is not built via configure.ac any longer
+
+Sun Jul 3 08:08:24 CEST 2005 dev@atmarama.org
+ * we're up(de)grading to 2.2-beta1 :-)
+
+Sun Jul 3 08:07:23 CEST 2005 dev@atmarama.org
+ * include modified clisp's configure in the DIST rule
+
+Sat Jul 2 22:32:23 CEST 2005 dev@atmarama.org
+ tagged xindy-0.6.0
+
+Sat Jul 2 22:31:38 CEST 2005 dev@atmarama.org
+ * 'darcs dist' is used for creating xindy distribution!
+
+Sat Jul 2 22:28:45 CEST 2005 dev@atmarama.org
+ * added (fixed) 'fix-perms' script
+
+Sat Jul 2 22:25:17 CEST 2005 dev@atmarama.org
+ * new fix-perms script
+
+Sat Jul 2 22:21:15 CEST 2005 dev@atmarama.org
+ * new fix-perms script
+
+Sat Jul 2 22:14:34 CEST 2005 dev@atmarama.org
+ * removed old fix-perms script
+
+Sat Jul 2 22:09:00 CEST 2005 dev@atmarama.org
+ tagged xindy-0.5.3
+
+Sat Jul 2 22:08:04 CEST 2005 dev@atmarama.org
+ * added 'fix-perms' script to handle 'darcs dist' rule
+
+Sat Jul 2 21:00:37 CEST 2005 dev@atmarama.org
+ * remove some additional files in 'clispdir' to match pristine source
+
+Sat Jul 2 20:10:58 CEST 2005 dev@atmarama.org
+ tagged xindy-0.5.2
+
+Sat Jul 2 20:09:51 CEST 2005 dev@atmarama.org
+ * some typos and added 'clisp-test.c' to distclean rule
+
+Sat Jul 2 19:47:48 CEST 2005 dev@atmarama.org
+ * always clean docs in ../make-rules/alphabets
+
+Sat Jul 2 18:36:11 CEST 2005 dev@atmarama.org
+ tagged xindy-0.5.1
+
+Sat Jul 2 18:34:48 CEST 2005 dev@atmarama.org
+ * install doc in the $(PACKAGE_NAME)-$(PACKAGE_VERSION)
+
+Sat Jul 2 18:12:08 CEST 2005 dev@atmarama.org
+ * added 'build docs' as a FEATURE, removed generated file 'clisp-test.c' & removed 'clisp-distribution' from rte/Makefile.am
+
+Sat Jul 2 10:50:53 CEST 2005 dev@atmarama.org
+ tagged xindy-0.5.0 (aka alpha5)
+
+Sat Jul 2 10:49:40 CEST 2005 dev@atmarama.org
+ * we're ready for alpha5
+
+Sat Jul 2 10:46:52 CEST 2005 dev@atmarama.org
+ * changed class of alphabets-doc.tex article --> report and some cosmetic changes
+
+Sat Jul 2 10:44:06 CEST 2005 dev@atmarama.org
+ * more alphabets enabled in generated aplhabets-doc.pdf
+
+Sat Jul 2 08:22:07 CEST 2005 dev@atmarama.org
+ * patch to test Mac OS X and compile clisp without faulty readline (rte/configure)
+
+Sat Jul 2 08:08:14 CEST 2005 dev@atmarama.org
+ * ordrules patch applied
+
+Fri Jul 1 23:13:09 CEST 2005 dev@atmarama.org
+ tagged xindy-0.4.3
+
+Fri Jul 1 23:09:48 CEST 2005 dev@atmarama.org
+ * (final ?) fix for xindy.run perm & some fixes for alphabets' docs
+
+Fri Jul 1 18:19:45 CEST 2005 dev@atmarama.org
+ * removed make-rules/alphabets lambda-related scripts
+
+Fri Jul 1 18:14:39 CEST 2005 dev@atmarama.org
+ tagged xindy-0.4.2
+
+Fri Jul 1 18:13:37 CEST 2005 dev@atmarama.org
+ * we're going into xindy-2.3-alpha5 version
+
+Fri Jul 1 18:12:40 CEST 2005 dev@atmarama.org
+ * modules/ord & modules/rules incorporated, fixed perms for xindy.mem
+
+Fri Jul 1 17:35:32 CEST 2005 dev@atmarama.org
+ * added modules/ord files
+
+Fri Jul 1 17:32:10 CEST 2005 dev@atmarama.org
+ * added modules/rules files
+
+Fri Jul 1 17:29:07 CEST 2005 dev@atmarama.org
+ * changed perms for the whole package 755/644
+
+Fri Jul 1 15:20:00 CEST 2005 dev@atmarama.org
+ * added m4/ac_prog_pdflatex.m4 macro
+
+Fri Jul 1 15:16:40 CEST 2005 dev@atmarama.org
+ * back to old rte/configure
+
+Fri Jul 1 12:17:46 CEST 2005 dev@atmarama.org
+ * fix for rte/configure enabling one to pass arguments to clisp's configure
+
+Fri Jul 1 11:43:01 CEST 2005 dev@atmarama.org
+ tagged xindy-0.4.1
+
+Fri Jul 1 11:40:39 CEST 2005 dev@atmarama.org
+ * modified rule for ../inputenc/latin.xdy
+
+Fri Jul 1 11:02:56 CEST 2005 dev@atmarama.org
+ * added rules for latin.xdy in ..make-rules/inputenc
+
+Fri Jul 1 10:44:46 CEST 2005 dev@atmarama.org
+ * added isolatin*.xdy files in ..modules/tex folder
+
+Fri Jul 1 10:09:51 CEST 2005 dev@atmarama.org
+ * only xindy.run requires +x attribute
+
+Thu Jun 30 20:36:04 CEST 2005 dev@atmarama.org
+ tagged xindy-0.4.0 (aka alpha4)
+
+Thu Jun 30 20:35:03 CEST 2005 dev@atmarama.org
+ * polishing distribution (TODO 'clisp' distribution!)
+
+Thu Jun 30 10:36:31 CEST 2005 dev@atmarama.org
+ tagged xindy-0.3.4
+
+Thu Jun 30 10:35:59 CEST 2005 dev@atmarama.org
+ * polishing distribution (make-rules, modules)
+
+Thu Jun 30 09:57:57 CEST 2005 dev@atmarama.org
+ tagged xindy-0.3.3
+
+Thu Jun 30 09:56:28 CEST 2005 dev@atmarama.org
+ * polishing distribution (binaries, doc, user-commands, src, tex2xindy)
+
+Thu Jun 30 08:27:02 CEST 2005 dev@atmarama.org
+ * introduced rule for *.fas (binaries/Makefile.am)
+
+Thu Jun 30 07:12:38 CEST 2005 dev@atmarama.org
+ tagged xindy-0.3.2
+
+Thu Jun 30 07:08:25 CEST 2005 dev@atmarama.org
+ * fixed mechanism for handling $lib_dir & $modules_dir in 'xindy' script
+
+Wed Jun 29 17:50:17 CEST 2005 dev@atmarama.org
+ * typo in ..alphabets/slovak/Makefile.am
+
+Wed Jun 29 17:48:05 CEST 2005 dev@atmarama.org
+ * fixed typo in ..alphabets/russian/Makefile.am
+
+Wed Jun 29 17:44:52 CEST 2005 dev@atmarama.org
+ * some fixes in binaries/Makefile.am
+
+Tue Jun 28 14:10:52 CEST 2005 dev@atmarama.org
+ tagged xindy-0.3.1 (aka alpha3 - fixed)
+
+Tue Jun 28 14:08:58 CEST 2005 dev@atmarama.org
+ * obsolete comments about building clisp are commented & replaced with relevant info (it got lost :-o
+
+Tue Jun 28 13:31:36 CEST 2005 dev@atmarama.org
+ tagged xindy-0.3.0 (aka alpha3)
+
+Tue Jun 28 13:30:52 CEST 2005 dev@atmarama.org
+ * make-rules module completed (alpha3 release)
+
+Tue Jun 28 13:28:59 CEST 2005 dev@atmarama.org
+ * new tex2xindy.l
+
+Tue Jun 28 13:27:34 CEST 2005 dev@atmarama.org
+ * added creation of *-utf8.pl scripts
+
+Tue Jun 28 12:04:52 CEST 2005 dev@atmarama.org
+ * turkish, ukrainian, upper-sorbian & vietnamese
+
+Tue Jun 28 11:49:41 CEST 2005 dev@atmarama.org
+ * romanian, russian, serbian, slovak, slovenian, spanish & swedish
+
+Tue Jun 28 10:48:17 CEST 2005 dev@atmarama.org
+ * macedonian, mongolian, norwegian, polish & portuguese
+
+Tue Jun 28 10:31:45 CEST 2005 dev@atmarama.org
+ * klingon, kurdish, latin, latvian, lithuanian & lower-sorbian
+
+Tue Jun 28 08:58:50 CEST 2005 dev@atmarama.org
+ * icelandic & italian
+
+Mon Jun 27 20:19:39 CEST 2005 dev@atmarama.org
+ * hausa, hebrew & hungarian
+
+Mon Jun 27 20:09:09 CEST 2005 dev@atmarama.org
+ * general, georgian, german, greek & gypsy
+
+Mon Jun 27 19:02:41 CEST 2005 dev@atmarama.org
+ * finnish & french
+
+Mon Jun 27 18:40:34 CEST 2005 dev@atmarama.org
+ * esperanto & estonian
+
+Mon Jun 27 18:21:47 CEST 2005 dev@atmarama.org
+ * dutch & english
+
+Mon Jun 27 17:31:11 CEST 2005 dev@atmarama.org
+ * czech & danish
+
+Mon Jun 27 16:29:56 CEST 2005 dev@atmarama.org
+ * bulgarian & croatian
+
+Mon Jun 27 15:49:50 CEST 2005 dev@atmarama.org
+ * albanian & belarusian
+
+Fri Jun 24 14:05:00 CEST 2005 dev@atmarama.org
+ * adde m4/ac_prog_latex.m4 macro for checking 'latex'
+
+Thu Jun 23 13:37:15 CEST 2005 dev@atmarama.org
+ tagged xindy-0.2.0
+
+Thu Jun 23 13:36:12 CEST 2005 dev@atmarama.org
+ * finished 'styles' & 'inputenc' modules in make-rules
+
+Thu Jun 23 10:21:25 CEST 2005 dev@atmarama.org
+ * removed obsolete Makefiles & prepared 'inputenc' module
+
+Wed Jun 22 22:39:03 CEST 2005 dev@atmarama.org
+ * preparation for inclusion of 'make-rules' module
+
+Wed Jun 22 09:56:50 CEST 2005 dev@atmarama.org
+ tagged xindy-0.1.4
+
+Wed Jun 22 09:55:58 CEST 2005 dev@atmarama.org
+ * removed ChangeLog from repo
+
+Wed Jun 22 09:53:00 CEST 2005 dev@atmarama.org
+ * removed make-rules/xorty
+
+Wed Jun 22 09:45:11 CEST 2005 dev@atmarama.org
+ tagged xindy-0.1.3
+
+Wed Jun 22 09:20:24 CEST 2005 dev@atmarama.org
+ * xindy.in mechanism for handling 'lib_dir' & 'modules_dir' added
+
+Wed Jun 22 08:48:19 CEST 2005 dev@atmarama.org
+ tagged xindy-0.1.2
+
+Wed Jun 22 08:46:36 CEST 2005 dev@atmarama.org
+ * obsolete comments about building clisp are commented & replaced with relevant info
+
+Wed Jun 22 08:21:58 CEST 2005 dev@atmarama.org
+ * removed 'mkdir -p' & added 'dist-hook' in top-level Makefile.am to preserve scripts' perms
+
+Tue Jun 21 16:12:50 CEST 2005 dev@atmarama.org
+ tagged xindy-0.1.1
+
+Tue Jun 21 16:12:05 CEST 2005 dev@atmarama.org
+ * added missing *.in files
+
+Mon Jun 20 15:20:59 CEST 2005 dev@atmarama.org
+ tagged xindy-0.1.0 (aka xindy-2.3-alpha2)
+
+Mon Jun 20 15:17:00 CEST 2005 dev@atmarama.org
+ * xindy-2.3-alpha2
diff --git a/Build/source/utils/xindy/INSTALL b/Build/source/utils/xindy/INSTALL
new file mode 100644
index 00000000000..29c3f49ad6d
--- /dev/null
+++ b/Build/source/utils/xindy/INSTALL
@@ -0,0 +1,265 @@
+Installation Instructions
+*************************
+
+Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002, 2004, 2005 Free
+Software Foundation, Inc.
+Copyright (C) 2008 Joachim Schrod <jschrod@acm.org>
+
+This file is free documentation; the Free Software Foundation gives
+unlimited permission to copy, distribute and modify it. Additions by
+Joachim Schrod, giving the same permissions.
+
+
+xindy Specifics
+===============
+
+GNU Make is required.
+E.g., on FreeBSD or Solaris, this means to install an appropriate
+package and use the command `gmake' instead of `make'.
+
+An installed LaTeX system is required. It is needed to create the
+LaTeX-specific part of the sort rules that knows how to handle LaTeX
+Internal Character Encodings from *.idx files.
+
+Perl is required and expected in /usr/bin/perl.
+Someday in the future, this will be autoconf'ed, too.
+
+We know that xindy compiles with gcc (version 3 and 4). We don't know
+about other compilers.
+
+xindy contains CLISP, see http://clisp.cons.org/. If you have CLISP
+installed already, you can use it with the configure option
+--enable-external-clisp, maybe you need to specify --clisp-path and
+--clisp-dir, too. This is not intensively tested, though; if you have
+problems with the resulting xindy system, please try it again with the
+xindy-internal CLISP.
+
+
+
+Basic Installation
+==================
+
+These are generic installation instructions.
+
+ The `configure' shell script attempts to guess correct values for
+various system-dependent variables used during compilation. It uses
+those values to create a `Makefile' in each directory of the package.
+It may also create one or more `.h' files containing system-dependent
+definitions. Finally, it creates a shell script `config.status' that
+you can run in the future to recreate the current configuration, and a
+file `config.log' containing compiler output (useful mainly for
+debugging `configure').
+
+ It can also use an optional file (typically called `config.cache'
+and enabled with `--cache-file=config.cache' or simply `-C') that saves
+the results of its tests to speed up reconfiguring. (Caching is
+disabled by default to prevent problems with accidental use of stale
+cache files.)
+
+ If you need to do unusual things to compile the package, please try
+to figure out how `configure' could check whether to do them, and mail
+diffs or instructions to the address given in the `README' so they can
+be considered for the next release. If you are using the cache, and at
+some point `config.cache' contains results you don't want to keep, you
+may remove or edit it.
+
+ The file `configure.ac' (or `configure.in') is used to create
+`configure' by a program called `autoconf'. You only need
+`configure.ac' if you want to change it or regenerate `configure' using
+a newer version of `autoconf'.
+
+The simplest way to compile this package is:
+
+ 1. `cd' to the directory containing the package's source code and type
+ `./configure' to configure the package for your system. If you're
+ using `csh' on an old version of System V, you might need to type
+ `sh ./configure' instead to prevent `csh' from trying to execute
+ `configure' itself.
+
+ Running `configure' takes awhile. While running, it prints some
+ messages telling which features it is checking for.
+
+ 2. Type `make' to compile the package.
+
+ 3. Optionally, type `make check' to run any self-tests that come with
+ the package.
+
+ 4. Type `make install' to install the programs and any data files and
+ documentation.
+
+ 5. You can remove the program binaries and object files from the
+ source code directory by typing `make clean'. To also remove the
+ files that `configure' created (so you can compile the package for
+ a different kind of computer), type `make distclean'. There is
+ also a `make maintainer-clean' target, but that is intended mainly
+ for the package's developers. If you use it, you may have to get
+ all sorts of other programs in order to regenerate files that came
+ with the distribution.
+
+Compilers and Options
+=====================
+
+Some systems require unusual options for compilation or linking that the
+`configure' script does not know about. Run `./configure --help' for
+details on some of the pertinent environment variables.
+
+ You can give `configure' initial values for configuration parameters
+by setting variables in the command line or in the environment. Here
+is an example:
+
+ ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
+
+ *Note Defining Variables::, for more details.
+
+Compiling For Multiple Architectures
+====================================
+
+You can compile the package for more than one kind of computer at the
+same time, by placing the object files for each architecture in their
+own directory. To do this, you must use a version of `make' that
+supports the `VPATH' variable, such as GNU `make'. `cd' to the
+directory where you want the object files and executables to go and run
+the `configure' script. `configure' automatically checks for the
+source code in the directory that `configure' is in and in `..'.
+
+ If you have to use a `make' that does not support the `VPATH'
+variable, you have to compile the package for one architecture at a
+time in the source code directory. After you have installed the
+package for one architecture, use `make distclean' before reconfiguring
+for another architecture.
+
+Installation Names
+==================
+
+By default, `make install' will install the package's files in
+`/usr/local/bin', `/usr/local/man', etc. You can specify an
+installation prefix other than `/usr/local' by giving `configure' the
+option `--prefix=PREFIX'.
+
+ You can specify separate installation prefixes for
+architecture-specific files and architecture-independent files. If you
+give `configure' the option `--exec-prefix=PREFIX', the package will
+use PREFIX as the prefix for installing programs and libraries.
+Documentation and other data files will still use the regular prefix.
+
+ In addition, if you use an unusual directory layout you can give
+options like `--bindir=DIR' to specify different values for particular
+kinds of files. Run `configure --help' for a list of the directories
+you can set and what kinds of files go in them.
+
+ If the package supports it, you can cause programs to be installed
+with an extra prefix or suffix on their names by giving `configure' the
+option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
+
+Optional Features
+=================
+
+Some packages pay attention to `--enable-FEATURE' options to
+`configure', where FEATURE indicates an optional part of the package.
+They may also pay attention to `--with-PACKAGE' options, where PACKAGE
+is something like `gnu-as' or `x' (for the X Window System). The
+`README' should mention any `--enable-' and `--with-' options that the
+package recognizes.
+
+ For packages that use the X Window System, `configure' can usually
+find the X include and library files automatically, but if it doesn't,
+you can use the `configure' options `--x-includes=DIR' and
+`--x-libraries=DIR' to specify their locations.
+
+Specifying the System Type
+==========================
+
+There may be some features `configure' cannot figure out automatically,
+but needs to determine by the type of machine the package will run on.
+Usually, assuming the package is built to be run on the _same_
+architectures, `configure' can figure that out, but if it prints a
+message saying it cannot guess the machine type, give it the
+`--build=TYPE' option. TYPE can either be a short name for the system
+type, such as `sun4', or a canonical name which has the form:
+
+ CPU-COMPANY-SYSTEM
+
+where SYSTEM can have one of these forms:
+
+ OS KERNEL-OS
+
+ See the file `config.sub' for the possible values of each field. If
+`config.sub' isn't included in this package, then this package doesn't
+need to know the machine type.
+
+ If you are _building_ compiler tools for cross-compiling, you should
+use the `--target=TYPE' option to select the type of system they will
+produce code for.
+
+ If you want to _use_ a cross compiler, that generates code for a
+platform different from the build platform, you should specify the
+"host" platform (i.e., that on which the generated programs will
+eventually be run) with `--host=TYPE'.
+
+Sharing Defaults
+================
+
+If you want to set default values for `configure' scripts to share, you
+can create a site shell script called `config.site' that gives default
+values for variables like `CC', `cache_file', and `prefix'.
+`configure' looks for `PREFIX/share/config.site' if it exists, then
+`PREFIX/etc/config.site' if it exists. Or, you can set the
+`CONFIG_SITE' environment variable to the location of the site script.
+A warning: not all `configure' scripts look for a site script.
+
+Defining Variables
+==================
+
+Variables not defined in a site shell script can be set in the
+environment passed to `configure'. However, some packages may run
+configure again during the build, and the customized values of these
+variables may be lost. In order to avoid this problem, you should set
+them in the `configure' command line, using `VAR=value'. For example:
+
+ ./configure CC=/usr/local2/bin/gcc
+
+causes the specified `gcc' to be used as the C compiler (unless it is
+overridden in the site shell script). Here is a another example:
+
+ /bin/bash ./configure CONFIG_SHELL=/bin/bash
+
+Here the `CONFIG_SHELL=/bin/bash' operand causes subsequent
+configuration-related scripts to be executed by `/bin/bash'.
+
+`configure' Invocation
+======================
+
+`configure' recognizes the following options to control how it operates.
+
+`--help'
+`-h'
+ Print a summary of the options to `configure', and exit.
+
+`--version'
+`-V'
+ Print the version of Autoconf used to generate the `configure'
+ script, and exit.
+
+`--cache-file=FILE'
+ Enable the cache: use and save the results of the tests in FILE,
+ traditionally `config.cache'. FILE defaults to `/dev/null' to
+ disable caching.
+
+`--config-cache'
+`-C'
+ Alias for `--cache-file=config.cache'.
+
+`--quiet'
+`--silent'
+`-q'
+ Do not print messages saying which checks are being made. To
+ suppress all normal output, redirect it to `/dev/null' (any error
+ messages will still be shown).
+
+`--srcdir=DIR'
+ Look for the package's source code in directory DIR. Usually
+ `configure' can determine that directory automatically.
+
+`configure' also accepts some other, not widely useful, options. Run
+`configure --help' for more details.
+
diff --git a/Build/source/utils/xindy/Makefile.am b/Build/source/utils/xindy/Makefile.am
new file mode 100644
index 00000000000..4ea465922c4
--- /dev/null
+++ b/Build/source/utils/xindy/Makefile.am
@@ -0,0 +1,45 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+# Makefile for xindy
+
+## Copyright (C) 2004-2005 by Gour.
+## Copyright (C) 2008 by Joachim Schrod.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+## Global options
+
+ACLOCAL_AMFLAGS = -I m4
+
+# do we build make-rules?
+if BUILDRULES
+ MAKE_RULES = make-rules
+endif
+
+# do we build docs?
+if BUILDDOCS
+ DOCS = doc
+endif
+
+SUBDIRS = rte binaries tex2xindy modules user-commands $(MAKE_RULES) $(DOCS)
+
+EXTRA_DIST = src setup.sh ChangeLog.Gour
+
+distclean-local:
+ rm -rf autom4te.cache
+
diff --git a/Build/source/utils/xindy/Makefile.in b/Build/source/utils/xindy/Makefile.in
new file mode 100644
index 00000000000..14e6b83ced1
--- /dev/null
+++ b/Build/source/utils/xindy/Makefile.in
@@ -0,0 +1,448 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+# Makefile for xindy
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = .
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+DIST_COMMON = config.guess config.sub INSTALL NEWS README AUTHORS \
+ $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(top_srcdir)/configure $(am__configure_deps) \
+ $(top_srcdir)/rte/ordrules/Makefile.in \
+ $(top_srcdir)/rte/ordrules/version.lisp.in
+subdir = .
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \
+ configure.lineno configure.status.lineno
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES = rte/ordrules/Makefile rte/ordrules/version.lisp
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = rte binaries tex2xindy modules user-commands make-rules \
+ doc
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+ACLOCAL_AMFLAGS = -I m4
+
+# do we build make-rules?
+@BUILDRULES_TRUE@MAKE_RULES = make-rules
+
+# do we build docs?
+@BUILDDOCS_TRUE@DOCS = doc
+SUBDIRS = rte binaries tex2xindy modules user-commands $(MAKE_RULES) $(DOCS)
+EXTRA_DIST = src setup.sh ChangeLog.Gour
+all: all-recursive
+
+.SUFFIXES:
+am--refresh:
+ @:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ echo ' cd $(srcdir) && $(AUTOMAKE) --foreign '; \
+ cd $(srcdir) && $(AUTOMAKE) --foreign \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ echo ' $(SHELL) ./config.status'; \
+ $(SHELL) ./config.status;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ $(SHELL) ./config.status --recheck
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(srcdir) && $(AUTOCONF)
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS)
+rte/ordrules/Makefile: $(top_builddir)/config.status $(top_srcdir)/rte/ordrules/Makefile.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+rte/ordrules/version.lisp: $(top_builddir)/config.status $(top_srcdir)/rte/ordrules/version.lisp.in
+ cd $(top_builddir) && $(SHELL) ./config.status $@
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-local \
+ distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f $(am__CONFIG_DISTCLEAN_FILES)
+ -rm -rf $(top_srcdir)/autom4te.cache
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am am--refresh check \
+ check-am clean clean-generic clean-recursive ctags \
+ ctags-recursive distclean distclean-generic distclean-local \
+ distclean-recursive distclean-tags dvi dvi-am html html-am \
+ info info-am install install-am install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-strip installcheck installcheck-am \
+ installdirs installdirs-am maintainer-clean \
+ maintainer-clean-generic maintainer-clean-recursive \
+ mostlyclean mostlyclean-generic mostlyclean-recursive pdf \
+ pdf-am ps ps-am tags tags-recursive uninstall uninstall-am \
+ uninstall-info-am
+
+
+distclean-local:
+ rm -rf autom4te.cache
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/NEWS b/Build/source/utils/xindy/NEWS
new file mode 100644
index 00000000000..7de83008e91
--- /dev/null
+++ b/Build/source/utils/xindy/NEWS
@@ -0,0 +1,25 @@
+# $Id: NEWS,v 1.2 2008/01/09 15:14:20 jschrod Exp $
+#------------------------------------------------------------
+
+XINDY RELEASE NOTES
+===================
+
+Version Date Remarks
+
+2.3 2008-01-09 `Gour and Jörg Waited Too Long For It Release'.
+ Source distribution with canonical install procedure.
+ Includes UTF-8 and Omega support.
+ Bug fixes in base modules and *.idx parsing.
+
+2.2 rc2 2005-05-10 2nd release candidate for `LaTeX Companion Release'.
+ Resolved issues:
+ -- Linux release works on glibc 2.3
+ -- Two double quotes in index key are supported
+ -- Options are checked carefully and errors are reported
+ -- Structured version numbers
+ -- Style file tutorial commands work
+
+2.2 rc1 2004-05-28 First release candidate for `LaTeX Companion Release'.
+ New command interface, new distribution strategy
+ (ready-to-run), consolidated distribution of run time
+ engine, kernel, and language modules.
diff --git a/Build/source/utils/xindy/README b/Build/source/utils/xindy/README
new file mode 100644
index 00000000000..6dd454e5273
--- /dev/null
+++ b/Build/source/utils/xindy/README
@@ -0,0 +1,127 @@
+$Id: README.distrib-source,v 1.1 2008/01/09 15:14:21 jschrod Exp $
+------------------------------------------------------------
+
+xindy (`fleXible INDexing sYstem') is a flexible index processor that
+creates tagged index for publication system. xindy merges, sorts, and
+outputs markup for raw index entries. It is highly configurable. It
+supports many languages.
+
+This is the source distribution of xindy release 2.3,
+aka the `Gour and Jörg Waited Too Long For It Release'.
+Release notes are available in the file NEWS, in this directory.
+
+It is available from Sourceforge, see http://www.xindy.org/ for more
+information. This Web Site also contains the most up-to-date
+information about xindy.
+
+
+INSTALLATION (Short Version)
+------------
+Unpack the distribution archive, a directory xindy-<version> will
+be created. Usual steps follow:
+
+ $ cd xindy-<version>
+ $ ./configure
+ $ make
+ $ make install
+
+You need to use GNU make; e.g., on FreeBSD or on Solaris, you need to
+install it and use the command gmake instead of make.
+
+By default, installation will be done in the /usr/local/ tree.
+You can change that with the configure option `--prefix'.
+
+The long version of the installation instructions are in the file
+INSTALL.
+
+Please note: The xindy modules directory location (currently,
+$prefix/lib/xindy/modules/) is bound to be changed in future
+distributions. This only matters if you install additional modules
+there, at future updates.
+
+
+UPDATE INSTALLATION
+-------------------
+There is no specific update installation procedure, sorry. You need to
+install xindy anew.
+
+If you had installed xindy 2.2 RC1 (the LaTeX Companion Release)
+and you had additional xindy module files installed in the system-wide
+directories, you need to move them manually to the new modules tree.
+That is located in $prefix/lib/xindy/modules/ ($prefix is /usr/local/
+by default).
+
+
+USAGE
+-----
+There are two main commands:
+ -- texindy, for creation of indexes for LaTeX documents
+ -- xindy, for generic index creation
+
+Manuals for these commands are installed in appropriate man
+directories and additionally supplied in PDF format, in the
+/doc/ subdirectory of the distribution, which gets installed as
+$prefix/share/doc/xindy-<version>/.
+
+This documentation directory has more documentation. Technical reports
+are on our Web Site, http://www.xindy.org/.
+
+
+KNOWN ISSUES
+------------
+Known problems and wanted enhancements of xindy are documented in our
+SourceForge tracker system, accessible on the Web at
+https://sourceforge.net/tracker/?group_id=10646
+
+
+FEEDBACK / MAILING LIST
+-----------------------
+Everybody is encouraged to port xindy to new platforms. For any kind
+of suggestions, helpful comments, questions, bug reports and such,
+please mail to the xindy mailing list
+
+ xindy-discuss@lists.sourceforge.net
+
+This is a low-volume mailing list; with a few emails per month.
+You can subscribe to the list by visiting
+
+ http://lists.sourceforge.net/lists/listinfo/xindy-discuss
+
+Mailing list archives are public and can be read at
+
+ http://sourceforge.net/mailarchive/forum.php?forum=xindy-discuss
+
+
+DISTRIBUTION CONTENT
+--------------------
+This distribution contains
+ -- xindy run-time environment (rte/)
+ -- xindy kernel (src/, tex2xindy/, user-commands/)
+ -- sort-rules for many languages (make-rules/)
+ -- base xindy styles, as described in the LaTeX Companion (modules/)
+
+
+LEGALESE
+--------
+This package is freely distributable software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License
+(GPL) as published by the Free Software Foundation.
+
+This software is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License in
+the file COPYING along with this package; if not, write to the Free
+Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+The xindy run-time environment contains CLISP, which is released under
+GPL version 2 (only). Please refer to rte/clisp-<version>/COPYRIGHT
+for the specific statement.
+
+The xindy run-time environment contains a xindy-specific CLISP-plugin
+named ordrules, which is released under GPL version 2 or later.
+
+The xindy kernel modules and base styles are released under GPL
+version 2 or later.
diff --git a/Build/source/utils/xindy/aclocal.m4 b/Build/source/utils/xindy/aclocal.m4
new file mode 100644
index 00000000000..f41a3e5b7bc
--- /dev/null
+++ b/Build/source/utils/xindy/aclocal.m4
@@ -0,0 +1,852 @@
+# generated automatically by aclocal 1.9.6 -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004,
+# 2005 Free Software Foundation, Inc.
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_AUTOMAKE_VERSION(VERSION)
+# ----------------------------
+# Automake X.Y traces this macro to ensure aclocal.m4 has been
+# generated from the m4 files accompanying Automake X.Y.
+AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version="1.9"])
+
+# AM_SET_CURRENT_AUTOMAKE_VERSION
+# -------------------------------
+# Call AM_AUTOMAKE_VERSION so it can be traced.
+# This function is AC_REQUIREd by AC_INIT_AUTOMAKE.
+AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
+ [AM_AUTOMAKE_VERSION([1.9.6])])
+
+# AM_AUX_DIR_EXPAND -*- Autoconf -*-
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# For projects using AC_CONFIG_AUX_DIR([foo]), Autoconf sets
+# $ac_aux_dir to `$srcdir/foo'. In other projects, it is set to
+# `$srcdir', `$srcdir/..', or `$srcdir/../..'.
+#
+# Of course, Automake must honor this variable whenever it calls a
+# tool from the auxiliary directory. The problem is that $srcdir (and
+# therefore $ac_aux_dir as well) can be either absolute or relative,
+# depending on how configure is run. This is pretty annoying, since
+# it makes $ac_aux_dir quite unusable in subdirectories: in the top
+# source directory, any form will work fine, but in subdirectories a
+# relative path needs to be adjusted first.
+#
+# $ac_aux_dir/missing
+# fails when called from a subdirectory if $ac_aux_dir is relative
+# $top_srcdir/$ac_aux_dir/missing
+# fails if $ac_aux_dir is absolute,
+# fails when called from a subdirectory in a VPATH build with
+# a relative $ac_aux_dir
+#
+# The reason of the latter failure is that $top_srcdir and $ac_aux_dir
+# are both prefixed by $srcdir. In an in-source build this is usually
+# harmless because $srcdir is `.', but things will broke when you
+# start a VPATH build or use an absolute $srcdir.
+#
+# So we could use something similar to $top_srcdir/$ac_aux_dir/missing,
+# iff we strip the leading $srcdir from $ac_aux_dir. That would be:
+# am_aux_dir='\$(top_srcdir)/'`expr "$ac_aux_dir" : "$srcdir//*\(.*\)"`
+# and then we would define $MISSING as
+# MISSING="\${SHELL} $am_aux_dir/missing"
+# This will work as long as MISSING is not called from configure, because
+# unfortunately $(top_srcdir) has no meaning in configure.
+# However there are other variables, like CC, which are often used in
+# configure, and could therefore not use this "fixed" $ac_aux_dir.
+#
+# Another solution, used here, is to always expand $ac_aux_dir to an
+# absolute PATH. The drawback is that using absolute paths prevent a
+# configured tree to be moved without reconfiguration.
+
+AC_DEFUN([AM_AUX_DIR_EXPAND],
+[dnl Rely on autoconf to set up CDPATH properly.
+AC_PREREQ([2.50])dnl
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+])
+
+# AM_CONDITIONAL -*- Autoconf -*-
+
+# Copyright (C) 1997, 2000, 2001, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 7
+
+# AM_CONDITIONAL(NAME, SHELL-CONDITION)
+# -------------------------------------
+# Define a conditional.
+AC_DEFUN([AM_CONDITIONAL],
+[AC_PREREQ(2.52)dnl
+ ifelse([$1], [TRUE], [AC_FATAL([$0: invalid condition: $1])],
+ [$1], [FALSE], [AC_FATAL([$0: invalid condition: $1])])dnl
+AC_SUBST([$1_TRUE])
+AC_SUBST([$1_FALSE])
+if $2; then
+ $1_TRUE=
+ $1_FALSE='#'
+else
+ $1_TRUE='#'
+ $1_FALSE=
+fi
+AC_CONFIG_COMMANDS_PRE(
+[if test -z "${$1_TRUE}" && test -z "${$1_FALSE}"; then
+ AC_MSG_ERROR([[conditional "$1" was never defined.
+Usually this means the macro was only invoked conditionally.]])
+fi])])
+
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 8
+
+# There are a few dirty hacks below to avoid letting `AC_PROG_CC' be
+# written in clear, in which case automake, when reading aclocal.m4,
+# will think it sees a *use*, and therefore will trigger all it's
+# C support machinery. Also note that it means that autoscan, seeing
+# CC etc. in the Makefile, will ask for an AC_PROG_CC use...
+
+
+# _AM_DEPENDENCIES(NAME)
+# ----------------------
+# See how the compiler implements dependency checking.
+# NAME is "CC", "CXX", "GCJ", or "OBJC".
+# We try a few techniques and use that to set a single cache variable.
+#
+# We don't AC_REQUIRE the corresponding AC_PROG_CC since the latter was
+# modified to invoke _AM_DEPENDENCIES(CC); we would have a circular
+# dependency, and given that the user is not expected to run this macro,
+# just rely on AC_PROG_CC.
+AC_DEFUN([_AM_DEPENDENCIES],
+[AC_REQUIRE([AM_SET_DEPDIR])dnl
+AC_REQUIRE([AM_OUTPUT_DEPENDENCY_COMMANDS])dnl
+AC_REQUIRE([AM_MAKE_INCLUDE])dnl
+AC_REQUIRE([AM_DEP_TRACK])dnl
+
+ifelse([$1], CC, [depcc="$CC" am_compiler_list=],
+ [$1], CXX, [depcc="$CXX" am_compiler_list=],
+ [$1], OBJC, [depcc="$OBJC" am_compiler_list='gcc3 gcc'],
+ [$1], GCJ, [depcc="$GCJ" am_compiler_list='gcc3 gcc'],
+ [depcc="$$1" am_compiler_list=])
+
+AC_CACHE_CHECK([dependency style of $depcc],
+ [am_cv_$1_dependencies_compiler_type],
+[if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_$1_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n ['s/^#*\([a-zA-Z0-9]*\))$/\1/p'] < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_$1_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_$1_dependencies_compiler_type=none
+fi
+])
+AC_SUBST([$1DEPMODE], [depmode=$am_cv_$1_dependencies_compiler_type])
+AM_CONDITIONAL([am__fastdep$1], [
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_$1_dependencies_compiler_type" = gcc3])
+])
+
+
+# AM_SET_DEPDIR
+# -------------
+# Choose a directory name for dependency files.
+# This macro is AC_REQUIREd in _AM_DEPENDENCIES
+AC_DEFUN([AM_SET_DEPDIR],
+[AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+AC_SUBST([DEPDIR], ["${am__leading_dot}deps"])dnl
+])
+
+
+# AM_DEP_TRACK
+# ------------
+AC_DEFUN([AM_DEP_TRACK],
+[AC_ARG_ENABLE(dependency-tracking,
+[ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors])
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+AM_CONDITIONAL([AMDEP], [test "x$enable_dependency_tracking" != xno])
+AC_SUBST([AMDEPBACKSLASH])
+])
+
+# Generate code to set up dependency tracking. -*- Autoconf -*-
+
+# Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+#serial 3
+
+# _AM_OUTPUT_DEPENDENCY_COMMANDS
+# ------------------------------
+AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
+[for mf in $CONFIG_FILES; do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # So let's grep whole file.
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+ dirpart=`AS_DIRNAME("$mf")`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`AS_DIRNAME(["$file"])`
+ AS_MKDIR_P([$dirpart/$fdir])
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+done
+])# _AM_OUTPUT_DEPENDENCY_COMMANDS
+
+
+# AM_OUTPUT_DEPENDENCY_COMMANDS
+# -----------------------------
+# This macro should only be invoked once -- use via AC_REQUIRE.
+#
+# This code is only required when automatic dependency tracking
+# is enabled. FIXME. This creates each `.P' file that we will
+# need in order to bootstrap the dependency handling code.
+AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
+[AC_CONFIG_COMMANDS([depfiles],
+ [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
+ [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
+])
+
+# Do all the work for Automake. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 12
+
+# This macro actually does too much. Some checks are only needed if
+# your package does certain things. But this isn't really a big deal.
+
+# AM_INIT_AUTOMAKE(PACKAGE, VERSION, [NO-DEFINE])
+# AM_INIT_AUTOMAKE([OPTIONS])
+# -----------------------------------------------
+# The call with PACKAGE and VERSION arguments is the old style
+# call (pre autoconf-2.50), which is being phased out. PACKAGE
+# and VERSION should now be passed to AC_INIT and removed from
+# the call to AM_INIT_AUTOMAKE.
+# We support both call styles for the transition. After
+# the next Automake release, Autoconf can make the AC_INIT
+# arguments mandatory, and then we can depend on a new Autoconf
+# release and drop the old call support.
+AC_DEFUN([AM_INIT_AUTOMAKE],
+[AC_PREREQ([2.58])dnl
+dnl Autoconf wants to disallow AM_ names. We explicitly allow
+dnl the ones we care about.
+m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
+AC_REQUIRE([AM_SET_CURRENT_AUTOMAKE_VERSION])dnl
+AC_REQUIRE([AC_PROG_INSTALL])dnl
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+ test -f $srcdir/config.status; then
+ AC_MSG_ERROR([source directory already configured; run "make distclean" there first])
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+AC_SUBST([CYGPATH_W])
+
+# Define the identity of the package.
+dnl Distinguish between old-style and new-style calls.
+m4_ifval([$2],
+[m4_ifval([$3], [_AM_SET_OPTION([no-define])])dnl
+ AC_SUBST([PACKAGE], [$1])dnl
+ AC_SUBST([VERSION], [$2])],
+[_AM_SET_OPTIONS([$1])dnl
+ AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
+ AC_SUBST([VERSION], ['AC_PACKAGE_VERSION'])])dnl
+
+_AM_IF_OPTION([no-define],,
+[AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE", [Name of package])
+ AC_DEFINE_UNQUOTED(VERSION, "$VERSION", [Version number of package])])dnl
+
+# Some tools Automake needs.
+AC_REQUIRE([AM_SANITY_CHECK])dnl
+AC_REQUIRE([AC_ARG_PROGRAM])dnl
+AM_MISSING_PROG(ACLOCAL, aclocal-${am__api_version})
+AM_MISSING_PROG(AUTOCONF, autoconf)
+AM_MISSING_PROG(AUTOMAKE, automake-${am__api_version})
+AM_MISSING_PROG(AUTOHEADER, autoheader)
+AM_MISSING_PROG(MAKEINFO, makeinfo)
+AM_PROG_INSTALL_SH
+AM_PROG_INSTALL_STRIP
+AC_REQUIRE([AM_PROG_MKDIR_P])dnl
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+AC_REQUIRE([AC_PROG_AWK])dnl
+AC_REQUIRE([AC_PROG_MAKE_SET])dnl
+AC_REQUIRE([AM_SET_LEADING_DOT])dnl
+_AM_IF_OPTION([tar-ustar], [_AM_PROG_TAR([ustar])],
+ [_AM_IF_OPTION([tar-pax], [_AM_PROG_TAR([pax])],
+ [_AM_PROG_TAR([v7])])])
+_AM_IF_OPTION([no-dependencies],,
+[AC_PROVIDE_IFELSE([AC_PROG_CC],
+ [_AM_DEPENDENCIES(CC)],
+ [define([AC_PROG_CC],
+ defn([AC_PROG_CC])[_AM_DEPENDENCIES(CC)])])dnl
+AC_PROVIDE_IFELSE([AC_PROG_CXX],
+ [_AM_DEPENDENCIES(CXX)],
+ [define([AC_PROG_CXX],
+ defn([AC_PROG_CXX])[_AM_DEPENDENCIES(CXX)])])dnl
+])
+])
+
+
+# When config.status generates a header, we must update the stamp-h file.
+# This file resides in the same directory as the config header
+# that is generated. The stamp files are numbered to have different names.
+
+# Autoconf calls _AC_AM_CONFIG_HEADER_HOOK (when defined) in the
+# loop where config.status creates the headers, so we can generate
+# our stamp files there.
+AC_DEFUN([_AC_AM_CONFIG_HEADER_HOOK],
+[# Compute $1's index in $config_headers.
+_am_stamp_count=1
+for _am_header in $config_headers :; do
+ case $_am_header in
+ $1 | $1:* )
+ break ;;
+ * )
+ _am_stamp_count=`expr $_am_stamp_count + 1` ;;
+ esac
+done
+echo "timestamp for $1" >`AS_DIRNAME([$1])`/stamp-h[]$_am_stamp_count])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_SH
+# ------------------
+# Define $install_sh.
+AC_DEFUN([AM_PROG_INSTALL_SH],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+AC_SUBST(install_sh)])
+
+# Copyright (C) 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# Check whether the underlying file-system supports filenames
+# with a leading dot. For instance MS-DOS doesn't.
+AC_DEFUN([AM_SET_LEADING_DOT],
+[rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+AC_SUBST([am__leading_dot])])
+
+# Check to see how 'make' treats includes. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# AM_MAKE_INCLUDE()
+# -----------------
+# Check to see how make treats includes.
+AC_DEFUN([AM_MAKE_INCLUDE],
+[am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+AC_MSG_CHECKING([for style of include used by $am_make])
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+ am__include=include
+ am__quote=
+ _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ fi
+fi
+AC_SUBST([am__include])
+AC_SUBST([am__quote])
+AC_MSG_RESULT([$_am_result])
+rm -f confinc confmf
+])
+
+# Fake the existence of programs that GNU maintainers use. -*- Autoconf -*-
+
+# Copyright (C) 1997, 1999, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_MISSING_PROG(NAME, PROGRAM)
+# ------------------------------
+AC_DEFUN([AM_MISSING_PROG],
+[AC_REQUIRE([AM_MISSING_HAS_RUN])
+$1=${$1-"${am_missing_run}$2"}
+AC_SUBST($1)])
+
+
+# AM_MISSING_HAS_RUN
+# ------------------
+# Define MISSING if not defined so far and test if it supports --run.
+# If it does, set am_missing_run to use it, otherwise, to nothing.
+AC_DEFUN([AM_MISSING_HAS_RUN],
+[AC_REQUIRE([AM_AUX_DIR_EXPAND])dnl
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ AC_MSG_WARN([`missing' script is too old or missing])
+fi
+])
+
+# Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_MKDIR_P
+# ---------------
+# Check whether `mkdir -p' is supported, fallback to mkinstalldirs otherwise.
+#
+# Automake 1.8 used `mkdir -m 0755 -p --' to ensure that directories
+# created by `make install' are always world readable, even if the
+# installer happens to have an overly restrictive umask (e.g. 077).
+# This was a mistake. There are at least two reasons why we must not
+# use `-m 0755':
+# - it causes special bits like SGID to be ignored,
+# - it may be too restrictive (some setups expect 775 directories).
+#
+# Do not use -m 0755 and let people choose whatever they expect by
+# setting umask.
+#
+# We cannot accept any implementation of `mkdir' that recognizes `-p'.
+# Some implementations (such as Solaris 8's) are not thread-safe: if a
+# parallel make tries to run `mkdir -p a/b' and `mkdir -p a/c'
+# concurrently, both version can detect that a/ is missing, but only
+# one can create it and the other will error out. Consequently we
+# restrict ourselves to GNU make (using the --version option ensures
+# this.)
+AC_DEFUN([AM_PROG_MKDIR_P],
+[if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # We used to keeping the `.' as first argument, in order to
+ # allow $(mkdir_p) to be used without argument. As in
+ # $(mkdir_p) $(somedir)
+ # where $(somedir) is conditionally defined. However this is wrong
+ # for two reasons:
+ # 1. if the package is installed by a user who cannot write `.'
+ # make install will fail,
+ # 2. the above comment should most certainly read
+ # $(mkdir_p) $(DESTDIR)$(somedir)
+ # so it does not work when $(somedir) is undefined and
+ # $(DESTDIR) is not.
+ # To support the latter case, we have to write
+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+ # so the `.' trick is pointless.
+ mkdir_p='mkdir -p --'
+else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ for d in ./-p ./--version;
+ do
+ test -d $d && rmdir $d
+ done
+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+ if test -f "$ac_aux_dir/mkinstalldirs"; then
+ mkdir_p='$(mkinstalldirs)'
+ else
+ mkdir_p='$(install_sh) -d'
+ fi
+fi
+AC_SUBST([mkdir_p])])
+
+# Helper functions for option handling. -*- Autoconf -*-
+
+# Copyright (C) 2001, 2002, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 3
+
+# _AM_MANGLE_OPTION(NAME)
+# -----------------------
+AC_DEFUN([_AM_MANGLE_OPTION],
+[[_AM_OPTION_]m4_bpatsubst($1, [[^a-zA-Z0-9_]], [_])])
+
+# _AM_SET_OPTION(NAME)
+# ------------------------------
+# Set option NAME. Presently that only means defining a flag for this option.
+AC_DEFUN([_AM_SET_OPTION],
+[m4_define(_AM_MANGLE_OPTION([$1]), 1)])
+
+# _AM_SET_OPTIONS(OPTIONS)
+# ----------------------------------
+# OPTIONS is a space-separated list of Automake options.
+AC_DEFUN([_AM_SET_OPTIONS],
+[AC_FOREACH([_AM_Option], [$1], [_AM_SET_OPTION(_AM_Option)])])
+
+# _AM_IF_OPTION(OPTION, IF-SET, [IF-NOT-SET])
+# -------------------------------------------
+# Execute IF-SET if OPTION is set, IF-NOT-SET otherwise.
+AC_DEFUN([_AM_IF_OPTION],
+[m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
+
+# Check to make sure that the build environment is sane. -*- Autoconf -*-
+
+# Copyright (C) 1996, 1997, 2000, 2001, 2003, 2005
+# Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 4
+
+# AM_SANITY_CHECK
+# ---------------
+AC_DEFUN([AM_SANITY_CHECK],
+[AC_MSG_CHECKING([whether build environment is sane])
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ if test "$[*]" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$[*]" != "X $srcdir/configure conftest.file" \
+ && test "$[*]" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ AC_MSG_ERROR([ls -t appears to fail. Make sure there is not a broken
+alias in your environment])
+ fi
+
+ test "$[2]" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ AC_MSG_ERROR([newly created file is older than distributed files!
+Check your system clock])
+fi
+AC_MSG_RESULT(yes)])
+
+# Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# AM_PROG_INSTALL_STRIP
+# ---------------------
+# One issue with vendor `install' (even GNU) is that you can't
+# specify the program used to strip binaries. This is especially
+# annoying in cross-compiling environments, where the build's strip
+# is unlikely to handle the host's binaries.
+# Fortunately install-sh will honor a STRIPPROG variable, so we
+# always use install-sh in `make install-strip', and initialize
+# STRIPPROG with the value of the STRIP variable (set by the user).
+AC_DEFUN([AM_PROG_INSTALL_STRIP],
+[AC_REQUIRE([AM_PROG_INSTALL_SH])dnl
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+dnl Don't test for $cross_compiling = yes, because it might be `maybe'.
+if test "$cross_compiling" != no; then
+ AC_CHECK_TOOL([STRIP], [strip], :)
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+AC_SUBST([INSTALL_STRIP_PROGRAM])])
+
+# Check how to create a tarball. -*- Autoconf -*-
+
+# Copyright (C) 2004, 2005 Free Software Foundation, Inc.
+#
+# This file is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# serial 2
+
+# _AM_PROG_TAR(FORMAT)
+# --------------------
+# Check how to create a tarball in format FORMAT.
+# FORMAT should be one of `v7', `ustar', or `pax'.
+#
+# Substitute a variable $(am__tar) that is a command
+# writing to stdout a FORMAT-tarball containing the directory
+# $tardir.
+# tardir=directory && $(am__tar) > result.tar
+#
+# Substitute a variable $(am__untar) that extract such
+# a tarball read from stdin.
+# $(am__untar) < result.tar
+AC_DEFUN([_AM_PROG_TAR],
+[# Always define AMTAR for backward compatibility.
+AM_MISSING_PROG([AMTAR], [tar])
+m4_if([$1], [v7],
+ [am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'],
+ [m4_case([$1], [ustar],, [pax],,
+ [m4_fatal([Unknown tar format])])
+AC_MSG_CHECKING([how to create a $1 tar archive])
+# Loop over all known methods to create a tar archive until one works.
+_am_tools='gnutar m4_if([$1], [ustar], [plaintar]) pax cpio none'
+_am_tools=${am_cv_prog_tar_$1-$_am_tools}
+# Do not fold the above two line into one, because Tru64 sh and
+# Solaris sh will not grok spaces in the rhs of `-'.
+for _am_tool in $_am_tools
+do
+ case $_am_tool in
+ gnutar)
+ for _am_tar in tar gnutar gtar;
+ do
+ AM_RUN_LOG([$_am_tar --version]) && break
+ done
+ am__tar="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$$tardir"'
+ am__tar_="$_am_tar --format=m4_if([$1], [pax], [posix], [$1]) -chf - "'"$tardir"'
+ am__untar="$_am_tar -xf -"
+ ;;
+ plaintar)
+ # Must skip GNU tar: if it does not support --format= it doesn't create
+ # ustar tarball either.
+ (tar --version) >/dev/null 2>&1 && continue
+ am__tar='tar chf - "$$tardir"'
+ am__tar_='tar chf - "$tardir"'
+ am__untar='tar xf -'
+ ;;
+ pax)
+ am__tar='pax -L -x $1 -w "$$tardir"'
+ am__tar_='pax -L -x $1 -w "$tardir"'
+ am__untar='pax -r'
+ ;;
+ cpio)
+ am__tar='find "$$tardir" -print | cpio -o -H $1 -L'
+ am__tar_='find "$tardir" -print | cpio -o -H $1 -L'
+ am__untar='cpio -i -H $1 -d'
+ ;;
+ none)
+ am__tar=false
+ am__tar_=false
+ am__untar=false
+ ;;
+ esac
+
+ # If the value was cached, stop now. We just wanted to have am__tar
+ # and am__untar set.
+ test -n "${am_cv_prog_tar_$1}" && break
+
+ # tar/untar a dummy directory, and stop if the command works
+ rm -rf conftest.dir
+ mkdir conftest.dir
+ echo GrepMe > conftest.dir/file
+ AM_RUN_LOG([tardir=conftest.dir && eval $am__tar_ >conftest.tar])
+ rm -rf conftest.dir
+ if test -s conftest.tar; then
+ AM_RUN_LOG([$am__untar <conftest.tar])
+ grep GrepMe conftest.dir/file >/dev/null 2>&1 && break
+ fi
+done
+rm -rf conftest.dir
+
+AC_CACHE_VAL([am_cv_prog_tar_$1], [am_cv_prog_tar_$1=$_am_tool])
+AC_MSG_RESULT([$am_cv_prog_tar_$1])])
+AC_SUBST([am__tar])
+AC_SUBST([am__untar])
+]) # _AM_PROG_TAR
+
+m4_include([m4/ac_prog_latex.m4])
+m4_include([m4/ac_prog_pdflatex.m4])
diff --git a/Build/source/utils/xindy/binaries/Makefile.am b/Build/source/utils/xindy/binaries/Makefile.am
new file mode 100644
index 00000000000..1ed176e4ce8
--- /dev/null
+++ b/Build/source/utils/xindy/binaries/Makefile.am
@@ -0,0 +1,66 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+## Copyright (C) 2008 by Joachim Schrod.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+# some global variables
+SRCDIR = ../src
+FAS = base.fas locref.fas idxstyle.fas index.fas version.fas markup.fas
+DEFAULTS = defaults.xdy
+DUMP_XINDY = $(SRCDIR)/dump-xindy.lsp
+MEMFILE = xindy.mem
+XINDY_RUN = ./xindy.run -q -M ./base.mem
+
+# Where the modules are found at runtime.
+MODULEDIR = $(pkglibdir)/modules
+
+# Where the files xindy.run and xindy.mem should be installed.
+kerneldir = $(pkglibdir)
+
+
+xindy.mem: $(DEFAULTS) $(FAS) base.mem xindy.run
+ rm -f $(MEMFILE)
+ $(XINDY_RUN) -x '(load "$(DUMP_XINDY)")'
+ gzip $(MEMFILE)
+ mv $(MEMFILE).gz $(MEMFILE)
+
+
+$(DEFAULTS):
+ @$(RM) $(DEFAULTS)
+ @echo "Creating file $(DEFAULTS)..."
+ @echo "(setq *load-paths* (list " > $(DEFAULTS)
+ @echo " (pathname \".\")" >> $(DEFAULTS)
+ @echo " (pathname \"$(MODULEDIR)\")))" >> $(DEFAULTS)
+ @echo "Finished $(DEFAULTS)."
+
+%.fas : $(SRCDIR)/%.lsp
+ $(XINDY_RUN) -c $< -o $@
+
+# *.lib files which should be cleaned
+FASLIBS = base.lib locref.lib idxstyle.lib index.lib version.lib markup.lib
+
+kernel_DATA = xindy.mem
+
+kernel_SCRIPTS = xindy.run
+
+CLEANFILES = $(FAS) $(FASLIBS) defaults.xdy base.mem \
+ $(kernel_DATA) $(kernel_SCRIPTS)
+
+
diff --git a/Build/source/utils/xindy/binaries/Makefile.in b/Build/source/utils/xindy/binaries/Makefile.in
new file mode 100644
index 00000000000..2e5320c7180
--- /dev/null
+++ b/Build/source/utils/xindy/binaries/Makefile.in
@@ -0,0 +1,367 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = binaries
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(kerneldir)" "$(DESTDIR)$(kerneldir)"
+kernelSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+SCRIPTS = $(kernel_SCRIPTS)
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+kernelDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(kernel_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+
+# some global variables
+SRCDIR = ../src
+FAS = base.fas locref.fas idxstyle.fas index.fas version.fas markup.fas
+DEFAULTS = defaults.xdy
+DUMP_XINDY = $(SRCDIR)/dump-xindy.lsp
+MEMFILE = xindy.mem
+XINDY_RUN = ./xindy.run -q -M ./base.mem
+
+# Where the modules are found at runtime.
+MODULEDIR = $(pkglibdir)/modules
+
+# Where the files xindy.run and xindy.mem should be installed.
+kerneldir = $(pkglibdir)
+
+# *.lib files which should be cleaned
+FASLIBS = base.lib locref.lib idxstyle.lib index.lib version.lib markup.lib
+kernel_DATA = xindy.mem
+kernel_SCRIPTS = xindy.run
+CLEANFILES = $(FAS) $(FASLIBS) defaults.xdy base.mem \
+ $(kernel_DATA) $(kernel_SCRIPTS)
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign binaries/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign binaries/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-kernelSCRIPTS: $(kernel_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(kerneldir)" || $(mkdir_p) "$(DESTDIR)$(kerneldir)"
+ @list='$(kernel_SCRIPTS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f $$d$$p; then \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " $(kernelSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(kerneldir)/$$f'"; \
+ $(kernelSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(kerneldir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-kernelSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(kernel_SCRIPTS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " rm -f '$(DESTDIR)$(kerneldir)/$$f'"; \
+ rm -f "$(DESTDIR)$(kerneldir)/$$f"; \
+ done
+uninstall-info-am:
+install-kernelDATA: $(kernel_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(kerneldir)" || $(mkdir_p) "$(DESTDIR)$(kerneldir)"
+ @list='$(kernel_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(kernelDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(kerneldir)/$$f'"; \
+ $(kernelDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(kerneldir)/$$f"; \
+ done
+
+uninstall-kernelDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(kernel_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(kerneldir)/$$f'"; \
+ rm -f "$(DESTDIR)$(kerneldir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(SCRIPTS) $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(kerneldir)" "$(DESTDIR)$(kerneldir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-kernelDATA install-kernelSCRIPTS
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-kernelDATA \
+ uninstall-kernelSCRIPTS
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am \
+ install-kernelDATA install-kernelSCRIPTS install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am uninstall-kernelDATA uninstall-kernelSCRIPTS
+
+
+xindy.mem: $(DEFAULTS) $(FAS) base.mem xindy.run
+ rm -f $(MEMFILE)
+ $(XINDY_RUN) -x '(load "$(DUMP_XINDY)")'
+ gzip $(MEMFILE)
+ mv $(MEMFILE).gz $(MEMFILE)
+
+$(DEFAULTS):
+ @$(RM) $(DEFAULTS)
+ @echo "Creating file $(DEFAULTS)..."
+ @echo "(setq *load-paths* (list " > $(DEFAULTS)
+ @echo " (pathname \".\")" >> $(DEFAULTS)
+ @echo " (pathname \"$(MODULEDIR)\")))" >> $(DEFAULTS)
+ @echo "Finished $(DEFAULTS)."
+
+%.fas : $(SRCDIR)/%.lsp
+ $(XINDY_RUN) -c $< -o $@
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/config.guess b/Build/source/utils/xindy/config.guess
new file mode 100755
index 00000000000..910f4ee342a
--- /dev/null
+++ b/Build/source/utils/xindy/config.guess
@@ -0,0 +1,1473 @@
+#! /bin/sh
+# Attempt to guess a canonical system name.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+timestamp='2005-07-08'
+
+# This file is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+
+# Originally written by Per Bothner <per@bothner.com>.
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# This script attempts to guess a canonical system name similar to
+# config.sub. If it succeeds, it prints the system name on stdout, and
+# exits with 0. Otherwise, it exits with 1.
+#
+# The plan is that this can be called by configure scripts if you
+# don't specify an explicit build system type.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION]
+
+Output the configuration name of the system \`$me' is run on.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.guess ($timestamp)
+
+Originally written by Per Bothner.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help" >&2
+ exit 1 ;;
+ * )
+ break ;;
+ esac
+done
+
+if test $# != 0; then
+ echo "$me: too many arguments$help" >&2
+ exit 1
+fi
+
+trap 'exit 1' 1 2 15
+
+# CC_FOR_BUILD -- compiler used by this script. Note that the use of a
+# compiler to aid in system detection is discouraged as it requires
+# temporary files to be created and, as you can see below, it is a
+# headache to deal with in a portable fashion.
+
+# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still
+# use `HOST_CC' if defined, but it is deprecated.
+
+# Portable tmp directory creation inspired by the Autoconf team.
+
+set_cc_for_build='
+trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ;
+trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ;
+: ${TMPDIR=/tmp} ;
+ { tmp=`(umask 077 && mktemp -d -q "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } ||
+ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } ||
+ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } ||
+ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ;
+dummy=$tmp/dummy ;
+tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
+case $CC_FOR_BUILD,$HOST_CC,$CC in
+ ,,) echo "int x;" > $dummy.c ;
+ for c in cc gcc c89 c99 ; do
+ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+ CC_FOR_BUILD="$c"; break ;
+ fi ;
+ done ;
+ if test x"$CC_FOR_BUILD" = x ; then
+ CC_FOR_BUILD=no_compiler_found ;
+ fi
+ ;;
+ ,,*) CC_FOR_BUILD=$CC ;;
+ ,*,*) CC_FOR_BUILD=$HOST_CC ;;
+esac ; set_cc_for_build= ;'
+
+# This is needed to find uname on a Pyramid OSx when run in the BSD universe.
+# (ghazi@noc.rutgers.edu 1994-08-24)
+if (test -f /.attbin/uname) >/dev/null 2>&1 ; then
+ PATH=$PATH:/.attbin ; export PATH
+fi
+
+UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown
+UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown
+UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown
+UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
+
+case "${UNAME_MACHINE}" in
+ i?86)
+ test -z "$VENDOR" && VENDOR=pc
+ ;;
+ *)
+ test -z "$VENDOR" && VENDOR=unknown
+ ;;
+esac
+test -f /etc/SuSE-release -o -f /.buildenv && VENDOR=suse
+
+# Note: order is significant - the case branches are not exclusive.
+
+case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+ *:NetBSD:*:*)
+ # NetBSD (nbsd) targets should (where applicable) match one or
+ # more of the tupples: *-*-netbsdelf*, *-*-netbsdaout*,
+ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently
+ # switched to ELF, *-*-netbsd* would select the old
+ # object file format. This provides both forward
+ # compatibility and a consistent mechanism for selecting the
+ # object file format.
+ #
+ # Note: NetBSD doesn't particularly care about the vendor
+ # portion of the name. We always set it to "unknown".
+ sysctl="sysctl -n hw.machine_arch"
+ UNAME_MACHINE_ARCH=`(/sbin/$sysctl 2>/dev/null || \
+ /usr/sbin/$sysctl 2>/dev/null || echo unknown)`
+ case "${UNAME_MACHINE_ARCH}" in
+ armeb) machine=armeb-unknown ;;
+ arm*) machine=arm-unknown ;;
+ sh3el) machine=shl-unknown ;;
+ sh3eb) machine=sh-unknown ;;
+ *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+ esac
+ # The Operating System including object format, if it has switched
+ # to ELF recently, or will in the future.
+ case "${UNAME_MACHINE_ARCH}" in
+ arm*|i386|m68k|ns32k|sh3*|sparc|vax)
+ eval $set_cc_for_build
+ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep __ELF__ >/dev/null
+ then
+ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout).
+ # Return netbsd for either. FIX?
+ os=netbsd
+ else
+ os=netbsdelf
+ fi
+ ;;
+ *)
+ os=netbsd
+ ;;
+ esac
+ # The OS release
+ # Debian GNU/NetBSD machines have a different userland, and
+ # thus, need a distinct triplet. However, they do not need
+ # kernel version information, so it can be replaced with a
+ # suitable tag, in the style of linux-gnu.
+ case "${UNAME_VERSION}" in
+ Debian*)
+ release='-gnu'
+ ;;
+ *)
+ release=`echo ${UNAME_RELEASE}|sed -e 's/[-_].*/\./'`
+ ;;
+ esac
+ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
+ # contains redundant information, the shorter form:
+ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
+ echo "${machine}-${os}${release}"
+ exit ;;
+ *:OpenBSD:*:*)
+ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
+ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+ exit ;;
+ *:ekkoBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+ exit ;;
+ macppc:MirBSD:*:*)
+ echo powerppc-unknown-mirbsd${UNAME_RELEASE}
+ exit ;;
+ *:MirBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+ exit ;;
+ alpha:OSF1:*:*)
+ case $UNAME_RELEASE in
+ *4.0)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'`
+ ;;
+ *5.*)
+ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'`
+ ;;
+ esac
+ # According to Compaq, /usr/sbin/psrinfo has been available on
+ # OSF/1 and Tru64 systems produced since 1995. I hope that
+ # covers most systems running today. This code pipes the CPU
+ # types through head -n 1, so we only detect the type of CPU 0.
+ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1`
+ case "$ALPHA_CPU_TYPE" in
+ "EV4 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "EV4.5 (21064)")
+ UNAME_MACHINE="alpha" ;;
+ "LCA4 (21066/21068)")
+ UNAME_MACHINE="alpha" ;;
+ "EV5 (21164)")
+ UNAME_MACHINE="alphaev5" ;;
+ "EV5.6 (21164A)")
+ UNAME_MACHINE="alphaev56" ;;
+ "EV5.6 (21164PC)")
+ UNAME_MACHINE="alphapca56" ;;
+ "EV5.7 (21164PC)")
+ UNAME_MACHINE="alphapca57" ;;
+ "EV6 (21264)")
+ UNAME_MACHINE="alphaev6" ;;
+ "EV6.7 (21264A)")
+ UNAME_MACHINE="alphaev67" ;;
+ "EV6.8CB (21264C)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8AL (21264B)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.8CX (21264D)")
+ UNAME_MACHINE="alphaev68" ;;
+ "EV6.9A (21264/EV69A)")
+ UNAME_MACHINE="alphaev69" ;;
+ "EV7 (21364)")
+ UNAME_MACHINE="alphaev7" ;;
+ "EV7.9 (21364A)")
+ UNAME_MACHINE="alphaev79" ;;
+ esac
+ # A Pn.n version is a patched version.
+ # A Vn.n version is a released version.
+ # A Tn.n version is a released field test version.
+ # A Xn.n version is an unreleased experimental baselevel.
+ # 1.2 uses "1.2" for uname -r.
+ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ exit ;;
+ Alpha\ *:Windows_NT*:*)
+ # How do we know it's Interix rather than the generic POSIX subsystem?
+ # Should we change UNAME_MACHINE based on the output of uname instead
+ # of the specific Alpha model?
+ echo alpha-pc-interix
+ exit ;;
+ 21064:Windows_NT:50:3)
+ echo alpha-dec-winnt3.5
+ exit ;;
+ Amiga*:UNIX_System_V:4.0:*)
+ echo m68k-unknown-sysv4
+ exit ;;
+ *:[Aa]miga[Oo][Ss]:*:*)
+ echo ${UNAME_MACHINE}-unknown-amigaos
+ exit ;;
+ *:[Mm]orph[Oo][Ss]:*:*)
+ echo ${UNAME_MACHINE}-unknown-morphos
+ exit ;;
+ *:OS/390:*:*)
+ echo i370-ibm-openedition
+ exit ;;
+ *:z/VM:*:*)
+ echo s390-ibm-zvmoe
+ exit ;;
+ *:OS400:*:*)
+ echo powerpc-ibm-os400
+ exit ;;
+ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
+ echo arm-acorn-riscix${UNAME_RELEASE}
+ exit ;;
+ arm:riscos:*:*|arm:RISCOS:*:*)
+ echo arm-unknown-riscos
+ exit ;;
+ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*)
+ echo hppa1.1-hitachi-hiuxmpp
+ exit ;;
+ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*)
+ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE.
+ if test "`(/bin/universe) 2>/dev/null`" = att ; then
+ echo pyramid-pyramid-sysv3
+ else
+ echo pyramid-pyramid-bsd
+ fi
+ exit ;;
+ NILE*:*:*:dcosx)
+ echo pyramid-pyramid-svr4
+ exit ;;
+ DRS?6000:unix:4.0:6*)
+ echo sparc-icl-nx6
+ exit ;;
+ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*)
+ case `/usr/bin/uname -p` in
+ sparc) echo sparc-icl-nx7; exit ;;
+ esac ;;
+ sun4H:SunOS:5.*:*)
+ echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
+ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ i86pc:SunOS:5.*:*)
+ echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:6*:*)
+ # According to config.sub, this is the proper way to canonicalize
+ # SunOS6. Hard to guess exactly what SunOS6 will be like, but
+ # it's likely to be more like Solaris than SunOS4.
+ echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ sun4*:SunOS:*:*)
+ case "`/usr/bin/arch -k`" in
+ Series*|S4*)
+ UNAME_RELEASE=`uname -v`
+ ;;
+ esac
+ # Japanese Language versions have a version number like `4.1.3-JL'.
+ echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+ exit ;;
+ sun3*:SunOS:*:*)
+ echo m68k-sun-sunos${UNAME_RELEASE}
+ exit ;;
+ sun*:*:4.2BSD:*)
+ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
+ test "x${UNAME_RELEASE}" = "x" && UNAME_RELEASE=3
+ case "`/bin/arch`" in
+ sun3)
+ echo m68k-sun-sunos${UNAME_RELEASE}
+ ;;
+ sun4)
+ echo sparc-sun-sunos${UNAME_RELEASE}
+ ;;
+ esac
+ exit ;;
+ aushp:SunOS:*:*)
+ echo sparc-auspex-sunos${UNAME_RELEASE}
+ exit ;;
+ # The situation for MiNT is a little confusing. The machine name
+ # can be virtually everything (everything which is not
+ # "atarist" or "atariste" at least should have a processor
+ # > m68000). The system name ranges from "MiNT" over "FreeMiNT"
+ # to the lowercase version "mint" (or "freemint"). Finally
+ # the system name "TOS" denotes a system which is actually not
+ # MiNT. But MiNT is downward compatible to TOS, so this should
+ # be no problem.
+ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
+ echo m68k-atari-mint${UNAME_RELEASE}
+ exit ;;
+ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
+ echo m68k-milan-mint${UNAME_RELEASE}
+ exit ;;
+ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
+ echo m68k-hades-mint${UNAME_RELEASE}
+ exit ;;
+ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
+ echo m68k-unknown-mint${UNAME_RELEASE}
+ exit ;;
+ m68k:machten:*:*)
+ echo m68k-apple-machten${UNAME_RELEASE}
+ exit ;;
+ powerpc:machten:*:*)
+ echo powerpc-apple-machten${UNAME_RELEASE}
+ exit ;;
+ RISC*:Mach:*:*)
+ echo mips-dec-mach_bsd4.3
+ exit ;;
+ RISC*:ULTRIX:*:*)
+ echo mips-dec-ultrix${UNAME_RELEASE}
+ exit ;;
+ VAX*:ULTRIX*:*:*)
+ echo vax-dec-ultrix${UNAME_RELEASE}
+ exit ;;
+ 2020:CLIX:*:* | 2430:CLIX:*:*)
+ echo clipper-intergraph-clix${UNAME_RELEASE}
+ exit ;;
+ mips:*:*:UMIPS | mips:*:*:RISCos)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+#ifdef __cplusplus
+#include <stdio.h> /* for printf() prototype */
+ int main (int argc, char *argv[]) {
+#else
+ int main (argc, argv) int argc; char *argv[]; {
+#endif
+ #if defined (host_mips) && defined (MIPSEB)
+ #if defined (SYSTYPE_SYSV)
+ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_SVR4)
+ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+ #endif
+ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
+ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+ #endif
+ #endif
+ exit (-1);
+ }
+EOF
+ $CC_FOR_BUILD -o $dummy $dummy.c &&
+ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+ SYSTEM_NAME=`$dummy $dummyarg` &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo mips-mips-riscos${UNAME_RELEASE}
+ exit ;;
+ Motorola:PowerMAX_OS:*:*)
+ echo powerpc-motorola-powermax
+ exit ;;
+ Motorola:*:4.3:PL8-*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*)
+ echo powerpc-harris-powermax
+ exit ;;
+ Night_Hawk:Power_UNIX:*:*)
+ echo powerpc-harris-powerunix
+ exit ;;
+ m88k:CX/UX:7*:*)
+ echo m88k-harris-cxux7
+ exit ;;
+ m88k:*:4*:R4*)
+ echo m88k-motorola-sysv4
+ exit ;;
+ m88k:*:3*:R3*)
+ echo m88k-motorola-sysv3
+ exit ;;
+ AViiON:dgux:*:*)
+ # DG/UX returns AViiON for all architectures
+ UNAME_PROCESSOR=`/usr/bin/uname -p`
+ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+ then
+ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
+ [ ${TARGET_BINARY_INTERFACE}x = x ]
+ then
+ echo m88k-dg-dgux${UNAME_RELEASE}
+ else
+ echo m88k-dg-dguxbcs${UNAME_RELEASE}
+ fi
+ else
+ echo i586-dg-dgux${UNAME_RELEASE}
+ fi
+ exit ;;
+ M88*:DolphinOS:*:*) # DolphinOS (SVR3)
+ echo m88k-dolphin-sysv3
+ exit ;;
+ M88*:*:R3*:*)
+ # Delta 88k system running SVR3
+ echo m88k-motorola-sysv3
+ exit ;;
+ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3)
+ echo m88k-tektronix-sysv3
+ exit ;;
+ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD)
+ echo m68k-tektronix-bsd
+ exit ;;
+ *:IRIX*:*:*)
+ echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+ exit ;;
+ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
+ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id
+ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX '
+ i*86:AIX:*:*)
+ echo i386-ibm-aix
+ exit ;;
+ ia64:AIX:*:*)
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ fi
+ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+ exit ;;
+ *:AIX:2:3)
+ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <sys/systemcfg.h>
+
+ main()
+ {
+ if (!__power_pc())
+ exit(1);
+ puts("powerpc-ibm-aix3.2.5");
+ exit(0);
+ }
+EOF
+ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+ then
+ echo "$SYSTEM_NAME"
+ else
+ echo rs6000-ibm-aix3.2.5
+ fi
+ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then
+ echo rs6000-ibm-aix3.2.4
+ else
+ echo rs6000-ibm-aix3.2
+ fi
+ exit ;;
+ *:AIX:*:[45])
+ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
+ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+ IBM_ARCH=rs6000
+ else
+ IBM_ARCH=powerpc
+ fi
+ if [ -x /usr/bin/oslevel ] ; then
+ IBM_REV=`/usr/bin/oslevel`
+ else
+ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+ fi
+ echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+ exit ;;
+ *:AIX:*:*)
+ echo rs6000-ibm-aix
+ exit ;;
+ ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+ echo romp-ibm-bsd4.4
+ exit ;;
+ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and
+ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to
+ exit ;; # report: romp-ibm BSD 4.3
+ *:BOSX:*:*)
+ echo rs6000-bull-bosx
+ exit ;;
+ DPX/2?00:B.O.S.:*:*)
+ echo m68k-bull-sysv3
+ exit ;;
+ 9000/[34]??:4.3bsd:1.*:*)
+ echo m68k-hp-bsd
+ exit ;;
+ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*)
+ echo m68k-hp-bsd4.4
+ exit ;;
+ 9000/[34678]??:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ case "${UNAME_MACHINE}" in
+ 9000/31? ) HP_ARCH=m68000 ;;
+ 9000/[34]?? ) HP_ARCH=m68k ;;
+ 9000/[678][0-9][0-9])
+ if [ -x /usr/bin/getconf ]; then
+ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
+ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
+ case "${sc_cpu_version}" in
+ 523) HP_ARCH="hppa1.0" ;; # CPU_PA_RISC1_0
+ 528) HP_ARCH="hppa1.1" ;; # CPU_PA_RISC1_1
+ 532) # CPU_PA_RISC2_0
+ case "${sc_kernel_bits}" in
+ 32) HP_ARCH="hppa2.0n" ;;
+ 64) HP_ARCH="hppa2.0w" ;;
+ '') HP_ARCH="hppa2.0" ;; # HP-UX 10.20
+ esac ;;
+ esac
+ fi
+ if [ "${HP_ARCH}" = "" ]; then
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+
+ #define _HPUX_SOURCE
+ #include <stdlib.h>
+ #include <unistd.h>
+
+ int main ()
+ {
+ #if defined(_SC_KERNEL_BITS)
+ long bits = sysconf(_SC_KERNEL_BITS);
+ #endif
+ long cpu = sysconf (_SC_CPU_VERSION);
+
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1"); break;
+ case CPU_PA_RISC2_0:
+ #if defined(_SC_KERNEL_BITS)
+ switch (bits)
+ {
+ case 64: puts ("hppa2.0w"); break;
+ case 32: puts ("hppa2.0n"); break;
+ default: puts ("hppa2.0"); break;
+ } break;
+ #else /* !defined(_SC_KERNEL_BITS) */
+ puts ("hppa2.0"); break;
+ #endif
+ default: puts ("hppa1.0"); break;
+ }
+ exit (0);
+ }
+EOF
+ (CCOPTS= $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+ test -z "$HP_ARCH" && HP_ARCH=hppa
+ fi ;;
+ esac
+ if [ ${HP_ARCH} = "hppa2.0w" ]
+ then
+ eval $set_cc_for_build
+
+ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
+ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler
+ # generating 64-bit code. GNU and HP use different nomenclature:
+ #
+ # $ CC_FOR_BUILD=cc ./config.guess
+ # => hppa2.0w-hp-hpux11.23
+ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess
+ # => hppa64-hp-hpux11.23
+
+ if echo __LP64__ | (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) |
+ grep __LP64__ >/dev/null
+ then
+ HP_ARCH="hppa2.0w"
+ else
+ HP_ARCH="hppa64"
+ fi
+ fi
+ echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+ exit ;;
+ ia64:HP-UX:*:*)
+ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
+ echo ia64-hp-hpux${HPUX_REV}
+ exit ;;
+ 3050*:HI-UX:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <unistd.h>
+ int
+ main ()
+ {
+ long cpu = sysconf (_SC_CPU_VERSION);
+ /* The order matters, because CPU_IS_HP_MC68K erroneously returns
+ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct
+ results, however. */
+ if (CPU_IS_PA_RISC (cpu))
+ {
+ switch (cpu)
+ {
+ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break;
+ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break;
+ default: puts ("hppa-hitachi-hiuxwe2"); break;
+ }
+ }
+ else if (CPU_IS_HP_MC68K (cpu))
+ puts ("m68k-hitachi-hiuxwe2");
+ else puts ("unknown-hitachi-hiuxwe2");
+ exit (0);
+ }
+EOF
+ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
+ echo unknown-hitachi-hiuxwe2
+ exit ;;
+ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+ echo hppa1.1-hp-bsd
+ exit ;;
+ 9000/8??:4.3bsd:*:*)
+ echo hppa1.0-hp-bsd
+ exit ;;
+ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
+ echo hppa1.0-hp-mpeix
+ exit ;;
+ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+ echo hppa1.1-hp-osf
+ exit ;;
+ hp8??:OSF1:*:*)
+ echo hppa1.0-hp-osf
+ exit ;;
+ i*86:OSF1:*:*)
+ if [ -x /usr/sbin/sysversion ] ; then
+ echo ${UNAME_MACHINE}-unknown-osf1mk
+ else
+ echo ${UNAME_MACHINE}-unknown-osf1
+ fi
+ exit ;;
+ parisc*:Lites*:*:*)
+ echo hppa1.1-hp-lites
+ exit ;;
+ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*)
+ echo c1-convex-bsd
+ exit ;;
+ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+ exit ;;
+ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*)
+ echo c34-convex-bsd
+ exit ;;
+ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*)
+ echo c38-convex-bsd
+ exit ;;
+ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*)
+ echo c4-convex-bsd
+ exit ;;
+ CRAY*Y-MP:*:*:*)
+ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*[A-Z]90:*:*:*)
+ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
+ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
+ -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*TS:*:*:*)
+ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*T3E:*:*:*)
+ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ CRAY*SV1:*:*:*)
+ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ *:UNICOS/mp:*:*)
+ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+ exit ;;
+ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
+ FUJITSU_PROC=`uname -m | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ 5000:UNIX_System_V:4.*:*)
+ FUJITSU_SYS=`uname -p | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/\///'`
+ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz' | sed -e 's/ /_/'`
+ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
+ exit ;;
+ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
+ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+ exit ;;
+ sparc*:BSD/OS:*:*)
+ echo sparc-unknown-bsdi${UNAME_RELEASE}
+ exit ;;
+ *:BSD/OS:*:*)
+ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+ exit ;;
+ *:FreeBSD:*:*)
+ echo ${UNAME_MACHINE}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit ;;
+ i*:CYGWIN*:*)
+ echo ${UNAME_MACHINE}-pc-cygwin
+ exit ;;
+ i*:MINGW*:*)
+ echo ${UNAME_MACHINE}-pc-mingw32
+ exit ;;
+ i*:windows32*:*)
+ # uname -m includes "-pc" on this system.
+ echo ${UNAME_MACHINE}-mingw32
+ exit ;;
+ i*:PW*:*)
+ echo ${UNAME_MACHINE}-pc-pw32
+ exit ;;
+ x86:Interix*:[34]*)
+ echo i586-pc-interix${UNAME_RELEASE}|sed -e 's/\..*//'
+ exit ;;
+ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
+ echo i${UNAME_MACHINE}-pc-mks
+ exit ;;
+ i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
+ # How do we know it's Interix rather than the generic POSIX subsystem?
+ # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
+ # UNAME_MACHINE based on the output of uname instead of i386?
+ echo i586-pc-interix
+ exit ;;
+ i*:UWIN*:*)
+ echo ${UNAME_MACHINE}-pc-uwin
+ exit ;;
+ amd64:CYGWIN*:*:*)
+ echo x86_64-unknown-cygwin
+ exit ;;
+ p*:CYGWIN*:*)
+ echo powerpcle-unknown-cygwin
+ exit ;;
+ prep*:SunOS:5.*:*)
+ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+ exit ;;
+ *:GNU:*:*)
+ # the GNU system
+ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-gnu`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+ exit ;;
+ *:GNU/*:*:*)
+ # other systems with GNU libc and userland
+ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr '[A-Z]' '[a-z]'``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-gnu
+ exit ;;
+ i*86:Minix:*:*)
+ echo ${UNAME_MACHINE}-pc-minix
+ exit ;;
+ arm*:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ cris:Linux:*:*)
+ echo cris-axis-linux
+ exit ;;
+ crisv32:Linux:*:*)
+ echo crisv32-axis-linux
+ exit ;;
+ frv:Linux:*:*)
+ echo frv-${VENDOR}-linux
+ exit ;;
+ ia64:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ m32r*:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ m68*:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ mips:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips
+ #undef mipsel
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mipsel
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux"; exit; }
+ ;;
+ mips64:Linux:*:*)
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #undef CPU
+ #undef mips64
+ #undef mips64el
+ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL)
+ CPU=mips64el
+ #else
+ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB)
+ CPU=mips64
+ #else
+ CPU=
+ #endif
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^CPU=`
+ test x"${CPU}" != x && { echo "${CPU}-${VENDOR}-linux"; exit; }
+ ;;
+ ppc:Linux:*:*)
+ echo powerpc-${VENDOR}-linux
+ exit ;;
+ ppc64:Linux:*:*)
+ echo powerpc64-${VENDOR}-linux
+ exit ;;
+ alpha:Linux:*:*)
+ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
+ EV5) UNAME_MACHINE=alphaev5 ;;
+ EV56) UNAME_MACHINE=alphaev56 ;;
+ PCA56) UNAME_MACHINE=alphapca56 ;;
+ PCA57) UNAME_MACHINE=alphapca56 ;;
+ EV6) UNAME_MACHINE=alphaev6 ;;
+ EV67) UNAME_MACHINE=alphaev67 ;;
+ EV68*) UNAME_MACHINE=alphaev68 ;;
+ esac
+ objdump --private-headers /bin/sh | grep ld.so.1 >/dev/null
+ if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi
+ echo ${UNAME_MACHINE}-${VENDOR}-linux${LIBC}
+ exit ;;
+ parisc:Linux:*:* | hppa:Linux:*:*)
+ # Look for CPU level
+ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
+ PA7*) echo hppa1.1-${VENDOR}-linux ;;
+ PA8*) echo hppa2.0-${VENDOR}-linux ;;
+ *) echo hppa-${VENDOR}-linux ;;
+ esac
+ exit ;;
+ parisc64:Linux:*:* | hppa64:Linux:*:*)
+ echo hppa64-${VENDOR}-linux
+ exit ;;
+ s390:Linux:*:* | s390x:Linux:*:*)
+ echo ${UNAME_MACHINE}-ibm-linux
+ exit ;;
+ sh64*:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ sh*:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ sparc:Linux:*:* | sparc64:Linux:*:*)
+ echo ${UNAME_MACHINE}-${VENDOR}-linux
+ exit ;;
+ x86_64:Linux:*:*)
+ echo x86_64-${VENDOR}-linux
+ exit ;;
+ i*86:Linux:*:*)
+ # The BFD linker knows what the default object file format is, so
+ # first see if it will tell us. cd to the root directory to prevent
+ # problems with other programs or directories called `ld' in the path.
+ # Set LC_ALL=C to ensure ld outputs messages in English.
+ ld_supported_targets=`cd /; LC_ALL=C ld --help 2>&1 \
+ | sed -ne '/supported targets:/!d
+ s/[ ][ ]*/ /g
+ s/.*supported targets: *//
+ s/ .*//
+ p'`
+ case "$ld_supported_targets" in
+ elf32-i386)
+ TENTATIVE="${UNAME_MACHINE}-${VENDOR}-linux"
+ ;;
+ a.out-i386-linux)
+ echo "${UNAME_MACHINE}-${VENDOR}-linuxaout"
+ exit ;;
+ coff-i386)
+ echo "${UNAME_MACHINE}-${VENDOR}-linuxcoff"
+ exit ;;
+ "")
+ # Either a pre-BFD a.out linker (linuxoldld) or
+ # one that does not give us useful --help.
+ echo "${UNAME_MACHINE}-${VENDOR}-linuxoldld"
+ exit ;;
+ esac
+ # Determine whether the default compiler is a.out or elf
+ eval $set_cc_for_build
+ sed 's/^ //' << EOF >$dummy.c
+ #include <features.h>
+ #ifdef __ELF__
+ # ifdef __GLIBC__
+ # if __GLIBC__ >= 2
+ LIBC=gnu
+ # else
+ LIBC=gnulibc1
+ # endif
+ # else
+ LIBC=gnulibc1
+ # endif
+ #else
+ #ifdef __INTEL_COMPILER
+ LIBC=gnu
+ #else
+ LIBC=gnuaout
+ #endif
+ #endif
+ #ifdef __dietlibc__
+ LIBC=dietlibc
+ #endif
+EOF
+ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep ^LIBC=`
+ test x"${LIBC}" != x && {
+ echo "${UNAME_MACHINE}-${VENDOR}-linux-${LIBC}" | sed 's/linux-gnu/linux/'
+ exit
+ }
+ test x"${TENTATIVE}" != x && { echo "${TENTATIVE}"; exit; }
+ ;;
+ i*86:DYNIX/ptx:4*:*)
+ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
+ # earlier versions are messed up and put the nodename in both
+ # sysname and nodename.
+ echo i386-sequent-sysv4
+ exit ;;
+ i*86:UNIX_SV:4.2MP:2.*)
+ # Unixware is an offshoot of SVR4, but it has its own version
+ # number series starting with 2...
+ # I am not positive that other SVR4 systems won't match this,
+ # I just have to hope. -- rms.
+ # Use sysv4.2uw... so that sysv4* matches it.
+ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+ exit ;;
+ i*86:OS/2:*:*)
+ # If we were able to find `uname', then EMX Unix compatibility
+ # is probably installed.
+ echo ${UNAME_MACHINE}-pc-os2-emx
+ exit ;;
+ i*86:XTS-300:*:STOP)
+ echo ${UNAME_MACHINE}-unknown-stop
+ exit ;;
+ i*86:atheos:*:*)
+ echo ${UNAME_MACHINE}-unknown-atheos
+ exit ;;
+ i*86:syllable:*:*)
+ echo ${UNAME_MACHINE}-pc-syllable
+ exit ;;
+ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.0*:*)
+ echo i386-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ i*86:*DOS:*:*)
+ echo ${UNAME_MACHINE}-pc-msdosdjgpp
+ exit ;;
+ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
+ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
+ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+ else
+ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+ fi
+ exit ;;
+ i*86:*:5:[678]*)
+ # UnixWare 7.x, OpenUNIX and OpenServer 6.
+ case `/bin/uname -X | grep "^Machine"` in
+ *486*) UNAME_MACHINE=i486 ;;
+ *Pentium) UNAME_MACHINE=i586 ;;
+ *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
+ esac
+ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+ exit ;;
+ i*86:*:3.2:*)
+ if test -f /usr/options/cb.name; then
+ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
+ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+ elif /bin/uname -X 2>/dev/null >/dev/null ; then
+ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
+ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
+ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \
+ && UNAME_MACHINE=i586
+ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \
+ && UNAME_MACHINE=i686
+ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
+ && UNAME_MACHINE=i686
+ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+ else
+ echo ${UNAME_MACHINE}-pc-sysv32
+ fi
+ exit ;;
+ pc:*:*:*)
+ # Left here for compatibility:
+ # uname -m prints for DJGPP always 'pc', but it prints nothing about
+ # the processor, so we play safe by assuming i386.
+ echo i386-pc-msdosdjgpp
+ exit ;;
+ Intel:Mach:3*:*)
+ echo i386-pc-mach3
+ exit ;;
+ paragon:*:*:*)
+ echo i860-intel-osf1
+ exit ;;
+ i860:*:4.*:*) # i860-SVR4
+ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
+ echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+ else # Add other i860-SVR4 vendors below as they are discovered.
+ echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4
+ fi
+ exit ;;
+ mini*:CTIX:SYS*5:*)
+ # "miniframe"
+ echo m68010-convergent-sysv
+ exit ;;
+ mc68k:UNIX:SYSTEM5:3.51m)
+ echo m68k-convergent-sysv
+ exit ;;
+ M680?0:D-NIX:5.3:*)
+ echo m68k-diab-dnix
+ exit ;;
+ M68*:*:R3V[5678]*:*)
+ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;;
+ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0)
+ OS_REL=''
+ test -r /etc/.relid \
+ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
+ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
+ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \
+ && { echo i486-ncr-sysv4; exit; } ;;
+ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
+ echo m68k-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ mc68030:UNIX_System_V:4.*:*)
+ echo m68k-atari-sysv4
+ exit ;;
+ TSUNAMI:LynxOS:2.*:*)
+ echo sparc-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ rs6000:LynxOS:2.*:*)
+ echo rs6000-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.0*:*)
+ echo powerpc-unknown-lynxos${UNAME_RELEASE}
+ exit ;;
+ SM[BE]S:UNIX_SV:*:*)
+ echo mips-dde-sysv${UNAME_RELEASE}
+ exit ;;
+ RM*:ReliantUNIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ RM*:SINIX-*:*:*)
+ echo mips-sni-sysv4
+ exit ;;
+ *:SINIX-*:*:*)
+ if uname -p 2>/dev/null >/dev/null ; then
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ echo ${UNAME_MACHINE}-sni-sysv4
+ else
+ echo ns32k-sni-sysv
+ fi
+ exit ;;
+ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort
+ # says <Richard.M.Bartel@ccMail.Census.GOV>
+ echo i586-unisys-sysv4
+ exit ;;
+ *:UNIX_System_V:4*:FTX*)
+ # From Gerald Hewes <hewes@openmarket.com>.
+ # How about differentiating between stratus architectures? -djm
+ echo hppa1.1-stratus-sysv4
+ exit ;;
+ *:*:*:FTX*)
+ # From seanf@swdc.stratus.com.
+ echo i860-stratus-sysv4
+ exit ;;
+ i*86:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo ${UNAME_MACHINE}-stratus-vos
+ exit ;;
+ *:VOS:*:*)
+ # From Paul.Green@stratus.com.
+ echo hppa1.1-stratus-vos
+ exit ;;
+ mc68*:A/UX:*:*)
+ echo m68k-apple-aux${UNAME_RELEASE}
+ exit ;;
+ news*:NEWS-OS:6*:*)
+ echo mips-sony-newsos6
+ exit ;;
+ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
+ if [ -d /usr/nec ]; then
+ echo mips-nec-sysv${UNAME_RELEASE}
+ else
+ echo mips-unknown-sysv${UNAME_RELEASE}
+ fi
+ exit ;;
+ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only.
+ echo powerpc-be-beos
+ exit ;;
+ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only.
+ echo powerpc-apple-beos
+ exit ;;
+ BePC:BeOS:*:*) # BeOS running on Intel PC compatible.
+ echo i586-pc-beos
+ exit ;;
+ SX-4:SUPER-UX:*:*)
+ echo sx4-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-5:SUPER-UX:*:*)
+ echo sx5-nec-superux${UNAME_RELEASE}
+ exit ;;
+ SX-6:SUPER-UX:*:*)
+ echo sx6-nec-superux${UNAME_RELEASE}
+ exit ;;
+ Power*:Rhapsody:*:*)
+ echo powerpc-apple-rhapsody${UNAME_RELEASE}
+ exit ;;
+ *:Rhapsody:*:*)
+ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+ exit ;;
+ *:Darwin:*:*)
+ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
+ case $UNAME_PROCESSOR in
+ *86) UNAME_PROCESSOR=i686 ;;
+ unknown) UNAME_PROCESSOR=powerpc ;;
+ esac
+ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+ exit ;;
+ *:procnto*:*:* | *:QNX:[0123456789]*:*)
+ UNAME_PROCESSOR=`uname -p`
+ if test "$UNAME_PROCESSOR" = "x86"; then
+ UNAME_PROCESSOR=i386
+ UNAME_MACHINE=pc
+ fi
+ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+ exit ;;
+ *:QNX:*:4*)
+ echo i386-pc-qnx
+ exit ;;
+ NSE-?:NONSTOP_KERNEL:*:*)
+ echo nse-tandem-nsk${UNAME_RELEASE}
+ exit ;;
+ NSR-?:NONSTOP_KERNEL:*:*)
+ echo nsr-tandem-nsk${UNAME_RELEASE}
+ exit ;;
+ *:NonStop-UX:*:*)
+ echo mips-compaq-nonstopux
+ exit ;;
+ BS2000:POSIX*:*:*)
+ echo bs2000-siemens-sysv
+ exit ;;
+ DS/*:UNIX_System_V:*:*)
+ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+ exit ;;
+ *:Plan9:*:*)
+ # "uname -m" is not consistent, so use $cputype instead. 386
+ # is converted to i386 for consistency with other x86
+ # operating systems.
+ if test "$cputype" = "386"; then
+ UNAME_MACHINE=i386
+ else
+ UNAME_MACHINE="$cputype"
+ fi
+ echo ${UNAME_MACHINE}-unknown-plan9
+ exit ;;
+ *:TOPS-10:*:*)
+ echo pdp10-unknown-tops10
+ exit ;;
+ *:TENEX:*:*)
+ echo pdp10-unknown-tenex
+ exit ;;
+ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*)
+ echo pdp10-dec-tops20
+ exit ;;
+ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*)
+ echo pdp10-xkl-tops20
+ exit ;;
+ *:TOPS-20:*:*)
+ echo pdp10-unknown-tops20
+ exit ;;
+ *:ITS:*:*)
+ echo pdp10-unknown-its
+ exit ;;
+ SEI:*:*:SEIUX)
+ echo mips-sei-seiux${UNAME_RELEASE}
+ exit ;;
+ *:DragonFly:*:*)
+ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+ exit ;;
+ *:*VMS:*:*)
+ UNAME_MACHINE=`(uname -p) 2>/dev/null`
+ case "${UNAME_MACHINE}" in
+ A*) echo alpha-dec-vms ; exit ;;
+ I*) echo ia64-dec-vms ; exit ;;
+ V*) echo vax-dec-vms ; exit ;;
+ esac ;;
+ *:XENIX:*:SysV)
+ echo i386-pc-xenix
+ exit ;;
+ i*86:skyos:*:*)
+ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE}` | sed -e 's/ .*$//'
+ exit ;;
+esac
+
+#echo '(No uname command or uname output not recognized.)' 1>&2
+#echo "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" 1>&2
+
+eval $set_cc_for_build
+cat >$dummy.c <<EOF
+#ifdef _SEQUENT_
+# include <sys/types.h>
+# include <sys/utsname.h>
+#endif
+main ()
+{
+#if defined (sony)
+#if defined (MIPSEB)
+ /* BFD wants "bsd" instead of "newsos". Perhaps BFD should be changed,
+ I don't know.... */
+ printf ("mips-sony-bsd\n"); exit (0);
+#else
+#include <sys/param.h>
+ printf ("m68k-sony-newsos%s\n",
+#ifdef NEWSOS4
+ "4"
+#else
+ ""
+#endif
+ ); exit (0);
+#endif
+#endif
+
+#if defined (__arm) && defined (__acorn) && defined (__unix)
+ printf ("arm-acorn-riscix\n"); exit (0);
+#endif
+
+#if defined (hp300) && !defined (hpux)
+ printf ("m68k-hp-bsd\n"); exit (0);
+#endif
+
+#if defined (NeXT)
+#if !defined (__ARCHITECTURE__)
+#define __ARCHITECTURE__ "m68k"
+#endif
+ int version;
+ version=`(hostinfo | sed -n 's/.*NeXT Mach \([0-9]*\).*/\1/p') 2>/dev/null`;
+ if (version < 4)
+ printf ("%s-next-nextstep%d\n", __ARCHITECTURE__, version);
+ else
+ printf ("%s-next-openstep%d\n", __ARCHITECTURE__, version);
+ exit (0);
+#endif
+
+#if defined (MULTIMAX) || defined (n16)
+#if defined (UMAXV)
+ printf ("ns32k-encore-sysv\n"); exit (0);
+#else
+#if defined (CMU)
+ printf ("ns32k-encore-mach\n"); exit (0);
+#else
+ printf ("ns32k-encore-bsd\n"); exit (0);
+#endif
+#endif
+#endif
+
+#if defined (__386BSD__)
+ printf ("i386-pc-bsd\n"); exit (0);
+#endif
+
+#if defined (sequent)
+#if defined (i386)
+ printf ("i386-sequent-dynix\n"); exit (0);
+#endif
+#if defined (ns32000)
+ printf ("ns32k-sequent-dynix\n"); exit (0);
+#endif
+#endif
+
+#if defined (_SEQUENT_)
+ struct utsname un;
+
+ uname(&un);
+
+ if (strncmp(un.version, "V2", 2) == 0) {
+ printf ("i386-sequent-ptx2\n"); exit (0);
+ }
+ if (strncmp(un.version, "V1", 2) == 0) { /* XXX is V1 correct? */
+ printf ("i386-sequent-ptx1\n"); exit (0);
+ }
+ printf ("i386-sequent-ptx\n"); exit (0);
+
+#endif
+
+#if defined (vax)
+# if !defined (ultrix)
+# include <sys/param.h>
+# if defined (BSD)
+# if BSD == 43
+ printf ("vax-dec-bsd4.3\n"); exit (0);
+# else
+# if BSD == 199006
+ printf ("vax-dec-bsd4.3reno\n"); exit (0);
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# endif
+# else
+ printf ("vax-dec-bsd\n"); exit (0);
+# endif
+# else
+ printf ("vax-dec-ultrix\n"); exit (0);
+# endif
+#endif
+
+#if defined (alliant) && defined (i860)
+ printf ("i860-alliant-bsd\n"); exit (0);
+#endif
+
+ exit (1);
+}
+EOF
+
+$CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null && SYSTEM_NAME=`$dummy` &&
+ { echo "$SYSTEM_NAME"; exit; }
+
+# Apollos put the system type in the environment.
+
+test -d /usr/apollo && { echo ${ISP}-apollo-${SYSTYPE}; exit; }
+
+# Convex versions that predate uname can use getsysinfo(1)
+
+if [ -x /usr/convex/getsysinfo ]
+then
+ case `getsysinfo -f cpu_type` in
+ c1*)
+ echo c1-convex-bsd
+ exit ;;
+ c2*)
+ if getsysinfo -f scalar_acc
+ then echo c32-convex-bsd
+ else echo c2-convex-bsd
+ fi
+ exit ;;
+ c34*)
+ echo c34-convex-bsd
+ exit ;;
+ c38*)
+ echo c38-convex-bsd
+ exit ;;
+ c4*)
+ echo c4-convex-bsd
+ exit ;;
+ esac
+fi
+
+cat >&2 <<EOF
+$0: unable to guess system type
+
+This script, last modified $timestamp, has failed to recognize
+the operating system you are using. It is advised that you
+download the most up to date version of the config scripts from
+
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+and
+ http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+
+If the version you run ($0) is already up to date, please
+send the following data and any information you think might be
+pertinent to <config-patches@gnu.org> in order to provide the needed
+information to handle your system.
+
+config.guess timestamp = $timestamp
+
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null`
+
+hostinfo = `(hostinfo) 2>/dev/null`
+/bin/universe = `(/bin/universe) 2>/dev/null`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null`
+/bin/arch = `(/bin/arch) 2>/dev/null`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
+
+UNAME_MACHINE = ${UNAME_MACHINE}
+UNAME_RELEASE = ${UNAME_RELEASE}
+UNAME_SYSTEM = ${UNAME_SYSTEM}
+UNAME_VERSION = ${UNAME_VERSION}
+EOF
+
+exit 1
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/Build/source/utils/xindy/config.sub b/Build/source/utils/xindy/config.sub
new file mode 100755
index 00000000000..6e2bdbf5a4b
--- /dev/null
+++ b/Build/source/utils/xindy/config.sub
@@ -0,0 +1,1576 @@
+#! /bin/sh
+# Configuration validation subroutine script.
+# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
+# 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+timestamp='2005-07-08'
+
+# This file is (in principle) common to ALL GNU software.
+# The presence of a machine in this file suggests that SOME GNU software
+# can handle that machine. It does not imply ALL GNU software can.
+#
+# This file is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston, MA
+# 02110-1301, USA.
+#
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+
+# Please send patches to <config-patches@gnu.org>. Submit a context
+# diff and a properly formatted ChangeLog entry.
+#
+# Configuration subroutine to validate and canonicalize a configuration type.
+# Supply the specified configuration type as an argument.
+# If it is invalid, we print an error message on stderr and exit with code 1.
+# Otherwise, we print the canonical config type on stdout and succeed.
+
+# This file is supposed to be the same for all GNU packages
+# and recognize all the CPU types, system types and aliases
+# that are meaningful with *any* GNU software.
+# Each package is responsible for reporting which valid configurations
+# it does not support. The user should be able to distinguish
+# a failure to support a valid configuration from a meaningless
+# configuration.
+
+# The goal of this file is to map all the various variations of a given
+# machine specification into a single specification in the form:
+# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM
+# or in some cases, the newer four-part form:
+# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM
+# It is wrong to echo any other type of specification.
+
+me=`echo "$0" | sed -e 's,.*/,,'`
+
+usage="\
+Usage: $0 [OPTION] CPU-MFR-OPSYS
+ $0 [OPTION] ALIAS
+
+Canonicalize a configuration name.
+
+Operation modes:
+ -h, --help print this help, then exit
+ -t, --time-stamp print date of last modification, then exit
+ -v, --version print version number, then exit
+
+Report bugs and patches to <config-patches@gnu.org>."
+
+version="\
+GNU config.sub ($timestamp)
+
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
+Free Software Foundation, Inc.
+
+This is free software; see the source for copying conditions. There is NO
+warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
+
+help="
+Try \`$me --help' for more information."
+
+# Parse command line
+while test $# -gt 0 ; do
+ case $1 in
+ --time-stamp | --time* | -t )
+ echo "$timestamp" ; exit ;;
+ --version | -v )
+ echo "$version" ; exit ;;
+ --help | --h* | -h )
+ echo "$usage"; exit ;;
+ -- ) # Stop option processing
+ shift; break ;;
+ - ) # Use stdin as input.
+ break ;;
+ -* )
+ echo "$me: invalid option $1$help"
+ exit 1 ;;
+
+ *local*)
+ # First pass through any local machine types.
+ echo $1
+ exit ;;
+
+ * )
+ break ;;
+ esac
+done
+
+case $# in
+ 0) echo "$me: missing argument$help" >&2
+ exit 1;;
+ 1) ;;
+ *) echo "$me: too many arguments$help" >&2
+ exit 1;;
+esac
+
+# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
+# Here we must recognize all the valid KERNEL-OS combinations.
+maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+case $maybe_os in
+ nto-qnx* | linux-gnu* | linux-dietlibc | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | \
+ kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | storm-chaos* | os2-emx* | rtmk-nova*)
+ os=-$maybe_os
+ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+ ;;
+ *)
+ basic_machine=`echo $1 | sed 's/-[^-]*$//'`
+ if [ $basic_machine != $1 ]
+ then os=`echo $1 | sed 's/.*-/-/'`
+ else os=; fi
+ ;;
+esac
+
+### Let's recognize common machines as not being operating systems so
+### that things like config.sub decstation-3100 work. We also
+### recognize some manufacturers as not being operating systems, so we
+### can provide default operating systems below.
+case $os in
+ -sun*os*)
+ # Prevent following clause from handling this invalid input.
+ ;;
+ -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \
+ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \
+ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \
+ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\
+ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \
+ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \
+ -apple | -axis | -knuth | -cray)
+ os=
+ basic_machine=$1
+ ;;
+ -sim | -cisco | -oki | -wec | -winbond)
+ os=
+ basic_machine=$1
+ ;;
+ -scout)
+ ;;
+ -wrs)
+ os=-vxworks
+ basic_machine=$1
+ ;;
+ -chorusos*)
+ os=-chorusos
+ basic_machine=$1
+ ;;
+ -chorusrdb)
+ os=-chorusrdb
+ basic_machine=$1
+ ;;
+ -hiux*)
+ os=-hiuxwe2
+ ;;
+ -sco5)
+ os=-sco3.2v5
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco4)
+ os=-sco3.2v4
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco3.2.[4-9]*)
+ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco3.2v[4-9]*)
+ # Don't forget version if it is 3.2v4 or newer.
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -sco*)
+ os=-sco3.2v2
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -udk*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -isc)
+ os=-isc2.2
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -clix*)
+ basic_machine=clipper-intergraph
+ ;;
+ -isc*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+ ;;
+ -lynx*)
+ os=-lynxos
+ ;;
+ -ptx*)
+ basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
+ ;;
+ -windowsnt*)
+ os=`echo $os | sed -e 's/windowsnt/winnt/'`
+ ;;
+ -psos*)
+ os=-psos
+ ;;
+ -mint | -mint[0-9]*)
+ basic_machine=m68k-atari
+ os=-mint
+ ;;
+esac
+
+# Decode aliases for certain CPU-COMPANY combinations.
+case $basic_machine in
+ # Recognize the basic CPU types without company name.
+ # Some are omitted here because they have special meanings below.
+ 1750a | 580 \
+ | a29k \
+ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \
+ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \
+ | am33_2.0 \
+ | arc | arm | arm[bl]e | arme[lb] | armv[2345] | armv[345][lb] | avr \
+ | bfin \
+ | c4x | clipper \
+ | d10v | d30v | dlx | dsp16xx \
+ | fr30 | frv \
+ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
+ | i370 | i860 | i960 | ia64 \
+ | ip2k | iq2000 \
+ | m32r | m32rle | m68000 | m68k | m88k | maxq | mcore \
+ | mips | mipsbe | mipseb | mipsel | mipsle \
+ | mips16 \
+ | mips64 | mips64el \
+ | mips64vr | mips64vrel \
+ | mips64orion | mips64orionel \
+ | mips64vr4100 | mips64vr4100el \
+ | mips64vr4300 | mips64vr4300el \
+ | mips64vr5000 | mips64vr5000el \
+ | mips64vr5900 | mips64vr5900el \
+ | mipsisa32 | mipsisa32el \
+ | mipsisa32r2 | mipsisa32r2el \
+ | mipsisa64 | mipsisa64el \
+ | mipsisa64r2 | mipsisa64r2el \
+ | mipsisa64sb1 | mipsisa64sb1el \
+ | mipsisa64sr71k | mipsisa64sr71kel \
+ | mipstx39 | mipstx39el \
+ | mn10200 | mn10300 \
+ | ms1 \
+ | msp430 \
+ | ns16k | ns32k \
+ | or32 \
+ | pdp10 | pdp11 | pj | pjl \
+ | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \
+ | pyramid \
+ | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | shbe | shle | sh[1234]le | sh3ele \
+ | sh64 | sh64le \
+ | sparc | sparc64 | sparc64b | sparc86x | sparclet | sparclite \
+ | sparcv8 | sparcv9 | sparcv9b \
+ | strongarm \
+ | tahoe | thumb | tic4x | tic80 | tron \
+ | v850 | v850e \
+ | we32k \
+ | x86 | xscale | xscalee[bl] | xstormy16 | xtensa \
+ | z8k)
+ basic_machine=$basic_machine-unknown
+ ;;
+ m32c)
+ basic_machine=$basic_machine-unknown
+ ;;
+ m6811 | m68hc11 | m6812 | m68hc12)
+ # Motorola 68HC11/12.
+ basic_machine=$basic_machine-unknown
+ os=-none
+ ;;
+ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+ ;;
+
+ # We use `pc' rather than `unknown'
+ # because (1) that's what they normally are, and
+ # (2) the word "unknown" tends to confuse beginning users.
+ i*86 | x86_64)
+ basic_machine=$basic_machine-pc
+ ;;
+ # Object if more than one company name word.
+ *-*-*)
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ exit 1
+ ;;
+ # Recognize the basic CPU types with company name.
+ 580-* \
+ | a29k-* \
+ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \
+ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \
+ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* \
+ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \
+ | avr-* \
+ | bfin-* | bs2000-* \
+ | c[123]* | c30-* | [cjt]90-* | c4x-* | c54x-* | c55x-* | c6x-* \
+ | clipper-* | craynv-* | cydra-* \
+ | d10v-* | d30v-* | dlx-* \
+ | elxsi-* \
+ | f30[01]-* | f700-* | fr30-* | frv-* | fx80-* \
+ | h8300-* | h8500-* \
+ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
+ | i*86-* | i860-* | i960-* | ia64-* \
+ | ip2k-* | iq2000-* \
+ | m32r-* | m32rle-* \
+ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \
+ | m88110-* | m88k-* | maxq-* | mcore-* \
+ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \
+ | mips16-* \
+ | mips64-* | mips64el-* \
+ | mips64vr-* | mips64vrel-* \
+ | mips64orion-* | mips64orionel-* \
+ | mips64vr4100-* | mips64vr4100el-* \
+ | mips64vr4300-* | mips64vr4300el-* \
+ | mips64vr5000-* | mips64vr5000el-* \
+ | mips64vr5900-* | mips64vr5900el-* \
+ | mipsisa32-* | mipsisa32el-* \
+ | mipsisa32r2-* | mipsisa32r2el-* \
+ | mipsisa64-* | mipsisa64el-* \
+ | mipsisa64r2-* | mipsisa64r2el-* \
+ | mipsisa64sb1-* | mipsisa64sb1el-* \
+ | mipsisa64sr71k-* | mipsisa64sr71kel-* \
+ | mipstx39-* | mipstx39el-* \
+ | mmix-* \
+ | ms1-* \
+ | msp430-* \
+ | none-* | np1-* | ns16k-* | ns32k-* \
+ | orion-* \
+ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \
+ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \
+ | pyramid-* \
+ | romp-* | rs6000-* \
+ | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | shbe-* \
+ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \
+ | sparc-* | sparc64-* | sparc64b-* | sparc86x-* | sparclet-* \
+ | sparclite-* \
+ | sparcv8-* | sparcv9-* | sparcv9b-* | strongarm-* | sv1-* | sx?-* \
+ | tahoe-* | thumb-* \
+ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \
+ | tron-* \
+ | v850-* | v850e-* | vax-* \
+ | we32k-* \
+ | x86-* | x86_64-* | xps100-* | xscale-* | xscalee[bl]-* \
+ | xstormy16-* | xtensa-* \
+ | ymp-* \
+ | z8k-*)
+ ;;
+ m32c-*)
+ ;;
+ # Recognize the various machine names and aliases which stand
+ # for a CPU type and a company and sometimes even an OS.
+ 386bsd)
+ basic_machine=i386-unknown
+ os=-bsd
+ ;;
+ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
+ basic_machine=m68000-att
+ ;;
+ 3b*)
+ basic_machine=we32k-att
+ ;;
+ a29khif)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ abacus)
+ basic_machine=abacus-unknown
+ ;;
+ adobe68k)
+ basic_machine=m68010-adobe
+ os=-scout
+ ;;
+ alliant | fx80)
+ basic_machine=fx80-alliant
+ ;;
+ altos | altos3068)
+ basic_machine=m68k-altos
+ ;;
+ am29k)
+ basic_machine=a29k-none
+ os=-bsd
+ ;;
+ amd64)
+ basic_machine=x86_64-pc
+ ;;
+ amd64-*)
+ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ amdahl)
+ basic_machine=580-amdahl
+ os=-sysv
+ ;;
+ amiga | amiga-*)
+ basic_machine=m68k-unknown
+ ;;
+ amigaos | amigados)
+ basic_machine=m68k-unknown
+ os=-amigaos
+ ;;
+ amigaunix | amix)
+ basic_machine=m68k-unknown
+ os=-sysv4
+ ;;
+ apollo68)
+ basic_machine=m68k-apollo
+ os=-sysv
+ ;;
+ apollo68bsd)
+ basic_machine=m68k-apollo
+ os=-bsd
+ ;;
+ aux)
+ basic_machine=m68k-apple
+ os=-aux
+ ;;
+ balance)
+ basic_machine=ns32k-sequent
+ os=-dynix
+ ;;
+ c90)
+ basic_machine=c90-cray
+ os=-unicos
+ ;;
+ convex-c1)
+ basic_machine=c1-convex
+ os=-bsd
+ ;;
+ convex-c2)
+ basic_machine=c2-convex
+ os=-bsd
+ ;;
+ convex-c32)
+ basic_machine=c32-convex
+ os=-bsd
+ ;;
+ convex-c34)
+ basic_machine=c34-convex
+ os=-bsd
+ ;;
+ convex-c38)
+ basic_machine=c38-convex
+ os=-bsd
+ ;;
+ cray | j90)
+ basic_machine=j90-cray
+ os=-unicos
+ ;;
+ craynv)
+ basic_machine=craynv-cray
+ os=-unicosmp
+ ;;
+ cr16c)
+ basic_machine=cr16c-unknown
+ os=-elf
+ ;;
+ crds | unos)
+ basic_machine=m68k-crds
+ ;;
+ crisv32 | crisv32-* | etraxfs*)
+ basic_machine=crisv32-axis
+ ;;
+ cris | cris-* | etrax*)
+ basic_machine=cris-axis
+ ;;
+ crx)
+ basic_machine=crx-unknown
+ os=-elf
+ ;;
+ da30 | da30-*)
+ basic_machine=m68k-da30
+ ;;
+ decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn)
+ basic_machine=mips-dec
+ ;;
+ decsystem10* | dec10*)
+ basic_machine=pdp10-dec
+ os=-tops10
+ ;;
+ decsystem20* | dec20*)
+ basic_machine=pdp10-dec
+ os=-tops20
+ ;;
+ delta | 3300 | motorola-3300 | motorola-delta \
+ | 3300-motorola | delta-motorola)
+ basic_machine=m68k-motorola
+ ;;
+ delta88)
+ basic_machine=m88k-motorola
+ os=-sysv3
+ ;;
+ djgpp)
+ basic_machine=i586-pc
+ os=-msdosdjgpp
+ ;;
+ dpx20 | dpx20-*)
+ basic_machine=rs6000-bull
+ os=-bosx
+ ;;
+ dpx2* | dpx2*-bull)
+ basic_machine=m68k-bull
+ os=-sysv3
+ ;;
+ ebmon29k)
+ basic_machine=a29k-amd
+ os=-ebmon
+ ;;
+ elxsi)
+ basic_machine=elxsi-elxsi
+ os=-bsd
+ ;;
+ encore | umax | mmax)
+ basic_machine=ns32k-encore
+ ;;
+ es1800 | OSE68k | ose68k | ose | OSE)
+ basic_machine=m68k-ericsson
+ os=-ose
+ ;;
+ fx2800)
+ basic_machine=i860-alliant
+ ;;
+ genix)
+ basic_machine=ns32k-ns
+ ;;
+ gmicro)
+ basic_machine=tron-gmicro
+ os=-sysv
+ ;;
+ go32)
+ basic_machine=i386-pc
+ os=-go32
+ ;;
+ h3050r* | hiux*)
+ basic_machine=hppa1.1-hitachi
+ os=-hiuxwe2
+ ;;
+ h8300hms)
+ basic_machine=h8300-hitachi
+ os=-hms
+ ;;
+ h8300xray)
+ basic_machine=h8300-hitachi
+ os=-xray
+ ;;
+ h8500hms)
+ basic_machine=h8500-hitachi
+ os=-hms
+ ;;
+ harris)
+ basic_machine=m88k-harris
+ os=-sysv3
+ ;;
+ hp300-*)
+ basic_machine=m68k-hp
+ ;;
+ hp300bsd)
+ basic_machine=m68k-hp
+ os=-bsd
+ ;;
+ hp300hpux)
+ basic_machine=m68k-hp
+ os=-hpux
+ ;;
+ hp3k9[0-9][0-9] | hp9[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hp9k2[0-9][0-9] | hp9k31[0-9])
+ basic_machine=m68000-hp
+ ;;
+ hp9k3[2-9][0-9])
+ basic_machine=m68k-hp
+ ;;
+ hp9k6[0-9][0-9] | hp6[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hp9k7[0-79][0-9] | hp7[0-79][0-9])
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k78[0-9] | hp78[0-9])
+ # FIXME: really hppa2.0-hp
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893)
+ # FIXME: really hppa2.0-hp
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[0-9][13679] | hp8[0-9][13679])
+ basic_machine=hppa1.1-hp
+ ;;
+ hp9k8[0-9][0-9] | hp8[0-9][0-9])
+ basic_machine=hppa1.0-hp
+ ;;
+ hppa-next)
+ os=-nextstep3
+ ;;
+ hppaosf)
+ basic_machine=hppa1.1-hp
+ os=-osf
+ ;;
+ hppro)
+ basic_machine=hppa1.1-hp
+ os=-proelf
+ ;;
+ i370-ibm* | ibm*)
+ basic_machine=i370-ibm
+ ;;
+# I'm not sure what "Sysv32" means. Should this be sysv3.2?
+ i*86v32)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv32
+ ;;
+ i*86v4*)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv4
+ ;;
+ i*86v)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-sysv
+ ;;
+ i*86sol2)
+ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+ os=-solaris2
+ ;;
+ i386mach)
+ basic_machine=i386-mach
+ os=-mach
+ ;;
+ i386-vsta | vsta)
+ basic_machine=i386-unknown
+ os=-vsta
+ ;;
+ iris | iris4d)
+ basic_machine=mips-sgi
+ case $os in
+ -irix*)
+ ;;
+ *)
+ os=-irix4
+ ;;
+ esac
+ ;;
+ isi68 | isi)
+ basic_machine=m68k-isi
+ os=-sysv
+ ;;
+ m88k-omron*)
+ basic_machine=m88k-omron
+ ;;
+ magnum | m3230)
+ basic_machine=mips-mips
+ os=-sysv
+ ;;
+ merlin)
+ basic_machine=ns32k-utek
+ os=-sysv
+ ;;
+ mingw32)
+ basic_machine=i386-pc
+ os=-mingw32
+ ;;
+ miniframe)
+ basic_machine=m68000-convergent
+ ;;
+ *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*)
+ basic_machine=m68k-atari
+ os=-mint
+ ;;
+ mips3*-*)
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+ ;;
+ mips3*)
+ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+ ;;
+ monitor)
+ basic_machine=m68k-rom68k
+ os=-coff
+ ;;
+ morphos)
+ basic_machine=powerpc-unknown
+ os=-morphos
+ ;;
+ msdos)
+ basic_machine=i386-pc
+ os=-msdos
+ ;;
+ mvs)
+ basic_machine=i370-ibm
+ os=-mvs
+ ;;
+ ncr3000)
+ basic_machine=i486-ncr
+ os=-sysv4
+ ;;
+ netbsd386)
+ basic_machine=i386-unknown
+ os=-netbsd
+ ;;
+ netwinder)
+ basic_machine=armv4l-rebel
+ os=-linux
+ ;;
+ news | news700 | news800 | news900)
+ basic_machine=m68k-sony
+ os=-newsos
+ ;;
+ news1000)
+ basic_machine=m68030-sony
+ os=-newsos
+ ;;
+ news-3600 | risc-news)
+ basic_machine=mips-sony
+ os=-newsos
+ ;;
+ necv70)
+ basic_machine=v70-nec
+ os=-sysv
+ ;;
+ next | m*-next )
+ basic_machine=m68k-next
+ case $os in
+ -nextstep* )
+ ;;
+ -ns2*)
+ os=-nextstep2
+ ;;
+ *)
+ os=-nextstep3
+ ;;
+ esac
+ ;;
+ nh3000)
+ basic_machine=m68k-harris
+ os=-cxux
+ ;;
+ nh[45]000)
+ basic_machine=m88k-harris
+ os=-cxux
+ ;;
+ nindy960)
+ basic_machine=i960-intel
+ os=-nindy
+ ;;
+ mon960)
+ basic_machine=i960-intel
+ os=-mon960
+ ;;
+ nonstopux)
+ basic_machine=mips-compaq
+ os=-nonstopux
+ ;;
+ np1)
+ basic_machine=np1-gould
+ ;;
+ nsr-tandem)
+ basic_machine=nsr-tandem
+ ;;
+ op50n-* | op60c-*)
+ basic_machine=hppa1.1-oki
+ os=-proelf
+ ;;
+ openrisc | openrisc-*)
+ basic_machine=or32-unknown
+ ;;
+ os400)
+ basic_machine=powerpc-ibm
+ os=-os400
+ ;;
+ OSE68000 | ose68000)
+ basic_machine=m68000-ericsson
+ os=-ose
+ ;;
+ os68k)
+ basic_machine=m68k-none
+ os=-os68k
+ ;;
+ pa-hitachi)
+ basic_machine=hppa1.1-hitachi
+ os=-hiuxwe2
+ ;;
+ paragon)
+ basic_machine=i860-intel
+ os=-osf
+ ;;
+ pbd)
+ basic_machine=sparc-tti
+ ;;
+ pbb)
+ basic_machine=m68k-tti
+ ;;
+ pc532 | pc532-*)
+ basic_machine=ns32k-pc532
+ ;;
+ pentium | p5 | k5 | k6 | nexgen | viac3)
+ basic_machine=i586-pc
+ ;;
+ pentiumpro | p6 | 6x86 | athlon | athlon_*)
+ basic_machine=i686-pc
+ ;;
+ pentiumii | pentium2 | pentiumiii | pentium3)
+ basic_machine=i686-pc
+ ;;
+ pentium4)
+ basic_machine=i786-pc
+ ;;
+ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
+ basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentiumpro-* | p6-* | 6x86-* | athlon-*)
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
+ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pentium4-*)
+ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ pn)
+ basic_machine=pn-gould
+ ;;
+ power) basic_machine=power-ibm
+ ;;
+ ppc) basic_machine=powerpc-unknown
+ ;;
+ ppc-*) basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppcle | powerpclittle | ppc-le | powerpc-little)
+ basic_machine=powerpcle-unknown
+ ;;
+ ppcle-* | powerpclittle-*)
+ basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppc64) basic_machine=powerpc64-unknown
+ ;;
+ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ppc64le | powerpc64little | ppc64-le | powerpc64-little)
+ basic_machine=powerpc64le-unknown
+ ;;
+ ppc64le-* | powerpc64little-*)
+ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+ ;;
+ ps2)
+ basic_machine=i386-ibm
+ ;;
+ pw32)
+ basic_machine=i586-unknown
+ os=-pw32
+ ;;
+ rom68k)
+ basic_machine=m68k-rom68k
+ os=-coff
+ ;;
+ rm[46]00)
+ basic_machine=mips-siemens
+ ;;
+ rtpc | rtpc-*)
+ basic_machine=romp-ibm
+ ;;
+ s390 | s390-*)
+ basic_machine=s390-ibm
+ ;;
+ s390x | s390x-*)
+ basic_machine=s390x-ibm
+ ;;
+ sa29200)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ sb1)
+ basic_machine=mipsisa64sb1-unknown
+ ;;
+ sb1el)
+ basic_machine=mipsisa64sb1el-unknown
+ ;;
+ sei)
+ basic_machine=mips-sei
+ os=-seiux
+ ;;
+ sequent)
+ basic_machine=i386-sequent
+ ;;
+ sh)
+ basic_machine=sh-hitachi
+ os=-hms
+ ;;
+ sh64)
+ basic_machine=sh64-unknown
+ ;;
+ sparclite-wrs | simso-wrs)
+ basic_machine=sparclite-wrs
+ os=-vxworks
+ ;;
+ sps7)
+ basic_machine=m68k-bull
+ os=-sysv2
+ ;;
+ spur)
+ basic_machine=spur-unknown
+ ;;
+ st2000)
+ basic_machine=m68k-tandem
+ ;;
+ stratus)
+ basic_machine=i860-stratus
+ os=-sysv4
+ ;;
+ sun2)
+ basic_machine=m68000-sun
+ ;;
+ sun2os3)
+ basic_machine=m68000-sun
+ os=-sunos3
+ ;;
+ sun2os4)
+ basic_machine=m68000-sun
+ os=-sunos4
+ ;;
+ sun3os3)
+ basic_machine=m68k-sun
+ os=-sunos3
+ ;;
+ sun3os4)
+ basic_machine=m68k-sun
+ os=-sunos4
+ ;;
+ sun4os3)
+ basic_machine=sparc-sun
+ os=-sunos3
+ ;;
+ sun4os4)
+ basic_machine=sparc-sun
+ os=-sunos4
+ ;;
+ sun4sol2)
+ basic_machine=sparc-sun
+ os=-solaris2
+ ;;
+ sun3 | sun3-*)
+ basic_machine=m68k-sun
+ ;;
+ sun4)
+ basic_machine=sparc-sun
+ ;;
+ sun386 | sun386i | roadrunner)
+ basic_machine=i386-sun
+ ;;
+ sv1)
+ basic_machine=sv1-cray
+ os=-unicos
+ ;;
+ symmetry)
+ basic_machine=i386-sequent
+ os=-dynix
+ ;;
+ t3e)
+ basic_machine=alphaev5-cray
+ os=-unicos
+ ;;
+ t90)
+ basic_machine=t90-cray
+ os=-unicos
+ ;;
+ tic54x | c54x*)
+ basic_machine=tic54x-unknown
+ os=-coff
+ ;;
+ tic55x | c55x*)
+ basic_machine=tic55x-unknown
+ os=-coff
+ ;;
+ tic6x | c6x*)
+ basic_machine=tic6x-unknown
+ os=-coff
+ ;;
+ tx39)
+ basic_machine=mipstx39-unknown
+ ;;
+ tx39el)
+ basic_machine=mipstx39el-unknown
+ ;;
+ toad1)
+ basic_machine=pdp10-xkl
+ os=-tops20
+ ;;
+ tower | tower-32)
+ basic_machine=m68k-ncr
+ ;;
+ tpf)
+ basic_machine=s390x-ibm
+ os=-tpf
+ ;;
+ udi29k)
+ basic_machine=a29k-amd
+ os=-udi
+ ;;
+ ultra3)
+ basic_machine=a29k-nyu
+ os=-sym1
+ ;;
+ v810 | necv810)
+ basic_machine=v810-nec
+ os=-none
+ ;;
+ vaxv)
+ basic_machine=vax-dec
+ os=-sysv
+ ;;
+ vms)
+ basic_machine=vax-dec
+ os=-vms
+ ;;
+ vpp*|vx|vx-*)
+ basic_machine=f301-fujitsu
+ ;;
+ vxworks960)
+ basic_machine=i960-wrs
+ os=-vxworks
+ ;;
+ vxworks68)
+ basic_machine=m68k-wrs
+ os=-vxworks
+ ;;
+ vxworks29k)
+ basic_machine=a29k-wrs
+ os=-vxworks
+ ;;
+ w65*)
+ basic_machine=w65-wdc
+ os=-none
+ ;;
+ w89k-*)
+ basic_machine=hppa1.1-winbond
+ os=-proelf
+ ;;
+ xbox)
+ basic_machine=i686-pc
+ os=-mingw32
+ ;;
+ xps | xps100)
+ basic_machine=xps100-honeywell
+ ;;
+ ymp)
+ basic_machine=ymp-cray
+ os=-unicos
+ ;;
+ z8k-*-coff)
+ basic_machine=z8k-unknown
+ os=-sim
+ ;;
+ none)
+ basic_machine=none-none
+ os=-none
+ ;;
+
+# Here we handle the default manufacturer of certain CPU types. It is in
+# some cases the only manufacturer, in others, it is the most popular.
+ w89k)
+ basic_machine=hppa1.1-winbond
+ ;;
+ op50n)
+ basic_machine=hppa1.1-oki
+ ;;
+ op60c)
+ basic_machine=hppa1.1-oki
+ ;;
+ romp)
+ basic_machine=romp-ibm
+ ;;
+ mmix)
+ basic_machine=mmix-knuth
+ ;;
+ rs6000)
+ basic_machine=rs6000-ibm
+ ;;
+ vax)
+ basic_machine=vax-dec
+ ;;
+ pdp10)
+ # there are many clones, so DEC is not a safe bet
+ basic_machine=pdp10-unknown
+ ;;
+ pdp11)
+ basic_machine=pdp11-dec
+ ;;
+ we32k)
+ basic_machine=we32k-att
+ ;;
+ sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele)
+ basic_machine=sh-unknown
+ ;;
+ sparc | sparcv8 | sparcv9 | sparcv9b)
+ basic_machine=sparc-sun
+ ;;
+ cydra)
+ basic_machine=cydra-cydrome
+ ;;
+ orion)
+ basic_machine=orion-highlevel
+ ;;
+ orion105)
+ basic_machine=clipper-highlevel
+ ;;
+ mac | mpw | mac-mpw)
+ basic_machine=m68k-apple
+ ;;
+ pmac | pmac-mpw)
+ basic_machine=powerpc-apple
+ ;;
+ *-unknown)
+ # Make sure to match an already-canonicalized machine name.
+ ;;
+ *)
+ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+
+# Here we canonicalize certain aliases for manufacturers.
+case $basic_machine in
+ *-digital*)
+ basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+ ;;
+ *-commodore*)
+ basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+ ;;
+ *)
+ ;;
+esac
+
+# Decode manufacturer-specific aliases for certain operating systems.
+
+if [ x"$os" != x"" ]
+then
+case $os in
+ # First match some system type aliases
+ # that might get confused with valid system types.
+ # -solaris* is a basic system type, with this one exception.
+ -solaris1 | -solaris1.*)
+ os=`echo $os | sed -e 's|solaris1|sunos4|'`
+ ;;
+ -solaris)
+ os=-solaris2
+ ;;
+ -svr4*)
+ os=-sysv4
+ ;;
+ -unixware*)
+ os=-sysv4.2uw
+ ;;
+ -gnu/linux*)
+ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
+ ;;
+ # First accept the basic system types.
+ # The portable systems comes first.
+ # Each alternative MUST END IN A *, to match a version number.
+ # -sysv* is not here because it comes later, after sysvr4.
+ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
+ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\
+ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \
+ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \
+ | -aos* \
+ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
+ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
+ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* | -openbsd* \
+ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
+ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
+ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
+ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
+ | -chorusos* | -chorusrdb* \
+ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
+ | -mingw32* | -linux* | -linux-uclibc* | -uxpv* | -beos* | -mpeix* | -udk* \
+ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
+ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
+ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
+ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
+ | -skyos* | -haiku*)
+ # Remember, each alternative MUST END IN *, to match a version number.
+ ;;
+ -qnx*)
+ case $basic_machine in
+ x86-* | i*86-*)
+ ;;
+ *)
+ os=-nto$os
+ ;;
+ esac
+ ;;
+ -nto-qnx*)
+ ;;
+ -nto*)
+ os=`echo $os | sed -e 's|nto|nto-qnx|'`
+ ;;
+ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
+ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
+ ;;
+ -mac*)
+ os=`echo $os | sed -e 's|mac|macos|'`
+ ;;
+ -linux-dietlibc)
+ os=-linux-dietlibc
+ ;;
+ -sunos5*)
+ os=`echo $os | sed -e 's|sunos5|solaris2|'`
+ ;;
+ -sunos6*)
+ os=`echo $os | sed -e 's|sunos6|solaris3|'`
+ ;;
+ -opened*)
+ os=-openedition
+ ;;
+ -os400*)
+ os=-os400
+ ;;
+ -wince*)
+ os=-wince
+ ;;
+ -osfrose*)
+ os=-osfrose
+ ;;
+ -osf*)
+ os=-osf
+ ;;
+ -utek*)
+ os=-bsd
+ ;;
+ -dynix*)
+ os=-bsd
+ ;;
+ -acis*)
+ os=-aos
+ ;;
+ -atheos*)
+ os=-atheos
+ ;;
+ -syllable*)
+ os=-syllable
+ ;;
+ -386bsd)
+ os=-bsd
+ ;;
+ -ctix* | -uts*)
+ os=-sysv
+ ;;
+ -nova*)
+ os=-rtmk-nova
+ ;;
+ -ns2 )
+ os=-nextstep2
+ ;;
+ -nsk*)
+ os=-nsk
+ ;;
+ # Preserve the version number of sinix5.
+ -sinix5.*)
+ os=`echo $os | sed -e 's|sinix|sysv|'`
+ ;;
+ -sinix*)
+ os=-sysv4
+ ;;
+ -tpf*)
+ os=-tpf
+ ;;
+ -triton*)
+ os=-sysv3
+ ;;
+ -oss*)
+ os=-sysv3
+ ;;
+ -svr4)
+ os=-sysv4
+ ;;
+ -svr3)
+ os=-sysv3
+ ;;
+ -sysvr4)
+ os=-sysv4
+ ;;
+ # This must come after -sysvr4.
+ -sysv*)
+ ;;
+ -ose*)
+ os=-ose
+ ;;
+ -es1800*)
+ os=-ose
+ ;;
+ -xenix)
+ os=-xenix
+ ;;
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ os=-mint
+ ;;
+ -aros*)
+ os=-aros
+ ;;
+ -kaos*)
+ os=-kaos
+ ;;
+ -zvmoe)
+ os=-zvmoe
+ ;;
+ -none)
+ ;;
+ *)
+ # Get rid of the `-' at the beginning of $os.
+ os=`echo $os | sed 's/[^-]*-//'`
+ echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+ exit 1
+ ;;
+esac
+else
+
+# Here we handle the default operating systems that come with various machines.
+# The value should be what the vendor currently ships out the door with their
+# machine or put another way, the most popular os provided with the machine.
+
+# Note that if you're going to try to match "-MANUFACTURER" here (say,
+# "-sun"), then you have to tell the case statement up towards the top
+# that MANUFACTURER isn't an operating system. Otherwise, code above
+# will signal an error saying that MANUFACTURER isn't an operating
+# system, and we'll never get to this point.
+
+case $basic_machine in
+ *-acorn)
+ os=-riscix1.2
+ ;;
+ arm*-rebel)
+ os=-linux
+ ;;
+ arm*-semi)
+ os=-aout
+ ;;
+ c4x-* | tic4x-*)
+ os=-coff
+ ;;
+ # This must come before the *-dec entry.
+ pdp10-*)
+ os=-tops20
+ ;;
+ pdp11-*)
+ os=-none
+ ;;
+ *-dec | vax-*)
+ os=-ultrix4.2
+ ;;
+ m68*-apollo)
+ os=-domain
+ ;;
+ i386-sun)
+ os=-sunos4.0.2
+ ;;
+ m68000-sun)
+ os=-sunos3
+ # This also exists in the configure program, but was not the
+ # default.
+ # os=-sunos4
+ ;;
+ m68*-cisco)
+ os=-aout
+ ;;
+ mips*-cisco)
+ os=-elf
+ ;;
+ mips*-*)
+ os=-elf
+ ;;
+ or32-*)
+ os=-coff
+ ;;
+ *-tti) # must be before sparc entry or we get the wrong os.
+ os=-sysv3
+ ;;
+ sparc-* | *-sun)
+ os=-sunos4.1.1
+ ;;
+ *-be)
+ os=-beos
+ ;;
+ *-haiku)
+ os=-haiku
+ ;;
+ *-ibm)
+ os=-aix
+ ;;
+ *-knuth)
+ os=-mmixware
+ ;;
+ *-wec)
+ os=-proelf
+ ;;
+ *-winbond)
+ os=-proelf
+ ;;
+ *-oki)
+ os=-proelf
+ ;;
+ *-hp)
+ os=-hpux
+ ;;
+ *-hitachi)
+ os=-hiux
+ ;;
+ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent)
+ os=-sysv
+ ;;
+ *-cbm)
+ os=-amigaos
+ ;;
+ *-dg)
+ os=-dgux
+ ;;
+ *-dolphin)
+ os=-sysv3
+ ;;
+ m68k-ccur)
+ os=-rtu
+ ;;
+ m88k-omron*)
+ os=-luna
+ ;;
+ *-next )
+ os=-nextstep
+ ;;
+ *-sequent)
+ os=-ptx
+ ;;
+ *-crds)
+ os=-unos
+ ;;
+ *-ns)
+ os=-genix
+ ;;
+ i370-*)
+ os=-mvs
+ ;;
+ *-next)
+ os=-nextstep3
+ ;;
+ *-gould)
+ os=-sysv
+ ;;
+ *-highlevel)
+ os=-bsd
+ ;;
+ *-encore)
+ os=-bsd
+ ;;
+ *-sgi)
+ os=-irix
+ ;;
+ *-siemens)
+ os=-sysv4
+ ;;
+ *-masscomp)
+ os=-rtu
+ ;;
+ f30[01]-fujitsu | f700-fujitsu)
+ os=-uxpv
+ ;;
+ *-rom68k)
+ os=-coff
+ ;;
+ *-*bug)
+ os=-coff
+ ;;
+ *-apple)
+ os=-macos
+ ;;
+ *-atari*)
+ os=-mint
+ ;;
+ *)
+ os=-none
+ ;;
+esac
+fi
+
+# Here we handle the case where we know the os, and the CPU type, but not the
+# manufacturer. We pick the logical manufacturer.
+vendor=unknown
+case $basic_machine in
+ *-unknown)
+ case $os in
+ -riscix*)
+ vendor=acorn
+ ;;
+ -sunos*)
+ vendor=sun
+ ;;
+ -aix*)
+ vendor=ibm
+ ;;
+ -beos*)
+ vendor=be
+ ;;
+ -hpux*)
+ vendor=hp
+ ;;
+ -mpeix*)
+ vendor=hp
+ ;;
+ -hiux*)
+ vendor=hitachi
+ ;;
+ -unos*)
+ vendor=crds
+ ;;
+ -dgux*)
+ vendor=dg
+ ;;
+ -luna*)
+ vendor=omron
+ ;;
+ -genix*)
+ vendor=ns
+ ;;
+ -mvs* | -opened*)
+ vendor=ibm
+ ;;
+ -os400*)
+ vendor=ibm
+ ;;
+ -ptx*)
+ vendor=sequent
+ ;;
+ -tpf*)
+ vendor=ibm
+ ;;
+ -vxsim* | -vxworks* | -windiss*)
+ vendor=wrs
+ ;;
+ -aux*)
+ vendor=apple
+ ;;
+ -hms*)
+ vendor=hitachi
+ ;;
+ -mpw* | -macos*)
+ vendor=apple
+ ;;
+ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
+ vendor=atari
+ ;;
+ -vos*)
+ vendor=stratus
+ ;;
+ esac
+ basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+ ;;
+esac
+
+echo $basic_machine$os
+exit
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "timestamp='"
+# time-stamp-format: "%:y-%02m-%02d"
+# time-stamp-end: "'"
+# End:
diff --git a/Build/source/utils/xindy/configure b/Build/source/utils/xindy/configure
new file mode 100755
index 00000000000..8a304fac423
--- /dev/null
+++ b/Build/source/utils/xindy/configure
@@ -0,0 +1,6216 @@
+#! /bin/sh
+# Guess values for system-dependent variables and create Makefiles.
+# Generated by GNU Autoconf 2.59 for xindy 2.3.
+#
+# Report bugs to <xindy-discuss@lists.sourceforge.net>.
+#
+# Copyright (C) 2003 Free Software Foundation, Inc.
+# This configure script is free software; the Free Software Foundation
+# gives unlimited permission to copy, distribute and modify it.
+## --------------------- ##
+## M4sh Initialization. ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+ set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+ LC_TELEPHONE LC_TIME
+do
+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+ eval $as_var=C; export $as_var
+ else
+ $as_unset $as_var
+ fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)$' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+ /^X\/\(\/\/\)$/{ s//\1/; q; }
+ /^X\/\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ echo "#! /bin/sh" >conf$$.sh
+ echo "exit 0" >>conf$$.sh
+ chmod +x conf$$.sh
+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+ PATH_SEPARATOR=';'
+ else
+ PATH_SEPARATOR=:
+ fi
+ rm -f conf$$.sh
+fi
+
+
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x$as_lineno_3" = "x$as_lineno_2" || {
+ # Find who we are. Look in the path if we contain no path at all
+ # relative or not.
+ case $0 in
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+ ;;
+ esac
+ # We did not find ourselves, most probably we were run as `sh COMMAND'
+ # in which case we are not to be found in the path.
+ if test "x$as_myself" = x; then
+ as_myself=$0
+ fi
+ if test ! -f "$as_myself"; then
+ { echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2
+ { (exit 1); exit 1; }; }
+ fi
+ case $CONFIG_SHELL in
+ '')
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for as_base in sh bash ksh sh5; do
+ case $as_dir in
+ /*)
+ if ("$as_dir/$as_base" -c '
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
+ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
+ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+ CONFIG_SHELL=$as_dir/$as_base
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+ fi;;
+ esac
+ done
+done
+;;
+ esac
+
+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+ # uniformly replaced by the line number. The first 'sed' inserts a
+ # line-number line before each line; the second 'sed' does the real
+ # work. The second script uses 'N' to pair each line-number line
+ # with the numbered line, and appends trailing '-' during
+ # substitution so that $LINENO is not a special case at line end.
+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
+ sed '=' <$as_myself |
+ sed '
+ N
+ s,$,-,
+ : loop
+ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+ t loop
+ s,-$,,
+ s,^['$as_cr_digits']*\n,,
+ ' >$as_me.lineno &&
+ chmod +x $as_me.lineno ||
+ { echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2
+ { (exit 1); exit 1; }; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensible to this).
+ . ./$as_me.lineno
+ # Exit status is that of the last command.
+ exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+ *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T=' ' ;;
+ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+ *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+ # We could just check for DJGPP; but this test a) works b) is more generic
+ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+ if test -f conf$$.exe; then
+ # Don't use ln at all; we don't have any links
+ as_ln_s='cp -p'
+ else
+ as_ln_s='ln -s'
+ fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p=:
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+
+# Name of the host.
+# hostname on some systems (SVR3.2, Linux) returns a bogus exit status,
+# so uname gets run too.
+ac_hostname=`(hostname || uname -n) 2>/dev/null | sed 1q`
+
+exec 6>&1
+
+#
+# Initializations.
+#
+ac_default_prefix=/usr/local
+ac_config_libobj_dir=.
+cross_compiling=no
+subdirs=
+MFLAGS=
+MAKEFLAGS=
+SHELL=${CONFIG_SHELL-/bin/sh}
+
+# Maximum number of lines to put in a shell here document.
+# This variable seems obsolete. It should probably be removed, and
+# only ac_max_sed_lines should be used.
+: ${ac_max_here_lines=38}
+
+# Identity of this package.
+PACKAGE_NAME='xindy'
+PACKAGE_TARNAME='xindy'
+PACKAGE_VERSION='2.3'
+PACKAGE_STRING='xindy 2.3'
+PACKAGE_BUGREPORT='xindy-discuss@lists.sourceforge.net'
+
+# Factoring default headers for most tests.
+ac_includes_default="\
+#include <stdio.h>
+#if HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#if HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
+#if STDC_HEADERS
+# include <stdlib.h>
+# include <stddef.h>
+#else
+# if HAVE_STDLIB_H
+# include <stdlib.h>
+# endif
+#endif
+#if HAVE_STRING_H
+# if !STDC_HEADERS && HAVE_MEMORY_H
+# include <memory.h>
+# endif
+# include <string.h>
+#endif
+#if HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#if HAVE_INTTYPES_H
+# include <inttypes.h>
+#else
+# if HAVE_STDINT_H
+# include <stdint.h>
+# endif
+#endif
+#if HAVE_UNISTD_H
+# include <unistd.h>
+#endif"
+
+ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CXX CXXFLAGS LDFLAGS CPPFLAGS ac_ct_CXX EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CC CFLAGS ac_ct_CC CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE CPP LEX LEXLIB LEX_OUTPUT_ROOT YACC LN_S EGREP latex BUILDRULES_TRUE BUILDRULES_FALSE pdflatex BUILDDOCS_TRUE BUILDDOCS_FALSE EXT_CLISP_TRUE EXT_CLISP_FALSE CLISP_PATH CLISP_DIR build build_cpu build_vendor build_os host host_cpu host_vendor host_os LIBOBJS LTLIBOBJS'
+ac_subst_files=''
+
+# Initialize some variables set by options.
+ac_init_help=
+ac_init_version=false
+# The variables have the same names as the options, with
+# dashes changed to underlines.
+cache_file=/dev/null
+exec_prefix=NONE
+no_create=
+no_recursion=
+prefix=NONE
+program_prefix=NONE
+program_suffix=NONE
+program_transform_name=s,x,x,
+silent=
+site=
+srcdir=
+verbose=
+x_includes=NONE
+x_libraries=NONE
+
+# Installation directory options.
+# These are left unexpanded so users can "make install exec_prefix=/foo"
+# and all the variables that are supposed to be based on exec_prefix
+# by default will actually change.
+# Use braces instead of parens because sh, perl, etc. also accept them.
+bindir='${exec_prefix}/bin'
+sbindir='${exec_prefix}/sbin'
+libexecdir='${exec_prefix}/libexec'
+datadir='${prefix}/share'
+sysconfdir='${prefix}/etc'
+sharedstatedir='${prefix}/com'
+localstatedir='${prefix}/var'
+libdir='${exec_prefix}/lib'
+includedir='${prefix}/include'
+oldincludedir='/usr/include'
+infodir='${prefix}/info'
+mandir='${prefix}/man'
+
+ac_prev=
+for ac_option
+do
+ # If the previous option needs an argument, assign it.
+ if test -n "$ac_prev"; then
+ eval "$ac_prev=\$ac_option"
+ ac_prev=
+ continue
+ fi
+
+ ac_optarg=`expr "x$ac_option" : 'x[^=]*=\(.*\)'`
+
+ # Accept the important Cygnus configure options, so we can diagnose typos.
+
+ case $ac_option in
+
+ -bindir | --bindir | --bindi | --bind | --bin | --bi)
+ ac_prev=bindir ;;
+ -bindir=* | --bindir=* | --bindi=* | --bind=* | --bin=* | --bi=*)
+ bindir=$ac_optarg ;;
+
+ -build | --build | --buil | --bui | --bu)
+ ac_prev=build_alias ;;
+ -build=* | --build=* | --buil=* | --bui=* | --bu=*)
+ build_alias=$ac_optarg ;;
+
+ -cache-file | --cache-file | --cache-fil | --cache-fi \
+ | --cache-f | --cache- | --cache | --cach | --cac | --ca | --c)
+ ac_prev=cache_file ;;
+ -cache-file=* | --cache-file=* | --cache-fil=* | --cache-fi=* \
+ | --cache-f=* | --cache-=* | --cache=* | --cach=* | --cac=* | --ca=* | --c=*)
+ cache_file=$ac_optarg ;;
+
+ --config-cache | -C)
+ cache_file=config.cache ;;
+
+ -datadir | --datadir | --datadi | --datad | --data | --dat | --da)
+ ac_prev=datadir ;;
+ -datadir=* | --datadir=* | --datadi=* | --datad=* | --data=* | --dat=* \
+ | --da=*)
+ datadir=$ac_optarg ;;
+
+ -disable-* | --disable-*)
+ ac_feature=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ { (exit 1); exit 1; }; }
+ ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+ eval "enable_$ac_feature=no" ;;
+
+ -enable-* | --enable-*)
+ ac_feature=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_feature" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid feature name: $ac_feature" >&2
+ { (exit 1); exit 1; }; }
+ ac_feature=`echo $ac_feature | sed 's/-/_/g'`
+ case $ac_option in
+ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "enable_$ac_feature='$ac_optarg'" ;;
+
+ -exec-prefix | --exec_prefix | --exec-prefix | --exec-prefi \
+ | --exec-pref | --exec-pre | --exec-pr | --exec-p | --exec- \
+ | --exec | --exe | --ex)
+ ac_prev=exec_prefix ;;
+ -exec-prefix=* | --exec_prefix=* | --exec-prefix=* | --exec-prefi=* \
+ | --exec-pref=* | --exec-pre=* | --exec-pr=* | --exec-p=* | --exec-=* \
+ | --exec=* | --exe=* | --ex=*)
+ exec_prefix=$ac_optarg ;;
+
+ -gas | --gas | --ga | --g)
+ # Obsolete; use --with-gas.
+ with_gas=yes ;;
+
+ -help | --help | --hel | --he | -h)
+ ac_init_help=long ;;
+ -help=r* | --help=r* | --hel=r* | --he=r* | -hr*)
+ ac_init_help=recursive ;;
+ -help=s* | --help=s* | --hel=s* | --he=s* | -hs*)
+ ac_init_help=short ;;
+
+ -host | --host | --hos | --ho)
+ ac_prev=host_alias ;;
+ -host=* | --host=* | --hos=* | --ho=*)
+ host_alias=$ac_optarg ;;
+
+ -includedir | --includedir | --includedi | --included | --include \
+ | --includ | --inclu | --incl | --inc)
+ ac_prev=includedir ;;
+ -includedir=* | --includedir=* | --includedi=* | --included=* | --include=* \
+ | --includ=* | --inclu=* | --incl=* | --inc=*)
+ includedir=$ac_optarg ;;
+
+ -infodir | --infodir | --infodi | --infod | --info | --inf)
+ ac_prev=infodir ;;
+ -infodir=* | --infodir=* | --infodi=* | --infod=* | --info=* | --inf=*)
+ infodir=$ac_optarg ;;
+
+ -libdir | --libdir | --libdi | --libd)
+ ac_prev=libdir ;;
+ -libdir=* | --libdir=* | --libdi=* | --libd=*)
+ libdir=$ac_optarg ;;
+
+ -libexecdir | --libexecdir | --libexecdi | --libexecd | --libexec \
+ | --libexe | --libex | --libe)
+ ac_prev=libexecdir ;;
+ -libexecdir=* | --libexecdir=* | --libexecdi=* | --libexecd=* | --libexec=* \
+ | --libexe=* | --libex=* | --libe=*)
+ libexecdir=$ac_optarg ;;
+
+ -localstatedir | --localstatedir | --localstatedi | --localstated \
+ | --localstate | --localstat | --localsta | --localst \
+ | --locals | --local | --loca | --loc | --lo)
+ ac_prev=localstatedir ;;
+ -localstatedir=* | --localstatedir=* | --localstatedi=* | --localstated=* \
+ | --localstate=* | --localstat=* | --localsta=* | --localst=* \
+ | --locals=* | --local=* | --loca=* | --loc=* | --lo=*)
+ localstatedir=$ac_optarg ;;
+
+ -mandir | --mandir | --mandi | --mand | --man | --ma | --m)
+ ac_prev=mandir ;;
+ -mandir=* | --mandir=* | --mandi=* | --mand=* | --man=* | --ma=* | --m=*)
+ mandir=$ac_optarg ;;
+
+ -nfp | --nfp | --nf)
+ # Obsolete; use --without-fp.
+ with_fp=no ;;
+
+ -no-create | --no-create | --no-creat | --no-crea | --no-cre \
+ | --no-cr | --no-c | -n)
+ no_create=yes ;;
+
+ -no-recursion | --no-recursion | --no-recursio | --no-recursi \
+ | --no-recurs | --no-recur | --no-recu | --no-rec | --no-re | --no-r)
+ no_recursion=yes ;;
+
+ -oldincludedir | --oldincludedir | --oldincludedi | --oldincluded \
+ | --oldinclude | --oldinclud | --oldinclu | --oldincl | --oldinc \
+ | --oldin | --oldi | --old | --ol | --o)
+ ac_prev=oldincludedir ;;
+ -oldincludedir=* | --oldincludedir=* | --oldincludedi=* | --oldincluded=* \
+ | --oldinclude=* | --oldinclud=* | --oldinclu=* | --oldincl=* | --oldinc=* \
+ | --oldin=* | --oldi=* | --old=* | --ol=* | --o=*)
+ oldincludedir=$ac_optarg ;;
+
+ -prefix | --prefix | --prefi | --pref | --pre | --pr | --p)
+ ac_prev=prefix ;;
+ -prefix=* | --prefix=* | --prefi=* | --pref=* | --pre=* | --pr=* | --p=*)
+ prefix=$ac_optarg ;;
+
+ -program-prefix | --program-prefix | --program-prefi | --program-pref \
+ | --program-pre | --program-pr | --program-p)
+ ac_prev=program_prefix ;;
+ -program-prefix=* | --program-prefix=* | --program-prefi=* \
+ | --program-pref=* | --program-pre=* | --program-pr=* | --program-p=*)
+ program_prefix=$ac_optarg ;;
+
+ -program-suffix | --program-suffix | --program-suffi | --program-suff \
+ | --program-suf | --program-su | --program-s)
+ ac_prev=program_suffix ;;
+ -program-suffix=* | --program-suffix=* | --program-suffi=* \
+ | --program-suff=* | --program-suf=* | --program-su=* | --program-s=*)
+ program_suffix=$ac_optarg ;;
+
+ -program-transform-name | --program-transform-name \
+ | --program-transform-nam | --program-transform-na \
+ | --program-transform-n | --program-transform- \
+ | --program-transform | --program-transfor \
+ | --program-transfo | --program-transf \
+ | --program-trans | --program-tran \
+ | --progr-tra | --program-tr | --program-t)
+ ac_prev=program_transform_name ;;
+ -program-transform-name=* | --program-transform-name=* \
+ | --program-transform-nam=* | --program-transform-na=* \
+ | --program-transform-n=* | --program-transform-=* \
+ | --program-transform=* | --program-transfor=* \
+ | --program-transfo=* | --program-transf=* \
+ | --program-trans=* | --program-tran=* \
+ | --progr-tra=* | --program-tr=* | --program-t=*)
+ program_transform_name=$ac_optarg ;;
+
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ silent=yes ;;
+
+ -sbindir | --sbindir | --sbindi | --sbind | --sbin | --sbi | --sb)
+ ac_prev=sbindir ;;
+ -sbindir=* | --sbindir=* | --sbindi=* | --sbind=* | --sbin=* \
+ | --sbi=* | --sb=*)
+ sbindir=$ac_optarg ;;
+
+ -sharedstatedir | --sharedstatedir | --sharedstatedi \
+ | --sharedstated | --sharedstate | --sharedstat | --sharedsta \
+ | --sharedst | --shareds | --shared | --share | --shar \
+ | --sha | --sh)
+ ac_prev=sharedstatedir ;;
+ -sharedstatedir=* | --sharedstatedir=* | --sharedstatedi=* \
+ | --sharedstated=* | --sharedstate=* | --sharedstat=* | --sharedsta=* \
+ | --sharedst=* | --shareds=* | --shared=* | --share=* | --shar=* \
+ | --sha=* | --sh=*)
+ sharedstatedir=$ac_optarg ;;
+
+ -site | --site | --sit)
+ ac_prev=site ;;
+ -site=* | --site=* | --sit=*)
+ site=$ac_optarg ;;
+
+ -srcdir | --srcdir | --srcdi | --srcd | --src | --sr)
+ ac_prev=srcdir ;;
+ -srcdir=* | --srcdir=* | --srcdi=* | --srcd=* | --src=* | --sr=*)
+ srcdir=$ac_optarg ;;
+
+ -sysconfdir | --sysconfdir | --sysconfdi | --sysconfd | --sysconf \
+ | --syscon | --sysco | --sysc | --sys | --sy)
+ ac_prev=sysconfdir ;;
+ -sysconfdir=* | --sysconfdir=* | --sysconfdi=* | --sysconfd=* | --sysconf=* \
+ | --syscon=* | --sysco=* | --sysc=* | --sys=* | --sy=*)
+ sysconfdir=$ac_optarg ;;
+
+ -target | --target | --targe | --targ | --tar | --ta | --t)
+ ac_prev=target_alias ;;
+ -target=* | --target=* | --targe=* | --targ=* | --tar=* | --ta=* | --t=*)
+ target_alias=$ac_optarg ;;
+
+ -v | -verbose | --verbose | --verbos | --verbo | --verb)
+ verbose=yes ;;
+
+ -version | --version | --versio | --versi | --vers | -V)
+ ac_init_version=: ;;
+
+ -with-* | --with-*)
+ ac_package=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid package name: $ac_package" >&2
+ { (exit 1); exit 1; }; }
+ ac_package=`echo $ac_package| sed 's/-/_/g'`
+ case $ac_option in
+ *=*) ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`;;
+ *) ac_optarg=yes ;;
+ esac
+ eval "with_$ac_package='$ac_optarg'" ;;
+
+ -without-* | --without-*)
+ ac_package=`expr "x$ac_option" : 'x-*without-\(.*\)'`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_package" : ".*[^-_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid package name: $ac_package" >&2
+ { (exit 1); exit 1; }; }
+ ac_package=`echo $ac_package | sed 's/-/_/g'`
+ eval "with_$ac_package=no" ;;
+
+ --x)
+ # Obsolete; use --with-x.
+ with_x=yes ;;
+
+ -x-includes | --x-includes | --x-include | --x-includ | --x-inclu \
+ | --x-incl | --x-inc | --x-in | --x-i)
+ ac_prev=x_includes ;;
+ -x-includes=* | --x-includes=* | --x-include=* | --x-includ=* | --x-inclu=* \
+ | --x-incl=* | --x-inc=* | --x-in=* | --x-i=*)
+ x_includes=$ac_optarg ;;
+
+ -x-libraries | --x-libraries | --x-librarie | --x-librari \
+ | --x-librar | --x-libra | --x-libr | --x-lib | --x-li | --x-l)
+ ac_prev=x_libraries ;;
+ -x-libraries=* | --x-libraries=* | --x-librarie=* | --x-librari=* \
+ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*)
+ x_libraries=$ac_optarg ;;
+
+ -*) { echo "$as_me: error: unrecognized option: $ac_option
+Try \`$0 --help' for more information." >&2
+ { (exit 1); exit 1; }; }
+ ;;
+
+ *=*)
+ ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='`
+ # Reject names that are not valid shell variable names.
+ expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null &&
+ { echo "$as_me: error: invalid variable name: $ac_envvar" >&2
+ { (exit 1); exit 1; }; }
+ ac_optarg=`echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"`
+ eval "$ac_envvar='$ac_optarg'"
+ export $ac_envvar ;;
+
+ *)
+ # FIXME: should be removed in autoconf 3.0.
+ echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+ expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
+ echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+ : ${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}
+ ;;
+
+ esac
+done
+
+if test -n "$ac_prev"; then
+ ac_option=--`echo $ac_prev | sed 's/_/-/g'`
+ { echo "$as_me: error: missing argument to $ac_option" >&2
+ { (exit 1); exit 1; }; }
+fi
+
+# Be sure to have absolute paths.
+for ac_var in exec_prefix prefix
+do
+ eval ac_val=$`echo $ac_var`
+ case $ac_val in
+ [\\/$]* | ?:[\\/]* | NONE | '' ) ;;
+ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+ { (exit 1); exit 1; }; };;
+ esac
+done
+
+# Be sure to have absolute paths.
+for ac_var in bindir sbindir libexecdir datadir sysconfdir sharedstatedir \
+ localstatedir libdir includedir oldincludedir infodir mandir
+do
+ eval ac_val=$`echo $ac_var`
+ case $ac_val in
+ [\\/$]* | ?:[\\/]* ) ;;
+ *) { echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2
+ { (exit 1); exit 1; }; };;
+ esac
+done
+
+# There might be people who depend on the old broken behavior: `$host'
+# used to hold the argument of --host etc.
+# FIXME: To remove some day.
+build=$build_alias
+host=$host_alias
+target=$target_alias
+
+# FIXME: To remove some day.
+if test "x$host_alias" != x; then
+ if test "x$build_alias" = x; then
+ cross_compiling=maybe
+ echo "$as_me: WARNING: If you wanted to set the --build type, don't use --host.
+ If a cross compiler is detected then cross compile mode will be used." >&2
+ elif test "x$build_alias" != "x$host_alias"; then
+ cross_compiling=yes
+ fi
+fi
+
+ac_tool_prefix=
+test -n "$host_alias" && ac_tool_prefix=$host_alias-
+
+test "$silent" = yes && exec 6>/dev/null
+
+
+# Find the source files, if location was not specified.
+if test -z "$srcdir"; then
+ ac_srcdir_defaulted=yes
+ # Try the directory containing this script, then its parent.
+ ac_confdir=`(dirname "$0") 2>/dev/null ||
+$as_expr X"$0" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$0" : 'X\(//\)[^/]' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$0" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ srcdir=$ac_confdir
+ if test ! -r $srcdir/$ac_unique_file; then
+ srcdir=..
+ fi
+else
+ ac_srcdir_defaulted=no
+fi
+if test ! -r $srcdir/$ac_unique_file; then
+ if test "$ac_srcdir_defaulted" = yes; then
+ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $ac_confdir or .." >&2
+ { (exit 1); exit 1; }; }
+ else
+ { echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2
+ { (exit 1); exit 1; }; }
+ fi
+fi
+(cd $srcdir && test -r ./$ac_unique_file) 2>/dev/null ||
+ { echo "$as_me: error: sources are in $srcdir, but \`cd $srcdir' does not work" >&2
+ { (exit 1); exit 1; }; }
+srcdir=`echo "$srcdir" | sed 's%\([^\\/]\)[\\/]*$%\1%'`
+ac_env_build_alias_set=${build_alias+set}
+ac_env_build_alias_value=$build_alias
+ac_cv_env_build_alias_set=${build_alias+set}
+ac_cv_env_build_alias_value=$build_alias
+ac_env_host_alias_set=${host_alias+set}
+ac_env_host_alias_value=$host_alias
+ac_cv_env_host_alias_set=${host_alias+set}
+ac_cv_env_host_alias_value=$host_alias
+ac_env_target_alias_set=${target_alias+set}
+ac_env_target_alias_value=$target_alias
+ac_cv_env_target_alias_set=${target_alias+set}
+ac_cv_env_target_alias_value=$target_alias
+ac_env_CXX_set=${CXX+set}
+ac_env_CXX_value=$CXX
+ac_cv_env_CXX_set=${CXX+set}
+ac_cv_env_CXX_value=$CXX
+ac_env_CXXFLAGS_set=${CXXFLAGS+set}
+ac_env_CXXFLAGS_value=$CXXFLAGS
+ac_cv_env_CXXFLAGS_set=${CXXFLAGS+set}
+ac_cv_env_CXXFLAGS_value=$CXXFLAGS
+ac_env_LDFLAGS_set=${LDFLAGS+set}
+ac_env_LDFLAGS_value=$LDFLAGS
+ac_cv_env_LDFLAGS_set=${LDFLAGS+set}
+ac_cv_env_LDFLAGS_value=$LDFLAGS
+ac_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_env_CPPFLAGS_value=$CPPFLAGS
+ac_cv_env_CPPFLAGS_set=${CPPFLAGS+set}
+ac_cv_env_CPPFLAGS_value=$CPPFLAGS
+ac_env_CC_set=${CC+set}
+ac_env_CC_value=$CC
+ac_cv_env_CC_set=${CC+set}
+ac_cv_env_CC_value=$CC
+ac_env_CFLAGS_set=${CFLAGS+set}
+ac_env_CFLAGS_value=$CFLAGS
+ac_cv_env_CFLAGS_set=${CFLAGS+set}
+ac_cv_env_CFLAGS_value=$CFLAGS
+ac_env_CPP_set=${CPP+set}
+ac_env_CPP_value=$CPP
+ac_cv_env_CPP_set=${CPP+set}
+ac_cv_env_CPP_value=$CPP
+
+#
+# Report the --help message.
+#
+if test "$ac_init_help" = "long"; then
+ # Omit some internal or obsolete options to make the list less imposing.
+ # This message is too long to be a string in the A/UX 3.1 sh.
+ cat <<_ACEOF
+\`configure' configures xindy 2.3 to adapt to many kinds of systems.
+
+Usage: $0 [OPTION]... [VAR=VALUE]...
+
+To assign environment variables (e.g., CC, CFLAGS...), specify them as
+VAR=VALUE. See below for descriptions of some of the useful variables.
+
+Defaults for the options are specified in brackets.
+
+Configuration:
+ -h, --help display this help and exit
+ --help=short display options specific to this package
+ --help=recursive display the short help of all the included packages
+ -V, --version display version information and exit
+ -q, --quiet, --silent do not print \`checking...' messages
+ --cache-file=FILE cache test results in FILE [disabled]
+ -C, --config-cache alias for \`--cache-file=config.cache'
+ -n, --no-create do not create output files
+ --srcdir=DIR find the sources in DIR [configure dir or \`..']
+
+_ACEOF
+
+ cat <<_ACEOF
+Installation directories:
+ --prefix=PREFIX install architecture-independent files in PREFIX
+ [$ac_default_prefix]
+ --exec-prefix=EPREFIX install architecture-dependent files in EPREFIX
+ [PREFIX]
+
+By default, \`make install' will install all the files in
+\`$ac_default_prefix/bin', \`$ac_default_prefix/lib' etc. You can specify
+an installation prefix other than \`$ac_default_prefix' using \`--prefix',
+for instance \`--prefix=\$HOME'.
+
+For better control, use the options below.
+
+Fine tuning of the installation directories:
+ --bindir=DIR user executables [EPREFIX/bin]
+ --sbindir=DIR system admin executables [EPREFIX/sbin]
+ --libexecdir=DIR program executables [EPREFIX/libexec]
+ --datadir=DIR read-only architecture-independent data [PREFIX/share]
+ --sysconfdir=DIR read-only single-machine data [PREFIX/etc]
+ --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
+ --localstatedir=DIR modifiable single-machine data [PREFIX/var]
+ --libdir=DIR object code libraries [EPREFIX/lib]
+ --includedir=DIR C header files [PREFIX/include]
+ --oldincludedir=DIR C header files for non-gcc [/usr/include]
+ --infodir=DIR info documentation [PREFIX/info]
+ --mandir=DIR man documentation [PREFIX/man]
+_ACEOF
+
+ cat <<\_ACEOF
+
+Program names:
+ --program-prefix=PREFIX prepend PREFIX to installed program names
+ --program-suffix=SUFFIX append SUFFIX to installed program names
+ --program-transform-name=PROGRAM run sed PROGRAM on installed program names
+
+System types:
+ --build=BUILD configure for building on BUILD [guessed]
+ --host=HOST cross-compile to build programs to run on HOST [BUILD]
+_ACEOF
+fi
+
+if test -n "$ac_init_help"; then
+ case $ac_init_help in
+ short | recursive ) echo "Configuration of xindy 2.3:";;
+ esac
+ cat <<\_ACEOF
+
+Optional Features:
+ --disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
+ --enable-FEATURE[=ARG] include FEATURE [ARG=yes]
+ --disable-dependency-tracking speeds up one-time build
+ --enable-dependency-tracking do not reject slow dependency extractors
+ --enable-make-rules build and install make-rules package (default is
+ YES)
+ --enable-docs build and install documentation (default is YES)
+ --enable-external-clisp Use an external CLISP instead of the one in rte/
+ --clisp-path Where to search the external CLISP
+ --clisp-dir Where to seach the external CLISP library
+
+Some influential environment variables:
+ CXX C++ compiler command
+ CXXFLAGS C++ compiler flags
+ LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a
+ nonstandard directory <lib dir>
+ CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have
+ headers in a nonstandard directory <include dir>
+ CC C compiler command
+ CFLAGS C compiler flags
+ CPP C preprocessor
+
+Use these variables to override the choices made by `configure' or to help
+it to find libraries and programs with nonstandard names/locations.
+
+Report bugs to <xindy-discuss@lists.sourceforge.net>.
+_ACEOF
+fi
+
+if test "$ac_init_help" = "recursive"; then
+ # If there are subdirs, report their specific --help.
+ ac_popdir=`pwd`
+ for ac_dir in : $ac_subdirs_all; do test "x$ac_dir" = x: && continue
+ test -d $ac_dir || continue
+ ac_builddir=.
+
+if test "$ac_dir" != .; then
+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+ ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+ .) # No --srcdir option. We are building in place.
+ ac_srcdir=.
+ if test -z "$ac_top_builddir"; then
+ ac_top_srcdir=.
+ else
+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+ fi ;;
+ [\\/]* | ?:[\\/]* ) # Absolute path.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir ;;
+ *) # Relative path.
+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+ case "$ac_dir" in
+ .) ac_abs_builddir=`pwd`;;
+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+ case ${ac_top_builddir}. in
+ .) ac_abs_top_builddir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+ case $ac_srcdir in
+ .) ac_abs_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+ case $ac_top_srcdir in
+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+ esac;;
+esac
+
+ cd $ac_dir
+ # Check for guested configure; otherwise get Cygnus style configure.
+ if test -f $ac_srcdir/configure.gnu; then
+ echo
+ $SHELL $ac_srcdir/configure.gnu --help=recursive
+ elif test -f $ac_srcdir/configure; then
+ echo
+ $SHELL $ac_srcdir/configure --help=recursive
+ elif test -f $ac_srcdir/configure.ac ||
+ test -f $ac_srcdir/configure.in; then
+ echo
+ $ac_configure --help
+ else
+ echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+ fi
+ cd $ac_popdir
+ done
+fi
+
+test -n "$ac_init_help" && exit 0
+if $ac_init_version; then
+ cat <<\_ACEOF
+xindy configure 2.3
+generated by GNU Autoconf 2.59
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This configure script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it.
+_ACEOF
+ exit 0
+fi
+exec 5>config.log
+cat >&5 <<_ACEOF
+This file contains any messages produced by compilers while
+running configure, to aid debugging if configure makes a mistake.
+
+It was created by xindy $as_me 2.3, which was
+generated by GNU Autoconf 2.59. Invocation command line was
+
+ $ $0 $@
+
+_ACEOF
+{
+cat <<_ASUNAME
+## --------- ##
+## Platform. ##
+## --------- ##
+
+hostname = `(hostname || uname -n) 2>/dev/null | sed 1q`
+uname -m = `(uname -m) 2>/dev/null || echo unknown`
+uname -r = `(uname -r) 2>/dev/null || echo unknown`
+uname -s = `(uname -s) 2>/dev/null || echo unknown`
+uname -v = `(uname -v) 2>/dev/null || echo unknown`
+
+/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null || echo unknown`
+/bin/uname -X = `(/bin/uname -X) 2>/dev/null || echo unknown`
+
+/bin/arch = `(/bin/arch) 2>/dev/null || echo unknown`
+/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null || echo unknown`
+/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null || echo unknown`
+hostinfo = `(hostinfo) 2>/dev/null || echo unknown`
+/bin/machine = `(/bin/machine) 2>/dev/null || echo unknown`
+/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null || echo unknown`
+/bin/universe = `(/bin/universe) 2>/dev/null || echo unknown`
+
+_ASUNAME
+
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ echo "PATH: $as_dir"
+done
+
+} >&5
+
+cat >&5 <<_ACEOF
+
+
+## ----------- ##
+## Core tests. ##
+## ----------- ##
+
+_ACEOF
+
+
+# Keep a trace of the command line.
+# Strip out --no-create and --no-recursion so they do not pile up.
+# Strip out --silent because we don't want to record it for future runs.
+# Also quote any args containing shell meta-characters.
+# Make two passes to allow for proper duplicate-argument suppression.
+ac_configure_args=
+ac_configure_args0=
+ac_configure_args1=
+ac_sep=
+ac_must_keep_next=false
+for ac_pass in 1 2
+do
+ for ac_arg
+ do
+ case $ac_arg in
+ -no-create | --no-c* | -n | -no-recursion | --no-r*) continue ;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil)
+ continue ;;
+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+ ac_arg=`echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+ esac
+ case $ac_pass in
+ 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;;
+ 2)
+ ac_configure_args1="$ac_configure_args1 '$ac_arg'"
+ if test $ac_must_keep_next = true; then
+ ac_must_keep_next=false # Got value, back to normal.
+ else
+ case $ac_arg in
+ *=* | --config-cache | -C | -disable-* | --disable-* \
+ | -enable-* | --enable-* | -gas | --g* | -nfp | --nf* \
+ | -q | -quiet | --q* | -silent | --sil* | -v | -verb* \
+ | -with-* | --with-* | -without-* | --without-* | --x)
+ case "$ac_configure_args0 " in
+ "$ac_configure_args1"*" '$ac_arg' "* ) continue ;;
+ esac
+ ;;
+ -* ) ac_must_keep_next=true ;;
+ esac
+ fi
+ ac_configure_args="$ac_configure_args$ac_sep'$ac_arg'"
+ # Get rid of the leading space.
+ ac_sep=" "
+ ;;
+ esac
+ done
+done
+$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; }
+$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; }
+
+# When interrupted or exit'd, cleanup temporary files, and complete
+# config.log. We remove comments because anyway the quotes in there
+# would cause problems or look ugly.
+# WARNING: Be sure not to use single quotes in there, as some shells,
+# such as our DU 5.0 friend, will then `close' the trap.
+trap 'exit_status=$?
+ # Save into config.log some information that might help in debugging.
+ {
+ echo
+
+ cat <<\_ASBOX
+## ---------------- ##
+## Cache variables. ##
+## ---------------- ##
+_ASBOX
+ echo
+ # The following way of writing the cache mishandles newlines in values,
+{
+ (set) 2>&1 |
+ case `(ac_space='"'"' '"'"'; set | grep ac_space) 2>&1` in
+ *ac_space=\ *)
+ sed -n \
+ "s/'"'"'/'"'"'\\\\'"'"''"'"'/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='"'"'\\2'"'"'/p"
+ ;;
+ *)
+ sed -n \
+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+ ;;
+ esac;
+}
+ echo
+
+ cat <<\_ASBOX
+## ----------------- ##
+## Output variables. ##
+## ----------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_vars
+ do
+ eval ac_val=$`echo $ac_var`
+ echo "$ac_var='"'"'$ac_val'"'"'"
+ done | sort
+ echo
+
+ if test -n "$ac_subst_files"; then
+ cat <<\_ASBOX
+## ------------- ##
+## Output files. ##
+## ------------- ##
+_ASBOX
+ echo
+ for ac_var in $ac_subst_files
+ do
+ eval ac_val=$`echo $ac_var`
+ echo "$ac_var='"'"'$ac_val'"'"'"
+ done | sort
+ echo
+ fi
+
+ if test -s confdefs.h; then
+ cat <<\_ASBOX
+## ----------- ##
+## confdefs.h. ##
+## ----------- ##
+_ASBOX
+ echo
+ sed "/^$/d" confdefs.h | sort
+ echo
+ fi
+ test "$ac_signal" != 0 &&
+ echo "$as_me: caught signal $ac_signal"
+ echo "$as_me: exit $exit_status"
+ } >&5
+ rm -f core *.core &&
+ rm -rf conftest* confdefs* conf$$* $ac_clean_files &&
+ exit $exit_status
+ ' 0
+for ac_signal in 1 2 13 15; do
+ trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal
+done
+ac_signal=0
+
+# confdefs.h avoids OS command line length limits that DEFS can exceed.
+rm -rf conftest* confdefs.h
+# AIX cpp loses on an empty file, so make sure it contains at least a newline.
+echo >confdefs.h
+
+# Predefined preprocessor variables.
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_NAME "$PACKAGE_NAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_VERSION "$PACKAGE_VERSION"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_STRING "$PACKAGE_STRING"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
+_ACEOF
+
+
+# Let the site file select an alternate cache file if it wants to.
+# Prefer explicitly selected file to automatically selected ones.
+if test -z "$CONFIG_SITE"; then
+ if test "x$prefix" != xNONE; then
+ CONFIG_SITE="$prefix/share/config.site $prefix/etc/config.site"
+ else
+ CONFIG_SITE="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
+ fi
+fi
+for ac_site_file in $CONFIG_SITE; do
+ if test -r "$ac_site_file"; then
+ { echo "$as_me:$LINENO: loading site script $ac_site_file" >&5
+echo "$as_me: loading site script $ac_site_file" >&6;}
+ sed 's/^/| /' "$ac_site_file" >&5
+ . "$ac_site_file"
+ fi
+done
+
+if test -r "$cache_file"; then
+ # Some versions of bash will fail to source /dev/null (special
+ # files actually), so we avoid doing that.
+ if test -f "$cache_file"; then
+ { echo "$as_me:$LINENO: loading cache $cache_file" >&5
+echo "$as_me: loading cache $cache_file" >&6;}
+ case $cache_file in
+ [\\/]* | ?:[\\/]* ) . $cache_file;;
+ *) . ./$cache_file;;
+ esac
+ fi
+else
+ { echo "$as_me:$LINENO: creating cache $cache_file" >&5
+echo "$as_me: creating cache $cache_file" >&6;}
+ >$cache_file
+fi
+
+# Check that the precious variables saved in the cache have kept the same
+# value.
+ac_cache_corrupted=false
+for ac_var in `(set) 2>&1 |
+ sed -n 's/^ac_env_\([a-zA-Z_0-9]*\)_set=.*/\1/p'`; do
+ eval ac_old_set=\$ac_cv_env_${ac_var}_set
+ eval ac_new_set=\$ac_env_${ac_var}_set
+ eval ac_old_val="\$ac_cv_env_${ac_var}_value"
+ eval ac_new_val="\$ac_env_${ac_var}_value"
+ case $ac_old_set,$ac_new_set in
+ set,)
+ { echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,set)
+ { echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5
+echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+ ac_cache_corrupted=: ;;
+ ,);;
+ *)
+ if test "x$ac_old_val" != "x$ac_new_val"; then
+ { echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5
+echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+ { echo "$as_me:$LINENO: former value: $ac_old_val" >&5
+echo "$as_me: former value: $ac_old_val" >&2;}
+ { echo "$as_me:$LINENO: current value: $ac_new_val" >&5
+echo "$as_me: current value: $ac_new_val" >&2;}
+ ac_cache_corrupted=:
+ fi;;
+ esac
+ # Pass precious variables to config.status.
+ if test "$ac_new_set" = set; then
+ case $ac_new_val in
+ *" "*|*" "*|*[\[\]\~\#\$\^\&\*\(\)\{\}\\\|\;\<\>\?\"\']*)
+ ac_arg=$ac_var=`echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+ *) ac_arg=$ac_var=$ac_new_val ;;
+ esac
+ case " $ac_configure_args " in
+ *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy.
+ *) ac_configure_args="$ac_configure_args '$ac_arg'" ;;
+ esac
+ fi
+done
+if $ac_cache_corrupted; then
+ { echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5
+echo "$as_me: error: changes in the environment can compromise the build" >&2;}
+ { { echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5
+echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+## make dist doesn't work yet, since configure makes CLISP.
+am__api_version="1.9"
+ac_aux_dir=
+for ac_dir in $srcdir $srcdir/.. $srcdir/../..; do
+ if test -f $ac_dir/install-sh; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install-sh -c"
+ break
+ elif test -f $ac_dir/install.sh; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/install.sh -c"
+ break
+ elif test -f $ac_dir/shtool; then
+ ac_aux_dir=$ac_dir
+ ac_install_sh="$ac_aux_dir/shtool install -c"
+ break
+ fi
+done
+if test -z "$ac_aux_dir"; then
+ { { echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&5
+echo "$as_me: error: cannot find install-sh or install.sh in $srcdir $srcdir/.. $srcdir/../.." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+ac_config_guess="$SHELL $ac_aux_dir/config.guess"
+ac_config_sub="$SHELL $ac_aux_dir/config.sub"
+ac_configure="$SHELL $ac_aux_dir/configure" # This should be Cygnus configure.
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+done
+
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. We don't cache a
+ # path for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the path is relative.
+ INSTALL=$ac_install_sh
+ fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+echo "$as_me:$LINENO: checking whether build environment is sane" >&5
+echo $ECHO_N "checking whether build environment is sane... $ECHO_C" >&6
+# Just in case
+sleep 1
+echo timestamp > conftest.file
+# Do `set' in a subshell so we don't clobber the current shell's
+# arguments. Must try -L first in case configure is actually a
+# symlink; some systems play weird games with the mod time of symlinks
+# (eg FreeBSD returns the mod time of the symlink's containing
+# directory).
+if (
+ set X `ls -Lt $srcdir/configure conftest.file 2> /dev/null`
+ if test "$*" = "X"; then
+ # -L didn't work.
+ set X `ls -t $srcdir/configure conftest.file`
+ fi
+ rm -f conftest.file
+ if test "$*" != "X $srcdir/configure conftest.file" \
+ && test "$*" != "X conftest.file $srcdir/configure"; then
+
+ # If neither matched, then we have a broken ls. This can happen
+ # if, for instance, CONFIG_SHELL is bash and it inherits a
+ # broken ls alias from the environment. This has actually
+ # happened. Such a system could not be considered "sane".
+ { { echo "$as_me:$LINENO: error: ls -t appears to fail. Make sure there is not a broken
+alias in your environment" >&5
+echo "$as_me: error: ls -t appears to fail. Make sure there is not a broken
+alias in your environment" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+
+ test "$2" = conftest.file
+ )
+then
+ # Ok.
+ :
+else
+ { { echo "$as_me:$LINENO: error: newly created file is older than distributed files!
+Check your system clock" >&5
+echo "$as_me: error: newly created file is older than distributed files!
+Check your system clock" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+test "$program_prefix" != NONE &&
+ program_transform_name="s,^,$program_prefix,;$program_transform_name"
+# Use a double $ so make ignores it.
+test "$program_suffix" != NONE &&
+ program_transform_name="s,\$,$program_suffix,;$program_transform_name"
+# Double any \ or $. echo might interpret backslashes.
+# By default was `s,x,x', remove it if useless.
+cat <<\_ACEOF >conftest.sed
+s/[\\$]/&&/g;s/;s,x,x,$//
+_ACEOF
+program_transform_name=`echo $program_transform_name | sed -f conftest.sed`
+rm conftest.sed
+
+# expand $ac_aux_dir to an absolute path
+am_aux_dir=`cd $ac_aux_dir && pwd`
+
+test x"${MISSING+set}" = xset || MISSING="\${SHELL} $am_aux_dir/missing"
+# Use eval to expand $SHELL
+if eval "$MISSING --run true"; then
+ am_missing_run="$MISSING --run "
+else
+ am_missing_run=
+ { echo "$as_me:$LINENO: WARNING: \`missing' script is too old or missing" >&5
+echo "$as_me: WARNING: \`missing' script is too old or missing" >&2;}
+fi
+
+if mkdir -p --version . >/dev/null 2>&1 && test ! -d ./--version; then
+ # We used to keeping the `.' as first argument, in order to
+ # allow $(mkdir_p) to be used without argument. As in
+ # $(mkdir_p) $(somedir)
+ # where $(somedir) is conditionally defined. However this is wrong
+ # for two reasons:
+ # 1. if the package is installed by a user who cannot write `.'
+ # make install will fail,
+ # 2. the above comment should most certainly read
+ # $(mkdir_p) $(DESTDIR)$(somedir)
+ # so it does not work when $(somedir) is undefined and
+ # $(DESTDIR) is not.
+ # To support the latter case, we have to write
+ # test -z "$(somedir)" || $(mkdir_p) $(DESTDIR)$(somedir),
+ # so the `.' trick is pointless.
+ mkdir_p='mkdir -p --'
+else
+ # On NextStep and OpenStep, the `mkdir' command does not
+ # recognize any option. It will interpret all options as
+ # directories to create, and then abort because `.' already
+ # exists.
+ for d in ./-p ./--version;
+ do
+ test -d $d && rmdir $d
+ done
+ # $(mkinstalldirs) is defined by Automake if mkinstalldirs exists.
+ if test -f "$ac_aux_dir/mkinstalldirs"; then
+ mkdir_p='$(mkinstalldirs)'
+ else
+ mkdir_p='$(install_sh) -d'
+ fi
+fi
+
+for ac_prog in gawk mawk nawk awk
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_AWK+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$AWK"; then
+ ac_cv_prog_AWK="$AWK" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_AWK="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+AWK=$ac_cv_prog_AWK
+if test -n "$AWK"; then
+ echo "$as_me:$LINENO: result: $AWK" >&5
+echo "${ECHO_T}$AWK" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$AWK" && break
+done
+
+echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.make <<\_ACEOF
+all:
+ @echo 'ac_maketemp="$(MAKE)"'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+ eval ac_cv_prog_make_${ac_make}_set=yes
+else
+ eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+ SET_MAKE=
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+ SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+rm -rf .tst 2>/dev/null
+mkdir .tst 2>/dev/null
+if test -d .tst; then
+ am__leading_dot=.
+else
+ am__leading_dot=_
+fi
+rmdir .tst 2>/dev/null
+
+# test to see if srcdir already configured
+if test "`cd $srcdir && pwd`" != "`pwd`" &&
+ test -f $srcdir/config.status; then
+ { { echo "$as_me:$LINENO: error: source directory already configured; run \"make distclean\" there first" >&5
+echo "$as_me: error: source directory already configured; run \"make distclean\" there first" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+# test whether we have cygpath
+if test -z "$CYGPATH_W"; then
+ if (cygpath --version) >/dev/null 2>/dev/null; then
+ CYGPATH_W='cygpath -w'
+ else
+ CYGPATH_W=echo
+ fi
+fi
+
+
+# Define the identity of the package.
+ PACKAGE='xindy'
+ VERSION='2.3'
+
+
+cat >>confdefs.h <<_ACEOF
+#define PACKAGE "$PACKAGE"
+_ACEOF
+
+
+cat >>confdefs.h <<_ACEOF
+#define VERSION "$VERSION"
+_ACEOF
+
+# Some tools Automake needs.
+
+ACLOCAL=${ACLOCAL-"${am_missing_run}aclocal-${am__api_version}"}
+
+
+AUTOCONF=${AUTOCONF-"${am_missing_run}autoconf"}
+
+
+AUTOMAKE=${AUTOMAKE-"${am_missing_run}automake-${am__api_version}"}
+
+
+AUTOHEADER=${AUTOHEADER-"${am_missing_run}autoheader"}
+
+
+MAKEINFO=${MAKEINFO-"${am_missing_run}makeinfo"}
+
+install_sh=${install_sh-"$am_aux_dir/install-sh"}
+
+# Installed binaries are usually stripped using `strip' when the user
+# run `make install-strip'. However `strip' might not be the right
+# tool to use in cross-compilation environments, therefore Automake
+# will honor the `STRIP' environment variable to overrule this program.
+if test "$cross_compiling" != no; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
+set dummy ${ac_tool_prefix}strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_STRIP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$STRIP"; then
+ ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_STRIP="${ac_tool_prefix}strip"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+STRIP=$ac_cv_prog_STRIP
+if test -n "$STRIP"; then
+ echo "$as_me:$LINENO: result: $STRIP" >&5
+echo "${ECHO_T}$STRIP" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_STRIP"; then
+ ac_ct_STRIP=$STRIP
+ # Extract the first word of "strip", so it can be a program name with args.
+set dummy strip; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_STRIP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_STRIP"; then
+ ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_STRIP="strip"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+ test -z "$ac_cv_prog_ac_ct_STRIP" && ac_cv_prog_ac_ct_STRIP=":"
+fi
+fi
+ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
+if test -n "$ac_ct_STRIP"; then
+ echo "$as_me:$LINENO: result: $ac_ct_STRIP" >&5
+echo "${ECHO_T}$ac_ct_STRIP" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ STRIP=$ac_ct_STRIP
+else
+ STRIP="$ac_cv_prog_STRIP"
+fi
+
+fi
+INSTALL_STRIP_PROGRAM="\${SHELL} \$(install_sh) -c -s"
+
+# We need awk for the "check" target. The system "awk" is bad on
+# some platforms.
+# Always define AMTAR for backward compatibility.
+
+AMTAR=${AMTAR-"${am_missing_run}tar"}
+
+am__tar='${AMTAR} chof - "$$tardir"'; am__untar='${AMTAR} xf -'
+
+
+
+
+
+
+# Checks for programs.
+# FIXME: not used: CXX, CPP, YACC, LN_S. Why are they tested here?
+ac_ext=cc
+ac_cpp='$CXXCPP $CPPFLAGS'
+ac_compile='$CXX -c $CXXFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CXX -o conftest$ac_exeext $CXXFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_cxx_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CXX+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CXX"; then
+ ac_cv_prog_CXX="$CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CXX="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CXX=$ac_cv_prog_CXX
+if test -n "$CXX"; then
+ echo "$as_me:$LINENO: result: $CXX" >&5
+echo "${ECHO_T}$CXX" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$CXX" && break
+ done
+fi
+if test -z "$CXX"; then
+ ac_ct_CXX=$CXX
+ for ac_prog in $CCC g++ c++ gpp aCC CC cxx cc++ cl FCC KCC RCC xlC_r xlC
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CXX"; then
+ ac_cv_prog_ac_ct_CXX="$ac_ct_CXX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CXX="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CXX=$ac_cv_prog_ac_ct_CXX
+if test -n "$ac_ct_CXX"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5
+echo "${ECHO_T}$ac_ct_CXX" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$ac_ct_CXX" && break
+done
+test -n "$ac_ct_CXX" || ac_ct_CXX="g++"
+
+ CXX=$ac_ct_CXX
+fi
+
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+ "checking for C++ compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+ (eval $ac_compiler --version </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+ (eval $ac_compiler -v </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+ (eval $ac_compiler -V </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files a.out a.exe b.out"
+# Try to create an executable without -o first, disregard a.out.
+# It will help us diagnose broken compilers, and finding out an intuition
+# of exeext.
+echo "$as_me:$LINENO: checking for C++ compiler default output file name" >&5
+echo $ECHO_N "checking for C++ compiler default output file name... $ECHO_C" >&6
+ac_link_default=`echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+if { (eval echo "$as_me:$LINENO: \"$ac_link_default\"") >&5
+ (eval $ac_link_default) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # Find the output, starting from the most likely. This scheme is
+# not robust to junk in `.', hence go to wildcards (a.*) only as a last
+# resort.
+
+# Be careful to initialize this variable, since it used to be cached.
+# Otherwise an old cache value of `no' led to `EXEEXT = no' in a Makefile.
+ac_cv_exeext=
+# b.out is created by i960 compilers.
+for ac_file in a_out.exe a.exe conftest.exe a.out conftest a.* conftest.* b.out
+do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj )
+ ;;
+ conftest.$ac_ext )
+ # This is the source file.
+ ;;
+ [ab].out )
+ # We found the default executable, but exeext='' is most
+ # certainly right.
+ break;;
+ *.* )
+ ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ # FIXME: I believe we export ac_cv_exeext for Libtool,
+ # but it would be cool to find out if it's true. Does anybody
+ # maintain Libtool? --akim.
+ export ac_cv_exeext
+ break;;
+ * )
+ break;;
+ esac
+done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: C++ compiler cannot create executables
+See \`config.log' for more details." >&5
+echo "$as_me: error: C++ compiler cannot create executables
+See \`config.log' for more details." >&2;}
+ { (exit 77); exit 77; }; }
+fi
+
+ac_exeext=$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_file" >&5
+echo "${ECHO_T}$ac_file" >&6
+
+# Check the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether the C++ compiler works" >&5
+echo $ECHO_N "checking whether the C++ compiler works... $ECHO_C" >&6
+# FIXME: These cross compiler hacks should be removed for Autoconf 3.0
+# If not cross compiling, check that we can run a simple program.
+if test "$cross_compiling" != yes; then
+ if { ac_try='./$ac_file'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ cross_compiling=no
+ else
+ if test "$cross_compiling" = maybe; then
+ cross_compiling=yes
+ else
+ { { echo "$as_me:$LINENO: error: cannot run C++ compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot run C++ compiled programs.
+If you meant to cross compile, use \`--host'.
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ fi
+fi
+echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+
+rm -f a.out a.exe conftest$ac_cv_exeext b.out
+ac_clean_files=$ac_clean_files_save
+# Check the compiler produces executables we can run. If not, either
+# the compiler is broken, or we cross compile.
+echo "$as_me:$LINENO: checking whether we are cross compiling" >&5
+echo $ECHO_N "checking whether we are cross compiling... $ECHO_C" >&6
+echo "$as_me:$LINENO: result: $cross_compiling" >&5
+echo "${ECHO_T}$cross_compiling" >&6
+
+echo "$as_me:$LINENO: checking for suffix of executables" >&5
+echo $ECHO_N "checking for suffix of executables... $ECHO_C" >&6
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ # If both `conftest.exe' and `conftest' are `present' (well, observable)
+# catch `conftest.exe'. For instance with Cygwin, `ls conftest' will
+# work properly (i.e., refer to `conftest.exe'), while it won't with
+# `rm'.
+for ac_file in conftest.exe conftest conftest.*; do
+ test -f "$ac_file" || continue
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg | *.o | *.obj ) ;;
+ *.* ) ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
+ export ac_cv_exeext
+ break;;
+ * ) break;;
+ esac
+done
+else
+ { { echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of executables: cannot compile and link
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest$ac_cv_exeext
+echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5
+echo "${ECHO_T}$ac_cv_exeext" >&6
+
+rm -f conftest.$ac_ext
+EXEEXT=$ac_cv_exeext
+ac_exeext=$EXEEXT
+echo "$as_me:$LINENO: checking for suffix of object files" >&5
+echo $ECHO_N "checking for suffix of object files... $ECHO_C" >&6
+if test "${ac_cv_objext+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.o conftest.obj
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; then
+ for ac_file in `(ls conftest.o conftest.obj; ls conftest.*) 2>/dev/null`; do
+ case $ac_file in
+ *.$ac_ext | *.xcoff | *.tds | *.d | *.pdb | *.xSYM | *.bb | *.bbg ) ;;
+ *) ac_cv_objext=`expr "$ac_file" : '.*\.\(.*\)'`
+ break;;
+ esac
+done
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+{ { echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&5
+echo "$as_me: error: cannot compute suffix of object files: cannot compile
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+rm -f conftest.$ac_cv_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_objext" >&5
+echo "${ECHO_T}$ac_cv_objext" >&6
+OBJEXT=$ac_cv_objext
+ac_objext=$OBJEXT
+echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C++ compiler... $ECHO_C" >&6
+if test "${ac_cv_cxx_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_compiler_gnu=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_cxx_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_cxx_compiler_gnu" >&6
+GXX=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CXXFLAGS=${CXXFLAGS+set}
+ac_save_CXXFLAGS=$CXXFLAGS
+CXXFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5
+echo $ECHO_N "checking whether $CXX accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cxx_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cxx_g=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cxx_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cxx_g" >&6
+if test "$ac_test_CXXFLAGS" = set; then
+ CXXFLAGS=$ac_save_CXXFLAGS
+elif test $ac_cv_prog_cxx_g = yes; then
+ if test "$GXX" = yes; then
+ CXXFLAGS="-g -O2"
+ else
+ CXXFLAGS="-g"
+ fi
+else
+ if test "$GXX" = yes; then
+ CXXFLAGS="-O2"
+ else
+ CXXFLAGS=
+ fi
+fi
+for ac_declaration in \
+ '' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_cxx_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+DEPDIR="${am__leading_dot}deps"
+
+ ac_config_commands="$ac_config_commands depfiles"
+
+
+am_make=${MAKE-make}
+cat > confinc << 'END'
+am__doit:
+ @echo done
+.PHONY: am__doit
+END
+# If we don't find an include directive, just comment out the code.
+echo "$as_me:$LINENO: checking for style of include used by $am_make" >&5
+echo $ECHO_N "checking for style of include used by $am_make... $ECHO_C" >&6
+am__include="#"
+am__quote=
+_am_result=none
+# First try GNU make style include.
+echo "include confinc" > confmf
+# We grep out `Entering directory' and `Leaving directory'
+# messages which can occur if `w' ends up in MAKEFLAGS.
+# In particular we don't look at `^make:' because GNU make might
+# be invoked under some other name (usually "gmake"), in which
+# case it prints its new name instead of `make'.
+if test "`$am_make -s -f confmf 2> /dev/null | grep -v 'ing directory'`" = "done"; then
+ am__include=include
+ am__quote=
+ _am_result=GNU
+fi
+# Now try BSD make style include.
+if test "$am__include" = "#"; then
+ echo '.include "confinc"' > confmf
+ if test "`$am_make -s -f confmf 2> /dev/null`" = "done"; then
+ am__include=.include
+ am__quote="\""
+ _am_result=BSD
+ fi
+fi
+
+
+echo "$as_me:$LINENO: result: $_am_result" >&5
+echo "${ECHO_T}$_am_result" >&6
+rm -f confinc confmf
+
+# Check whether --enable-dependency-tracking or --disable-dependency-tracking was given.
+if test "${enable_dependency_tracking+set}" = set; then
+ enableval="$enable_dependency_tracking"
+
+fi;
+if test "x$enable_dependency_tracking" != xno; then
+ am_depcomp="$ac_aux_dir/depcomp"
+ AMDEPBACKSLASH='\'
+fi
+
+
+if test "x$enable_dependency_tracking" != xno; then
+ AMDEP_TRUE=
+ AMDEP_FALSE='#'
+else
+ AMDEP_TRUE='#'
+ AMDEP_FALSE=
+fi
+
+
+
+
+depcc="$CXX" am_compiler_list=
+
+echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CXX_dependencies_compiler_type+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CXX_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CXX_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CXX_dependencies_compiler_type=none
+fi
+
+fi
+echo "$as_me:$LINENO: result: $am_cv_CXX_dependencies_compiler_type" >&5
+echo "${ECHO_T}$am_cv_CXX_dependencies_compiler_type" >&6
+CXXDEPMODE=depmode=$am_cv_CXX_dependencies_compiler_type
+
+
+
+if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CXX_dependencies_compiler_type" = gcc3; then
+ am__fastdepCXX_TRUE=
+ am__fastdepCXX_FALSE='#'
+else
+ am__fastdepCXX_TRUE='#'
+ am__fastdepCXX_FALSE=
+fi
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="${ac_tool_prefix}gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "gcc", so it can be a program name with args.
+set dummy gcc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="gcc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ CC=$ac_ct_CC
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
+set dummy ${ac_tool_prefix}cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="${ac_tool_prefix}cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$ac_cv_prog_CC"; then
+ ac_ct_CC=$CC
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ CC=$ac_ct_CC
+else
+ CC="$ac_cv_prog_CC"
+fi
+
+fi
+if test -z "$CC"; then
+ # Extract the first word of "cc", so it can be a program name with args.
+set dummy cc; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+ ac_prog_rejected=no
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+ ac_prog_rejected=yes
+ continue
+ fi
+ ac_cv_prog_CC="cc"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+if test $ac_prog_rejected = yes; then
+ # We found a bogon in the path, so make sure we never use it.
+ set dummy $ac_cv_prog_CC
+ shift
+ if test $# != 0; then
+ # We chose a different compiler from the bogus one.
+ # However, it has the same basename, so the bogon will be chosen
+ # first if we set CC to just the basename; use the full file name.
+ shift
+ ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+ fi
+fi
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+fi
+if test -z "$CC"; then
+ if test -n "$ac_tool_prefix"; then
+ for ac_prog in cl
+ do
+ # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
+set dummy $ac_tool_prefix$ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$CC"; then
+ ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+ echo "$as_me:$LINENO: result: $CC" >&5
+echo "${ECHO_T}$CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$CC" && break
+ done
+fi
+if test -z "$CC"; then
+ ac_ct_CC=$CC
+ for ac_prog in cl
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_ac_ct_CC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$ac_ct_CC"; then
+ ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_ac_ct_CC="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+ echo "$as_me:$LINENO: result: $ac_ct_CC" >&5
+echo "${ECHO_T}$ac_ct_CC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$ac_ct_CC" && break
+done
+
+ CC=$ac_ct_CC
+fi
+
+fi
+
+
+test -z "$CC" && { { echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&5
+echo "$as_me: error: no acceptable C compiler found in \$PATH
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+
+# Provide some information about the compiler.
+echo "$as_me:$LINENO:" \
+ "checking for C compiler version" >&5
+ac_compiler=`set X $ac_compile; echo $2`
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
+ (eval $ac_compiler --version </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -v </dev/null >&5\"") >&5
+ (eval $ac_compiler -v </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+{ (eval echo "$as_me:$LINENO: \"$ac_compiler -V </dev/null >&5\"") >&5
+ (eval $ac_compiler -V </dev/null >&5) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+
+echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5
+echo $ECHO_N "checking whether we are using the GNU C compiler... $ECHO_C" >&6
+if test "${ac_cv_c_compiler_gnu+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+#ifndef __GNUC__
+ choke me
+#endif
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_compiler_gnu=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_compiler_gnu=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_cv_c_compiler_gnu=$ac_compiler_gnu
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5
+echo "${ECHO_T}$ac_cv_c_compiler_gnu" >&6
+GCC=`test $ac_compiler_gnu = yes && echo yes`
+ac_test_CFLAGS=${CFLAGS+set}
+ac_save_CFLAGS=$CFLAGS
+CFLAGS="-g"
+echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5
+echo $ECHO_N "checking whether $CC accepts -g... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_g+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_g=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_prog_cc_g=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_g" >&6
+if test "$ac_test_CFLAGS" = set; then
+ CFLAGS=$ac_save_CFLAGS
+elif test $ac_cv_prog_cc_g = yes; then
+ if test "$GCC" = yes; then
+ CFLAGS="-g -O2"
+ else
+ CFLAGS="-g"
+ fi
+else
+ if test "$GCC" = yes; then
+ CFLAGS="-O2"
+ else
+ CFLAGS=
+ fi
+fi
+echo "$as_me:$LINENO: checking for $CC option to accept ANSI C" >&5
+echo $ECHO_N "checking for $CC option to accept ANSI C... $ECHO_C" >&6
+if test "${ac_cv_prog_cc_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_prog_cc_stdc=no
+ac_save_CC=$CC
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdarg.h>
+#include <stdio.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+/* Most of the following tests are stolen from RCS 5.7's src/conf.sh. */
+struct buf { int x; };
+FILE * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+ char **p;
+ int i;
+{
+ return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+ char *s;
+ va_list v;
+ va_start (v,p);
+ s = g (p, va_arg (v,int));
+ va_end (v);
+ return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default. It has
+ function prototypes and stuff, but not '\xHH' hex character constants.
+ These don't provoke an error unfortunately, instead are silently treated
+ as 'x'. The following induces an error, until -std1 is added to get
+ proper ANSI mode. Curiously '\x00'!='x' always comes out true, for an
+ array size at least. It's necessary to write '\x00'==0 to get something
+ that's true only with -std1. */
+int osf4_cc_array ['\x00' == 0 ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
+int argc;
+char **argv;
+int
+main ()
+{
+return f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1];
+ ;
+ return 0;
+}
+_ACEOF
+# Don't try gcc -ansi; that turns off useful extensions and
+# breaks some systems' header files.
+# AIX -qlanglvl=ansi
+# Ultrix and OSF/1 -std1
+# HP-UX 10.20 and later -Ae
+# HP-UX older versions -Aa -D_HPUX_SOURCE
+# SVR4 -Xc -D__EXTENSIONS__
+for ac_arg in "" -qlanglvl=ansi -std1 -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+do
+ CC="$ac_save_CC $ac_arg"
+ rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_cc_stdc=$ac_arg
+break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext
+done
+rm -f conftest.$ac_ext conftest.$ac_objext
+CC=$ac_save_CC
+
+fi
+
+case "x$ac_cv_prog_cc_stdc" in
+ x|xno)
+ echo "$as_me:$LINENO: result: none needed" >&5
+echo "${ECHO_T}none needed" >&6 ;;
+ *)
+ echo "$as_me:$LINENO: result: $ac_cv_prog_cc_stdc" >&5
+echo "${ECHO_T}$ac_cv_prog_cc_stdc" >&6
+ CC="$CC $ac_cv_prog_cc_stdc" ;;
+esac
+
+# Some people use a C++ compiler to compile C. Since we use `exit',
+# in C++ we need to declare it. In case someone uses the same compiler
+# for both compiling C and C++ we need to have the C++ compiler decide
+# the declaration of exit, since it's the most demanding environment.
+cat >conftest.$ac_ext <<_ACEOF
+#ifndef __cplusplus
+ choke me
+#endif
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ for ac_declaration in \
+ '' \
+ 'extern "C" void std::exit (int) throw (); using std::exit;' \
+ 'extern "C" void std::exit (int); using std::exit;' \
+ 'extern "C" void exit (int) throw ();' \
+ 'extern "C" void exit (int);' \
+ 'void exit (int);'
+do
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+#include <stdlib.h>
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+continue
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_declaration
+int
+main ()
+{
+exit (42);
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ break
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+done
+rm -f conftest*
+if test -n "$ac_declaration"; then
+ echo '#ifdef __cplusplus' >>confdefs.h
+ echo $ac_declaration >>confdefs.h
+ echo '#endif' >>confdefs.h
+fi
+
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+depcc="$CC" am_compiler_list=
+
+echo "$as_me:$LINENO: checking dependency style of $depcc" >&5
+echo $ECHO_N "checking dependency style of $depcc... $ECHO_C" >&6
+if test "${am_cv_CC_dependencies_compiler_type+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
+ # We make a subdir and do the tests there. Otherwise we can end up
+ # making bogus files that we don't know about and never remove. For
+ # instance it was reported that on HP-UX the gcc test will end up
+ # making a dummy file named `D' -- because `-MD' means `put the output
+ # in D'.
+ mkdir conftest.dir
+ # Copy depcomp to subdir because otherwise we won't find it if we're
+ # using a relative directory.
+ cp "$am_depcomp" conftest.dir
+ cd conftest.dir
+ # We will build objects and dependencies in a subdirectory because
+ # it helps to detect inapplicable dependency modes. For instance
+ # both Tru64's cc and ICC support -MD to output dependencies as a
+ # side effect of compilation, but ICC will put the dependencies in
+ # the current directory while Tru64 will put them in the object
+ # directory.
+ mkdir sub
+
+ am_cv_CC_dependencies_compiler_type=none
+ if test "$am_compiler_list" = ""; then
+ am_compiler_list=`sed -n 's/^#*\([a-zA-Z0-9]*\))$/\1/p' < ./depcomp`
+ fi
+ for depmode in $am_compiler_list; do
+ # Setup a source with many dependencies, because some compilers
+ # like to wrap large dependency lists on column 80 (with \), and
+ # we should not choose a depcomp mode which is confused by this.
+ #
+ # We need to recreate these files for each test, as the compiler may
+ # overwrite some of them when testing with obscure command lines.
+ # This happens at least with the AIX C compiler.
+ : > sub/conftest.c
+ for i in 1 2 3 4 5 6; do
+ echo '#include "conftst'$i'.h"' >> sub/conftest.c
+ # Using `: > sub/conftst$i.h' creates only sub/conftst1.h with
+ # Solaris 8's {/usr,}/bin/sh.
+ touch sub/conftst$i.h
+ done
+ echo "${am__include} ${am__quote}sub/conftest.Po${am__quote}" > confmf
+
+ case $depmode in
+ nosideeffect)
+ # after this tag, mechanisms are not by side-effect, so they'll
+ # only be used when explicitly requested
+ if test "x$enable_dependency_tracking" = xyes; then
+ continue
+ else
+ break
+ fi
+ ;;
+ none) break ;;
+ esac
+ # We check with `-c' and `-o' for the sake of the "dashmstdout"
+ # mode. It turns out that the SunPro C++ compiler does not properly
+ # handle `-M -o', and we need to detect this.
+ if depmode=$depmode \
+ source=sub/conftest.c object=sub/conftest.${OBJEXT-o} \
+ depfile=sub/conftest.Po tmpdepfile=sub/conftest.TPo \
+ $SHELL ./depcomp $depcc -c -o sub/conftest.${OBJEXT-o} sub/conftest.c \
+ >/dev/null 2>conftest.err &&
+ grep sub/conftst6.h sub/conftest.Po > /dev/null 2>&1 &&
+ grep sub/conftest.${OBJEXT-o} sub/conftest.Po > /dev/null 2>&1 &&
+ ${MAKE-make} -s -f confmf > /dev/null 2>&1; then
+ # icc doesn't choke on unknown options, it will just issue warnings
+ # or remarks (even with -Werror). So we grep stderr for any message
+ # that says an option was ignored or not supported.
+ # When given -MP, icc 7.0 and 7.1 complain thusly:
+ # icc: Command line warning: ignoring option '-M'; no argument required
+ # The diagnosis changed in icc 8.0:
+ # icc: Command line remark: option '-MP' not supported
+ if (grep 'ignoring option' conftest.err ||
+ grep 'not supported' conftest.err) >/dev/null 2>&1; then :; else
+ am_cv_CC_dependencies_compiler_type=$depmode
+ break
+ fi
+ fi
+ done
+
+ cd ..
+ rm -rf conftest.dir
+else
+ am_cv_CC_dependencies_compiler_type=none
+fi
+
+fi
+echo "$as_me:$LINENO: result: $am_cv_CC_dependencies_compiler_type" >&5
+echo "${ECHO_T}$am_cv_CC_dependencies_compiler_type" >&6
+CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
+
+
+
+if
+ test "x$enable_dependency_tracking" != xno \
+ && test "$am_cv_CC_dependencies_compiler_type" = gcc3; then
+ am__fastdepCC_TRUE=
+ am__fastdepCC_FALSE='#'
+else
+ am__fastdepCC_TRUE='#'
+ am__fastdepCC_FALSE=
+fi
+
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5
+echo $ECHO_N "checking how to run the C preprocessor... $ECHO_C" >&6
+# On Suns, sometimes $CPP names a directory.
+if test -n "$CPP" && test -d "$CPP"; then
+ CPP=
+fi
+if test -z "$CPP"; then
+ if test "${ac_cv_prog_CPP+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # Double quotes because CPP needs to be expanded
+ for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+ do
+ ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether non-existent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ break
+fi
+
+ done
+ ac_cv_prog_CPP=$CPP
+
+fi
+ CPP=$ac_cv_prog_CPP
+else
+ ac_cv_prog_CPP=$CPP
+fi
+echo "$as_me:$LINENO: result: $CPP" >&5
+echo "${ECHO_T}$CPP" >&6
+ac_preproc_ok=false
+for ac_c_preproc_warn_flag in '' yes
+do
+ # Use a header file that comes with gcc, so configuring glibc
+ # with a fresh cross-compiler works.
+ # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ # <limits.h> exists even on freestanding compilers.
+ # On the NeXT, cc -E runs the code through the compiler's parser,
+ # not just through cpp. "Syntax error" is here to catch this case.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+ Syntax error
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ :
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Broken: fails on valid input.
+continue
+fi
+rm -f conftest.err conftest.$ac_ext
+
+ # OK, works on sane cases. Now check whether non-existent headers
+ # can be detected and how.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ac_nonexistent.h>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ # Broken: success on invalid input.
+continue
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ # Passes both tests.
+ac_preproc_ok=:
+break
+fi
+rm -f conftest.err conftest.$ac_ext
+
+done
+# Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
+rm -f conftest.err conftest.$ac_ext
+if $ac_preproc_ok; then
+ :
+else
+ { { echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&5
+echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check
+See \`config.log' for more details." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+ac_ext=c
+ac_cpp='$CPP $CPPFLAGS'
+ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
+ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
+
+for ac_prog in flex lex
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_LEX+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$LEX"; then
+ ac_cv_prog_LEX="$LEX" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_LEX="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+LEX=$ac_cv_prog_LEX
+if test -n "$LEX"; then
+ echo "$as_me:$LINENO: result: $LEX" >&5
+echo "${ECHO_T}$LEX" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$LEX" && break
+done
+test -n "$LEX" || LEX=":"
+
+if test -z "$LEXLIB"
+then
+ echo "$as_me:$LINENO: checking for yywrap in -lfl" >&5
+echo $ECHO_N "checking for yywrap in -lfl... $ECHO_C" >&6
+if test "${ac_cv_lib_fl_yywrap+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lfl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char yywrap ();
+int
+main ()
+{
+yywrap ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_fl_yywrap=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_fl_yywrap=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_fl_yywrap" >&5
+echo "${ECHO_T}$ac_cv_lib_fl_yywrap" >&6
+if test $ac_cv_lib_fl_yywrap = yes; then
+ LEXLIB="-lfl"
+else
+ echo "$as_me:$LINENO: checking for yywrap in -ll" >&5
+echo $ECHO_N "checking for yywrap in -ll... $ECHO_C" >&6
+if test "${ac_cv_lib_l_yywrap+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-ll $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char yywrap ();
+int
+main ()
+{
+yywrap ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_l_yywrap=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_l_yywrap=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_l_yywrap" >&5
+echo "${ECHO_T}$ac_cv_lib_l_yywrap" >&6
+if test $ac_cv_lib_l_yywrap = yes; then
+ LEXLIB="-ll"
+fi
+
+fi
+
+fi
+
+if test "x$LEX" != "x:"; then
+ echo "$as_me:$LINENO: checking lex output file root" >&5
+echo $ECHO_N "checking lex output file root... $ECHO_C" >&6
+if test "${ac_cv_prog_lex_root+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # The minimal lex program is just a single line: %%. But some broken lexes
+# (Solaris, I think it was) want two %% lines, so accommodate them.
+cat >conftest.l <<_ACEOF
+%%
+%%
+_ACEOF
+{ (eval echo "$as_me:$LINENO: \"$LEX conftest.l\"") >&5
+ (eval $LEX conftest.l) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }
+if test -f lex.yy.c; then
+ ac_cv_prog_lex_root=lex.yy
+elif test -f lexyy.c; then
+ ac_cv_prog_lex_root=lexyy
+else
+ { { echo "$as_me:$LINENO: error: cannot find output from $LEX; giving up" >&5
+echo "$as_me: error: cannot find output from $LEX; giving up" >&2;}
+ { (exit 1); exit 1; }; }
+fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_lex_root" >&5
+echo "${ECHO_T}$ac_cv_prog_lex_root" >&6
+rm -f conftest.l
+LEX_OUTPUT_ROOT=$ac_cv_prog_lex_root
+
+echo "$as_me:$LINENO: checking whether yytext is a pointer" >&5
+echo $ECHO_N "checking whether yytext is a pointer... $ECHO_C" >&6
+if test "${ac_cv_prog_lex_yytext_pointer+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ # POSIX says lex can declare yytext either as a pointer or an array; the
+# default is implementation-dependent. Figure out which it is, since
+# not all implementations provide the %pointer and %array declarations.
+ac_cv_prog_lex_yytext_pointer=no
+echo 'extern char *yytext;' >>$LEX_OUTPUT_ROOT.c
+ac_save_LIBS=$LIBS
+LIBS="$LIBS $LEXLIB"
+cat >conftest.$ac_ext <<_ACEOF
+`cat $LEX_OUTPUT_ROOT.c`
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_prog_lex_yytext_pointer=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_save_LIBS
+rm -f "${LEX_OUTPUT_ROOT}.c"
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_lex_yytext_pointer" >&5
+echo "${ECHO_T}$ac_cv_prog_lex_yytext_pointer" >&6
+if test $ac_cv_prog_lex_yytext_pointer = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define YYTEXT_POINTER 1
+_ACEOF
+
+fi
+
+fi
+for ac_prog in 'bison -y' byacc
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_YACC+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$YACC"; then
+ ac_cv_prog_YACC="$YACC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_YACC="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+YACC=$ac_cv_prog_YACC
+if test -n "$YACC"; then
+ echo "$as_me:$LINENO: result: $YACC" >&5
+echo "${ECHO_T}$YACC" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$YACC" && break
+done
+test -n "$YACC" || YACC="yacc"
+
+# Find a good install program. We prefer a C program (faster),
+# so one script is as good as another. But avoid the broken or
+# incompatible versions:
+# SysV /etc/install, /usr/sbin/install
+# SunOS /usr/etc/install
+# IRIX /sbin/install
+# AIX /bin/install
+# AmigaOS /C/install, which installs bootblocks on floppy discs
+# AIX 4 /usr/bin/installbsd, which doesn't work without a -g flag
+# AFS /usr/afsws/bin/install, which mishandles nonexistent args
+# SVR4 /usr/ucb/install, which tries to use the nonexistent group "staff"
+# OS/2's system install, which has a completely different semantic
+# ./install, which can be erroneously created by make from ./install.sh.
+echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5
+echo $ECHO_N "checking for a BSD-compatible install... $ECHO_C" >&6
+if test -z "$INSTALL"; then
+if test "${ac_cv_path_install+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ # Account for people who put trailing slashes in PATH elements.
+case $as_dir/ in
+ ./ | .// | /cC/* | \
+ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
+ ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \
+ /usr/ucb/* ) ;;
+ *)
+ # OSF1 and SCO ODT 3.0 have their own names for install.
+ # Don't use installbsd from OSF since it installs stuff as root
+ # by default.
+ for ac_prog in ginstall scoinst install; do
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+ if test $ac_prog = install &&
+ grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # AIX install. It has an incompatible calling convention.
+ :
+ elif test $ac_prog = install &&
+ grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+ # program-specific install script used by HP pwplus--don't use.
+ :
+ else
+ ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+ break 3
+ fi
+ fi
+ done
+ done
+ ;;
+esac
+done
+
+
+fi
+ if test "${ac_cv_path_install+set}" = set; then
+ INSTALL=$ac_cv_path_install
+ else
+ # As a last resort, use the slow shell script. We don't cache a
+ # path for INSTALL within a source directory, because that will
+ # break other packages using the cache if that directory is
+ # removed, or if the path is relative.
+ INSTALL=$ac_install_sh
+ fi
+fi
+echo "$as_me:$LINENO: result: $INSTALL" >&5
+echo "${ECHO_T}$INSTALL" >&6
+
+# Use test -z because SunOS4 sh mishandles braces in ${var-val}.
+# It thinks the first close brace ends the variable substitution.
+test -z "$INSTALL_PROGRAM" && INSTALL_PROGRAM='${INSTALL}'
+
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL}'
+
+test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
+
+echo "$as_me:$LINENO: checking whether ln -s works" >&5
+echo $ECHO_N "checking whether ln -s works... $ECHO_C" >&6
+LN_S=$as_ln_s
+if test "$LN_S" = "ln -s"; then
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+else
+ echo "$as_me:$LINENO: result: no, using $LN_S" >&5
+echo "${ECHO_T}no, using $LN_S" >&6
+fi
+
+echo "$as_me:$LINENO: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+echo $ECHO_N "checking whether ${MAKE-make} sets \$(MAKE)... $ECHO_C" >&6
+set dummy ${MAKE-make}; ac_make=`echo "$2" | sed 'y,:./+-,___p_,'`
+if eval "test \"\${ac_cv_prog_make_${ac_make}_set+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.make <<\_ACEOF
+all:
+ @echo 'ac_maketemp="$(MAKE)"'
+_ACEOF
+# GNU make sometimes prints "make[1]: Entering...", which would confuse us.
+eval `${MAKE-make} -f conftest.make 2>/dev/null | grep temp=`
+if test -n "$ac_maketemp"; then
+ eval ac_cv_prog_make_${ac_make}_set=yes
+else
+ eval ac_cv_prog_make_${ac_make}_set=no
+fi
+rm -f conftest.make
+fi
+if eval "test \"`echo '$ac_cv_prog_make_'${ac_make}_set`\" = yes"; then
+ echo "$as_me:$LINENO: result: yes" >&5
+echo "${ECHO_T}yes" >&6
+ SET_MAKE=
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+ SET_MAKE="MAKE=${MAKE-make}"
+fi
+
+
+echo "$as_me:$LINENO: checking for egrep" >&5
+echo $ECHO_N "checking for egrep... $ECHO_C" >&6
+if test "${ac_cv_prog_egrep+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if echo a | (grep -E '(a|b)') >/dev/null 2>&1
+ then ac_cv_prog_egrep='grep -E'
+ else ac_cv_prog_egrep='egrep'
+ fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_egrep" >&5
+echo "${ECHO_T}$ac_cv_prog_egrep" >&6
+ EGREP=$ac_cv_prog_egrep
+
+
+if test $ac_cv_c_compiler_gnu = yes; then
+ echo "$as_me:$LINENO: checking whether $CC needs -traditional" >&5
+echo $ECHO_N "checking whether $CC needs -traditional... $ECHO_C" >&6
+if test "${ac_cv_prog_gcc_traditional+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_pattern="Autoconf.*'x'"
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <sgtty.h>
+Autoconf TIOCGETP
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ ac_cv_prog_gcc_traditional=yes
+else
+ ac_cv_prog_gcc_traditional=no
+fi
+rm -f conftest*
+
+
+ if test $ac_cv_prog_gcc_traditional = no; then
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <termio.h>
+Autoconf TCGETA
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "$ac_pattern" >/dev/null 2>&1; then
+ ac_cv_prog_gcc_traditional=yes
+fi
+rm -f conftest*
+
+ fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_prog_gcc_traditional" >&5
+echo "${ECHO_T}$ac_cv_prog_gcc_traditional" >&6
+ if test $ac_cv_prog_gcc_traditional = yes; then
+ CC="$CC -traditional"
+ fi
+fi
+
+
+# Check whether --enable-make-rules or --disable-make-rules was given.
+if test "${enable_make_rules+set}" = set; then
+ enableval="$enable_make_rules"
+ BUILDRULES=$enableval
+else
+ BUILDRULES=yes
+fi;
+
+if test "$BUILDRULES" = "yes"; then
+
+for ac_prog in latex elatex lambda
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_latex+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$latex"; then
+ ac_cv_prog_latex="$latex" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_latex="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+latex=$ac_cv_prog_latex
+if test -n "$latex"; then
+ echo "$as_me:$LINENO: result: $latex" >&5
+echo "${ECHO_T}$latex" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$latex" && break
+done
+test -n "$latex" || latex="no"
+
+export latex;
+if test $latex = "no" ;
+then
+ { { echo "$as_me:$LINENO: error: Unable to find a LaTeX application" >&5
+echo "$as_me: error: Unable to find a LaTeX application" >&2;}
+ { (exit 1); exit 1; }; };
+fi
+
+
+fi
+
+
+
+if test "$BUILDRULES" = "yes"; then
+ BUILDRULES_TRUE=
+ BUILDRULES_FALSE='#'
+else
+ BUILDRULES_TRUE='#'
+ BUILDRULES_FALSE=
+fi
+
+
+# Check whether --enable-docs or --disable-docs was given.
+if test "${enable_docs+set}" = set; then
+ enableval="$enable_docs"
+ BUILDDOCS=$enableval
+else
+ BUILDDOCS=yes
+fi;
+
+if test "$BUILDDOCS" = "yes"; then
+
+for ac_prog in pdflatex
+do
+ # Extract the first word of "$ac_prog", so it can be a program name with args.
+set dummy $ac_prog; ac_word=$2
+echo "$as_me:$LINENO: checking for $ac_word" >&5
+echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
+if test "${ac_cv_prog_pdflatex+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ if test -n "$pdflatex"; then
+ ac_cv_prog_pdflatex="$pdflatex" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for ac_exec_ext in '' $ac_executable_extensions; do
+ if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+ ac_cv_prog_pdflatex="$ac_prog"
+ echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
+ break 2
+ fi
+done
+done
+
+fi
+fi
+pdflatex=$ac_cv_prog_pdflatex
+if test -n "$pdflatex"; then
+ echo "$as_me:$LINENO: result: $pdflatex" >&5
+echo "${ECHO_T}$pdflatex" >&6
+else
+ echo "$as_me:$LINENO: result: no" >&5
+echo "${ECHO_T}no" >&6
+fi
+
+ test -n "$pdflatex" && break
+done
+test -n "$pdflatex" || pdflatex="no"
+
+export pdflatex;
+if test $pdflatex = "no" ;
+then
+ { { echo "$as_me:$LINENO: error: Unable to find a PDFLaTeX application" >&5
+echo "$as_me: error: Unable to find a PDFLaTeX application" >&2;}
+ { (exit 1); exit 1; }; };
+fi
+
+
+fi
+
+
+
+if test "$BUILDDOCS" = "yes"; then
+ BUILDDOCS_TRUE=
+ BUILDDOCS_FALSE='#'
+else
+ BUILDDOCS_TRUE='#'
+ BUILDDOCS_FALSE=
+fi
+
+
+# Check whether --enable-external-clisp or --disable-external-clisp was given.
+if test "${enable_external_clisp+set}" = set; then
+ enableval="$enable_external_clisp"
+ EXT_CLISP=$enableval
+else
+ EXT_CLISP=no
+fi;
+
+# Check whether --enable-clisp-path or --disable-clisp-path was given.
+if test "${enable_clisp_path+set}" = set; then
+ enableval="$enable_clisp_path"
+ CLISP_PATH=$enableval
+else
+ CLISP_PATH=$(which clisp)
+fi;
+
+# Check whether --enable-clisp-dir or --disable-clisp-dir was given.
+if test "${enable_clisp_dir+set}" = set; then
+ enableval="$enable_clisp_dir"
+ CLISP_DIR=$enableval
+else
+ CLISP_DIR=/usr/lib/clisp
+fi;
+
+if test "$EXT_CLISP" != no; then
+
+
+if test -x "$CLISP_PATH" -a -x "$CLISP_DIR/clisp-link" -a -d "$CLISP_DIR/full" -a -d "$CLISP_DIR/linkkit"; then
+ EXT_CLISP_TRUE=
+ EXT_CLISP_FALSE='#'
+else
+ EXT_CLISP_TRUE='#'
+ EXT_CLISP_FALSE=
+fi
+
+
+
+
+ if test -n "$EXT_CLISP_TRUE"; then
+ if test "$EXT_CLISP" = yes; then
+ echo Help me! I should use an external CLISP, but I can\'t find it. >&2
+ exit 1
+ else
+ echo Using internal clisp
+ EXT_CLISP=no
+ fi
+ else
+ echo Using external clisp
+ fi
+else
+
+
+if false; then
+ EXT_CLISP_TRUE=
+ EXT_CLISP_FALSE='#'
+else
+ EXT_CLISP_TRUE='#'
+ EXT_CLISP_FALSE=
+fi
+
+fi
+
+# Checks for libraries.
+
+echo "$as_me:$LINENO: checking for main in -lfl" >&5
+echo $ECHO_N "checking for main in -lfl... $ECHO_C" >&6
+if test "${ac_cv_lib_fl_main+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_check_lib_save_LIBS=$LIBS
+LIBS="-lfl $LIBS"
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+
+
+int
+main ()
+{
+main ();
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_lib_fl_main=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_lib_fl_main=no
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+LIBS=$ac_check_lib_save_LIBS
+fi
+echo "$as_me:$LINENO: result: $ac_cv_lib_fl_main" >&5
+echo "${ECHO_T}$ac_cv_lib_fl_main" >&6
+if test $ac_cv_lib_fl_main = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define HAVE_LIBFL 1
+_ACEOF
+
+ LIBS="-lfl $LIBS"
+
+fi
+
+
+# Checks for header files.
+echo "$as_me:$LINENO: checking for ANSI C header files" >&5
+echo $ECHO_N "checking for ANSI C header files... $ECHO_C" >&6
+if test "${ac_cv_header_stdc+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+#include <stdarg.h>
+#include <string.h>
+#include <float.h>
+
+int
+main ()
+{
+
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_cv_header_stdc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_cv_header_stdc=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+
+if test $ac_cv_header_stdc = yes; then
+ # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <string.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "memchr" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <stdlib.h>
+
+_ACEOF
+if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
+ $EGREP "free" >/dev/null 2>&1; then
+ :
+else
+ ac_cv_header_stdc=no
+fi
+rm -f conftest*
+
+fi
+
+if test $ac_cv_header_stdc = yes; then
+ # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
+ if test "$cross_compiling" = yes; then
+ :
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <ctype.h>
+#if ((' ' & 0x0FF) == 0x020)
+# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
+# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
+#else
+# define ISLOWER(c) \
+ (('a' <= (c) && (c) <= 'i') \
+ || ('j' <= (c) && (c) <= 'r') \
+ || ('s' <= (c) && (c) <= 'z'))
+# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
+#endif
+
+#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
+int
+main ()
+{
+ int i;
+ for (i = 0; i < 256; i++)
+ if (XOR (islower (i), ISLOWER (i))
+ || toupper (i) != TOUPPER (i))
+ exit(2);
+ exit (0);
+}
+_ACEOF
+rm -f conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } && { ac_try='./conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ :
+else
+ echo "$as_me: program exited with status $ac_status" >&5
+echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+( exit $ac_status )
+ac_cv_header_stdc=no
+fi
+rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext
+fi
+fi
+fi
+echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5
+echo "${ECHO_T}$ac_cv_header_stdc" >&6
+if test $ac_cv_header_stdc = yes; then
+
+cat >>confdefs.h <<\_ACEOF
+#define STDC_HEADERS 1
+_ACEOF
+
+fi
+
+# On IRIX 5.3, sys/types and inttypes.h are conflicting.
+
+
+
+
+
+
+
+
+
+for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
+ inttypes.h stdint.h unistd.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_Header=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_Header=no"
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+
+
+for ac_header in stdlib.h string.h
+do
+as_ac_Header=`echo "ac_cv_header_$ac_header" | $as_tr_sh`
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+else
+ # Is the header compilable?
+echo "$as_me:$LINENO: checking $ac_header usability" >&5
+echo $ECHO_N "checking $ac_header usability... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+$ac_includes_default
+#include <$ac_header>
+_ACEOF
+rm -f conftest.$ac_objext
+if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
+ (eval $ac_compile) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest.$ac_objext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ ac_header_compiler=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ac_header_compiler=no
+fi
+rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_compiler" >&5
+echo "${ECHO_T}$ac_header_compiler" >&6
+
+# Is the header present?
+echo "$as_me:$LINENO: checking $ac_header presence" >&5
+echo $ECHO_N "checking $ac_header presence... $ECHO_C" >&6
+cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+#include <$ac_header>
+_ACEOF
+if { (eval echo "$as_me:$LINENO: \"$ac_cpp conftest.$ac_ext\"") >&5
+ (eval $ac_cpp conftest.$ac_ext) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } >/dev/null; then
+ if test -s conftest.err; then
+ ac_cpp_err=$ac_c_preproc_warn_flag
+ ac_cpp_err=$ac_cpp_err$ac_c_werror_flag
+ else
+ ac_cpp_err=
+ fi
+else
+ ac_cpp_err=yes
+fi
+if test -z "$ac_cpp_err"; then
+ ac_header_preproc=yes
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+ ac_header_preproc=no
+fi
+rm -f conftest.err conftest.$ac_ext
+echo "$as_me:$LINENO: result: $ac_header_preproc" >&5
+echo "${ECHO_T}$ac_header_preproc" >&6
+
+# So? What about this header?
+case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in
+ yes:no: )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&5
+echo "$as_me: WARNING: $ac_header: accepted by the compiler, rejected by the preprocessor!" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the compiler's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the compiler's result" >&2;}
+ ac_header_preproc=yes
+ ;;
+ no:yes:* )
+ { echo "$as_me:$LINENO: WARNING: $ac_header: present but cannot be compiled" >&5
+echo "$as_me: WARNING: $ac_header: present but cannot be compiled" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: check for missing prerequisite headers?" >&5
+echo "$as_me: WARNING: $ac_header: check for missing prerequisite headers?" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: see the Autoconf documentation" >&5
+echo "$as_me: WARNING: $ac_header: see the Autoconf documentation" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&5
+echo "$as_me: WARNING: $ac_header: section \"Present But Cannot Be Compiled\"" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: proceeding with the preprocessor's result" >&5
+echo "$as_me: WARNING: $ac_header: proceeding with the preprocessor's result" >&2;}
+ { echo "$as_me:$LINENO: WARNING: $ac_header: in the future, the compiler will take precedence" >&5
+echo "$as_me: WARNING: $ac_header: in the future, the compiler will take precedence" >&2;}
+ (
+ cat <<\_ASBOX
+## -------------------------------------------------- ##
+## Report this to xindy-discuss@lists.sourceforge.net ##
+## -------------------------------------------------- ##
+_ASBOX
+ ) |
+ sed "s/^/$as_me: WARNING: /" >&2
+ ;;
+esac
+echo "$as_me:$LINENO: checking for $ac_header" >&5
+echo $ECHO_N "checking for $ac_header... $ECHO_C" >&6
+if eval "test \"\${$as_ac_Header+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ eval "$as_ac_Header=\$ac_header_preproc"
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_Header'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_Header'}'`" >&6
+
+fi
+if test `eval echo '${'$as_ac_Header'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_header" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+
+done
+
+
+# Make sure we can run config.sub.
+$ac_config_sub sun4 >/dev/null 2>&1 ||
+ { { echo "$as_me:$LINENO: error: cannot run $ac_config_sub" >&5
+echo "$as_me: error: cannot run $ac_config_sub" >&2;}
+ { (exit 1); exit 1; }; }
+
+echo "$as_me:$LINENO: checking build system type" >&5
+echo $ECHO_N "checking build system type... $ECHO_C" >&6
+if test "${ac_cv_build+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_build_alias=$build_alias
+test -z "$ac_cv_build_alias" &&
+ ac_cv_build_alias=`$ac_config_guess`
+test -z "$ac_cv_build_alias" &&
+ { { echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5
+echo "$as_me: error: cannot guess build type; you must specify one" >&2;}
+ { (exit 1); exit 1; }; }
+ac_cv_build=`$ac_config_sub $ac_cv_build_alias` ||
+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_build_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_build_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_build" >&5
+echo "${ECHO_T}$ac_cv_build" >&6
+build=$ac_cv_build
+build_cpu=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+build_vendor=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+build_os=`echo $ac_cv_build | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+echo "$as_me:$LINENO: checking host system type" >&5
+echo $ECHO_N "checking host system type... $ECHO_C" >&6
+if test "${ac_cv_host+set}" = set; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ ac_cv_host_alias=$host_alias
+test -z "$ac_cv_host_alias" &&
+ ac_cv_host_alias=$ac_cv_build_alias
+ac_cv_host=`$ac_config_sub $ac_cv_host_alias` ||
+ { { echo "$as_me:$LINENO: error: $ac_config_sub $ac_cv_host_alias failed" >&5
+echo "$as_me: error: $ac_config_sub $ac_cv_host_alias failed" >&2;}
+ { (exit 1); exit 1; }; }
+
+fi
+echo "$as_me:$LINENO: result: $ac_cv_host" >&5
+echo "${ECHO_T}$ac_cv_host" >&6
+host=$ac_cv_host
+host_cpu=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\1/'`
+host_vendor=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\2/'`
+host_os=`echo $ac_cv_host | sed 's/^\([^-]*\)-\([^-]*\)-\(.*\)$/\3/'`
+
+
+
+
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+# Checks for library functions.
+
+
+for ac_func in strrchr strtoul
+do
+as_ac_var=`echo "ac_cv_func_$ac_func" | $as_tr_sh`
+echo "$as_me:$LINENO: checking for $ac_func" >&5
+echo $ECHO_N "checking for $ac_func... $ECHO_C" >&6
+if eval "test \"\${$as_ac_var+set}\" = set"; then
+ echo $ECHO_N "(cached) $ECHO_C" >&6
+else
+ cat >conftest.$ac_ext <<_ACEOF
+/* confdefs.h. */
+_ACEOF
+cat confdefs.h >>conftest.$ac_ext
+cat >>conftest.$ac_ext <<_ACEOF
+/* end confdefs.h. */
+/* Define $ac_func to an innocuous variant, in case <limits.h> declares $ac_func.
+ For example, HP-UX 11i <limits.h> declares gettimeofday. */
+#define $ac_func innocuous_$ac_func
+
+/* System header to define __stub macros and hopefully few prototypes,
+ which can conflict with char $ac_func (); below.
+ Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
+ <limits.h> exists even on freestanding compilers. */
+
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+
+#undef $ac_func
+
+/* Override any gcc2 internal prototype to avoid an error. */
+#ifdef __cplusplus
+extern "C"
+{
+#endif
+/* We use char because int might match the return type of a gcc2
+ builtin and then its argument prototype would still apply. */
+char $ac_func ();
+/* The GNU C library defines this for functions which it implements
+ to always fail with ENOSYS. Some functions are actually named
+ something starting with __ and the normal name is an alias. */
+#if defined (__stub_$ac_func) || defined (__stub___$ac_func)
+choke me
+#else
+char (*f) () = $ac_func;
+#endif
+#ifdef __cplusplus
+}
+#endif
+
+int
+main ()
+{
+return f != $ac_func;
+ ;
+ return 0;
+}
+_ACEOF
+rm -f conftest.$ac_objext conftest$ac_exeext
+if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5
+ (eval $ac_link) 2>conftest.er1
+ ac_status=$?
+ grep -v '^ *+' conftest.er1 >conftest.err
+ rm -f conftest.er1
+ cat conftest.err >&5
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); } &&
+ { ac_try='test -z "$ac_c_werror_flag"
+ || test ! -s conftest.err'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; } &&
+ { ac_try='test -s conftest$ac_exeext'
+ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
+ (eval $ac_try) 2>&5
+ ac_status=$?
+ echo "$as_me:$LINENO: \$? = $ac_status" >&5
+ (exit $ac_status); }; }; then
+ eval "$as_ac_var=yes"
+else
+ echo "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
+
+eval "$as_ac_var=no"
+fi
+rm -f conftest.err conftest.$ac_objext \
+ conftest$ac_exeext conftest.$ac_ext
+fi
+echo "$as_me:$LINENO: result: `eval echo '${'$as_ac_var'}'`" >&5
+echo "${ECHO_T}`eval echo '${'$as_ac_var'}'`" >&6
+if test `eval echo '${'$as_ac_var'}'` = yes; then
+ cat >>confdefs.h <<_ACEOF
+#define `echo "HAVE_$ac_func" | $as_tr_cpp` 1
+_ACEOF
+
+fi
+done
+
+
+ ac_config_files="$ac_config_files Makefile rte/Makefile rte/ordrules/Makefile rte/ordrules/version.lisp binaries/Makefile tex2xindy/Makefile modules/Makefile modules/base/Makefile modules/class/Makefile modules/lang/Makefile modules/lang/german/Makefile modules/lang/latin/Makefile modules/ord/Makefile modules/rules/Makefile modules/styles/Makefile user-commands/Makefile make-rules/Makefile make-rules/alphabets/Makefile make-rules/alphabets/albanian/Makefile make-rules/alphabets/belarusian/Makefile make-rules/alphabets/bulgarian/Makefile make-rules/alphabets/croatian/Makefile make-rules/alphabets/czech/Makefile make-rules/alphabets/danish/Makefile make-rules/alphabets/dutch/Makefile make-rules/alphabets/english/Makefile make-rules/alphabets/esperanto/Makefile make-rules/alphabets/estonian/Makefile make-rules/alphabets/finnish/Makefile make-rules/alphabets/french/Makefile make-rules/alphabets/general/Makefile make-rules/alphabets/georgian/Makefile make-rules/alphabets/german/Makefile make-rules/alphabets/greek/Makefile make-rules/alphabets/gypsy/Makefile make-rules/alphabets/hausa/Makefile make-rules/alphabets/hebrew/Makefile make-rules/alphabets/hungarian/Makefile make-rules/alphabets/icelandic/Makefile make-rules/alphabets/italian/Makefile make-rules/alphabets/klingon/Makefile make-rules/alphabets/kurdish/Makefile make-rules/alphabets/latin/Makefile make-rules/alphabets/latvian/Makefile make-rules/alphabets/lithuanian/Makefile make-rules/alphabets/lower-sorbian/Makefile make-rules/alphabets/macedonian/Makefile make-rules/alphabets/mongolian/Makefile make-rules/alphabets/norwegian/Makefile make-rules/alphabets/polish/Makefile make-rules/alphabets/portuguese/Makefile make-rules/alphabets/romanian/Makefile make-rules/alphabets/russian/Makefile make-rules/alphabets/serbian/Makefile make-rules/alphabets/slovak/Makefile make-rules/alphabets/slovenian/Makefile make-rules/alphabets/spanish/Makefile make-rules/alphabets/swedish/Makefile make-rules/alphabets/test1/Makefile make-rules/alphabets/turkish/Makefile make-rules/alphabets/ukrainian/Makefile make-rules/alphabets/upper-sorbian/Makefile make-rules/alphabets/vietnamese/Makefile make-rules/inputenc/Makefile make-rules/styles/Makefile doc/Makefile doc/style-tutorial/Makefile"
+
+
+cat >confcache <<\_ACEOF
+# This file is a shell script that caches the results of configure
+# tests run on this system so they can be shared between configure
+# scripts and configure runs, see configure's option --config-cache.
+# It is not useful on other systems. If it contains results you don't
+# want to keep, you may remove or edit it.
+#
+# config.status only pays attention to the cache file if you give it
+# the --recheck option to rerun configure.
+#
+# `ac_cv_env_foo' variables (set or unset) will be overridden when
+# loading this file, other *unset* `ac_cv_foo' will be assigned the
+# following values.
+
+_ACEOF
+
+# The following way of writing the cache mishandles newlines in values,
+# but we know of no workaround that is simple, portable, and efficient.
+# So, don't put newlines in cache variables' values.
+# Ultrix sh set writes to stderr and can't be redirected directly,
+# and sets the high bit in the cache file unless we assign to the vars.
+{
+ (set) 2>&1 |
+ case `(ac_space=' '; set | grep ac_space) 2>&1` in
+ *ac_space=\ *)
+ # `set' does not quote correctly, so add quotes (double-quote
+ # substitution turns \\\\ into \\, and sed turns \\ into \).
+ sed -n \
+ "s/'/'\\\\''/g;
+ s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p"
+ ;;
+ *)
+ # `set' quotes correctly as required by POSIX, so do not add quotes.
+ sed -n \
+ "s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1=\\2/p"
+ ;;
+ esac;
+} |
+ sed '
+ t clear
+ : clear
+ s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+ t end
+ /^ac_cv_env/!s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
+ : end' >>confcache
+if diff $cache_file confcache >/dev/null 2>&1; then :; else
+ if test -w $cache_file; then
+ test "x$cache_file" != "x/dev/null" && echo "updating cache $cache_file"
+ cat confcache >$cache_file
+ else
+ echo "not updating unwritable cache $cache_file"
+ fi
+fi
+rm -f confcache
+
+test "x$prefix" = xNONE && prefix=$ac_default_prefix
+# Let make expand exec_prefix.
+test "x$exec_prefix" = xNONE && exec_prefix='${prefix}'
+
+# VPATH may cause trouble with some makes, so we remove $(srcdir),
+# ${srcdir} and @srcdir@ from VPATH if srcdir is ".", strip leading and
+# trailing colons and then remove the whole line if VPATH becomes empty
+# (actually we leave an empty line to preserve line numbers).
+if test "x$srcdir" = x.; then
+ ac_vpsub='/^[ ]*VPATH[ ]*=/{
+s/:*\$(srcdir):*/:/;
+s/:*\${srcdir}:*/:/;
+s/:*@srcdir@:*/:/;
+s/^\([^=]*=[ ]*\):*/\1/;
+s/:*$//;
+s/^[^=]*=[ ]*$//;
+}'
+fi
+
+# Transform confdefs.h into DEFS.
+# Protect against shell expansion while executing Makefile rules.
+# Protect against Makefile macro expansion.
+#
+# If the first sed substitution is executed (which looks for macros that
+# take arguments), then we branch to the quote section. Otherwise,
+# look for a macro that doesn't take arguments.
+cat >confdef2opt.sed <<\_ACEOF
+t clear
+: clear
+s,^[ ]*#[ ]*define[ ][ ]*\([^ (][^ (]*([^)]*)\)[ ]*\(.*\),-D\1=\2,g
+t quote
+s,^[ ]*#[ ]*define[ ][ ]*\([^ ][^ ]*\)[ ]*\(.*\),-D\1=\2,g
+t quote
+d
+: quote
+s,[ `~#$^&*(){}\\|;'"<>?],\\&,g
+s,\[,\\&,g
+s,\],\\&,g
+s,\$,$$,g
+p
+_ACEOF
+# We use echo to avoid assuming a particular line-breaking character.
+# The extra dot is to prevent the shell from consuming trailing
+# line-breaks from the sub-command output. A line-break within
+# single-quotes doesn't work because, if this script is created in a
+# platform that uses two characters for line-breaks (e.g., DOS), tr
+# would break.
+ac_LF_and_DOT=`echo; echo .`
+DEFS=`sed -n -f confdef2opt.sed confdefs.h | tr "$ac_LF_and_DOT" ' .'`
+rm -f confdef2opt.sed
+
+
+ac_libobjs=
+ac_ltlibobjs=
+for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
+ # 1. Remove the extension, and $U if already installed.
+ ac_i=`echo "$ac_i" |
+ sed 's/\$U\././;s/\.o$//;s/\.obj$//'`
+ # 2. Add them.
+ ac_libobjs="$ac_libobjs $ac_i\$U.$ac_objext"
+ ac_ltlibobjs="$ac_ltlibobjs $ac_i"'$U.lo'
+done
+LIBOBJS=$ac_libobjs
+
+LTLIBOBJS=$ac_ltlibobjs
+
+
+if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"AMDEP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCXX_TRUE}" && test -z "${am__fastdepCXX_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCXX\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"am__fastdepCXX\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${am__fastdepCC_TRUE}" && test -z "${am__fastdepCC_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"am__fastdepCC\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${BUILDRULES_TRUE}" && test -z "${BUILDRULES_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"BUILDRULES\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"BUILDRULES\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${BUILDDOCS_TRUE}" && test -z "${BUILDDOCS_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"BUILDDOCS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"BUILDDOCS\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${EXT_CLISP_TRUE}" && test -z "${EXT_CLISP_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"EXT_CLISP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"EXT_CLISP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+if test -z "${EXT_CLISP_TRUE}" && test -z "${EXT_CLISP_FALSE}"; then
+ { { echo "$as_me:$LINENO: error: conditional \"EXT_CLISP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&5
+echo "$as_me: error: conditional \"EXT_CLISP\" was never defined.
+Usually this means the macro was only invoked conditionally." >&2;}
+ { (exit 1); exit 1; }; }
+fi
+
+: ${CONFIG_STATUS=./config.status}
+ac_clean_files_save=$ac_clean_files
+ac_clean_files="$ac_clean_files $CONFIG_STATUS"
+{ echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5
+echo "$as_me: creating $CONFIG_STATUS" >&6;}
+cat >$CONFIG_STATUS <<_ACEOF
+#! $SHELL
+# Generated by $as_me.
+# Run this file to recreate the current configuration.
+# Compiler output produced by configure, useful for debugging
+# configure, is in config.log if it exists.
+
+debug=false
+ac_cs_recheck=false
+ac_cs_silent=false
+SHELL=\${CONFIG_SHELL-$SHELL}
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+## --------------------- ##
+## M4sh Initialization. ##
+## --------------------- ##
+
+# Be Bourne compatible
+if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then
+ emulate sh
+ NULLCMD=:
+ # Zsh 3.x and 4.x performs word splitting on ${1+"$@"}, which
+ # is contrary to our usage. Disable this feature.
+ alias -g '${1+"$@"}'='"$@"'
+elif test -n "${BASH_VERSION+set}" && (set -o posix) >/dev/null 2>&1; then
+ set -o posix
+fi
+DUALCASE=1; export DUALCASE # for MKS sh
+
+# Support unset when possible.
+if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then
+ as_unset=unset
+else
+ as_unset=false
+fi
+
+
+# Work around bugs in pre-3.0 UWIN ksh.
+$as_unset ENV MAIL MAILPATH
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# NLS nuisances.
+for as_var in \
+ LANG LANGUAGE LC_ADDRESS LC_ALL LC_COLLATE LC_CTYPE LC_IDENTIFICATION \
+ LC_MEASUREMENT LC_MESSAGES LC_MONETARY LC_NAME LC_NUMERIC LC_PAPER \
+ LC_TELEPHONE LC_TIME
+do
+ if (set +x; test -z "`(eval $as_var=C; export $as_var) 2>&1`"); then
+ eval $as_var=C; export $as_var
+ else
+ $as_unset $as_var
+ fi
+done
+
+# Required to use basename.
+if expr a : '\(a\)' >/dev/null 2>&1; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+if (basename /) >/dev/null 2>&1 && test "X`basename / 2>&1`" = "X/"; then
+ as_basename=basename
+else
+ as_basename=false
+fi
+
+
+# Name of the executable.
+as_me=`$as_basename "$0" ||
+$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
+ X"$0" : 'X\(//\)$' \| \
+ X"$0" : 'X\(/\)$' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X/"$0" |
+ sed '/^.*\/\([^/][^/]*\)\/*$/{ s//\1/; q; }
+ /^X\/\(\/\/\)$/{ s//\1/; q; }
+ /^X\/\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+
+
+# PATH needs CR, and LINENO needs CR and PATH.
+# Avoid depending upon Character Ranges.
+as_cr_letters='abcdefghijklmnopqrstuvwxyz'
+as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ'
+as_cr_Letters=$as_cr_letters$as_cr_LETTERS
+as_cr_digits='0123456789'
+as_cr_alnum=$as_cr_Letters$as_cr_digits
+
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+ echo "#! /bin/sh" >conf$$.sh
+ echo "exit 0" >>conf$$.sh
+ chmod +x conf$$.sh
+ if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+ PATH_SEPARATOR=';'
+ else
+ PATH_SEPARATOR=:
+ fi
+ rm -f conf$$.sh
+fi
+
+
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x$as_lineno_3" = "x$as_lineno_2" || {
+ # Find who we are. Look in the path if we contain no path at all
+ # relative or not.
+ case $0 in
+ *[\\/]* ) as_myself=$0 ;;
+ *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+done
+
+ ;;
+ esac
+ # We did not find ourselves, most probably we were run as `sh COMMAND'
+ # in which case we are not to be found in the path.
+ if test "x$as_myself" = x; then
+ as_myself=$0
+ fi
+ if test ! -f "$as_myself"; then
+ { { echo "$as_me:$LINENO: error: cannot find myself; rerun with an absolute path" >&5
+echo "$as_me: error: cannot find myself; rerun with an absolute path" >&2;}
+ { (exit 1); exit 1; }; }
+ fi
+ case $CONFIG_SHELL in
+ '')
+ as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
+do
+ IFS=$as_save_IFS
+ test -z "$as_dir" && as_dir=.
+ for as_base in sh bash ksh sh5; do
+ case $as_dir in
+ /*)
+ if ("$as_dir/$as_base" -c '
+ as_lineno_1=$LINENO
+ as_lineno_2=$LINENO
+ as_lineno_3=`(expr $as_lineno_1 + 1) 2>/dev/null`
+ test "x$as_lineno_1" != "x$as_lineno_2" &&
+ test "x$as_lineno_3" = "x$as_lineno_2" ') 2>/dev/null; then
+ $as_unset BASH_ENV || test "${BASH_ENV+set}" != set || { BASH_ENV=; export BASH_ENV; }
+ $as_unset ENV || test "${ENV+set}" != set || { ENV=; export ENV; }
+ CONFIG_SHELL=$as_dir/$as_base
+ export CONFIG_SHELL
+ exec "$CONFIG_SHELL" "$0" ${1+"$@"}
+ fi;;
+ esac
+ done
+done
+;;
+ esac
+
+ # Create $as_me.lineno as a copy of $as_myself, but with $LINENO
+ # uniformly replaced by the line number. The first 'sed' inserts a
+ # line-number line before each line; the second 'sed' does the real
+ # work. The second script uses 'N' to pair each line-number line
+ # with the numbered line, and appends trailing '-' during
+ # substitution so that $LINENO is not a special case at line end.
+ # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the
+ # second 'sed' script. Blame Lee E. McMahon for sed's syntax. :-)
+ sed '=' <$as_myself |
+ sed '
+ N
+ s,$,-,
+ : loop
+ s,^\(['$as_cr_digits']*\)\(.*\)[$]LINENO\([^'$as_cr_alnum'_]\),\1\2\1\3,
+ t loop
+ s,-$,,
+ s,^['$as_cr_digits']*\n,,
+ ' >$as_me.lineno &&
+ chmod +x $as_me.lineno ||
+ { { echo "$as_me:$LINENO: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&5
+echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2;}
+ { (exit 1); exit 1; }; }
+
+ # Don't try to exec as it changes $[0], causing all sort of problems
+ # (the dirname of $[0] is not the place where we might find the
+ # original and so on. Autoconf is especially sensible to this).
+ . ./$as_me.lineno
+ # Exit status is that of the last command.
+ exit
+}
+
+
+case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in
+ *c*,-n*) ECHO_N= ECHO_C='
+' ECHO_T=' ' ;;
+ *c*,* ) ECHO_N=-n ECHO_C= ECHO_T= ;;
+ *) ECHO_N= ECHO_C='\c' ECHO_T= ;;
+esac
+
+if expr a : '\(a\)' >/dev/null 2>&1; then
+ as_expr=expr
+else
+ as_expr=false
+fi
+
+rm -f conf$$ conf$$.exe conf$$.file
+echo >conf$$.file
+if ln -s conf$$.file conf$$ 2>/dev/null; then
+ # We could just check for DJGPP; but this test a) works b) is more generic
+ # and c) will remain valid once DJGPP supports symlinks (DJGPP 2.04).
+ if test -f conf$$.exe; then
+ # Don't use ln at all; we don't have any links
+ as_ln_s='cp -p'
+ else
+ as_ln_s='ln -s'
+ fi
+elif ln conf$$.file conf$$ 2>/dev/null; then
+ as_ln_s=ln
+else
+ as_ln_s='cp -p'
+fi
+rm -f conf$$ conf$$.exe conf$$.file
+
+if mkdir -p . 2>/dev/null; then
+ as_mkdir_p=:
+else
+ test -d ./-p && rmdir ./-p
+ as_mkdir_p=false
+fi
+
+as_executable_p="test -f"
+
+# Sed expression to map a string onto a valid CPP name.
+as_tr_cpp="eval sed 'y%*$as_cr_letters%P$as_cr_LETTERS%;s%[^_$as_cr_alnum]%_%g'"
+
+# Sed expression to map a string onto a valid variable name.
+as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'"
+
+
+# IFS
+# We need space, tab and new line, in precisely that order.
+as_nl='
+'
+IFS=" $as_nl"
+
+# CDPATH.
+$as_unset CDPATH
+
+exec 6>&1
+
+# Open the log real soon, to keep \$[0] and so on meaningful, and to
+# report actual input values of CONFIG_FILES etc. instead of their
+# values after options handling. Logging --version etc. is OK.
+exec 5>>config.log
+{
+ echo
+ sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
+## Running $as_me. ##
+_ASBOX
+} >&5
+cat >&5 <<_CSEOF
+
+This file was extended by xindy $as_me 2.3, which was
+generated by GNU Autoconf 2.59. Invocation command line was
+
+ CONFIG_FILES = $CONFIG_FILES
+ CONFIG_HEADERS = $CONFIG_HEADERS
+ CONFIG_LINKS = $CONFIG_LINKS
+ CONFIG_COMMANDS = $CONFIG_COMMANDS
+ $ $0 $@
+
+_CSEOF
+echo "on `(hostname || uname -n) 2>/dev/null | sed 1q`" >&5
+echo >&5
+_ACEOF
+
+# Files that config.status was made for.
+if test -n "$ac_config_files"; then
+ echo "config_files=\"$ac_config_files\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_headers"; then
+ echo "config_headers=\"$ac_config_headers\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_links"; then
+ echo "config_links=\"$ac_config_links\"" >>$CONFIG_STATUS
+fi
+
+if test -n "$ac_config_commands"; then
+ echo "config_commands=\"$ac_config_commands\"" >>$CONFIG_STATUS
+fi
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+ac_cs_usage="\
+\`$as_me' instantiates files from templates according to the
+current configuration.
+
+Usage: $0 [OPTIONS] [FILE]...
+
+ -h, --help print this help, then exit
+ -V, --version print version number, then exit
+ -q, --quiet do not print progress messages
+ -d, --debug don't remove temporary files
+ --recheck update $as_me by reconfiguring in the same conditions
+ --file=FILE[:TEMPLATE]
+ instantiate the configuration file FILE
+
+Configuration files:
+$config_files
+
+Configuration commands:
+$config_commands
+
+Report bugs to <bug-autoconf@gnu.org>."
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+ac_cs_version="\\
+xindy config.status 2.3
+configured by $0, generated by GNU Autoconf 2.59,
+ with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
+
+Copyright (C) 2003 Free Software Foundation, Inc.
+This config.status script is free software; the Free Software Foundation
+gives unlimited permission to copy, distribute and modify it."
+srcdir=$srcdir
+INSTALL="$INSTALL"
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+# If no file are specified by the user, then we need to provide default
+# value. By we need to know if files were specified by the user.
+ac_need_defaults=:
+while test $# != 0
+do
+ case $1 in
+ --*=*)
+ ac_option=`expr "x$1" : 'x\([^=]*\)='`
+ ac_optarg=`expr "x$1" : 'x[^=]*=\(.*\)'`
+ ac_shift=:
+ ;;
+ -*)
+ ac_option=$1
+ ac_optarg=$2
+ ac_shift=shift
+ ;;
+ *) # This is not an option, so the user has probably given explicit
+ # arguments.
+ ac_option=$1
+ ac_need_defaults=false;;
+ esac
+
+ case $ac_option in
+ # Handling of the options.
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+ -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
+ ac_cs_recheck=: ;;
+ --version | --vers* | -V )
+ echo "$ac_cs_version"; exit 0 ;;
+ --he | --h)
+ # Conflict between --help and --header
+ { { echo "$as_me:$LINENO: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: ambiguous option: $1
+Try \`$0 --help' for more information." >&2;}
+ { (exit 1); exit 1; }; };;
+ --help | --hel | -h )
+ echo "$ac_cs_usage"; exit 0 ;;
+ --debug | --d* | -d )
+ debug=: ;;
+ --file | --fil | --fi | --f )
+ $ac_shift
+ CONFIG_FILES="$CONFIG_FILES $ac_optarg"
+ ac_need_defaults=false;;
+ --header | --heade | --head | --hea )
+ $ac_shift
+ CONFIG_HEADERS="$CONFIG_HEADERS $ac_optarg"
+ ac_need_defaults=false;;
+ -q | -quiet | --quiet | --quie | --qui | --qu | --q \
+ | -silent | --silent | --silen | --sile | --sil | --si | --s)
+ ac_cs_silent=: ;;
+
+ # This is an error.
+ -*) { { echo "$as_me:$LINENO: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&5
+echo "$as_me: error: unrecognized option: $1
+Try \`$0 --help' for more information." >&2;}
+ { (exit 1); exit 1; }; } ;;
+
+ *) ac_config_targets="$ac_config_targets $1" ;;
+
+ esac
+ shift
+done
+
+ac_configure_extra_args=
+
+if $ac_cs_silent; then
+ exec 6>/dev/null
+ ac_configure_extra_args="$ac_configure_extra_args --silent"
+fi
+
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+if \$ac_cs_recheck; then
+ echo "running $SHELL $0 " $ac_configure_args \$ac_configure_extra_args " --no-create --no-recursion" >&6
+ exec $SHELL $0 $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
+fi
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+#
+# INIT-COMMANDS section.
+#
+
+AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+
+_ACEOF
+
+
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_config_target in $ac_config_targets
+do
+ case "$ac_config_target" in
+ # Handling of arguments.
+ "Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
+ "rte/Makefile" ) CONFIG_FILES="$CONFIG_FILES rte/Makefile" ;;
+ "rte/ordrules/Makefile" ) CONFIG_FILES="$CONFIG_FILES rte/ordrules/Makefile" ;;
+ "rte/ordrules/version.lisp" ) CONFIG_FILES="$CONFIG_FILES rte/ordrules/version.lisp" ;;
+ "binaries/Makefile" ) CONFIG_FILES="$CONFIG_FILES binaries/Makefile" ;;
+ "tex2xindy/Makefile" ) CONFIG_FILES="$CONFIG_FILES tex2xindy/Makefile" ;;
+ "modules/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/Makefile" ;;
+ "modules/base/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/base/Makefile" ;;
+ "modules/class/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/class/Makefile" ;;
+ "modules/lang/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/lang/Makefile" ;;
+ "modules/lang/german/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/lang/german/Makefile" ;;
+ "modules/lang/latin/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/lang/latin/Makefile" ;;
+ "modules/ord/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/ord/Makefile" ;;
+ "modules/rules/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/rules/Makefile" ;;
+ "modules/styles/Makefile" ) CONFIG_FILES="$CONFIG_FILES modules/styles/Makefile" ;;
+ "user-commands/Makefile" ) CONFIG_FILES="$CONFIG_FILES user-commands/Makefile" ;;
+ "make-rules/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/Makefile" ;;
+ "make-rules/alphabets/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/Makefile" ;;
+ "make-rules/alphabets/albanian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/albanian/Makefile" ;;
+ "make-rules/alphabets/belarusian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/belarusian/Makefile" ;;
+ "make-rules/alphabets/bulgarian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/bulgarian/Makefile" ;;
+ "make-rules/alphabets/croatian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/croatian/Makefile" ;;
+ "make-rules/alphabets/czech/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/czech/Makefile" ;;
+ "make-rules/alphabets/danish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/danish/Makefile" ;;
+ "make-rules/alphabets/dutch/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/dutch/Makefile" ;;
+ "make-rules/alphabets/english/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/english/Makefile" ;;
+ "make-rules/alphabets/esperanto/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/esperanto/Makefile" ;;
+ "make-rules/alphabets/estonian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/estonian/Makefile" ;;
+ "make-rules/alphabets/finnish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/finnish/Makefile" ;;
+ "make-rules/alphabets/french/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/french/Makefile" ;;
+ "make-rules/alphabets/general/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/general/Makefile" ;;
+ "make-rules/alphabets/georgian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/georgian/Makefile" ;;
+ "make-rules/alphabets/german/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/german/Makefile" ;;
+ "make-rules/alphabets/greek/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/greek/Makefile" ;;
+ "make-rules/alphabets/gypsy/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/gypsy/Makefile" ;;
+ "make-rules/alphabets/hausa/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/hausa/Makefile" ;;
+ "make-rules/alphabets/hebrew/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/hebrew/Makefile" ;;
+ "make-rules/alphabets/hungarian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/hungarian/Makefile" ;;
+ "make-rules/alphabets/icelandic/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/icelandic/Makefile" ;;
+ "make-rules/alphabets/italian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/italian/Makefile" ;;
+ "make-rules/alphabets/klingon/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/klingon/Makefile" ;;
+ "make-rules/alphabets/kurdish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/kurdish/Makefile" ;;
+ "make-rules/alphabets/latin/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/latin/Makefile" ;;
+ "make-rules/alphabets/latvian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/latvian/Makefile" ;;
+ "make-rules/alphabets/lithuanian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/lithuanian/Makefile" ;;
+ "make-rules/alphabets/lower-sorbian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/lower-sorbian/Makefile" ;;
+ "make-rules/alphabets/macedonian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/macedonian/Makefile" ;;
+ "make-rules/alphabets/mongolian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/mongolian/Makefile" ;;
+ "make-rules/alphabets/norwegian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/norwegian/Makefile" ;;
+ "make-rules/alphabets/polish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/polish/Makefile" ;;
+ "make-rules/alphabets/portuguese/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/portuguese/Makefile" ;;
+ "make-rules/alphabets/romanian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/romanian/Makefile" ;;
+ "make-rules/alphabets/russian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/russian/Makefile" ;;
+ "make-rules/alphabets/serbian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/serbian/Makefile" ;;
+ "make-rules/alphabets/slovak/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/slovak/Makefile" ;;
+ "make-rules/alphabets/slovenian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/slovenian/Makefile" ;;
+ "make-rules/alphabets/spanish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/spanish/Makefile" ;;
+ "make-rules/alphabets/swedish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/swedish/Makefile" ;;
+ "make-rules/alphabets/test1/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/test1/Makefile" ;;
+ "make-rules/alphabets/turkish/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/turkish/Makefile" ;;
+ "make-rules/alphabets/ukrainian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/ukrainian/Makefile" ;;
+ "make-rules/alphabets/upper-sorbian/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/upper-sorbian/Makefile" ;;
+ "make-rules/alphabets/vietnamese/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/alphabets/vietnamese/Makefile" ;;
+ "make-rules/inputenc/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/inputenc/Makefile" ;;
+ "make-rules/styles/Makefile" ) CONFIG_FILES="$CONFIG_FILES make-rules/styles/Makefile" ;;
+ "doc/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/Makefile" ;;
+ "doc/style-tutorial/Makefile" ) CONFIG_FILES="$CONFIG_FILES doc/style-tutorial/Makefile" ;;
+ "depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
+ *) { { echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5
+echo "$as_me: error: invalid argument: $ac_config_target" >&2;}
+ { (exit 1); exit 1; }; };;
+ esac
+done
+
+# If the user did not use the arguments to specify the items to instantiate,
+# then the envvar interface is used. Set only those that are not.
+# We use the long form for the default assignment because of an extremely
+# bizarre bug on SunOS 4.1.3.
+if $ac_need_defaults; then
+ test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
+ test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+fi
+
+# Have a temporary directory for convenience. Make it in the build tree
+# simply because there is no reason to put it here, and in addition,
+# creating and moving files from /tmp can sometimes cause problems.
+# Create a temporary directory, and hook for its removal unless debugging.
+$debug ||
+{
+ trap 'exit_status=$?; rm -rf $tmp && exit $exit_status' 0
+ trap '{ (exit 1); exit 1; }' 1 2 13 15
+}
+
+# Create a (secure) tmp directory for tmp files.
+
+{
+ tmp=`(umask 077 && mktemp -d -q "./confstatXXXXXX") 2>/dev/null` &&
+ test -n "$tmp" && test -d "$tmp"
+} ||
+{
+ tmp=./confstat$$-$RANDOM
+ (umask 077 && mkdir $tmp)
+} ||
+{
+ echo "$me: cannot create a temporary directory in ." >&2
+ { (exit 1); exit 1; }
+}
+
+_ACEOF
+
+cat >>$CONFIG_STATUS <<_ACEOF
+
+#
+# CONFIG_FILES section.
+#
+
+# No need to generate the scripts if there are no CONFIG_FILES.
+# This happens for instance when ./config.status config.h
+if test -n "\$CONFIG_FILES"; then
+ # Protect against being on the right side of a sed subst in config.status.
+ sed 's/,@/@@/; s/@,/@@/; s/,;t t\$/@;t t/; /@;t t\$/s/[\\\\&,]/\\\\&/g;
+ s/@@/,@/; s/@@/@,/; s/@;t t\$/,;t t/' >\$tmp/subs.sed <<\\CEOF
+s,@SHELL@,$SHELL,;t t
+s,@PATH_SEPARATOR@,$PATH_SEPARATOR,;t t
+s,@PACKAGE_NAME@,$PACKAGE_NAME,;t t
+s,@PACKAGE_TARNAME@,$PACKAGE_TARNAME,;t t
+s,@PACKAGE_VERSION@,$PACKAGE_VERSION,;t t
+s,@PACKAGE_STRING@,$PACKAGE_STRING,;t t
+s,@PACKAGE_BUGREPORT@,$PACKAGE_BUGREPORT,;t t
+s,@exec_prefix@,$exec_prefix,;t t
+s,@prefix@,$prefix,;t t
+s,@program_transform_name@,$program_transform_name,;t t
+s,@bindir@,$bindir,;t t
+s,@sbindir@,$sbindir,;t t
+s,@libexecdir@,$libexecdir,;t t
+s,@datadir@,$datadir,;t t
+s,@sysconfdir@,$sysconfdir,;t t
+s,@sharedstatedir@,$sharedstatedir,;t t
+s,@localstatedir@,$localstatedir,;t t
+s,@libdir@,$libdir,;t t
+s,@includedir@,$includedir,;t t
+s,@oldincludedir@,$oldincludedir,;t t
+s,@infodir@,$infodir,;t t
+s,@mandir@,$mandir,;t t
+s,@build_alias@,$build_alias,;t t
+s,@host_alias@,$host_alias,;t t
+s,@target_alias@,$target_alias,;t t
+s,@DEFS@,$DEFS,;t t
+s,@ECHO_C@,$ECHO_C,;t t
+s,@ECHO_N@,$ECHO_N,;t t
+s,@ECHO_T@,$ECHO_T,;t t
+s,@LIBS@,$LIBS,;t t
+s,@INSTALL_PROGRAM@,$INSTALL_PROGRAM,;t t
+s,@INSTALL_SCRIPT@,$INSTALL_SCRIPT,;t t
+s,@INSTALL_DATA@,$INSTALL_DATA,;t t
+s,@CYGPATH_W@,$CYGPATH_W,;t t
+s,@PACKAGE@,$PACKAGE,;t t
+s,@VERSION@,$VERSION,;t t
+s,@ACLOCAL@,$ACLOCAL,;t t
+s,@AUTOCONF@,$AUTOCONF,;t t
+s,@AUTOMAKE@,$AUTOMAKE,;t t
+s,@AUTOHEADER@,$AUTOHEADER,;t t
+s,@MAKEINFO@,$MAKEINFO,;t t
+s,@install_sh@,$install_sh,;t t
+s,@STRIP@,$STRIP,;t t
+s,@ac_ct_STRIP@,$ac_ct_STRIP,;t t
+s,@INSTALL_STRIP_PROGRAM@,$INSTALL_STRIP_PROGRAM,;t t
+s,@mkdir_p@,$mkdir_p,;t t
+s,@AWK@,$AWK,;t t
+s,@SET_MAKE@,$SET_MAKE,;t t
+s,@am__leading_dot@,$am__leading_dot,;t t
+s,@AMTAR@,$AMTAR,;t t
+s,@am__tar@,$am__tar,;t t
+s,@am__untar@,$am__untar,;t t
+s,@CXX@,$CXX,;t t
+s,@CXXFLAGS@,$CXXFLAGS,;t t
+s,@LDFLAGS@,$LDFLAGS,;t t
+s,@CPPFLAGS@,$CPPFLAGS,;t t
+s,@ac_ct_CXX@,$ac_ct_CXX,;t t
+s,@EXEEXT@,$EXEEXT,;t t
+s,@OBJEXT@,$OBJEXT,;t t
+s,@DEPDIR@,$DEPDIR,;t t
+s,@am__include@,$am__include,;t t
+s,@am__quote@,$am__quote,;t t
+s,@AMDEP_TRUE@,$AMDEP_TRUE,;t t
+s,@AMDEP_FALSE@,$AMDEP_FALSE,;t t
+s,@AMDEPBACKSLASH@,$AMDEPBACKSLASH,;t t
+s,@CXXDEPMODE@,$CXXDEPMODE,;t t
+s,@am__fastdepCXX_TRUE@,$am__fastdepCXX_TRUE,;t t
+s,@am__fastdepCXX_FALSE@,$am__fastdepCXX_FALSE,;t t
+s,@CC@,$CC,;t t
+s,@CFLAGS@,$CFLAGS,;t t
+s,@ac_ct_CC@,$ac_ct_CC,;t t
+s,@CCDEPMODE@,$CCDEPMODE,;t t
+s,@am__fastdepCC_TRUE@,$am__fastdepCC_TRUE,;t t
+s,@am__fastdepCC_FALSE@,$am__fastdepCC_FALSE,;t t
+s,@CPP@,$CPP,;t t
+s,@LEX@,$LEX,;t t
+s,@LEXLIB@,$LEXLIB,;t t
+s,@LEX_OUTPUT_ROOT@,$LEX_OUTPUT_ROOT,;t t
+s,@YACC@,$YACC,;t t
+s,@LN_S@,$LN_S,;t t
+s,@EGREP@,$EGREP,;t t
+s,@latex@,$latex,;t t
+s,@BUILDRULES_TRUE@,$BUILDRULES_TRUE,;t t
+s,@BUILDRULES_FALSE@,$BUILDRULES_FALSE,;t t
+s,@pdflatex@,$pdflatex,;t t
+s,@BUILDDOCS_TRUE@,$BUILDDOCS_TRUE,;t t
+s,@BUILDDOCS_FALSE@,$BUILDDOCS_FALSE,;t t
+s,@EXT_CLISP_TRUE@,$EXT_CLISP_TRUE,;t t
+s,@EXT_CLISP_FALSE@,$EXT_CLISP_FALSE,;t t
+s,@CLISP_PATH@,$CLISP_PATH,;t t
+s,@CLISP_DIR@,$CLISP_DIR,;t t
+s,@build@,$build,;t t
+s,@build_cpu@,$build_cpu,;t t
+s,@build_vendor@,$build_vendor,;t t
+s,@build_os@,$build_os,;t t
+s,@host@,$host,;t t
+s,@host_cpu@,$host_cpu,;t t
+s,@host_vendor@,$host_vendor,;t t
+s,@host_os@,$host_os,;t t
+s,@LIBOBJS@,$LIBOBJS,;t t
+s,@LTLIBOBJS@,$LTLIBOBJS,;t t
+CEOF
+
+_ACEOF
+
+ cat >>$CONFIG_STATUS <<\_ACEOF
+ # Split the substitutions into bite-sized pieces for seds with
+ # small command number limits, like on Digital OSF/1 and HP-UX.
+ ac_max_sed_lines=48
+ ac_sed_frag=1 # Number of current file.
+ ac_beg=1 # First line for current file.
+ ac_end=$ac_max_sed_lines # Line after last line for current file.
+ ac_more_lines=:
+ ac_sed_cmds=
+ while $ac_more_lines; do
+ if test $ac_beg -gt 1; then
+ sed "1,${ac_beg}d; ${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+ else
+ sed "${ac_end}q" $tmp/subs.sed >$tmp/subs.frag
+ fi
+ if test ! -s $tmp/subs.frag; then
+ ac_more_lines=false
+ else
+ # The purpose of the label and of the branching condition is to
+ # speed up the sed processing (if there are no `@' at all, there
+ # is no need to browse any of the substitutions).
+ # These are the two extra sed commands mentioned above.
+ (echo ':t
+ /@[a-zA-Z_][a-zA-Z_0-9]*@/!b' && cat $tmp/subs.frag) >$tmp/subs-$ac_sed_frag.sed
+ if test -z "$ac_sed_cmds"; then
+ ac_sed_cmds="sed -f $tmp/subs-$ac_sed_frag.sed"
+ else
+ ac_sed_cmds="$ac_sed_cmds | sed -f $tmp/subs-$ac_sed_frag.sed"
+ fi
+ ac_sed_frag=`expr $ac_sed_frag + 1`
+ ac_beg=$ac_end
+ ac_end=`expr $ac_end + $ac_max_sed_lines`
+ fi
+ done
+ if test -z "$ac_sed_cmds"; then
+ ac_sed_cmds=cat
+ fi
+fi # test -n "$CONFIG_FILES"
+
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+for ac_file in : $CONFIG_FILES; do test "x$ac_file" = x: && continue
+ # Support "outfile[:infile[:infile...]]", defaulting infile="outfile.in".
+ case $ac_file in
+ - | *:- | *:-:* ) # input from stdin
+ cat >$tmp/stdin
+ ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+ *:* ) ac_file_in=`echo "$ac_file" | sed 's,[^:]*:,,'`
+ ac_file=`echo "$ac_file" | sed 's,:.*,,'` ;;
+ * ) ac_file_in=$ac_file.in ;;
+ esac
+
+ # Compute @srcdir@, @top_srcdir@, and @INSTALL@ for subdirectories.
+ ac_dir=`(dirname "$ac_file") 2>/dev/null ||
+$as_expr X"$ac_file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_file" : 'X\(//\)[^/]' \| \
+ X"$ac_file" : 'X\(//\)$' \| \
+ X"$ac_file" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$ac_file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ { if $as_mkdir_p; then
+ mkdir -p "$ac_dir"
+ else
+ as_dir="$ac_dir"
+ as_dirs=
+ while test ! -d "$as_dir"; do
+ as_dirs="$as_dir $as_dirs"
+ as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ done
+ test ! -n "$as_dirs" || mkdir $as_dirs
+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+ { (exit 1); exit 1; }; }; }
+
+ ac_builddir=.
+
+if test "$ac_dir" != .; then
+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+ ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+ .) # No --srcdir option. We are building in place.
+ ac_srcdir=.
+ if test -z "$ac_top_builddir"; then
+ ac_top_srcdir=.
+ else
+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+ fi ;;
+ [\\/]* | ?:[\\/]* ) # Absolute path.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir ;;
+ *) # Relative path.
+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+ case "$ac_dir" in
+ .) ac_abs_builddir=`pwd`;;
+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+ case ${ac_top_builddir}. in
+ .) ac_abs_top_builddir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+ case $ac_srcdir in
+ .) ac_abs_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+ case $ac_top_srcdir in
+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+ esac;;
+esac
+
+
+ case $INSTALL in
+ [\\/$]* | ?:[\\/]* ) ac_INSTALL=$INSTALL ;;
+ *) ac_INSTALL=$ac_top_builddir$INSTALL ;;
+ esac
+
+ if test x"$ac_file" != x-; then
+ { echo "$as_me:$LINENO: creating $ac_file" >&5
+echo "$as_me: creating $ac_file" >&6;}
+ rm -f "$ac_file"
+ fi
+ # Let's still pretend it is `configure' which instantiates (i.e., don't
+ # use $as_me), people would be surprised to read:
+ # /* config.h. Generated by config.status. */
+ if test x"$ac_file" = x-; then
+ configure_input=
+ else
+ configure_input="$ac_file. "
+ fi
+ configure_input=$configure_input"Generated from `echo $ac_file_in |
+ sed 's,.*/,,'` by configure."
+
+ # First look for the input files in the build tree, otherwise in the
+ # src tree.
+ ac_file_inputs=`IFS=:
+ for f in $ac_file_in; do
+ case $f in
+ -) echo $tmp/stdin ;;
+ [\\/$]*)
+ # Absolute (can't be DOS-style, as IFS=:)
+ test -f "$f" || { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+ { (exit 1); exit 1; }; }
+ echo "$f";;
+ *) # Relative
+ if test -f "$f"; then
+ # Build tree
+ echo "$f"
+ elif test -f "$srcdir/$f"; then
+ # Source tree
+ echo "$srcdir/$f"
+ else
+ # /dev/null tree
+ { { echo "$as_me:$LINENO: error: cannot find input file: $f" >&5
+echo "$as_me: error: cannot find input file: $f" >&2;}
+ { (exit 1); exit 1; }; }
+ fi;;
+ esac
+ done` || { (exit 1); exit 1; }
+_ACEOF
+cat >>$CONFIG_STATUS <<_ACEOF
+ sed "$ac_vpsub
+$extrasub
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+:t
+/@[a-zA-Z_][a-zA-Z_0-9]*@/!b
+s,@configure_input@,$configure_input,;t t
+s,@srcdir@,$ac_srcdir,;t t
+s,@abs_srcdir@,$ac_abs_srcdir,;t t
+s,@top_srcdir@,$ac_top_srcdir,;t t
+s,@abs_top_srcdir@,$ac_abs_top_srcdir,;t t
+s,@builddir@,$ac_builddir,;t t
+s,@abs_builddir@,$ac_abs_builddir,;t t
+s,@top_builddir@,$ac_top_builddir,;t t
+s,@abs_top_builddir@,$ac_abs_top_builddir,;t t
+s,@INSTALL@,$ac_INSTALL,;t t
+" $ac_file_inputs | (eval "$ac_sed_cmds") >$tmp/out
+ rm -f $tmp/stdin
+ if test x"$ac_file" != x-; then
+ mv $tmp/out $ac_file
+ else
+ cat $tmp/out
+ rm -f $tmp/out
+ fi
+
+done
+_ACEOF
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+#
+# CONFIG_COMMANDS section.
+#
+for ac_file in : $CONFIG_COMMANDS; do test "x$ac_file" = x: && continue
+ ac_dest=`echo "$ac_file" | sed 's,:.*,,'`
+ ac_source=`echo "$ac_file" | sed 's,[^:]*:,,'`
+ ac_dir=`(dirname "$ac_dest") 2>/dev/null ||
+$as_expr X"$ac_dest" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$ac_dest" : 'X\(//\)[^/]' \| \
+ X"$ac_dest" : 'X\(//\)$' \| \
+ X"$ac_dest" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$ac_dest" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ { if $as_mkdir_p; then
+ mkdir -p "$ac_dir"
+ else
+ as_dir="$ac_dir"
+ as_dirs=
+ while test ! -d "$as_dir"; do
+ as_dirs="$as_dir $as_dirs"
+ as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ done
+ test ! -n "$as_dirs" || mkdir $as_dirs
+ fi || { { echo "$as_me:$LINENO: error: cannot create directory \"$ac_dir\"" >&5
+echo "$as_me: error: cannot create directory \"$ac_dir\"" >&2;}
+ { (exit 1); exit 1; }; }; }
+
+ ac_builddir=.
+
+if test "$ac_dir" != .; then
+ ac_dir_suffix=/`echo "$ac_dir" | sed 's,^\.[\\/],,'`
+ # A "../" for each directory in $ac_dir_suffix.
+ ac_top_builddir=`echo "$ac_dir_suffix" | sed 's,/[^\\/]*,../,g'`
+else
+ ac_dir_suffix= ac_top_builddir=
+fi
+
+case $srcdir in
+ .) # No --srcdir option. We are building in place.
+ ac_srcdir=.
+ if test -z "$ac_top_builddir"; then
+ ac_top_srcdir=.
+ else
+ ac_top_srcdir=`echo $ac_top_builddir | sed 's,/$,,'`
+ fi ;;
+ [\\/]* | ?:[\\/]* ) # Absolute path.
+ ac_srcdir=$srcdir$ac_dir_suffix;
+ ac_top_srcdir=$srcdir ;;
+ *) # Relative path.
+ ac_srcdir=$ac_top_builddir$srcdir$ac_dir_suffix
+ ac_top_srcdir=$ac_top_builddir$srcdir ;;
+esac
+
+# Do not use `cd foo && pwd` to compute absolute paths, because
+# the directories may not exist.
+case `pwd` in
+.) ac_abs_builddir="$ac_dir";;
+*)
+ case "$ac_dir" in
+ .) ac_abs_builddir=`pwd`;;
+ [\\/]* | ?:[\\/]* ) ac_abs_builddir="$ac_dir";;
+ *) ac_abs_builddir=`pwd`/"$ac_dir";;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_builddir=${ac_top_builddir}.;;
+*)
+ case ${ac_top_builddir}. in
+ .) ac_abs_top_builddir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_builddir=${ac_top_builddir}.;;
+ *) ac_abs_top_builddir=$ac_abs_builddir/${ac_top_builddir}.;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_srcdir=$ac_srcdir;;
+*)
+ case $ac_srcdir in
+ .) ac_abs_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_srcdir=$ac_srcdir;;
+ *) ac_abs_srcdir=$ac_abs_builddir/$ac_srcdir;;
+ esac;;
+esac
+case $ac_abs_builddir in
+.) ac_abs_top_srcdir=$ac_top_srcdir;;
+*)
+ case $ac_top_srcdir in
+ .) ac_abs_top_srcdir=$ac_abs_builddir;;
+ [\\/]* | ?:[\\/]* ) ac_abs_top_srcdir=$ac_top_srcdir;;
+ *) ac_abs_top_srcdir=$ac_abs_builddir/$ac_top_srcdir;;
+ esac;;
+esac
+
+
+ { echo "$as_me:$LINENO: executing $ac_dest commands" >&5
+echo "$as_me: executing $ac_dest commands" >&6;}
+ case $ac_dest in
+ depfiles ) test x"$AMDEP_TRUE" != x"" || for mf in $CONFIG_FILES; do
+ # Strip MF so we end up with the name of the file.
+ mf=`echo "$mf" | sed -e 's/:.*$//'`
+ # Check whether this is an Automake generated Makefile or not.
+ # We used to match only the files named `Makefile.in', but
+ # some people rename them; so instead we look at the file content.
+ # Grep'ing the first line is not enough: some people post-process
+ # each Makefile.in and add a new line on top of each file to say so.
+ # So let's grep whole file.
+ if grep '^#.*generated by automake' $mf > /dev/null 2>&1; then
+ dirpart=`(dirname "$mf") 2>/dev/null ||
+$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$mf" : 'X\(//\)[^/]' \| \
+ X"$mf" : 'X\(//\)$' \| \
+ X"$mf" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$mf" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ else
+ continue
+ fi
+ # Extract the definition of DEPDIR, am__include, and am__quote
+ # from the Makefile without running `make'.
+ DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
+ test -z "$DEPDIR" && continue
+ am__include=`sed -n 's/^am__include = //p' < "$mf"`
+ test -z "am__include" && continue
+ am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
+ # When using ansi2knr, U may be empty or an underscore; expand it
+ U=`sed -n 's/^U = //p' < "$mf"`
+ # Find all dependency output files, they are included files with
+ # $(DEPDIR) in their names. We invoke sed twice because it is the
+ # simplest approach to changing $(DEPDIR) to its actual value in the
+ # expansion.
+ for file in `sed -n "
+ s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
+ sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g' -e 's/\$U/'"$U"'/g'`; do
+ # Make sure the directory exists.
+ test -f "$dirpart/$file" && continue
+ fdir=`(dirname "$file") 2>/dev/null ||
+$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$file" : 'X\(//\)[^/]' \| \
+ X"$file" : 'X\(//\)$' \| \
+ X"$file" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$file" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ { if $as_mkdir_p; then
+ mkdir -p $dirpart/$fdir
+ else
+ as_dir=$dirpart/$fdir
+ as_dirs=
+ while test ! -d "$as_dir"; do
+ as_dirs="$as_dir $as_dirs"
+ as_dir=`(dirname "$as_dir") 2>/dev/null ||
+$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+ X"$as_dir" : 'X\(//\)[^/]' \| \
+ X"$as_dir" : 'X\(//\)$' \| \
+ X"$as_dir" : 'X\(/\)' \| \
+ . : '\(.\)' 2>/dev/null ||
+echo X"$as_dir" |
+ sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ s//\1/; q; }
+ /^X\(\/\/\)[^/].*/{ s//\1/; q; }
+ /^X\(\/\/\)$/{ s//\1/; q; }
+ /^X\(\/\).*/{ s//\1/; q; }
+ s/.*/./; q'`
+ done
+ test ! -n "$as_dirs" || mkdir $as_dirs
+ fi || { { echo "$as_me:$LINENO: error: cannot create directory $dirpart/$fdir" >&5
+echo "$as_me: error: cannot create directory $dirpart/$fdir" >&2;}
+ { (exit 1); exit 1; }; }; }
+
+ # echo "creating $dirpart/$file"
+ echo '# dummy' > "$dirpart/$file"
+ done
+done
+ ;;
+ esac
+done
+_ACEOF
+
+cat >>$CONFIG_STATUS <<\_ACEOF
+
+{ (exit 0); exit 0; }
+_ACEOF
+chmod +x $CONFIG_STATUS
+ac_clean_files=$ac_clean_files_save
+
+
+# configure is writing to config.log, and then calls config.status.
+# config.status does its own redirection, appending to config.log.
+# Unfortunately, on DOS this fails, as config.log is still kept open
+# by configure, so config.status won't be able to write to it; its
+# output is simply discarded. So we exec the FD to /dev/null,
+# effectively closing config.log, so it can be properly (re)opened and
+# appended to by config.status. When coming back to configure, we
+# need to make the FD available again.
+if test "$no_create" != yes; then
+ ac_cs_success=:
+ ac_config_status_args=
+ test "$silent" = yes &&
+ ac_config_status_args="$ac_config_status_args --quiet"
+ exec 5>/dev/null
+ $SHELL $CONFIG_STATUS $ac_config_status_args || ac_cs_success=false
+ exec 5>>config.log
+ # Use ||, not &&, to avoid exiting from the if with $? = 1, which
+ # would make configure fail if this is the last instruction.
+ $ac_cs_success || { (exit 1); exit 1; }
+fi
+
diff --git a/Build/source/utils/xindy/configure.ac b/Build/source/utils/xindy/configure.ac
new file mode 100644
index 00000000000..bc361eb3a4a
--- /dev/null
+++ b/Build/source/utils/xindy/configure.ac
@@ -0,0 +1,175 @@
+## -*- Autoconf -*-
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `autoconf' to create only configure.
+
+## Copyright (C) 2004-2005 by Gour.
+## Copyright (C) 2008 by Joachim Schrod.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file LICENSE; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+AC_PREREQ(2.59)
+AC_INIT([xindy], [2.3], [xindy-discuss@lists.sourceforge.net])
+
+## make dist doesn't work yet, since configure makes CLISP.
+AM_INIT_AUTOMAKE([foreign no-dist])
+
+# Checks for programs.
+# FIXME: not used: CXX, CPP, YACC, LN_S. Why are they tested here?
+AC_PROG_CXX
+AC_PROG_CC
+AC_PROG_CPP
+AC_PROG_LEX
+AC_PROG_YACC
+AC_PROG_INSTALL
+AC_PROG_LN_S
+AC_PROG_MAKE_SET
+AC_PROG_GCC_TRADITIONAL
+
+dnl test for building make-rules
+AC_ARG_ENABLE(make-rules, AS_HELP_STRING([--enable-make-rules ],[build and install make-rules package (default is YES)]),[BUILDRULES=$enableval],[BUILDRULES=yes])
+
+if test "$BUILDRULES" = "yes"; then
+ AC_PROG_LATEX
+fi
+
+AM_CONDITIONAL(BUILDRULES, test "$BUILDRULES" = "yes")
+
+dnl test for building Documentation
+AC_ARG_ENABLE(docs, AS_HELP_STRING([--enable-docs ],[build and install documentation (default is YES)]),[BUILDDOCS=$enableval],[BUILDDOCS=yes])
+
+if test "$BUILDDOCS" = "yes"; then
+ AC_PROG_PDFLATEX
+fi
+
+AM_CONDITIONAL(BUILDDOCS, test "$BUILDDOCS" = "yes")
+
+dnl use external or internal CLISP
+AC_ARG_ENABLE(external-clisp, AS_HELP_STRING([--enable-external-clisp],[Use an external CLISP instead of the one in rte/]),[EXT_CLISP=$enableval],[EXT_CLISP=no])
+
+dnl test for CLISP
+AC_ARG_ENABLE(clisp-path, AS_HELP_STRING([--clisp-path],[Where to search the external CLISP]),[CLISP_PATH=$enableval],[CLISP_PATH=$(which clisp)])
+
+dnl test for CLISP linkkit
+AC_ARG_ENABLE(clisp-dir, AS_HELP_STRING([--clisp-dir],[Where to seach the external CLISP library]),[CLISP_DIR=$enableval],[CLISP_DIR=/usr/lib/clisp])
+
+if test "$EXT_CLISP" != no; then
+ AM_CONDITIONAL(EXT_CLISP, test -x "$CLISP_PATH" -a -x "$CLISP_DIR/clisp-link" -a -d "$CLISP_DIR/full" -a -d "$CLISP_DIR/linkkit")
+ AC_SUBST(CLISP_PATH)
+ AC_SUBST(CLISP_DIR)
+
+ if test -n "$EXT_CLISP_TRUE"; then
+ if test "$EXT_CLISP" = yes; then
+ echo Help me! I should use an external CLISP, but I can\'t find it. >&2
+ exit 1
+ else
+ echo Using internal clisp
+ EXT_CLISP=no
+ fi
+ else
+ echo Using external clisp
+ fi
+else
+ AM_CONDITIONAL(EXT_CLISP, false)
+fi
+
+# Checks for libraries.
+AC_CHECK_LIB([fl], [main])
+
+# Checks for header files.
+AC_HEADER_STDC
+AC_CHECK_HEADERS([stdlib.h string.h])
+
+dnl check system type
+AC_CANONICAL_HOST
+AC_SUBST(host_cpu)
+AC_SUBST(host_os)
+
+# Checks for typedefs, structures, and compiler characteristics.
+
+# Checks for library functions.
+AC_CHECK_FUNCS([strrchr strtoul])
+
+AC_CONFIG_FILES([Makefile \
+ rte/Makefile \
+ rte/ordrules/Makefile \
+ rte/ordrules/version.lisp \
+ binaries/Makefile \
+ tex2xindy/Makefile \
+ modules/Makefile \
+ modules/base/Makefile \
+ modules/class/Makefile \
+ modules/lang/Makefile \
+ modules/lang/german/Makefile \
+ modules/lang/latin/Makefile \
+ modules/ord/Makefile \
+ modules/rules/Makefile \
+ modules/styles/Makefile \
+ user-commands/Makefile \
+ make-rules/Makefile \
+ make-rules/alphabets/Makefile \
+ make-rules/alphabets/albanian/Makefile \
+ make-rules/alphabets/belarusian/Makefile \
+ make-rules/alphabets/bulgarian/Makefile \
+ make-rules/alphabets/croatian/Makefile \
+ make-rules/alphabets/czech/Makefile \
+ make-rules/alphabets/danish/Makefile \
+ make-rules/alphabets/dutch/Makefile \
+ make-rules/alphabets/english/Makefile \
+ make-rules/alphabets/esperanto/Makefile \
+ make-rules/alphabets/estonian/Makefile \
+ make-rules/alphabets/finnish/Makefile \
+ make-rules/alphabets/french/Makefile \
+ make-rules/alphabets/general/Makefile \
+ make-rules/alphabets/georgian/Makefile \
+ make-rules/alphabets/german/Makefile \
+ make-rules/alphabets/greek/Makefile \
+ make-rules/alphabets/gypsy/Makefile \
+ make-rules/alphabets/hausa/Makefile \
+ make-rules/alphabets/hebrew/Makefile \
+ make-rules/alphabets/hungarian/Makefile \
+ make-rules/alphabets/icelandic/Makefile \
+ make-rules/alphabets/italian/Makefile \
+ make-rules/alphabets/klingon/Makefile \
+ make-rules/alphabets/kurdish/Makefile \
+ make-rules/alphabets/latin/Makefile \
+ make-rules/alphabets/latvian/Makefile \
+ make-rules/alphabets/lithuanian/Makefile \
+ make-rules/alphabets/lower-sorbian/Makefile \
+ make-rules/alphabets/macedonian/Makefile \
+ make-rules/alphabets/mongolian/Makefile \
+ make-rules/alphabets/norwegian/Makefile \
+ make-rules/alphabets/polish/Makefile \
+ make-rules/alphabets/portuguese/Makefile \
+ make-rules/alphabets/romanian/Makefile \
+ make-rules/alphabets/russian/Makefile \
+ make-rules/alphabets/serbian/Makefile \
+ make-rules/alphabets/slovak/Makefile \
+ make-rules/alphabets/slovenian/Makefile \
+ make-rules/alphabets/spanish/Makefile \
+ make-rules/alphabets/swedish/Makefile \
+ make-rules/alphabets/test1/Makefile \
+ make-rules/alphabets/turkish/Makefile \
+ make-rules/alphabets/ukrainian/Makefile \
+ make-rules/alphabets/upper-sorbian/Makefile \
+ make-rules/alphabets/vietnamese/Makefile \
+ make-rules/inputenc/Makefile \
+ make-rules/styles/Makefile \
+ doc/Makefile \
+ doc/style-tutorial/Makefile
+])
+
+AC_OUTPUT
diff --git a/Build/source/utils/xindy/depcomp b/Build/source/utils/xindy/depcomp
new file mode 100755
index 00000000000..04701da536f
--- /dev/null
+++ b/Build/source/utils/xindy/depcomp
@@ -0,0 +1,530 @@
+#! /bin/sh
+# depcomp - compile a program generating dependencies as side-effects
+
+scriptversion=2005-07-09.11
+
+# Copyright (C) 1999, 2000, 2003, 2004, 2005 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+# Originally written by Alexandre Oliva <oliva@dcc.unicamp.br>.
+
+case $1 in
+ '')
+ echo "$0: No command. Try \`$0 --help' for more information." 1>&2
+ exit 1;
+ ;;
+ -h | --h*)
+ cat <<\EOF
+Usage: depcomp [--help] [--version] PROGRAM [ARGS]
+
+Run PROGRAMS ARGS to compile a file, generating dependencies
+as side-effects.
+
+Environment variables:
+ depmode Dependency tracking mode.
+ source Source file read by `PROGRAMS ARGS'.
+ object Object file output by `PROGRAMS ARGS'.
+ DEPDIR directory where to store dependencies.
+ depfile Dependency file to output.
+ tmpdepfile Temporary file to use when outputing dependencies.
+ libtool Whether libtool is used (yes/no).
+
+Report bugs to <bug-automake@gnu.org>.
+EOF
+ exit $?
+ ;;
+ -v | --v*)
+ echo "depcomp $scriptversion"
+ exit $?
+ ;;
+esac
+
+if test -z "$depmode" || test -z "$source" || test -z "$object"; then
+ echo "depcomp: Variables source, object and depmode must be set" 1>&2
+ exit 1
+fi
+
+# Dependencies for sub/bar.o or sub/bar.obj go into sub/.deps/bar.Po.
+depfile=${depfile-`echo "$object" |
+ sed 's|[^\\/]*$|'${DEPDIR-.deps}'/&|;s|\.\([^.]*\)$|.P\1|;s|Pobj$|Po|'`}
+tmpdepfile=${tmpdepfile-`echo "$depfile" | sed 's/\.\([^.]*\)$/.T\1/'`}
+
+rm -f "$tmpdepfile"
+
+# Some modes work just like other modes, but use different flags. We
+# parameterize here, but still list the modes in the big case below,
+# to make depend.m4 easier to write. Note that we *cannot* use a case
+# here, because this file can only contain one case statement.
+if test "$depmode" = hp; then
+ # HP compiler uses -M and no extra arg.
+ gccflag=-M
+ depmode=gcc
+fi
+
+if test "$depmode" = dashXmstdout; then
+ # This is just like dashmstdout with a different argument.
+ dashmflag=-xM
+ depmode=dashmstdout
+fi
+
+case "$depmode" in
+gcc3)
+## gcc 3 implements dependency tracking that does exactly what
+## we want. Yay! Note: for some reason libtool 1.4 doesn't like
+## it if -MD -MP comes after the -MF stuff. Hmm.
+ "$@" -MT "$object" -MD -MP -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ mv "$tmpdepfile" "$depfile"
+ ;;
+
+gcc)
+## There are various ways to get dependency output from gcc. Here's
+## why we pick this rather obscure method:
+## - Don't want to use -MD because we'd like the dependencies to end
+## up in a subdir. Having to rename by hand is ugly.
+## (We might end up doing this anyway to support other compilers.)
+## - The DEPENDENCIES_OUTPUT environment variable makes gcc act like
+## -MM, not -M (despite what the docs say).
+## - Using -M directly means running the compiler twice (even worse
+## than renaming).
+ if test -z "$gccflag"; then
+ gccflag=-MD,
+ fi
+ "$@" -Wp,"$gccflag$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ alpha=ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
+## The second -e expression handles DOS-style file names with drive letters.
+ sed -e 's/^[^:]*: / /' \
+ -e 's/^['$alpha']:\/[^:]*: / /' < "$tmpdepfile" >> "$depfile"
+## This next piece of magic avoids the `deleted header file' problem.
+## The problem is that when a header file which appears in a .P file
+## is deleted, the dependency causes make to die (because there is
+## typically no way to rebuild the header). We avoid this by adding
+## dummy dependencies for each header file. Too bad gcc doesn't do
+## this for us directly.
+ tr ' ' '
+' < "$tmpdepfile" |
+## Some versions of gcc put a space before the `:'. On the theory
+## that the space means something, we add a space to the output as
+## well.
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+hp)
+ # This case exists only to let depend.m4 do its work. It works by
+ # looking at the text of this script. This case will never be run,
+ # since it is checked for above.
+ exit 1
+ ;;
+
+sgi)
+ if test "$libtool" = yes; then
+ "$@" "-Wp,-MDupdate,$tmpdepfile"
+ else
+ "$@" -MDupdate "$tmpdepfile"
+ fi
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+
+ if test -f "$tmpdepfile"; then # yes, the sourcefile depend on other files
+ echo "$object : \\" > "$depfile"
+
+ # Clip off the initial element (the dependent). Don't try to be
+ # clever and replace this with sed code, as IRIX sed won't handle
+ # lines with more than a fixed number of characters (4096 in
+ # IRIX 6.2 sed, 8192 in IRIX 6.5). We also remove comment lines;
+ # the IRIX cc adds comments like `#:fec' to the end of the
+ # dependency line.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \
+ tr '
+' ' ' >> $depfile
+ echo >> $depfile
+
+ # The second pass generates a dummy entry for each header file.
+ tr ' ' '
+' < "$tmpdepfile" \
+ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \
+ >> $depfile
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+aix)
+ # The C for AIX Compiler uses -M and outputs the dependencies
+ # in a .u file. In older versions, this file always lives in the
+ # current directory. Also, the AIX compiler puts `$object:' at the
+ # start of each line; $object doesn't have directory information.
+ # Version 6 uses the directory in both cases.
+ stripped=`echo "$object" | sed 's/\(.*\)\..*$/\1/'`
+ tmpdepfile="$stripped.u"
+ if test "$libtool" = yes; then
+ "$@" -Wc,-M
+ else
+ "$@" -M
+ fi
+ stat=$?
+
+ if test -f "$tmpdepfile"; then :
+ else
+ stripped=`echo "$stripped" | sed 's,^.*/,,'`
+ tmpdepfile="$stripped.u"
+ fi
+
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+
+ if test -f "$tmpdepfile"; then
+ outname="$stripped.o"
+ # Each line is of the form `foo.o: dependent.h'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed -e "s,^$outname:,$object :," < "$tmpdepfile" > "$depfile"
+ sed -e "s,^$outname: \(.*\)$,\1:," < "$tmpdepfile" >> "$depfile"
+ else
+ # The sourcefile does not contain any dependencies, so just
+ # store a dummy comment line, to avoid errors with the Makefile
+ # "include basename.Plo" scheme.
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+icc)
+ # Intel's C compiler understands `-MD -MF file'. However on
+ # icc -MD -MF foo.d -c -o sub/foo.o sub/foo.c
+ # ICC 7.0 will fill foo.d with something like
+ # foo.o: sub/foo.c
+ # foo.o: sub/foo.h
+ # which is wrong. We want:
+ # sub/foo.o: sub/foo.c
+ # sub/foo.o: sub/foo.h
+ # sub/foo.c:
+ # sub/foo.h:
+ # ICC 7.1 will output
+ # foo.o: sub/foo.c sub/foo.h
+ # and will wrap long lines using \ :
+ # foo.o: sub/foo.c ... \
+ # sub/foo.h ... \
+ # ...
+
+ "$@" -MD -MF "$tmpdepfile"
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile"
+ exit $stat
+ fi
+ rm -f "$depfile"
+ # Each line is of the form `foo.o: dependent.h',
+ # or `foo.o: dep1.h dep2.h \', or ` dep3.h dep4.h \'.
+ # Do two passes, one to just change these to
+ # `$object: dependent.h' and one to simply `dependent.h:'.
+ sed "s,^[^:]*:,$object :," < "$tmpdepfile" > "$depfile"
+ # Some versions of the HPUX 10.20 sed can't process this invocation
+ # correctly. Breaking it into two sed invocations is a workaround.
+ sed 's,^[^:]*: \(.*\)$,\1,;s/^\\$//;/^$/d;/:$/d' < "$tmpdepfile" |
+ sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+tru64)
+ # The Tru64 compiler uses -MD to generate dependencies as a side
+ # effect. `cc -MD -o foo.o ...' puts the dependencies into `foo.o.d'.
+ # At least on Alpha/Redhat 6.1, Compaq CCC V6.2-504 seems to put
+ # dependencies in `foo.d' instead, so we check for that too.
+ # Subdirectories are respected.
+ dir=`echo "$object" | sed -e 's|/[^/]*$|/|'`
+ test "x$dir" = "x$object" && dir=
+ base=`echo "$object" | sed -e 's|^.*/||' -e 's/\.o$//' -e 's/\.lo$//'`
+
+ if test "$libtool" = yes; then
+ # With Tru64 cc, shared objects can also be used to make a
+ # static library. This mecanism is used in libtool 1.4 series to
+ # handle both shared and static libraries in a single compilation.
+ # With libtool 1.4, dependencies were output in $dir.libs/$base.lo.d.
+ #
+ # With libtool 1.5 this exception was removed, and libtool now
+ # generates 2 separate objects for the 2 libraries. These two
+ # compilations output dependencies in in $dir.libs/$base.o.d and
+ # in $dir$base.o.d. We have to check for both files, because
+ # one of the two compilations can be disabled. We should prefer
+ # $dir$base.o.d over $dir.libs/$base.o.d because the latter is
+ # automatically cleaned when .libs/ is deleted, while ignoring
+ # the former would cause a distcleancheck panic.
+ tmpdepfile1=$dir.libs/$base.lo.d # libtool 1.4
+ tmpdepfile2=$dir$base.o.d # libtool 1.5
+ tmpdepfile3=$dir.libs/$base.o.d # libtool 1.5
+ tmpdepfile4=$dir.libs/$base.d # Compaq CCC V6.2-504
+ "$@" -Wc,-MD
+ else
+ tmpdepfile1=$dir$base.o.d
+ tmpdepfile2=$dir$base.d
+ tmpdepfile3=$dir$base.d
+ tmpdepfile4=$dir$base.d
+ "$@" -MD
+ fi
+
+ stat=$?
+ if test $stat -eq 0; then :
+ else
+ rm -f "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+ exit $stat
+ fi
+
+ for tmpdepfile in "$tmpdepfile1" "$tmpdepfile2" "$tmpdepfile3" "$tmpdepfile4"
+ do
+ test -f "$tmpdepfile" && break
+ done
+ if test -f "$tmpdepfile"; then
+ sed -e "s,^.*\.[a-z]*:,$object:," < "$tmpdepfile" > "$depfile"
+ # That's a tab and a space in the [].
+ sed -e 's,^.*\.[a-z]*:[ ]*,,' -e 's,$,:,' < "$tmpdepfile" >> "$depfile"
+ else
+ echo "#dummy" > "$depfile"
+ fi
+ rm -f "$tmpdepfile"
+ ;;
+
+#nosideeffect)
+ # This comment above is used by automake to tell side-effect
+ # dependency tracking mechanisms from slower ones.
+
+dashmstdout)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout, regardless of -o.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ test -z "$dashmflag" && dashmflag=-M
+ # Require at least two characters before searching for `:'
+ # in the target name. This is to cope with DOS-style filenames:
+ # a dependency such as `c:/foo/bar' could be seen as target `c' otherwise.
+ "$@" $dashmflag |
+ sed 's:^[ ]*[^: ][^:][^:]*\:[ ]*:'"$object"'\: :' > "$tmpdepfile"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ tr ' ' '
+' < "$tmpdepfile" | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+dashXmstdout)
+ # This case only exists to satisfy depend.m4. It is never actually
+ # run, as this mode is specially recognized in the preamble.
+ exit 1
+ ;;
+
+makedepend)
+ "$@" || exit $?
+ # Remove any Libtool call
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+ # X makedepend
+ shift
+ cleared=no
+ for arg in "$@"; do
+ case $cleared in
+ no)
+ set ""; shift
+ cleared=yes ;;
+ esac
+ case "$arg" in
+ -D*|-I*)
+ set fnord "$@" "$arg"; shift ;;
+ # Strip any option that makedepend may not understand. Remove
+ # the object too, otherwise makedepend will parse it as a source file.
+ -*|$object)
+ ;;
+ *)
+ set fnord "$@" "$arg"; shift ;;
+ esac
+ done
+ obj_suffix="`echo $object | sed 's/^.*\././'`"
+ touch "$tmpdepfile"
+ ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@"
+ rm -f "$depfile"
+ cat < "$tmpdepfile" > "$depfile"
+ sed '1,2d' "$tmpdepfile" | tr ' ' '
+' | \
+## Some versions of the HPUX 10.20 sed can't process this invocation
+## correctly. Breaking it into two sed invocations is a workaround.
+ sed -e 's/^\\$//' -e '/^$/d' -e '/:$/d' | sed -e 's/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile" "$tmpdepfile".bak
+ ;;
+
+cpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout.
+ "$@" || exit $?
+
+ # Remove the call to Libtool.
+ if test "$libtool" = yes; then
+ while test $1 != '--mode=compile'; do
+ shift
+ done
+ shift
+ fi
+
+ # Remove `-o $object'.
+ IFS=" "
+ for arg
+ do
+ case $arg in
+ -o)
+ shift
+ ;;
+ $object)
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift # fnord
+ shift # $arg
+ ;;
+ esac
+ done
+
+ "$@" -E |
+ sed -n -e '/^# [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' \
+ -e '/^#line [0-9][0-9]* "\([^"]*\)".*/ s:: \1 \\:p' |
+ sed '$ s: \\$::' > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ cat < "$tmpdepfile" >> "$depfile"
+ sed < "$tmpdepfile" '/^$/d;s/^ //;s/ \\$//;s/$/ :/' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+msvisualcpp)
+ # Important note: in order to support this mode, a compiler *must*
+ # always write the preprocessed file to stdout, regardless of -o,
+ # because we must use -o when running libtool.
+ "$@" || exit $?
+ IFS=" "
+ for arg
+ do
+ case "$arg" in
+ "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI")
+ set fnord "$@"
+ shift
+ shift
+ ;;
+ *)
+ set fnord "$@" "$arg"
+ shift
+ shift
+ ;;
+ esac
+ done
+ "$@" -E |
+ sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile"
+ rm -f "$depfile"
+ echo "$object : \\" > "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile"
+ echo " " >> "$depfile"
+ . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile"
+ rm -f "$tmpdepfile"
+ ;;
+
+none)
+ exec "$@"
+ ;;
+
+*)
+ echo "Unknown depmode $depmode" 1>&2
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local Variables:
+# mode: shell-script
+# sh-indentation: 2
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/Build/source/utils/xindy/doc/Makefile.am b/Build/source/utils/xindy/doc/Makefile.am
new file mode 100644
index 00000000000..fe89369a952
--- /dev/null
+++ b/Build/source/utils/xindy/doc/Makefile.am
@@ -0,0 +1,62 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+SUBDIRS = style-tutorial
+
+docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+
+
+FILES = \
+ dataflow.gif \
+ faq-1.html \
+ faq-2.html \
+ faq-3.html \
+ faq-4.html \
+ faq.html \
+ index.gif \
+ makeindex4.pdf \
+ manual-1.html \
+ manual-2.html \
+ manual-3.html \
+ manual-4.html \
+ manual-5.html \
+ manual-6.html \
+ manual-7.html \
+ manual.html \
+ mappings.gif \
+ next.gif \
+ prev.gif \
+ README \
+ style-tutorial-1.html \
+ style-tutorial-2.html \
+ style-tutorial-3.html \
+ style-tutorial-4.html \
+ style-tutorial.html \
+ tex2xindy.pdf \
+ texindy.pdf \
+ toc.gif \
+ xindy.pdf
+
+EXTRA_DIST = $(FILES)
+
+doc_DATA = $(FILES)
+
+
diff --git a/Build/source/utils/xindy/doc/Makefile.in b/Build/source/utils/xindy/doc/Makefile.in
new file mode 100644
index 00000000000..dfb89873503
--- /dev/null
+++ b/Build/source/utils/xindy/doc/Makefile.in
@@ -0,0 +1,479 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = doc
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(docdir)"
+docDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(doc_DATA)
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = style-tutorial
+docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+FILES = \
+ dataflow.gif \
+ faq-1.html \
+ faq-2.html \
+ faq-3.html \
+ faq-4.html \
+ faq.html \
+ index.gif \
+ makeindex4.pdf \
+ manual-1.html \
+ manual-2.html \
+ manual-3.html \
+ manual-4.html \
+ manual-5.html \
+ manual-6.html \
+ manual-7.html \
+ manual.html \
+ mappings.gif \
+ next.gif \
+ prev.gif \
+ README \
+ style-tutorial-1.html \
+ style-tutorial-2.html \
+ style-tutorial-3.html \
+ style-tutorial-4.html \
+ style-tutorial.html \
+ tex2xindy.pdf \
+ texindy.pdf \
+ toc.gif \
+ xindy.pdf
+
+EXTRA_DIST = $(FILES)
+doc_DATA = $(FILES)
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign doc/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-docDATA: $(doc_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
+ @list='$(doc_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
+ $(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
+ done
+
+uninstall-docDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(doc_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(docdir)/$$f"; \
+ done
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(DATA)
+installdirs: installdirs-recursive
+installdirs-am:
+ for dir in "$(DESTDIR)$(docdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-docDATA
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-docDATA uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+ clean clean-generic clean-recursive ctags ctags-recursive \
+ distclean distclean-generic distclean-recursive distclean-tags \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-docDATA install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-docDATA uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/doc/README b/Build/source/utils/xindy/doc/README
new file mode 100644
index 00000000000..90440f93683
--- /dev/null
+++ b/Build/source/utils/xindy/doc/README
@@ -0,0 +1,14 @@
+$Id: README.distrib,v 1.3 2008/01/09 11:11:46 jschrod Exp $
+------------------------------------------------------------
+
+This directory contains documentation of `xindy'.
+
+Manual pages for the commands are created during installation and are
+placed in appropriate man directories.
+PDF versions of the manual pages have been added here for your convenience.
+
+The subdirectory ./style-tutorial/ contains the examples that are used
+in the xindy style tutorial.
+
+FAQ and style tutorial are out of date. (Updates are welcome, of course.)
+You find more documentation at the xindy Web Site, at http://www.xindy.org/.
diff --git a/Build/source/utils/xindy/doc/dataflow.gif b/Build/source/utils/xindy/doc/dataflow.gif
new file mode 100644
index 00000000000..203b5521ba6
--- /dev/null
+++ b/Build/source/utils/xindy/doc/dataflow.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/faq-1.html b/Build/source/utils/xindy/doc/faq-1.html
new file mode 100644
index 00000000000..31fcfba7abd
--- /dev/null
+++ b/Build/source/utils/xindy/doc/faq-1.html
@@ -0,0 +1,169 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY FAQ: General Questions</TITLE>
+ <LINK HREF="faq-2.html" REL=next>
+
+ <LINK HREF="faq.html#toc1" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="faq-2.html">Next</A>
+Previous
+<A HREF="faq.html#toc1">Contents</A>
+<HR>
+<H2><A NAME="s1">1. General Questions</A></H2>
+
+<H2><A NAME="ss1.1">1.1 Why a completely new indexing tool? <CODE>makeindex</CODE> works fine!</A>
+</H2>
+
+<P>
+<P>With the <EM>International MakeIndex</EM> project, Joachim Schrod and
+Gabor Herr have shown that adding extensions to
+<CODE>makeindex</CODE> is a difficult job. Thus we have decided to develop a
+new indexing tool from scratch. The new tool is based on a new
+requirements analysis and offers very interesting features for
+processing very complex indexing schemes. The resulting index model is
+described in:
+<P>
+<OL>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Proceedings of the EuroTeX'98, St. Malo, France, March 1998
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Technical Report No. 11/1997, Computer Science Department, Darmstadt
+University of Technology, 1997. Also accessible from the xindy
+homepage.
+</LI>
+<LI> Roger Kehr, xindy <EM>Ein Flexibles Indexierungssystem</EM>,
+Studienarbeit FB Informatik, TH-Darmstadt, November 1995.
+</LI>
+<LI> Joachim Schrod, <EM>An International Version of MakeIndex</EM>,
+Cahiers GUTenberg, 10, p81-90, 1991
+</LI>
+<LI> Joachim Schrod and Gabor Herr, <EM>MakeIndex Version 3.0</EM>,
+Technical University of Darmstadt, 1991
+</LI>
+</OL>
+<P>
+<P>
+<P>
+<H2><A NAME="ss1.2">1.2 I'm an old <CODE>makeindex</CODE> wizard. What does <SF>xindy</SF> offer that <CODE>makeindex</CODE> doesn't?</A>
+</H2>
+
+<P>
+<P>Here are the most important differences between <SF>xindy</SF> and
+<CODE>makeindex</CODE>:
+<P>
+<P>
+<DL>
+<P>
+<DT><B>Internationalization</B><DD><P><SF>xindy</SF> can be configured to process
+indexes for many languages with different letter sets and different
+sorting rules. For example, many roman languages such as Italian,
+French, Portuguese or Spanish contain accentuated letters such as
+&Agrave;, &Aacute;, &ntilde;. Other languages from northern Europe
+have letters like &Auml;, &Oslash;, &aelig; or &szlig; which often
+can't be processed by many index processors not talking about sorting
+them correctly into an index. The <SF>xindy</SF>-system can be configured
+to process these alphabets by defining <EM>sort</EM> and
+<EM>merge-rules</EM> that allow expressing of language specific rules.
+One example of such a rule would be
+<P>
+<PRE>
+(sort-rule &quot;ä&quot; &quot;ae&quot;)
+</PRE>
+<P>defining that a word containing the umlaut-a will be sorted as if it
+contained the letters <CODE>ae</CODE> instead. This is one form of how the
+umlaut-a is sorted into german indexes. With an appropriate set of
+rules one can express the complete rules of a specific language.
+<P>
+<DT><B>Location classes.</B><DD><P><CODE>makeindex</CODE> is able to recognize and
+process arabic numbers, roman numerals and letter-based alphabets as
+specifiers for the indexed location. Simple composite structures of
+these are also possible to process. This implicit recognition scheme
+has completely been dropped in favour of a well-defined and very
+powerful declaration scheme called <EM>location-classes</EM>. Thus,
+<SF>xindy</SF> initally does not know any location-class by default and
+must be instructed to accept certain location-classes. A typical
+declaration might look like:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class "page-numbers" ("arabic-numbers"))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This declares that page numbers consist of the enumeration of the
+arabic numbers. The arabic numbers are referred to as <EM>alphabets</EM>.
+Users may use the pre-defined alphabets arabic numbers, roman
+numerals, etc. or define new alphabets as needed. See the tutorial
+that comes with this distribution for some examples.
+<P>
+<DT><B>The concept of attributes.</B><DD><P>With <CODE>makeindex</CODE> one can assign a
+markup to each index entry using the encapsulators (usually following
+the vertical bar sign in an index entry command). For example in the
+specification
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\index{xindy|bold}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>the encapsulator is <CODE>bold</CODE> which encapsulates the page-numbers in
+the markup-phase. An additional TeX-macro must be supplied to assign
+some markup with the page number. This concept has completely been
+dropped in <SF>xindy</SF> in favour of a more powerful scheme called
+<EM>attributes</EM>. Attributes can be used to (i) define several grouping
+and ordering rules with locations and we can define (ii) markup-tags
+for the document preparation system.
+<P>The result of this design decision is that the user is required to
+define the attributes in the style file and not in the document
+preparation system. The reasons lie in the more powerful markup scheme
+of <SF>xindy</SF> which can't be specified in the document processor anymore.
+In fact, the <CODE>makeindex</CODE>-like markup is only a small subset of
+<SF>xindy</SF>s features.
+<P>
+<DT><B>Cross references.</B><DD><P>Cross-references were implemented in
+<CODE>makeindex</CODE> with the encapsulation mechanism, which only served for
+markup purposes. This has been completely separated in <SF>xindy</SF>.
+Here we distinguish cleanly between attributes and cross references.
+This makes it possible to implement <EM>checked</EM> cross references,
+i.e. cross-refernces that can be checked if they point to an existing
+index entry instead of somewhere ``behind-the-moon''.
+<P>
+<DT><B>Less command-line options.</B><DD><P><SF>xindy</SF> has dropped the usage of
+command-line options in favour of a well-defined indexstyle
+description language. Thus, options that could be activated at the
+command-line level of <CODE>makeindex</CODE> must now be specified in the
+indexstyle file. This sounds more restrictive than it is, because the
+indexstyle files can be composed from several modules which makes it
+possible to write style files in just a few lines of code.
+<P>
+<DT><B>Raw index parser.</B><DD><P>The parser built into <CODE>makeindex</CODE> has
+completely been separated from the core <SF>xindy</SF> system. <SF>xindy</SF>
+understands a well-defined specification language for the raw index
+that is completely different from <CODE>makeindex</CODE>, but in our opinion
+more maintainable than the <CODE>makeindex</CODE> format. This requires a
+separate filter that transforms arbitrary indexes to the <SF>xindy</SF>
+format. An example filter is the program <CODE>tex2xindy</CODE> that comes
+with this distribution.
+<P>
+</DL>
+<P>Summed up, some of the implicit assumptions made by <CODE>makeindex</CODE>
+have been replaced and now burdend to the user. The reason is that
+many of <CODE>makeindex</CODE>'s assumptions were no longer valid in
+multi-language environments or documents with arbitrary location
+structures. This also characterizes <SF>xindy</SF> more as a framework
+instead of a end-user-tailored product. One should notice that writing
+an appropriate index style is an essential part of the document
+preparation process and should be tailored to each document anew.
+<P>
+<P>
+<P>
+<P>
+<HR>
+<A HREF="faq-2.html">Next</A>
+Previous
+<A HREF="faq.html#toc1">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/faq-2.html b/Build/source/utils/xindy/doc/faq-2.html
new file mode 100644
index 00000000000..00be36138dc
--- /dev/null
+++ b/Build/source/utils/xindy/doc/faq-2.html
@@ -0,0 +1,95 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY FAQ: xindy Usage</TITLE>
+ <LINK HREF="faq-3.html" REL=next>
+ <LINK HREF="faq-1.html" REL=previous>
+ <LINK HREF="faq.html#toc2" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="faq-3.html">Next</A>
+<A HREF="faq-1.html">Previous</A>
+<A HREF="faq.html#toc2">Contents</A>
+<HR>
+<H2><A NAME="s2">2. <SF>xindy</SF> Usage</A></H2>
+
+<H2><A NAME="ss2.1">2.1 I don't want to write style files. How can I proceed?</A>
+</H2>
+
+<P>
+<P>You can use the wrapper program <CODE>makeindex4</CODE>. It tries to do it's
+very best to make <SF>xindy</SF> behave as <CODE>makeindex</CODE> does. But if you
+ever need to use some of the features of <SF>xindy</SF> you should learn
+how to write an index style. Its easy!
+<P>
+<P>
+<P>
+<H2><A NAME="ss2.2">2.2 How do I use <CODE>makeindex4</CODE>?</A>
+</H2>
+
+<P>
+<P>Process your document as usual. Then run <CODE>makeindex4</CODE> on the index
+file. It produces an index that should equal the one you would get
+with an ordinary <CODE>makeindex</CODE> run. As far as you are satisfied with
+the default behaviour of <CODE>makeindex</CODE>, <CODE>makeindex4</CODE> will produce
+comparable results.
+<P>Some of the command-line options of <CODE>makeindex</CODE> are accepted by
+<CODE>makeindex4</CODE>, others aren't. This may change in future releases,
+but we recommend using plain <SF>xindy</SF> after a phase of
+investigation, since one cannot use all of its features with
+<CODE>makeindex4</CODE>. You will be informed about unsupported command-line
+arguments when running <CODE>makeindex4</CODE>.
+<P>If you have written special style files for <CODE>makeindex</CODE> they will
+no longer work with <CODE>makeindex4</CODE>. Go ahead and write a new style
+file for <SF>xindy</SF>.
+<P>
+<P>
+<P>
+<H2><A NAME="ss2.3">2.3 How works <CODE>makeindex4</CODE>?</A>
+</H2>
+
+<P>
+<P>This job is now done automatically by <CODE>makeindex4</CODE>. It calls
+<CODE>tex2xindy</CODE> to transform the raw-index into the format suitable for
+<SF>xindy</SF>. <CODE>tex2xindy</CODE> emits some information about the attributes
+(aka. encapsulators in <CODE>makeindex</CODE>) and the usage of
+cross-references into a file, which has the extension `<CODE>.sta</CODE>'. The
+<CODE>makeindex4</CODE> program, written in <CODE>perl</CODE>, parses this
+statistics-file and generates the above presented indexstyle commands
+for you automatically including the required declaration of all
+attributes in the whole index and their markup.
+<P>Another problem is the automatic detection of cross-references. As
+noted above, <CODE>makeindex</CODE> handles cross-references with its
+encapsulation mechanism, a scheme which has been dropped in <SF>xindy</SF>
+and replaced by a more powerful mechanism. To implement a simple
+plug-in mechanism we have extended the syntax of the <CODE>tex2xindy</CODE>
+filter to identify encapsulators of the form
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\indexentry{...|encap{...}}{...}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>as a cross-reference, whereas encapsulators of the form
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\indexentry{...|encap}{...}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>are treated as ordinary attributes. This is standard practice
+defining cross-references in <CODE>makeindex</CODE>. Thus, <CODE>tex2xindy</CODE>
+distinguishes these two forms of encapsulators as opposed to
+<CODE>makeindex</CODE> and our plug-in <CODE>makeindex4</CODE> generates the
+appropriate definitions of the cross-reference classes as well.
+<P>
+<P>
+<P>
+<P>
+<HR>
+<A HREF="faq-3.html">Next</A>
+<A HREF="faq-1.html">Previous</A>
+<A HREF="faq.html#toc2">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/faq-3.html b/Build/source/utils/xindy/doc/faq-3.html
new file mode 100644
index 00000000000..12895e8cb29
--- /dev/null
+++ b/Build/source/utils/xindy/doc/faq-3.html
@@ -0,0 +1,83 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY FAQ: xindy and LaTeX</TITLE>
+ <LINK HREF="faq-4.html" REL=next>
+ <LINK HREF="faq-2.html" REL=previous>
+ <LINK HREF="faq.html#toc3" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="faq-4.html">Next</A>
+<A HREF="faq-2.html">Previous</A>
+<A HREF="faq.html#toc3">Contents</A>
+<HR>
+<H2><A NAME="s3">3. <SF>xindy</SF> and LaTeX</A></H2>
+
+<H2><A NAME="ss3.1">3.1 What is <CODE>tex2xindy</CODE>?</A>
+</H2>
+
+<P>
+<P><CODE>tex2xindy</CODE> is a filter that parses `<CODE>.idx</CODE>' or similar files
+and converts the <CODE>\indexentry</CODE> macros into a form readable by
+<SF>xindy</SF>.
+<P>The parser of <CODE>makeindex</CODE> can be configured to recognize different
+quoting characters, etc. (see the man-page for <CODE>makeindex</CODE>, section
+<EM>input style specifiers</EM> for further details). We have tried to
+extract the parser from <CODE>makeindex</CODE> but due to several probems we
+have finally rewritten the parser using <CODE>lex</CODE>. Scanners written
+with <CODE>lex</CODE> are usually fixed to a specific character set used in
+the regular expressions. Our parser, <CODE>tex2xindy</CODE> is therefore not
+configurable. If one uses a different configuration of the
+<CODE>makeindex</CODE> input style specifiers, one can change the source
+(<CODE>tex2xindy.l</CODE>) to generate a completely new parser. From our
+personal experience we have rarely used more than two different
+parsers in practice so we have written <CODE>tex2xindy</CODE> in a form that
+is easily maintainable. The input specifiers are stored symbolically
+in the source. The definiton section looks like this:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+KEYWORD \\indexentry
+ENCAP \|
+ACTUAL @
+ESCAPE \\
+LEVEL !
+QUOTE \"
+ROPEN \(
+RCLOSE \)
+ARGOPEN \{
+ARGCLOSE \}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>These definitions are essentially the input style specifiers as can be
+found in the man-page of <CODE>makeindex</CODE>. Changing this section
+according to your needs and recompiling <CODE>tex2xindy</CODE> should be an
+easy task. Maybe we will include more pre-defined parsers in future
+releases if necessary.
+<P>
+<P>
+<P>
+<H2><A NAME="ss3.2">3.2 What LaTeX-package should I use in conjunction with xindy?</A>
+</H2>
+
+<P>
+<P>We strongly recommend using the LaTeX2e-package <CODE>index</CODE> written
+by David M. Jones, which is available at CTAN. It supports multiple
+indexes as well as several shortcuts to easily index terms in a
+document. Multiple indexes support the generation of several indexes
+for one document. For instance, one can make an author or command
+index in addition to a global index.
+<P>Another option is to use the <CODE>xindy.sty</CODE> from Andreas Schlechte
+that comes with the <SF>xindy</SF> distribution. Take a look at the
+<CODE>contrib</CODE> directory that should contain a version.
+<P>
+<P>
+<P>
+<P>
+<HR>
+<A HREF="faq-4.html">Next</A>
+<A HREF="faq-2.html">Previous</A>
+<A HREF="faq.html#toc3">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/faq-4.html b/Build/source/utils/xindy/doc/faq-4.html
new file mode 100644
index 00000000000..81052562f1d
--- /dev/null
+++ b/Build/source/utils/xindy/doc/faq-4.html
@@ -0,0 +1,668 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY FAQ: Style Files</TITLE>
+ <LINK HREF="faq-3.html" REL=previous>
+ <LINK HREF="faq.html#toc4" REL=contents>
+</HEAD>
+<BODY>
+Next
+<A HREF="faq-3.html">Previous</A>
+<A HREF="faq.html#toc4">Contents</A>
+<HR>
+<H2><A NAME="s4">4. Style Files</A></H2>
+
+<H2><A NAME="ss4.1">4.1 Eventually, I decided to write my first index style. How can I start?</A>
+</H2>
+
+<P>
+<P>Congratulations! You have made a good decision, indeed.
+<P>For a first impression, how a style file can be written from scratch
+reference the <EM>tutorial</EM> that comes with this distribution. It is
+written as a guided step-by-step practicing exercise and you can learn
+the basic concepts quite easily.
+<P>Afterwards, the best starting point is to make a copy of the template
+file that contains all the necessary commands that are needed to make
+a <CODE>makeindex</CODE>-like index. You can find it in the subdirectory
+<CODE>markup/tex</CODE> of the module library. Starting from this template
+you can remove or add commands as necessary.
+<P>Additionally, consult the library of predefined <EM>index style
+modules</EM> that comes with this distribution. Solutions for most of the
+typical problems can be found there, such as a module for doing
+case-insensitive sorting rules, or a typical TeX-like markup. Most
+of the time is is enough to include some of these modules and add a
+few additional commands.
+<P>Maybe some of the examples coming with the <EM>test-suite</EM> are good
+examples of how unusual index style files can be written.
+<P>Thus, there are many ways to learn writing an index style file. But it
+is very easy and after some experience you can process indexes your
+friends will be jealous of.
+<P>
+<P>
+<H2><A NAME="ss4.2">4.2 How to write my first index style?</A>
+</H2>
+
+<P>
+<P>Copy the file <CODE>tex/makeidx.xdy</CODE> from the library to your
+local directory. It is documented in in a way that should make it easy
+to fill in new commands or remove or modify others.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.3">4.3 How works the actual key feature of <CODE>makeindex</CODE> with <SF>xindy</SF>?</A>
+</H2>
+
+<P>
+<P>The treatment of the actual key (usually denoted with <CODE>@</CODE>, the
+at-sign) has changed with <SF>xindy</SF>. Specifying index entries with a
+specific markup can be done in <CODE>makeindex</CODE> with the actual key. The
+<CODE>makeindex-3</CODE> system and <SF>xindy</SF> offer the <EM>merge-</EM> and
+<EM>sort-rules</EM> to transform a key into different representations,
+limiting the need to specify an actual key. For example they support a
+style of writing
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\index{\bf{VIP}}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>which can be transformed with a rule like
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "\bf{\(.*\)}" "\1" :again :bregexp)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>which removes the macro definition for merging and sorting keywords,
+but keeping the original definition for markup purposes. Therefore we
+don't need any actual keys for all keywords written in boldface.
+<P>The <CODE>makeindex</CODE> behaviour, that the two keywords
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\index{VIP}
+\index{VIP@\bf{VIP}}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>are seen as two distinct index entries, can be simulated using the
+following definition:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "\bf{\(.*\)}" "\1~e" :again :bregexp)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This rule tells <SF>xindy</SF> to remove the boldface macro for merging
+and sorting purposes but defines the replacement to include the
+special character <CODE>~e</CODE>, which is the last character in the
+alphabet (ISO-Latin in our case). This makes <SF>xindy</SF> treat them as
+different keywords and positions the boldface keyword right behind the
+one without any markup. Thus we receive the following mapping:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+Keyword: Merged and sorted as: Appears in the index as:
+VIP VIP VIP
+\bf{VIP} VIP~e \bf{VIP}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>With this new style of writing keywords and defining their markup, the
+need to explicitly specifying the print key (aka. actual key) has
+convinced us to remove the <CODE>makeindex</CODE> way of defining keywords.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.4">4.4 I want to process an index for my native language. What must I do?</A>
+</H2>
+
+<P>
+<P>What makes <CODE>makeindex</CODE> hardly usable in non-English speaking
+countries is its lack of support of language specific alphabets and
+sort orderings. For example, many roman languages such as Italian,
+French, Portuguese or Spanish contain accented letters such as
+&Agrave;, &Aacute;, &ntilde;. Other languages from northern Europe
+have letters like &Auml;, &Oslash;, &aelig; or &szlig; which often
+can't even be processed by many index processors let alone sorting
+them correctly into an index.
+<P>Two problems must be solved when processing indexes with a new
+languages:
+<P>
+<OL>
+<LI> The <EM>sort ordering</EM> of the indexed terms must be specified
+in an appropriate manner. This problem can be solved using the
+so-called <EM>keyword mappings</EM>.
+</LI>
+<LI> The <EM>letter groups</EM> that partition the indexed terms into
+separate sections must be specified.</LI>
+</OL>
+<P>The <SF>xindy</SF> system can be configured to process these alphabets by
+defining <EM>sort</EM> and <EM>merge rules</EM> that allow expressing language
+specific rules.
+<P>The keyword mappings are as follows: The <EM>merge key</EM> is generated
+from the <EM>main key</EM> with the so called <EM>merge mapping</EM>. The
+merge mapping can be specified with the command <CODE>merge-rule</CODE>. The
+<EM>sort key</EM> is derived from the merge key using the <EM>sort
+mapping</EM> specified with the <CODE>sort-rule</CODE> command. The following
+scheme shows this mapping process:
+<P>
+<FIGURE>
+<EPS FILE="mappings.eps">
+<IMG SRC="mappings.gif">
+</FIGURE>
+<P>
+<P>The index style commands accomplishing this task are
+<CODE>sort-rule</CODE> and <CODE>merge-rule</CODE>. One example of such a rule would
+be
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule "ä" "ae")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>defining that a word containing the umlaut-a will be sorted as if it
+contained the letters <CODE>ae</CODE> instead. This is one form of how the
+umlaut-a (ä) is sorted into german indexes. With an appropriate set of
+rules on can express the complete rules of a specific language.
+<P>An example of how an appropriate mapping for some of the Roman
+languages could look like is:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule "à" "a")
+(sort-rule "á" "a")
+(sort-rule "ã" "a")
+(sort-rule "è" "e")
+(sort-rule "é" "e")
+(sort-rule "ç" "c")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This makes the accented letters be sorted as their unaccented
+counterparts, yielding the desired sort ordering.
+<P>Sometimes it is necessary to specify keyword mappings that tell the
+system to put something <EM>behind</EM> something else. For instance, we'd
+like to map the character <EM>ö</EM> behind the letter <EM>o</EM>. No problem
+if you use the special characters <CODE>~b</CODE> and <CODE>~e</CODE> which
+are called the <EM>beginning</EM> and <EM>ending</EM> characters. The first
+letter lexicographically precedes all other letters whereas the latter
+one comes after all others. Our mapping problem can now be specified
+as follows.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule "ö" "o~e")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Now the <EM>ö</EM> is directly positioned after the <EM>o</EM> but before
+<EM>p</EM>.
+<P>
+<P>See the manual for a detailed description of this feature.
+Also be informed that the keyword mappings can be specified with
+regular expressions. Rules of the form
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "[-$()]" "")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>are possible. This on removes all letters of the defined letter class.
+Regular expression substitutions are possible as well. Refer to the
+manual for an exact description.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.5">4.5 In my index the capitalized words appear after the lowercase words. Why?</A>
+</H2>
+
+<P>
+<P>The default sort ordering sorts letters according to their ordinal
+number in the ISO Latin alphabet. As a consequence the lowercase
+letters appear before the uppercase letters. To sort them
+case-insensitively use the command
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(require "lang/latin/caseisrt.xdy")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This module defines the appropriate sort rules for the letters `A-Z'
+for latin-based alphabets. If your language has more letters simply
+add the missing ones into your style file. Have a look at the module
+to see how to the sort rules are defined.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.6">4.6 In my index there are no letter groups, yet!</A>
+</H2>
+
+<P>
+<P>Letter groups for latin based alphabets can be defined with the command
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(require "lang/latin/letgroup.xdy")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>If your language needs additional letter groups you can insert them
+into the previously defined letter group with inserting definitions of
+the following form:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-letter-group "ly" :after "l" :before "m")
+(define-letter-group "ny" :after "n" :before "o")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This adds two more letter groups to the latin alphabet. Group <EM>ly</EM>
+is inserted between <EM>l</EM> and <EM>m</EM>, and <EM>ny</EM> is inserted between
+<EM>n</EM> and <EM>o</EM>. This is how two additional letters of the Hungarian
+alphabet can be inserted.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.7">4.7 How can I get rid of any formatting information in the keyword?</A>
+</H2>
+
+<P>
+<P>Assume you have index entries containing arbitrary formatting
+information. For example you write your index entries in TeX in the
+following form:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\index{\bf{In boldface please}}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>To avoid specifying for each index entry the print key separately as
+can be done with the following command
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\index{In boldface please@\bf{In boldface please}}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>you can instead define a rule doing this task for you:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "\\bf *{(.*)}" "\1" :eregexp :again)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This extended regular expression matches all strings that are
+surrounded by this formatting command and in the <EM>merge phase</EM> the
+formatting command is simply stripped off. Thus, you don't need to
+write an explicit print key anymore.
+<P>If for some reason the same word appears more than once in the index,
+each time having another markup tag as in the following example
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+index
+{\tt index}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>you must be warned that a rule like
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "{\\tt *(.*)}" "\1" :eregexp :again)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>is probably not correct. In this case the above strings are both
+mapped into the string <CODE>index</CODE> thus joining their location
+references into one index entry. This happens because the result of
+the merge mapping is used as the equality citerium which views both
+keywords as equal. To avoid this you should specify instead
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule "{\\tt *(.*)}" "\1~e" :eregexp :again)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>With the additional meta character <CODE>~e</CODE> the substitution of the
+second key word is placed <EM>after</EM> the first one making them
+different index entries. If the second keyword should appear first,
+use <CODE>~b</CODE> instead.
+<P>
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.8">4.8 In my index the word <EM>-foo</EM> appears before <EM>bar</EM>. What must I do?</A>
+</H2>
+
+<P>
+<P>Especially for hierarchical indexes sometimes the result is not as
+expected due to special characters appearing in the keyword. In the
+following example the word `card' should appear before `-eyed' since
+the hyphen should not count as an ordinary character by means of
+sorting.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ green
+ -eyed 12
+ card 15
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This is especially problematic if the list of words on the second
+level is very long. To make the hyphen be simply ignored during the
+sorting process you should specify the following command in the index
+style:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ (sort-rule "-" "")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This makes `-eyed' be sorted as `eyed' thus making it appear
+<EM>after</EM> `card' as desired.
+<P>
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.9">4.9 I want to use letter ordering instead of word ordering in my index.</A>
+</H2>
+
+<P>
+<P>According to the <EM>Chicago Manual of Style</EM> there exist two
+different schemes of sorting word lists. In <EM>word ordering</EM>
+a blank precedes any letter in the alphabet, whereas in <EM>letter
+ordering</EM> it does not count at all. The following example borrowed
+from the <CODE>makeindex</CODE> man-page illustrates the difference:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ Word Order: Letter Order:
+ sea lion seal
+ seal sea lion
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>By default, <SF>xindy</SF> uses word ordering. To use letter ordering
+include the appropriate module with the following command:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(require "ord/letorder.xdy")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>It actually defines the following command:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule " " "")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This simply removes all blanks from the keyword resulting in the
+desired behaviour.
+<P>
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.10">4.10 My document does not have page numbers, but a different scheme. What must I do?</A>
+</H2>
+
+<P>
+<P>The ability to deal with user-definable location structures is one of
+the most important new features of <SF>xindy</SF>. Many documents have a
+document structure that is not based on page numbers. Typical examples
+are manuals or appendices that come with a
+<EM>chapter/page-per-chapter</EM> numbering scheme, URLs, Bible verses,
+etc. One can even imagine the Greek alphabet as possibly appearing in
+a location reference. In our analysis we have found many interesting
+examples of location references that made us to develop the concept of
+<EM>location classes</EM>.
+<P>A location class is defined by a sequence of alphabets. An alphabet
+can be the set of arabic numbers (0, 1, 2, ...) or the roman numerals
+(i, ii, iii, ...). These are built-in alphabets in <SF>xindy</SF>.
+Addtionally, one can define more alphabets in the index style with a
+command like
+<P>
+<PRE>
+ (define-alphabet "weekdays"
+ ("mon" "tue" "wed" "thu" "fri" "sat" "sun"))
+</PRE>
+<P>Based on alphabets one can now compose a location class as follows:
+<P>
+<PRE>
+ (define-location-class "weekday-hours"
+ ("weekday" :sep ":" "arabic-numbers"))
+</PRE>
+<P>This class description indicates that all location refernces matching
+this template are viewed as correct instances of this class. Here
+<CODE>:sep</CODE> makes the dot serving as a <EM>separation string</EM> separation
+the alphabets from each other. Example instances of this class are:
+<P>
+<PRE>
+mon:23, thu:45, sun:17
+</PRE>
+<P>For more detailed information consult the description of the command
+<CODE>define-location-class</CODE> in the reference manual.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.11">4.11 I don't want to have ranges in my index. What can I do?</A>
+</H2>
+
+<P>
+<P>By default, <SF>xindy</SF> joins three successive location references into a
+<EM>range</EM>. Ranges are used as an abbrevation for a long sequence of
+location references. For exmaple the sequence
+<P>
+<PRE>
+12, 13, 14, 15, 16
+</PRE>
+<P>would be shorter represented as
+<P>
+<PRE>
+12-16
+</PRE>
+<P>If you don't want to have ranges, simply define your location class in
+the form
+<P>
+<PRE>
+ (define-location-class ... :min-range-length none)
+</PRE>
+<P>The argument <CODE>:min-range-length none</CODE> avoids forming of ranges.
+Arbitrary numbers instead of <CODE>none</CODE> define the minimum length of a
+sequence of location references that are needed to form a range.
+<SF>xindy</SF>s default value is&nbsp;2.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.12">4.12 I want to markup ranges of different length differently. How do I accomplish this?</A>
+</H2>
+
+<P>
+<P>A common way of tagging ranges is as follows: a range of length 1 is
+printed with the starting page number and the suffix `f.', those of
+length 2 with suffix `ff.', and all others in the form `<EM>X--Y</EM>'.
+<P>Assume we want to do this for the location class <EM>pagenums</EM> we can
+specify the markup as follows:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-range :class "pagenums" :close "f." :length 1 :ignore-end)
+(markup-range :class "pagenums" :close "ff." :length 2 :ignore-end)
+(markup-range :class "pagenums" :sep "--")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The first command indicates that a range <EM>(X,Y)</EM> of length 1 should
+be printed in the form <EM>Xf.</EM>, a range of length 2 as <EM>Xff.</EM> and
+all others in the form <EM>X--Y</EM>. The switch <CODE>:ignore-end</CODE> causes
+the end of range location reference Y to be suppressed in the
+resulting output.
+<P>
+<P>
+<H2><A NAME="ss4.13">4.13 I need to suppress some of the markup tags. How can I do this?</A>
+</H2>
+
+<P>Sometimes it is necessary to hide some of the parts of the index. If
+you have a text formatter that allows comments or macros that possibly
+expand to nothing, just define appropriate markup that makes things
+invisible to the formatter. For example, with TeX you can define a
+macro like this
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\def\ignore#1{}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>If you additionally define markup like this
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-index :open "\ignore{" :close "}")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>you can throw away the complete index if you like, which would be a
+real pity!
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.14">4.14 Whats it all about those cross references?</A>
+</H2>
+
+<P>
+<P>Cross references are references pointing to an item in the index
+itself. Typical examples are:
+<P>
+<BLOCKQUOTE><CODE>
+foo-bar <EM>see</EM> baz
+</CODE></BLOCKQUOTE>
+<P>With <CODE>makeindex</CODE> cross references could be specified with the
+encapsulation mechanism. This has completely been removed in <SF>xindy</SF>
+and we have made cross references real first-class objects.
+<P>In <SF>xindy</SF> one can declare different cross reference classes, whose
+purpose is (a) to make all instances of a certain class appear next to
+each other, and (b) to specify appropriate markup with them.
+<P>@begin-comment
+One very interesting feature is the ability to <EM>check</EM> the validity
+of cross-references.
+@end-comment
+<P><CODE>tex2xindy</CODE> recognises all index entries of the form
+<P>
+<PRE>
+ \index{...|\macro{where}}
+</PRE>
+<P>as cross references. Here <CODE>macro</CODE> stands for an arbitrary macro
+name and <CODE>where</CODE> is interpreted as the target keyword of the cross
+references.
+<P>If you want to use these cross references with <SF>xindy</SF>; add the
+following line to your style file.
+<P>
+<PRE>
+ (define-crossref-class "macro")
+</PRE>
+<P>Additionally, you can assign specific markup to cross references using
+the <CODE>markup-crossref</CODE>-commands.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.15">4.15 The keyword mappings don't work as expected!</A>
+</H2>
+
+<P>
+<P>Sometimes the keyword mappings don't work as expected. Especially in
+cases with several regular expressions one might get confused about
+what rule matches exactly when. We have incorporated a detailed
+logging mechanism that lets one step by step follow the rules that
+accomplish the keyword mapping.
+<P>When running <SF>xindy</SF> you can turn on this feature with the command
+line option `<CODE>-L</CODE>'. This option followed by one of the numbers 1,
+2, or 3 turns on the appropriate debugging level. Turning on level 2
+or 3 and specifying a log-file with the command line option `<CODE>-l</CODE>'
+a trace of the mappings is recorded in the log-file. A sample output
+looks like the following:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+Mappings: (add (merge-rule :eregexp `^\\bf{(.*)}' `\1' :again)).
+Mappings: (add (merge-rule :eregexp `^\\"([AEOUaeou])' `\1')).
+ ...
+Mappings: (compare `\"A\"a' :eregexp `^\\bf{(.*)}')
+Mappings: (compare `\"A\"a' :eregexp `^\\"([AEOUaeou])') match!
+Mappings: (compare `\"a' :eregexp `^\\bf{(.*)}')
+Mappings: (compare `\"a' :eregexp `^\\"([AEOUaeou])') match!
+Mappings: (merge-mapping `\"A\"a') -> `Aa'.
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This trace shows that initially two regular expression mappings have
+been added to the rule set. The second section shows how the keyword
+`<CODE>\"A\"a</CODE>' is compared to these rules and substitutions are
+applied as matches are found. In the last line the result of the
+keyword mapping is reported.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.16">4.16 I'm totally confused by the markup scheme!</A>
+</H2>
+
+<P>
+<P>A very important feature is the ability to <EM>trace</EM> all markup tags
+<SF>xindy</SF> emits in the markup phase. Simply use the command line
+switch <CODE>-t</CODE> or insert the command
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-trace :on)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>into the index style. This informs <SF>xindy</SF> to emit additional
+pseudo markup that can be used to understand and debug the
+markup phase. An example output might look like the following:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+&lt;INDEX:OPEN>
+ &lt;LETTER-GROUP-LIST:OPEN>
+ &lt;LETTER-GROUP:OPEN ["a"]>
+ &lt;INDEXENTRY-LIST:OPEN [0]>
+ &lt;INDEXENTRY:OPEN [0]>
+ &lt;KEYWORD-LIST:OPEN [0]>
+ &lt;KEYWORD:OPEN [0]>
+ ...
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The symbolic tags directly lead one to the command that is responsible
+for the definition of that markup tag. For example, the tag
+<CODE>LETTER-GROUP-LIST:OPEN</CODE> indicates that the command
+<CODE>markup-letter-group-list</CODE> is responsible for replacing this
+symbolic tag by a real one.
+Give it a try if you find yourself confused by your own markup
+specification.
+<P>
+<P>
+<P>
+<H2><A NAME="ss4.17">4.17 What editor should I use when writing xindy style files?</A>
+</H2>
+
+<P>
+<P>Use <CODE>Emacs</CODE> or <CODE>XEmacs</CODE>. Turn on the Lisp-mode with
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+M-x lisp-mode
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>and you can properly indent commands using <CODE>M-q</CODE>. To enter this
+mode automatically add the following lines to the end of the style
+file:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+^L
+;; Local Variables:
+;; mode: lisp
+;; End:
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The <CODE>^L</CODE> (Control-L) can be entered with <CODE>C-q C-l</CODE>.
+<P>
+<P>
+<P>
+<HR>
+Next
+<A HREF="faq-3.html">Previous</A>
+<A HREF="faq.html#toc4">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/faq.html b/Build/source/utils/xindy/doc/faq.html
new file mode 100644
index 00000000000..d049b766693
--- /dev/null
+++ b/Build/source/utils/xindy/doc/faq.html
@@ -0,0 +1,90 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY FAQ</TITLE>
+ <LINK HREF="faq-1.html" REL=next>
+
+
+</HEAD>
+<BODY>
+<A HREF="faq-1.html">Next</A>
+Previous
+Contents
+<HR>
+<H1>XINDY FAQ</H1>
+
+<H2>Or: <SF>xindy</SF> by Topic</H2>
+<H2>Roger Kehr</H2>
+<H3>Computer Science Department, Technical University of Darmstadt</H3>
+ and
+<H2>Joachim Schrod</H2>
+<H3>Joachim Schrod Net &amp; Publication Consultance GmbH</H3>
+$Revision: 1.2 $, $Date: 2004/05/24 21:43:16 $, for xindy version 2.2
+<P><HR>
+<EM> The <SF>xindy</SF> FAQ presents answers to questions that are not
+adequately covered in other parts of the documentation, or are hard to
+find. The FAQ has been constructed from the <EM><SF>xindy</SF> by Topic</EM>
+manual. The most up-to-date version of this FAQ can be obtained from
+the <SF>xindy</SF> homepage at
+<A HREF="http://www.xindy.org/doc/faq.html">http://www.xindy.org/doc/faq.html</A>.
+<p>
+While the content of this document is still valid, it has not been
+updated in years and doesn't describe new developments. In particular,
+it doesn't mention the many languages that are supported by Thomas
+Henlich's <EM>make-rules</EM> system, and also doesn't know anything about
+the new commands that got introduced with the "LaTeX Companion
+Release". So, caveat. We don't want to throw out the document, though,
+since it still contains lots of useful information that's not
+available elsewhere.</EM>
+<HR>
+<P>
+<H2><A NAME="toc1">1.</A> <A HREF="faq-1.html">General Questions</A></H2>
+
+<UL>
+<LI><A HREF="faq-1.html#ss1.1">1.1 Why a completely new indexing tool? <CODE>makeindex</CODE> works fine!</A>
+<LI><A HREF="faq-1.html#ss1.2">1.2 I'm an old <CODE>makeindex</CODE> wizard. What does <SF>xindy</SF> offer that <CODE>makeindex</CODE> doesn't?</A>
+</UL>
+<P>
+<H2><A NAME="toc2">2.</A> <A HREF="faq-2.html"><SF>xindy</SF> Usage</A></H2>
+
+<UL>
+<LI><A HREF="faq-2.html#ss2.1">2.1 I don't want to write style files. How can I proceed?</A>
+<LI><A HREF="faq-2.html#ss2.2">2.2 How do I use <CODE>makeindex4</CODE>?</A>
+<LI><A HREF="faq-2.html#ss2.3">2.3 How works <CODE>makeindex4</CODE>?</A>
+</UL>
+<P>
+<H2><A NAME="toc3">3.</A> <A HREF="faq-3.html"><SF>xindy</SF> and LaTeX</A></H2>
+
+<UL>
+<LI><A HREF="faq-3.html#ss3.1">3.1 What is <CODE>tex2xindy</CODE>?</A>
+<LI><A HREF="faq-3.html#ss3.2">3.2 What LaTeX-package should I use in conjunction with xindy?</A>
+</UL>
+<P>
+<H2><A NAME="toc4">4.</A> <A HREF="faq-4.html">Style Files</A></H2>
+
+<UL>
+<LI><A HREF="faq-4.html#ss4.1">4.1 Eventually, I decided to write my first index style. How can I start?</A>
+<LI><A HREF="faq-4.html#ss4.2">4.2 How to write my first index style?</A>
+<LI><A HREF="faq-4.html#ss4.3">4.3 How works the actual key feature of <CODE>makeindex</CODE> with <SF>xindy</SF>?</A>
+<LI><A HREF="faq-4.html#ss4.4">4.4 I want to process an index for my native language. What must I do?</A>
+<LI><A HREF="faq-4.html#ss4.5">4.5 In my index the capitalized words appear after the lowercase words. Why?</A>
+<LI><A HREF="faq-4.html#ss4.6">4.6 In my index there are no letter groups, yet!</A>
+<LI><A HREF="faq-4.html#ss4.7">4.7 How can I get rid of any formatting information in the keyword?</A>
+<LI><A HREF="faq-4.html#ss4.8">4.8 In my index the word <EM>-foo</EM> appears before <EM>bar</EM>. What must I do?</A>
+<LI><A HREF="faq-4.html#ss4.9">4.9 I want to use letter ordering instead of word ordering in my index.</A>
+<LI><A HREF="faq-4.html#ss4.10">4.10 My document does not have page numbers, but a different scheme. What must I do?</A>
+<LI><A HREF="faq-4.html#ss4.11">4.11 I don't want to have ranges in my index. What can I do?</A>
+<LI><A HREF="faq-4.html#ss4.12">4.12 I want to markup ranges of different length differently. How do I accomplish this?</A>
+<LI><A HREF="faq-4.html#ss4.13">4.13 I need to suppress some of the markup tags. How can I do this?</A>
+<LI><A HREF="faq-4.html#ss4.14">4.14 Whats it all about those cross references?</A>
+<LI><A HREF="faq-4.html#ss4.15">4.15 The keyword mappings don't work as expected!</A>
+<LI><A HREF="faq-4.html#ss4.16">4.16 I'm totally confused by the markup scheme!</A>
+<LI><A HREF="faq-4.html#ss4.17">4.17 What editor should I use when writing xindy style files?</A>
+</UL>
+<HR>
+<A HREF="faq-1.html">Next</A>
+Previous
+Contents
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/index.gif b/Build/source/utils/xindy/doc/index.gif
new file mode 100644
index 00000000000..74f581c4b85
--- /dev/null
+++ b/Build/source/utils/xindy/doc/index.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/makeindex4.pdf b/Build/source/utils/xindy/doc/makeindex4.pdf
new file mode 100644
index 00000000000..ec03477a43d
--- /dev/null
+++ b/Build/source/utils/xindy/doc/makeindex4.pdf
Binary files differ
diff --git a/Build/source/utils/xindy/doc/manual-1.html b/Build/source/utils/xindy/doc/manual-1.html
new file mode 100644
index 00000000000..40fc1db4349
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-1.html
@@ -0,0 +1,42 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: About this Manual</TITLE>
+ <LINK HREF="manual-2.html" REL=next>
+
+ <LINK HREF="manual.html#toc1" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="manual-2.html">Next</A>
+Previous
+<A HREF="manual.html#toc1">Contents</A>
+<HR>
+<H2><A NAME="s1">1. About this Manual</A></H2>
+
+<P>We assume that the reader is already familiar with the task of an
+index processor and has basic experience in using a markup-based
+document preparation systems such as TeX/LaTeX [1, 2],
+the roff-family, or SGML-based systems (e.g. its instance HTML).
+<P>This document is structured as follows. The second part gives an
+overview on the index model that is used by our system and we define
+general concepts and terms. The third part contains a list of all
+index style commands, their syntax, and a description of their
+purpose. The reader should at least have read the first part of the
+manual to understand the basic terminology to be able to use the
+command reference. The fourth
+part describes the different processing phases the system runs
+through.
+<P>Invocation of <SF>xindy</SF> is not explained here. Please refer to the
+manual pages of the commands <CODE>xindy</CODE>, <CODE>texindy</CODE>,
+<CODE>makeindex4</CODE>, and to the 2nd edition of the LaTeX Companion. The
+<SF>xindy</SF> Web Site has more documentation, too.
+<P>
+<P>
+<P>
+<HR>
+<A HREF="manual-2.html">Next</A>
+Previous
+<A HREF="manual.html#toc1">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-2.html b/Build/source/utils/xindy/doc/manual-2.html
new file mode 100644
index 00000000000..c3a7a87be77
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-2.html
@@ -0,0 +1,302 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: How the Index Processor Works</TITLE>
+ <LINK HREF="manual-3.html" REL=next>
+ <LINK HREF="manual-1.html" REL=previous>
+ <LINK HREF="manual.html#toc2" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="manual-3.html">Next</A>
+<A HREF="manual-1.html">Previous</A>
+<A HREF="manual.html#toc2">Contents</A>
+<HR>
+<H2><A NAME="how-works"></A> <A NAME="s2">2. How the Index Processor Works</A></H2>
+
+<P>
+<P>
+<H2><A NAME="ss2.1">2.1 Data Flow</A>
+</H2>
+
+<P>Usually document preparation systems produce some form data that
+describe the <EM>index entries</EM> and the <EM>locations</EM> they point to.
+This data is called the <EM>raw index</EM> since it consists of raw data
+which contains structured information about the entries of the index.
+The raw index is fed into the index processor and is processed
+according to a specification called the <EM>index style</EM>. This is a
+user-definable description how the index is to be processed, what
+sort rules for the keywords should be used, which kind of locations
+may appear, and finally, what tags should be emitted when writing the
+index into the output file. The result is sometimes fed back into the
+document preparation system, as it is in the case of TeX, or used
+otherwise. The following figure illustrates this embedding into the
+document preparation process.
+<P>
+<FIGURE>
+<EPS FILE="dataflow.eps">
+<IMG SRC="dataflow.gif">
+</FIGURE>
+<P>The <SF>xindy</SF> system is oriented on book-like indexes in a form that
+is described later in detail. The format of the input data is fixed
+and a small tool that converts some system dependent raw index in a
+form suitable for <SF>xindy</SF> should not be a big hurdle. The user is
+normally not involved in the correct format suitable for <SF>xindy</SF>
+and some tools will make this work invisible to him.
+<P>In contrast, the output of the <SF>xindy</SF> system is highly
+configurable and can produce a variety of different markups.
+Additionally, the way <SF>xindy</SF> processes the index data can be
+parametrized and controlled in many ways and gives the user a powerful
+framework for describing complex indexes. The user can tell <SF>xindy</SF>
+how it should produce an output according to his wishes or simply use
+some of the predefined styles that come with the distribution.
+<P>
+<P>
+<P>
+<P>
+<H2><A NAME="general-concepts"></A> <A NAME="ss2.2">2.2 General Concepts and Terms</A>
+</H2>
+
+<P>In the following sections we introduce some terms that are necessary
+to understand the way <SF>xindy</SF> works.
+<P>The development of <SF>xindy</SF> started with the devlopment of a model
+of a <EM>book-like</EM> index. This rather vague term will now be fleshed
+out by giving a semi-formal description of the model. If the structure
+of an index conforms to this model it can be processed by <SF>xindy</SF>.
+We first present a diagram that describes the structure of a processed
+index. It is a hierarchical recursive data structure which we will
+describe now.
+<P>
+<FIGURE>
+<EPS FILE="index.eps">
+<IMG SRC="index.gif">
+</FIGURE>
+<P>Boxed objects contain elements from the raw index such as the keywords
+or the location reference layers. We start from the root of the
+diagram and explain the different elements.
+<P>
+<P>
+<P>
+<DL>
+<P>
+<DT><B>index</B><DD><P>An index consists of a list of <SF>letter-groups</SF>.
+<P>
+<P>
+<A NAME="def letter-group"></A> <DT><B>letter-group</B><DD><P>The letter groups serve as containers for
+<SF>indexentries</SF>. The letter groups are intended to group all
+index entries sharing a common <SF>keyword</SF> prefix, allowing the
+assignment of a specific markup for each group. For example, indexes
+are often organized in a way that new index entries beginning with a
+new letter are separated by a specific markup. The following example
+illustrates this style.
+<P>
+<PRE>
+ B
+ bread 25, 27
+ butter 26
+
+ M
+ marmalade 19
+ milk 21
+</PRE>
+<P>Here we have two letter groups for the letters `B' and `M' because the
+keywords `bread' and `butter' share the same prefix `b' and
+`marmalade' and `milk' share the prefix `m'. <SF>xindy</SF> can be advised
+to define arbitrary letter groups with a particular markup for each of
+them. See command <CODE>define-letter-group</CODE> for further details.
+<P>
+<P>
+<DT><B>indexentry</B><DD><P>An index entry consists of three components: the
+<SF>keyword</SF> and optionally the list of <SF>location-class-groups</SF> and
+the sub-<SF>indexentries</SF>. An example:
+<P>
+<PRE>
+ bread 25-30
+ brown 26
+ white 27
+</PRE>
+<P>This index entry consists of the keyword `bread', the
+location class list `25-30' and the sub-entries `brown 26' and `white
+27'. The sub-entries themselves are complete index entries as well,
+forming a recursive data structure.
+<P>
+<P>
+<DT><B>keyword</B><DD><P>The keyword is the identifier of an index entry. It
+consists of a list of strings being the <EM>key</EM> if the index entry. In
+our model the keyword constists of a list of strings, since indexes
+are often organized hierarchically with different layers. In the
+example
+<P>
+<PRE>
+ bread 25-30
+ bread, brown 26
+ bread, white 27
+</PRE>
+<P>we have keywords `bread', `bread, brown' and `bread, white'.
+<P>A keyword is actually separated into four different keys. The
+<SF>main-key</SF> is the key that is specified from the author who indexes
+a document. The <SF>merge-key</SF> is derived from the main key with the
+so-called <EM>merge mapping</EM>. This mapping is accomplished with a set
+of rewrite rules. The <SF>sort-key</SF> is derived from the merge key with
+another set of rewrite rules called the <EM>sort mapping</EM>. The
+<SF>print-key</SF> can be specified by the user explicitely or, if it is
+ommited, equals the main key. The rewrite rules consist of string
+substitutions that also include regular expression features.
+<P>The following figure describes this:
+<P>
+<FIGURE>
+<EPS FILE="mappings.eps">
+<IMG SRC="mappings.gif">
+</FIGURE>
+<P>
+<P>The <SF>merge-key</SF> is necessary to define the equality of
+index entry keys. See command <CODE>merge-rule</CODE> for further details about
+defining the merge mapping.
+<P>The <SF>sort-key</SF> is necessary to define a total order on the
+keywords. Since we need a scheme that is independent from any specific
+character set such as ASCII or ISO-Latin, we must be able to define
+completely new alphabets. The index entries are then sorted according
+to the ISO-Latin alphabet. See the command <CODE>sort-rule</CODE> for an
+explanation how these mapping can be specified.
+<P>The <SF>print-key</SF> is used for the final markup and contains the
+string that appears in the generated markup.
+<P>
+<P>
+<DT><B>location-class-group</B><DD><P>There exist two kinds of
+location class groups namely <SF>location-reference-groups</SF> and
+<SF>cross-reference-groups</SF>.
+<P>
+<DT><B>location-reference-group</B><DD><P>consists of a list of
+<SF>attribute-groups</SF>.
+<P>
+<P>
+<DT><B>attribute-groups</B><DD><P>Each <SF>location-reference-group</SF> consists of
+a list of <SF>attribute-groups</SF>. Attribute groups are defined by a set
+of <SF>attributes</SF>. In the markup phase, all location references are
+sorted according to the group number their attributes belong to.
+Additionally all location references of a particular attribute group
+appear together in the index.
+<P>See command <CODE>define-attribute-groups</CODE> for further information about
+the handling of attribute-groups.
+<P>An attribute group consists of a list of <SF>location-references</SF>
+and/or <SF>ranges</SF>.
+<P>
+<P>
+<A NAME="def locref-class"></A> <DT><B>location-reference-class, location-reference, location</B><DD><P>Each
+index entry of an index references at least one <SF>location</SF> in the
+document. A <SF>location</SF> is a logical or physical part of a document,
+such as a single page, a section or subsection, etc. The symbolic name
+of a location is called a <SF>location-reference</SF>. The
+location reference is always represented as a string (a sequence of
+characters). Each location reference is associated a special tag
+called <SF>attribute</SF>. The following examples may give you an idea how
+location references could look like.
+<P>
+<BLOCKQUOTE>
+<CODE>"25" </CODE> represents a page number.
+</BLOCKQUOTE>
+<P>
+<BLOCKQUOTE>
+<CODE>"Chapter-3"</CODE> represents the third chapter of a document.
+</BLOCKQUOTE>
+<P>
+<BLOCKQUOTE>
+<CODE>"A-I" </CODE> represents the first page, written in uppercase roman
+numerals of the appendix `A', separated by a hyphen.
+</BLOCKQUOTE>
+<P>
+<BLOCKQUOTE>
+<CODE>"2.3.4" </CODE> represents the sub-sub-section 2.3.4 of a document.
+</BLOCKQUOTE>
+<P>As we can see, the location references are often composed
+hierarchically of smaller entities, such as numbers or names. All
+location references that belong to the same class form a
+<SF>location-class</SF>. A location class is composed of <SF>alphabets</SF>
+and <SF>separators</SF>. See command <CODE>define-location-class</CODE> for a
+description how classes can be defined.
+<P>
+<P>
+<DT><B>alphabet, separator</B><DD><P>As we have seen in the previous section,
+location classes consist of alphabets and separators. xindy has the
+following built-in set of basic alphabets:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+&lt;tag/&lt;tt/arabic-numbers// contains all non-negative numbers beginning
+with zero: 0, 1, 2, ....
+
+&lt;tag/&lt;tt/roman-numerals-uppercase// the roman numerals I, II, III,
+(IIII/IV), V, ... It recognizes the old and new roman numeral system.
+
+&lt;tag/&lt;tt/roman-numerals-lowercase// the same for the lowercase roman
+numerals.
+
+&lt;tag/&lt;tt/ALPHA// the US-ASCII alphabet (uppercase letters).
+
+&lt;tag/&lt;tt/alpha// the US-ASCII alphabet (lowercase letters).
+
+&lt;tag/&lt;tt/digits// the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9 in this
+order.
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The user is free to define new alphabets as he wishes. See the
+commands <CODE>define-alphabet</CODE> and <CODE>define-enumeration</CODE> for further
+details.
+<P>A complete location class can be defined by composing alphabets and
+separators. The location class of the example <CODE>"A-I"</CODE> can be
+defined as follows
+<P>
+<PRE>
+ (define-location-class "appendix"
+ (ALPHA "-" roman-numerals-uppercase))
+</PRE>
+<P>This is a list that completely describes all possible instances of
+this location class. Other valid members are <CODE>A-II</CODE>, <CODE>B-VI</CODE>,
+etc. Location classes are defined with the command
+<CODE>define-location-class</CODE>.
+<P><SF>xindy</SF> reads the incoming strings representing location references
+and tries to match them against a previously defined location class.
+There exist no predefined location classes.
+<P>
+<DT><B>range</B><DD><P>A <SF>range</SF> is a pair of <SF>location-references</SF>. A
+sequence of location references following one another is transformed
+into an range if the length of the sequence exceeds a certain
+user-definable limit. For example, the location references 11, 12, 13
+and&nbsp;14 may be transformed into the range 11--14. See command
+<CODE>define-location-class</CODE> for further details.
+<P>
+<P>
+<DT><B>cross-reference-group</B><DD><P>Container for all
+<SF>cross-references</SF> of a particular <SF>cross-reference-class</SF>.
+<P>
+<P>
+<A NAME="def crossref-class"></A> <DT><B>cross-reference-class, cross-reference</B><DD><P>A <SF>cross-reference</SF> is
+an unstructured reference. <SF>Cross-reference-classes</SF> are used to
+define different classes of cross references. All elements of a
+cross reference class appear together in the index. A cross reference
+consists of a list of strings.
+<P>
+<P>
+<DT><B>attributes</B><DD><P>Each location reference contains a so-called
+<SF>attribute</SF>. Attributes may be used to give a location reference a
+different meaning that may influence the processing and markup of this
+reference. Sometimes location references pointing to semantically
+different locations such as a definition or a usage of a term are
+tagged differently. They often appear in <EM>italics</EM> or <B>boldface</B>
+indicating this difference. An attribute may now be used to express
+this difference. Since <SF>xindy</SF> needs to know the possible
+attributes before the index entries are read in, the command
+<CODE>define-attributes</CODE> must be used to define a set of attributes and
+how they interact.
+<P>
+</DL>
+<P>
+<P>
+<P>
+<P>
+<HR>
+<A HREF="manual-3.html">Next</A>
+<A HREF="manual-1.html">Previous</A>
+<A HREF="manual.html#toc2">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-3.html b/Build/source/utils/xindy/doc/manual-3.html
new file mode 100644
index 00000000000..3520de7f1ea
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-3.html
@@ -0,0 +1,1160 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: Command List</TITLE>
+ <LINK HREF="manual-4.html" REL=next>
+ <LINK HREF="manual-2.html" REL=previous>
+ <LINK HREF="manual.html#toc3" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="manual-4.html">Next</A>
+<A HREF="manual-2.html">Previous</A>
+<A HREF="manual.html#toc3">Contents</A>
+<HR>
+<H2><A NAME="s3">3. Command List</A></H2>
+
+<P>Here is the complete list of <SF>xindy</SF>'s commands that may be used in
+the index style. The symbol <CODE>name</CODE> always refers to a string. We
+separate the commands into the <EM>processing</EM> and
+<EM>markup</EM> commands. The commands are listed in alphabetical order.
+<P>The parenthesis `<CODE>[</CODE>' and `<CODE>]</CODE>' denote optional parts of the
+syntax and `<CODE>{</CODE>' and `<CODE>}</CODE>' denote the grouping of elements. A
+vertical bar indicates alternatives. However, the enclosing round
+braces <EM>are</EM> part of the syntax and must be supplied.
+<P>
+<P>
+<H2><A NAME="ss3.1">3.1 Processing Commands</A>
+</H2>
+
+<P>Here follows the list of processing commands.
+<P>
+<A NAME="define-alphabet"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-alphabet name string-list)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines <CODE>name</CODE> to be the alphabet consisting of all elements of the
+<CODE>string-list</CODE>. Examples:
+<P>
+<PRE>
+ (define-alphabet "example-alphabet" ("An" "Example" "Alphabet"))
+</PRE>
+<P>defines an alphabet consisting of exactly three symbols. For the
+successor relationship holds: <CODE>succ("An")="Example"</CODE> and
+<CODE>succ("Example")="Alphabet"</CODE>. The built-in alphabet <CODE>digits</CODE> is
+defined as follows:
+<P>
+<PRE>
+ (define-alphabet "digits"
+ ("0" "1" "2" "3" "4" "5" "6" "7" "8" "9"))
+</PRE>
+<P>
+<P>
+<P>
+<A NAME="define-attributes"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-attributes attribute-list)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines all attributes the raw index may contain. Parameter
+<CODE>attribute-list</CODE> is a list of list of strings. The nesting level
+must not be more than&nbsp;2. So <CODE>(..(..)..)</CODE> is allowed, whereas
+<CODE>(..(..(..)..)..)</CODE> is not.
+<P>The list has two kinds of elements: strings and list of strings. A
+single string is treated as if it were a single element list. So the
+lists <CODE>("definition")</CODE> and <CODE>( ("definition") )</CODE> are equivalent.
+All elements forming a list are a so-called <EM>attribute group</EM>. The
+members of a group are written to the output file before any member
+of the following groups are written.
+<P>Examples of valid attributes lists are:
+<P><CODE>("definition" "usage")</CODE> defines two attribute groups. The first
+one contains all references with the attribute <CODE>definition</CODE> and the
+second one all with the attribute <CODE>usage</CODE>.
+<P><CODE>(("definition" "important") "usage")</CODE> defines two attribute
+groups. The first one contains all references with the attributes
+<CODE>definition</CODE> or <CODE>important</CODE> and the second one all with the
+attribute <CODE>usage</CODE>. In the attribute group <CODE>("definition"
+"important")</CODE> the attribute <CODE>definition</CODE> overrides <CODE>important</CODE>.
+<P>
+<P>
+<P>
+<A NAME="define-crossref-class"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-crossref-class name [:unverified])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines <CODE>name</CODE> to be a class of cross references. We distinguish
+two types of cross reference classes. <EM>Verified</EM> cross reference
+classes can be checked for dangling references. If for instance a
+cross reference points to the non-existent keyword `foo' a warning is
+issued and the user is advised to correct the invalid cross reference.
+This is the default. If for some reasons this mechanism must be
+deactivated the switch <CODE>:unverified</CODE> can be used to suppress this
+behaviour.
+<P>
+<P>
+<A NAME="define-letter-group"></A>
+<A NAME="define-letter-groups"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-letter-group name [:before lgname] [:after lgname]
+ [:prefixes list-of-prefixes])
+
+(define-letter-groups list-of-letter-groups)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This command defines a letter group with name <CODE>name</CODE>, which must be
+a string value, grouping all index entries that have a <EM>sort key</EM>
+beginning with the prefix <CODE>name</CODE>. The command
+<P>
+<PRE>
+ (define-letter-group "a")
+</PRE>
+<P>is equivalent to the command
+<P>
+<PRE>
+ (define-letter-group "a" :prefixes ("a"))
+</PRE>
+<P>Using the latter form one can associate more than one prefix with a
+given letter group. Also further prefixes can be added to an already
+existing letter group by simply defining the same letter group again.
+This results not in a redefinition but in adding more prefixes to the
+currently defined prefixes.
+<P>Example:
+<P>
+<PRE>
+ (define-letter-group "a")
+</PRE>
+<P>defines a letter group containing all index entries beginning with the
+string <CODE>"a"</CODE>.
+<P>
+<PRE>
+ (define-letter-group "c" :after "a")
+</PRE>
+<P>defines a letter group containing all index entries beginning with the
+string <CODE>"c"</CODE>. The letter group appears behind the letter group "a"
+<P>
+<PRE>
+ (define-letter-group "b" :after "a" :before "c")
+</PRE>
+<P>inserts letter group "b" between letter group "a" and "c". This allows
+incremental definition of letter groups by extending already defined
+ones.
+<P>The arguments <CODE>:after</CODE> and <CODE>:before</CODE> define a partial order on
+the letter groups. <SF>xindy</SF> tries to convert this partial order into
+a total one. If this is impossible due to circular definitions, an
+error is reported. If more than one possible total ordering can
+result, it is left open which one is used, so one should always define
+a complete total order.
+<P>The command <CODE>define-letter-groups</CODE> (with an `s' at the end) is
+simply an abbreviation for a sequence of
+<CODE>define-letter-group</CODE> definitions where the elements are ordered in
+the ordering given by the list. Example:
+<P>
+<PRE>
+ (define-letter-groups ("a" "b" "c")
+</PRE>
+<P>equals the definitions
+<P>
+<PRE>
+ (define-letter-group "a")
+ (define-letter-group "b" :after "a")
+ (define-letter-group "c" :after "b")
+</PRE>
+<P>See also commands <CODE>markup-letter-group-list</CODE> and
+<CODE>markup-letter-group</CODE> for further information.
+<P>
+<P>
+<P>
+<A NAME="define-location-class"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class name layer-list
+ [:min-range-length num]
+ [:hierdepth depth]
+ [:var])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines <CODE>name</CODE> to be a location class consisting of the given list
+of layers. A list of layers consists of names of basetypes and/or
+strings representing separators. Separators must follow the
+keyword argument <CODE>:sep</CODE>. If the keyword <CODE>:min-range-length</CODE> is
+specified we define the <EM>minimum range length</EM> to be used when
+building ranges. The argument <CODE>num</CODE> must be a positive integer
+number or the keyword <CODE>none</CODE> in which case the building of ranges
+is disallowed. If the switch <CODE>:var</CODE> is specified the declared class
+is of type <EM>variable</EM>, i.e. it is a <EM>var-location-class</EM>. Since
+building of ranges is currently only allowed for standard classes
+<CODE>:var</CODE> and <CODE>:min-range-length</CODE> must not be used together. The
+keyword argument <CODE>:hierdepth</CODE> can be used to declare that the
+location references have to be tagged in a hierarchical form. Its
+argument <CODE>depth</CODE> must be an integer number indicating the number of
+layers the hierarchy does contain. See command
+<CODE>markup-locref-list</CODE> for more information. Examples:
+<P>
+<PRE>
+ (define-location-class "page-numbers" ("arabic-numbers")
+ :minimum-range-length 3)
+</PRE>
+<P>Defines the location class <CODE>page-numbers</CODE> consisting of one layer
+which is the alphabet <CODE>arabic-numbers</CODE>. Since the minimum
+range length is set to 3 the location references 2, 3 and 4 don't form
+a range because the range length is only 2. But the references 6, 7,
+8, and 9 are enough to form a range. Some example instances of this
+class are <CODE>0</CODE>, <CODE>1</CODE>, ... <CODE>2313</CODE>, etc.
+<P>
+<PRE>
+ (define-location-class "sections" :var
+ ("arabic-numbers" :sep "."
+ "arabic-numbers" :sep "."
+ "arabic-numbers"))
+</PRE>
+<P>defines a variable location class. Valid instances are <CODE>1</CODE>,
+<CODE>1.1</CODE>, <CODE>1.2</CODE>, <CODE>2</CODE>, <CODE>2.4.5</CODE>, but none of <CODE>2-3</CODE> (wrong
+separator), <CODE>1.2.3.4</CODE> (more than 3 layers), <CODE>2.3.iv</CODE> (roman
+number instead of arabic one).
+<P>
+<P>
+<P>
+<A NAME="define-location-class-order"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class-order list)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines the order in which the location classes are written to the
+output file. The parameter <CODE>list</CODE> is a list of names of
+location classes. Examples:
+<P>
+<PRE>
+ (define-location-class-order
+ ("page-numbers" "sections" "xrefs"))
+</PRE>
+<P>tells the system that the page numbers should appear before the
+section numbers and that the cross references should appear at the
+end. If this command is omitted, the declaration order of the
+location classes in the index style is implicitly used as the output
+order. In the case that a location class does not appear in the list,
+the output may behave unexpectedly, so one should always enumerate all
+used location classes when using this command.
+<P>
+<P>
+<P>
+<A NAME="define-rule-set"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-rule-set name
+ [ :inherit-from ("rule-set" "rule-set-2") ]
+ :rules (&lt;rule>...) )
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>A complete specification of a multi-phase sorting process for a
+language requires that some rules have to appear in several subsequent
+sorting phases. Rule sets can be used to define a set of rules that
+can be instantiated in an arbitrary sorting phase. Basically, they
+offer means to separate the definition of sorting rules from their
+instantiation, hence, acting as a wrapper for calls to <CODE>sort-rule</CODE>.
+They do not add new functionality that is not already present with
+<CODE>sort-rule</CODE>.
+<P>A rule can be of the form:
+<P>
+<PRE>
+ &lt;rule> ::= ("pattern" "replacement"
+ [:string|:bregexp|:egegexp] [:again])
+</PRE>
+<P>The following incomplete example defines a new rule set of name
+<CODE>isolatin1-tolower</CODE> that inherits definitions from rule set
+<CODE>latin-tolower</CODE>, overriding or adding the sort rules in the list of
+<CODE>:rules</CODE>.
+<P>
+<PRE>
+ (define-rule-set "isolatin1-tolower"
+
+ :inherit-from ("latin-tolower")
+
+ :rules (("À" "à" :string :again)
+ ("Á" "á" :string :again)
+ ("Â" "â" :string :again)
+ ("Ã" "ã" :string :again)
+ ("Ä" "ä" :string :again)
+ ("Å" "å" :string :again)
+ ("Æ" "æ" :string :again)
+ ...
+ )
+ ...)
+</PRE>
+<P>Rule sets can be instantiated with the command <CODE>use-rule-set</CODE>. For
+further descriptions on the sorting model refer to the command
+<CODE>sort-rule</CODE>.
+<P>
+<P>
+<A NAME="define-sort-rule-orientations"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-sort-rule-orientations (orientations...))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines the order for the different sorting phases. The currently
+implemented <EM>orientations</EM> are <CODE>forward</CODE> and <CODE>backward</CODE>. This
+command must precede all <CODE>sort-rule</CODE> commands in an index style. It
+defines the orientations and implicitly sets the maximum number of
+sorting phases performed.
+<P>For further descriptions on the sorting model refer to the command
+<CODE>sort-rule</CODE>.
+<P>
+<P>
+<P>
+<A NAME="merge-rule"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-rule pattern replacement [:again]
+ [:bregexp | :eregexp | :string])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines a keyword mapping rule that can be used to generate the
+<EM>merge key</EM> from the <EM>main key</EM> of an index entry. This mapping
+is necessary to map all keywords that are differently written but
+belong to the same keyword to the same canonical keyword.
+<P>The parameter <CODE>pattern</CODE> can be a POSIX-compliant regular expression
+or an ordinary string. The implementation uses the GNU Rx regular
+expression library which implements the POSIX regular expressions.
+Regular expressions (REs) can be specified as <EM>basic regular
+expressions</EM> (BREs) or <EM>extended regular expressions</EM> (EREs). You
+can use the switch <CODE>:bregexp</CODE> to force the interpretation of the
+pattern as a BRE, or <CODE>:eregexp</CODE> to interpret it as an ERE. If you
+want <SF>xindy</SF> to interpret the pattern literally, use the switch
+<CODE>:string</CODE>. If none of these switches is selected, <SF>xindy</SF> uses
+an auto-detection mechanism to decide, if the pattern is a regular
+expression or not. If it recognizes the pattern as a RE, it interprets
+it as an ERE by default.
+<P>The parameter <CODE>replacement</CODE> must be
+a string possibly containing the special characters <CODE>&amp;</CODE>
+(substitutes for the complete match) and <CODE>\1</CODE>,...,<CODE>\9</CODE>
+(substituting for the <EM>n</EM>-th submatch. Examples:
+<P>
+<PRE>
+ (merge-rule "A" "a")
+</PRE>
+
+replaces each occurrence of the uppercase letter `<CODE>A</CODE>' with its
+lowercase counterpart.
+<P>
+<PRE>
+ (merge-rule "\~"([AEOUaeou])" "\1")
+</PRE>
+
+transforms the TeX umlaut-letters into their stripped counterparts,
+such that `<CODE>\"A</CODE>' is treated as an `<CODE>A</CODE>' afterwards.
+<P>The following sequences have a special meaning:
+<P>`<CODE>~n</CODE>' : End of line symbol (<EM>linefeed</EM>).
+<P>`<CODE>~b</CODE>' : The ISO-Latin character with the lowest ordinal number.
+<P>`<CODE>~e</CODE>' : The ISO-Latin character with the highest ordinal number.
+<P>`<CODE>~~</CODE>' : The tilde character.
+<P>`<CODE>~"</CODE>' : The double quote character.
+<P>Tilde characters and double quotes have to be quoted themselves with a
+tilde character. The special characters `<CODE>~b</CODE>' and
+`<CODE>~e</CODE>' allow the definition of arbitrary sorting orders by
+rules. In connection with an additional character every position in
+the alphabet can be described. E.g. `<CODE>m~e</CODE>' is
+lexicographically placed between `<CODE>m</CODE>' and `<CODE>n</CODE>'.
+<P>Due to efficiency, rules that just exchange characters or substitute
+constant character sequences are not treated as regular expressions.
+Therefore, instead of using the rule
+<P>
+<PRE>
+ (merge-rule "[A-Z]" "&amp;x")
+</PRE>
+<P>it is more efficient (though less comfortable) to use
+<P>
+<PRE>
+ (merge-rule "A" "Ax")
+ (merge-rule "B" "Bx")
+ ...
+ (merge-rule "Z" "Zx")
+</PRE>
+<P>Usually rules are applied in order of their definition. Rules with a
+special prefix precede those that begin with a class of characters, so
+that the search pattern `<CODE>alpha</CODE>' is checked before `<CODE>.*</CODE>', but
+`<CODE>auto</CODE>' and `<CODE>a.*</CODE>' are checked in order of their definition.
+<P>The first rule from a style file that matches the input is
+applied and the process restarts behind the substituted text. If no
+rule could be applied, the actual character is copied from the input
+and the process continues with the next character.
+<P>Sometimes it is necessary to apply rules anew to the result of a
+transformation. By specifying the keyword argument <CODE>:again</CODE> in the
+merge rule the rule is marked as <EM>mutable</EM>, which means that after
+using this rule the transformation process shall restart at the same
+place. E.g. the rule
+<P>
+<PRE>
+ (merge-rule "\$(.*)\$" "\1" :again)
+</PRE>
+<P>deletes <EM>all</EM> surrounding `<CODE>$</CODE>' symbols from the input.
+<P>See also command <CODE>sort-rule</CODE>.
+<P>
+<P>
+<A NAME="merge-to"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(merge-to attr-from attr-to [:drop])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>A <EM>merge rule</EM> says that the attribute <CODE>attr-from</CODE> can be used
+to build ranges in <CODE>attr-to</CODE>. Both attributes must name valid
+attribute names. The switch <CODE>:drop</CODE> indicates, that the original
+location reference with attribute <CODE>attr-from</CODE> has to be dropped
+(removed), if a successful range was built with location references in
+attribute <CODE>attr-to</CODE>. A detailed description is given in the section
+about processing phases.
+<P>
+<P>
+<P>
+<A NAME="require"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(require filename)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This command allows to load more index style modules. The module is
+searched in the directories defined in the search path. The file is
+read in and processing of the current file continues. The argument
+<CODE>filename</CODE> must be a string. This allows to decompose the
+index style into several modules that can be included into the topmost
+index style file. Example:
+<P>
+<PRE>
+ (require "french/alphabet.xdy")
+ (require "french/sort-rules.xdy")
+ (require "tex/locations.xdy")
+ (require "tex/markup.xdy")
+</PRE>
+<P>Submodules can load other submodules as well. If a file is required
+that was already loaded, the <CODE>require</CODE> command is simply ignored
+and processing continues without including this file twice. See also
+command <CODE>searchpath</CODE>.
+<P>
+<P>
+<P>
+<A NAME="searchpath"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(searchpath {path-string | path-list})
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This command adds the given paths to the list of paths, <SF>xindy</SF>
+searches for index style files. The argument <CODE>path-string</CODE> must be
+a colon-separated string of directory names. If this path ends with a
+colon the default search path is added to the end of the path list.
+Example:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ (searchpath ".:/usr/local/lib/xindy:/usr/local/lib/xindy/english:")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>adds the specified directories to the search path. Since the last path
+ends with a colon, the built-in search path is added at the end.
+Specifying
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ (searchpath ("."
+ "/usr/local/lib/xindy"
+ "/usr/local/lib/xindy/english"
+ :default))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>yields exactly the same result as the example above. Here
+<CODE>path-list</CODE> must be a list of strings and/or the keyword(s)
+<CODE>:default</CODE> and <CODE>:last</CODE>. The keyword <CODE>:default</CODE> signifies that
+the default pathnames are to be inserted at the specified position in
+the list. The keyword <CODE>:last</CODE> allows to insert the currently active
+paths at the indicated position. Since this allows to insert the
+built-in paths at any position and incrementally adding new paths to
+the search path, this version of the command ist more flexible than
+the first version.
+<P>
+<P>
+<A NAME="sort-rule"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule pattern replacement [:run level] [:again])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines a keyword mapping rule that can be used to generate the
+<EM>sort key</EM> of an index entry from the <EM>merge key</EM>. This key is
+used to sort the index entries lexicographically after they have been
+merged using the merge key.
+<P>The argument <CODE>:run</CODE> indicates that this rule is only in effect
+a the specified <EM>level</EM> (default is level 0). For a detailed
+discussion on the definition of sort rules for different layers refer
+to the documentation about the new sorting scheme
+(<CODE>new-sort-rules</CODE>) that comes with this distribution.
+<P>See command <CODE>merge-rule</CODE> for more information about keyword
+rules.
+<P>
+<P>
+<P>
+<A NAME="use-rule-set"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(use-rule-set [:run phase]
+ [:rule-set ( &lt;rule-set>... ))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This command instantiates the gives rule sets to be in effect at
+sorting phase <CODE>phase</CODE>. The order of the rule sets given with
+argument <CODE>:rule-set</CODE> is significant. Rule set entries of rule set
+appearing at the beginning of the list override entries in rule sets
+at the end of the list.
+<P>The following example declares that in phase 0 the rule sets
+<CODE>din5007</CODE> and <CODE>isolatin1-tolower</CODE> should be active, whereas in
+phase 2 the other rule sets have to be applied.
+<P>
+<PRE>
+ (use-rule-set :run 0
+ :rule-set ("din5007" "isolatin1-tolower"))
+
+ (use-rule-set :run 1
+ :rule-set ("resolve-umlauts"
+ "resolve-sharp-s"
+ "isolatin1-tolower"
+ ))
+</PRE>
+<P>For a discussion on rule sets refer to command <CODE>define-rule-set</CODE>.
+<P>
+<P>
+<P>
+<H2><A NAME="ss3.2">3.2 Markup Commands</A>
+</H2>
+
+<P>
+<P>The following commands can be used to define the markup of the index.
+They don't have any influence on the indexing process. Since the
+markup scheme is characterized by the concept of <EM>environments</EM>,
+the syntax and naming scheme of all commands follows a simple
+structure.
+<P>The commands can be separated into <EM>environment</EM> and
+<EM>list-environment</EM> commands. All commands of the first group
+support the keyword arguments <CODE>:open</CODE> and <CODE>:close</CODE>, whereas the
+second group additionally supports the keyword argument <CODE>:sep</CODE>. If
+one of these keyword arguments is missing, the default markup tag is
+<EM>always</EM> the empty tag. The <CODE>:open</CODE> tag is always printed before
+the object itself and the <CODE>:close</CODE> tag is always printed after the
+object has been printed. If a list is printed the <CODE>:sep</CODE>tag is
+printed between two elements of the list but not before the first
+element, or after the last one. All commands dealing with a list have
+the suffix `<CODE>-list</CODE>' as part of their command name.
+<P>Since the number of commands and the heavy usage of <EM>default</EM> and
+<EM>specialized</EM> tags makes the markup somehow complex (but very
+powerful) we have added a mechanism to trace the markup tags
+<SF>xindy</SF> omits during its markup phase with the command
+<CODE>markup-trace</CODE>.
+<P>Here follows the list of markup commands in alphabetical order with
+some of the commands grouped together.
+<P>
+<P>
+<A NAME="markup-attribute-group"></A>
+<A NAME="markup-attribute-group-list"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-attribute-group-list [:open string] [:close string]
+ [:sep string])
+
+(markup-attribute-group [:open string] [:close string]
+ [:group group-num])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Location class groups consist of lists of attribute groups. The markup
+of this list can be defined with the command
+<CODE>markup-attribute-group-list</CODE>.
+<P>To allow different markup for different attribute groups the command
+<CODE>markup-attribute-group</CODE> can be specialized on the group number
+with the keyword argument <CODE>:group</CODE> which must be an integer number.
+E.g., given are the groups <CODE>("definition" "theorem")</CODE> and
+<CODE>("default")</CODE> with group numbers 0 and 1, then
+<P>
+<PRE>
+ (markup-attribute-group :open "&lt;group0>" :close "&lt;/group0>"
+ :group 0)
+
+ (markup-attribute-group :open "&lt;group1>" :close "&lt;/group1>"
+ :group 1)
+</PRE>
+<P>can be used to assign different markup for both groups in a SGML-based
+language.
+<P>
+<P>
+<A NAME="markup-crossref-layer"></A>
+<A NAME="markup-crossref-layer-list"></A>
+<A NAME="markup-crossref-list"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-crossref-list [:open string] [:close string]
+ [:sep string]
+ [:class crossref-class])
+
+(markup-crossref-layer-list [:open string] [:close string]
+ [:sep string]
+ [:class crossref-class])
+
+(markup-crossref-layer [:open string] [:close string]
+ [:class crossref-class])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>A crossref class group contains cross references of the same class.
+The separator between the classes is defined with the
+<CODE>(markup-locclass-list :sep)</CODE>-parameter. A list of cross references
+can be tagged with the command <CODE>markup-crossref-list</CODE> that
+specializes on the <CODE>:class</CODE> argument.
+<P>Each cross reference is determined by a list of layers indicating
+the target of the cross reference. To define a suitable markup for
+such a list the command <CODE>markup-crossref-layer-list</CODE> can be used.
+<P>Each layer of a cross reference can be assigned two tags that
+specialize on the class of the reference, like all other commands.
+<P>A suitable markup for a cross reference class <CODE>see</CODE> within LaTeX2e
+could look like that:
+<P>
+<PRE>
+ (markup-crossref-list :class "see" :open "\emph{see} "
+ :sep "; ")
+ (markup-crossref-layer-list :class "see" :sep ",")
+ (markup-crossref-layer :class "see"
+ :open "\textbf{" :close "}")
+</PRE>
+<P>An example output could look like
+<P>
+<BLOCKQUOTE>
+... <EM>see</EM> <B>house</B>; <B>garden</B>,<B>winter</B>; <B>greenhouse</B>
+</BLOCKQUOTE>
+<P>
+<P>
+<A NAME="markup-index"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-index [:open string] [:close string]
+ [ :flat | :tree | :hierdepth depth ])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Defines the markup tags that enclose the whole index via the
+<CODE>:open</CODE> and <CODE>:close</CODE> parameters. Examples:
+<P>
+<PRE>
+ (markup-index :open "Here comes the index~n"
+ :close "That's all folks!~n")
+</PRE>
+<P>defines that the <CODE>:open</CODE> string is printed before the rest of the
+index and the <CODE>:close</CODE> string appears after the index is printed.
+<P>Additionally one can specify the form of the generated index. It is
+possible to produce flat indexes by specifying the switch <CODE>:flat</CODE>,
+to generate a tree with the <CODE>:tree</CODE> switch or any kind of mixture
+between both by specifying the depth up to which trees shall be built
+with the parameter <CODE>:hierdepth</CODE>. Its argument <CODE>depth</CODE> is the
+number of layers that can be formed into a tree. Therefore <CODE>:flat</CODE>
+is an abbrevation of <CODE>:hierdepth 0</CODE> and <CODE>:tree</CODE> is an
+abbrevation of <CODE>:hierdepth max-depth</CODE>, with <CODE>max-depth</CODE> being
+the maximum number of layers a keyword has. An example: the keywords
+<P>
+<PRE>
+ ("tree" "binary" "AVL")
+ ("tree" "binary" "natural")
+</PRE>
+<P>can be transformed in the following ways:
+<P>A flat index (<CODE>:flat</CODE> or <CODE>:hierdepth 0</CODE>)
+<P>
+<PRE>
+ tree binary AVL
+ tree binary natural
+</PRE>
+<P>with <CODE>:hierdepth 1</CODE>
+<P>
+<PRE>
+ tree
+ binary AVL
+ binary natural
+</PRE>
+<P>and a tree (<CODE>:tree</CODE> or <CODE>:hierdepth</CODE> &gt; 1)
+<P>
+<PRE>
+ tree
+ binary
+ AVL
+ natural
+</PRE>
+<P>Most often one will create tree-like indexes or ones that are flat.
+<P>
+<P>
+<A NAME="markup-indexentry-list"></A>
+<A NAME="markup-indexentry"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-indexentry-list [:open string] [:close string]
+ [:sep string] [:depth integer])
+
+(markup-indexentry [:open string] [:close string]
+ [:depth integer])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Letter groups consists of a list of index entries. The command
+<CODE>markup-indexentry-list</CODE> defines the markup of these lists. The
+markup can be specialized on the depth if the index is hierarchically
+organized. The command
+<P>
+<PRE>
+ (markup-indexentry-list :open "\begin{IdxentList}"
+ :close "\end{IdxentList}"
+ :sep "~n")
+</PRE>
+<P>defines that the index entries of all layers are wrapped into the
+given markup tags. If additionally
+<P>
+<PRE>
+ (markup-indexentry-list :open "\begin{IdxentListII}"
+ :close "\end{IdxentListII}"
+ :sep "~n"
+ :depth 2)
+</PRE>
+<P>is defined, all index entry lists of all layers (except layer 2) are
+tagged according to the first specification, and the index entry list
+within depth 2 are tagged according to the second rule.
+<P>The command <CODE>markup-indexentry</CODE> defines the markup of an index entry
+at a given depth. Since index entries may also contain subentries and
+the markup for subentries may be different in different layers, the
+optional keyword argument <CODE>:depth</CODE> can be used to assign different
+markup for different layers. If depth is ommited the default markup
+for all possible depths is defined. The top-most index entries have
+depth 0.
+<P>
+<PRE>
+ (markup-indexentry :open "\begin{Indexentry}"
+ :close "\end{Indexentry}")
+</PRE>
+<P>defines that the index entries of all layers are wrapped into the
+given markup tags. If additionally
+<P>
+<PRE>
+ (markup-indexentry :open "\begin{IndexentryII}"
+ :close "\end{IndexentryII}"
+ :depth 2)
+</PRE>
+<P>is defined, all index entries of all layers (except layer 2) are tagged
+according to the first specification, and the index entries with depth
+2 are tagged according to the second rule.
+<P>
+<P>
+<A NAME="markup-keyword-list"></A>
+<A NAME="markup-keyword"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-keyword-list [:open string] [:close string]
+ [:sep string] [:depth integer])
+
+(markup-keyword [:open string] [:close string]
+ [:depth integer])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>
+<P>The print key of an index entry consists of a list of strings. The
+markup of this list can be defined with the command
+<CODE>markup-keyword-list</CODE>. The keyword argument <CODE>:depth</CODE> may be
+specified to define the markup of the list at a particular depth.
+<P>The keyword of an index entry consists of a list of strings. Each of
+these components is tagged with the strings defined with the command
+<CODE>markup-keyword</CODE>. Since we maybe need different markup for
+different layers, the optional keyword argument can be used to
+specialize this markup for some depth.
+<P>
+<P>
+<A NAME="markup-letter-group-list"></A>
+<A NAME="markup-letter-group"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-letter-group-list [:open string] [:close string]
+ [:sep string])
+
+(markup-letter-group [:open string] [:close string] [:group group-name]
+ [:open-head string] [:close-head string]
+ [:upcase | :downcase | :capitalize])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The first command defines the markup of the letter group with name
+<CODE>group-name</CODE>. Since the markup of letter groups often contains the
+name of the letter group as a part of it, the other keyword arguments
+allow an additional markup for this group name. If one of the
+parameters <CODE>:open-head</CODE> and <CODE>:close-head</CODE> is specified
+additional markup is added as can be described as follows:
+<P>
+<PRE>
+ &lt;OPEN>
+ IF (:open-head OR :close-head)
+ &lt;OPEN-HEAD>
+ transformer-of(&lt;GROUP-NAME>)
+ &lt;CLOSE-HEAD>
+ FI
+ &lt;INDEXENTRIES...>
+ &lt;CLOSE>
+</PRE>
+<P>Here, <CODE>transformer-of</CODE> is a function that possibly transforms the
+string representing the group name into another string. The
+transformers we currently support can be specified with the switches
+<CODE>:upcase</CODE>, <CODE>:downcase</CODE> and <CODE>:capitalize</CODE> which result in the
+corresponding string conversions. If none of them is specified no
+transformation is done at all.
+<P>The command <CODE>markup-letter-group</CODE> defines the markup of the list of
+letter groups.
+<P>
+<P>
+<A NAME="markup-locclass-list"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-locclass-list [:open string] [:close string]
+ [:sep string])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Each index entry contains a list of location class groups. This markup
+command can be used to define the markup of this list.
+<P>
+<P>
+<A NAME="markup-locref"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-locref [:open string] [:close string]
+ [:class locref-class]
+ [:attr attribute]
+ [:depth integer])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The markup tags of a location reference can be specialized on the
+three arguments <CODE>:class</CODE>, <CODE>:attr</CODE> and additionally, if
+sub-references are used, <CODE>:depth</CODE>. Most often one will only use a
+tag depending on the attribute. For example, all location references
+with the attribute <CODE>definition</CODE> should appear in a font series like
+bold, emphasizing the importance of this location reference; those
+with the attribute <CODE>default</CODE> in font shape italic. The markup in
+this case would not specialize on the depth or any particular class. A
+valid definition, suitable for a usage within HTML, could look like
+this.
+<P>
+<PRE>
+ (markup-locref :open "&lt;B>" :close "&lt;/B>" :attr "definition")
+ (markup-locref :open "&lt;I>" :close "&lt;/I>" :attr "default")
+</PRE>
+<P>
+<P>
+<A NAME="markup-locref-class"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-locref-class [:open string] [:close string]
+ [:class locref-class])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>All location references of a particular location reference class can
+be wrapped into the tags defined by this command. It specializes on
+the keyword argument <CODE>:class</CODE>.
+<P>
+<P>
+<A NAME="markup-locref-layer-list"></A>
+<A NAME="markup-locref-layer"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-locref-layer [:open string] [:close string]
+ [:depth integer] [:layer integer]
+ [:class locref-class])
+
+(markup-locref-layer-list [:open string] [:close string]
+ [:sep string]
+ [:depth integer]
+ [:class locref-class])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>A location reference contains a list of location reference layers. The
+second markup command can be used to markup this list. It specializes
+on the class of the location references and the depth (if
+sub-references are used).
+<P>The first command allows to tag the elements of a layer list
+differently. The first element of this list can is specialisable with
+<CODE>:layer 0</CODE>, the next element with <CODE>:layer 1</CODE>, etc. See the next
+example for an example.
+<P>
+<P>
+<A NAME="markup-locref-list"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-locref-list [:open string] [:close string] [:sep string]
+ [:depth integer] [:class locref-class])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>An attribute group contains a list of location references and/or
+ranges. Additionally a layered location reference itself may contain
+sub-references that are stored as a list of location references. We
+specialize the markup for these lists on the location class they
+belong to with the keyword argument <CODE>:class</CODE>, and on <CODE>:depth</CODE>
+that specializes on the different subentry levels when using
+location references with sub-references.
+<P>Given is a list of location references that have the class description
+<P>
+<PRE>
+ (define-location-class "Appendix"
+ ("ALPHA" :sep "-" "arabic-numbers")
+ :hierdepth 2)
+</PRE>
+<P>This location class has instances like <CODE>A-1</CODE>, <CODE>B-5</CODE>, etc. The
+keyword argument <CODE>:hierdepth 2</CODE> informs <SF>xindy</SF> to markup these
+location references in a hierarchical form. With the commands
+<P>
+<PRE>
+ (markup-locref-list :sep "; "
+ :depth 0 :class "Appendix")
+ (markup-locref-list :open " " :sep ","
+ :depth 1 :class "Appendix")
+ (markup-locref-layer :open "{\bf " :close "}" :layer 0
+ :depth 0 :class "Appendix")
+</PRE>
+<P>we obtain a markup sequence for some example data that could look like
+<P>
+<PRE>
+ {\bf A} 1,2,5; {\bf B} 5,6,9; {\bf D} 1,5,8; ...
+</PRE>
+<P>
+<P>
+<P>
+<A NAME="markup-range"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-range [:open string] [:close string] [:sep string]
+ [:class locref-class]
+ [:length num] [:ignore-end])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>A range consists of two location references. Markup can be specified
+with the <CODE>:open</CODE> and <CODE>:close</CODE> arguments and one separator given
+by the argument <CODE>:sep</CODE>.
+<P>Since both location references are tagged with markup defined by the
+command <CODE>markup-locref</CODE> a specialization on attributes or depth is
+not necessary. Specialization is allowed on the class they belong to,
+because the separator between two location refences may be different
+for each location class. Argument <CODE>:length</CODE> can be used to define
+different markup for different lengths. In conjunction with
+<CODE>:length</CODE> is may be useful not to print the second location
+reference at all. For example, one wishes to markup ranges of length 1
+in the form <EM>Xf.</EM> instead of <EM>X--Y</EM>. This can be accomplished
+with the switch <CODE>:ignore-end</CODE>.
+<P>The markup tags for a range <EM>(X,Y)</EM> can be described as follows:
+<P>
+<PRE>
+ &lt;OPEN>
+ Markup of location reference X
+ &lt;SEP>
+ IF (not :ignore-end)
+ Markup of location reference Y
+ FI
+ &lt;CLOSE>
+</PRE>
+<P>
+<P>The following tags can be used to define a range of page numbers
+(given in a location class <CODE>page-numbers</CODE>) without considering the
+open and close parameters:
+<P>
+<PRE>
+ (markup-range :sep "-" :class "page-numbers")
+</PRE>
+<P>Location ranges then appear separated by a hyphen in a form like this:
+<P>
+<PRE>
+ ..., 5-8, 19-23, ...
+</PRE>
+<P>
+<P>
+<A NAME="markup-trace"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-trace [:on] [:open string] [:close string])
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This command can be used to activate the tracing of all
+markup commands <SF>xindy</SF> executes. The switch <CODE>:on</CODE> activates the
+trace. If <CODE>:on</CODE> is omitted, the command line flag <CODE>-t</CODE> can be
+used as well. All tags which are emitted but not yet defined
+explicitly by the user are tagged with a symbolic notation indicating
+the commands that must be used to define this tag. The defaults for
+the keyword argument <CODE>:open</CODE> is `<CODE>&lt;</CODE>' and for <CODE>:close</CODE> is
+`<CODE>></CODE>'. The beginning of an example output could look like:
+<P>
+<PRE>
+ &lt;INDEX:OPEN>
+ &lt;LETTER-GROUP-LIST:OPEN>
+ &lt;LETTER-GROUP:OPEN ["a"]>
+ &lt;INDEXENTRY-LIST:OPEN [0]>
+ &lt;INDEXENTRY:OPEN [0]>
+ &lt;KEYWORD-LIST:OPEN [0]>
+ &lt;KEYWORD:OPEN [0]>
+ ...
+</PRE>
+<P>We use a simple indentation scheme to make the structure of the tags
+visible. The symbolic tag <CODE>&lt;LETTER-GROUP:OPEN ["a"]></CODE> for example
+indicates that the tag that can be specified with the command
+<P>
+<PRE>
+ (markup-letter-group :open "XXX" :group "a" ... )
+</PRE>
+<P>is emitted at this point in the markup process. By incrementally
+adding markup commands to the index, more and more tags can be defined
+until the whole markup is defined. This general mechanism should allow
+everyone understand the markup process. The best is to start with a
+small index, define the complete markup and afterwards process the
+whole index. Additionally one can enclose the symbolic tags into an
+environment that is neutral to the document preparation system, such
+as a comment. For TeX this could be
+<P>
+<PRE>
+ (markup-trace :open "%%" :close "~n")
+</PRE>
+<P>or a definition in the TeX document like
+<P>
+<PRE>
+ \def\ignore#1{}
+</PRE>
+<P>combined with the command
+<P>
+<PRE>
+ (markup-trace :open "\ignore{" :close "}")
+</PRE>
+<P>
+<P>
+<P>
+<A NAME="raw-index"></A> <H2><A NAME="ss3.3">3.3 Raw Index Interface</A>
+</H2>
+
+<P>
+<P>This section can be skipped if the reader is not interested in
+adapting <SF>xindy</SF> to a new document preparation system.
+<P>The raw index is the file that represents the index that is to be
+processed. Since many different document preparation systems may use
+different forms of index representations, their output must be
+transformed in a form readable by <SF>xindy</SF>. We also could have
+written an configurable parser performing this task, but usually a
+tool written with some text processing tools such as <CODE>perl</CODE>,
+<CODE>sed</CODE> or <CODE>awk</CODE> can achieve the same task as well. Therefore,
+adapting <SF>xindy</SF> to a completely different system can mostly be
+done by writing an appropriate raw index filter.
+<P>The format of the raw index interface of <SF>xindy</SF> is defined as
+follows:
+<P>
+<A NAME="indexentry"></A>
+<BLOCKQUOTE><CODE>
+<PRE>
+(indexentry { :key string-list [:print string-list]
+ | :tkey list-of-layers }
+ [:attr string]
+ { :locref string [:open-range | :close-range]
+ | :xref string-list } )
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The pseudo variable <EM>string</EM> is a sequence of characters
+surrounded by double quotes, e.g.
+<P>
+<PRE>
+ "Hi, it's me" "one" "a string with two \"double quotes\""
+</PRE>
+<P>are three examples of valid strings. If you need to include a
+double quote as a literal character, you must quote it itself with a
+backslash as shown in the third example. A <EM>string list</EM> is simply
+a list of strings separated by whitespaces and surrounded by round
+braces. An example of a string list is
+<P>
+<PRE>
+ ("This" "is" "a" "list" "of" "strings")
+</PRE>
+<P>So far about the syntax. The semantics of the different elements are
+described here.
+<P>
+<P>
+<DL>
+<P>
+<DT><B><CODE>:key</CODE></B><DD><P>The argument <EM>string list</EM> defines the keyword of
+the index entry. It must be a list of strings, since the keyword may
+consist of different layers such as <CODE>("heap" "fibonacci")</CODE>.
+<P>
+<DT><B><CODE>:print</CODE></B><DD><P>The optional <EM>print key</EM> defines the way the
+keyword has to be printed in the markup phase.
+<P>
+<DT><B><CODE>:tkey</CODE></B><DD><P>Another possibility to define the keys of an
+index entry is with the <CODE>:tkey</CODE> keyword argument. It can be used
+instead of the <CODE>:key</CODE> and <CODE>:print</CODE> arguments. Instead of
+specifying separately the key and the corresponding print key, we
+define the keyword by its layers. Each layer consist of a list of one
+or two strings. The first string will be interpreted as the main key,
+whereas the second one will become the print key. If the print key is
+ommited, the main key is taken instead. So the definition
+<P>
+<PRE>
+ :tkey (("This") ("is") ("a") ("bang" "BANG !!!"))
+</PRE>
+<P>is equivalent to
+<P>
+<PRE>
+ :key ("This" "is" "a" "bang")
+ :print ("This" "is" "a" "BANG !!!")
+</PRE>
+<P>
+<P>
+<DT><B><CODE>:locref</CODE></B><DD><P>The reference an index entry describes can be a
+<EM>location reference</EM> or a <EM>cross reference</EM>. The switch
+<CODE>:locref</CODE> describes a location reference. Its optional arguments
+are <CODE>:open-range</CODE> and <CODE>:close-range</CODE>. The <EM>string</EM> that must
+be supplied must somehow encode the location reference. It might look
+like the string <CODE>"25"</CODE> representing the page number 25, or
+<CODE>"Appendix-I"</CODE> representing the first appendix numbered in
+uppercase roman numerals.
+<P>
+<DT><B><CODE>:open-range</CODE>,<CODE>:close-range</CODE></B><DD><P>These are switches that do not
+take any arguments. They describe the beginning and ending of a
+<EM>range</EM>, starting or ending from the location reference that is
+given by the argument <CODE>:locref</CODE>. If they are supplied, the
+location reference may have influence on the way ranges are build.
+<P>
+<DT><B><CODE>:xref</CODE></B><DD><P>These arguments choose the second alternative. The
+argument <EM>string list</EM> of parameter <CODE>:xref</CODE> describes where the
+index entry should point to.
+<P>
+<DT><B><CODE>:attr</CODE></B><DD><P>This parameter may be used to tag a location reference
+with a certain attribute or it names the class of a cross reference.
+It may also used to associate different markup for different
+attributes in the markup phase. If this parameter is omitted or is the
+empty string, the indexentry is declared to have the attribute
+<CODE>default</CODE>.
+<P>
+</DL>
+<P>Some examples:
+<P>
+<PRE>
+ (indexentry :key ("airplane") :locref "25" :attr "default")
+</PRE>
+<P>defines an index entry with the key `airplane' indexed on page '25'.
+This index entry has the attribute <CODE>default</CODE>.
+<P>
+<PRE>
+ (indexentry :key ("house") :xref ("building") :attr "see")
+</PRE>
+<P>defines a cross reference with the key 'house' pointing to the term
+'building'. This cross reference belongs to the cross reference class
+<CODE>see</CODE>.
+<P>
+<PRE>
+ (indexentry :key ("house") :xref ("building") :open-range)
+</PRE>
+<P>is an invalid specification, since <CODE>:open-range</CODE> mustn't be used
+together with cross references.
+<P>
+<P>
+<P>
+<HR>
+<A HREF="manual-4.html">Next</A>
+<A HREF="manual-2.html">Previous</A>
+<A HREF="manual.html#toc3">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-4.html b/Build/source/utils/xindy/doc/manual-4.html
new file mode 100644
index 00000000000..6d39d7ba240
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-4.html
@@ -0,0 +1,230 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: Processing Phases</TITLE>
+ <LINK HREF="manual-5.html" REL=next>
+ <LINK HREF="manual-3.html" REL=previous>
+ <LINK HREF="manual.html#toc4" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="manual-5.html">Next</A>
+<A HREF="manual-3.html">Previous</A>
+<A HREF="manual.html#toc4">Contents</A>
+<HR>
+<H2><A NAME="startup-phase"></A> <A NAME="s4">4. Processing Phases</A></H2>
+
+<H2><A NAME="ss4.1">4.1 The Startup Phase</A>
+</H2>
+
+<P>After the system is started, <SF>xindy</SF> reads in the index style that
+is passed as a command line argument. Each <CODE>require</CODE> command is
+executed and the internal data structures representing the index style
+are built up. The index style must completely be read in before the
+raw index can be read.
+<P>
+<P>
+<A NAME="processing-phase"></A> <H2><A NAME="ss4.2">4.2 The Processing Phase</A>
+</H2>
+
+<P>The processing phase starts with reading the complete raw index. The
+name of the raw index file must be passed via the command line. All
+index entries are read in and pre-processed. All attributes and
+cross reference classes are checked if they are already known to the
+system. All strings representing location references are matched
+against all known location classes. Appropriate warnings are issued,
+if errors are encountered.
+<P>After the raw index has completely been read in, the
+location references of each index entry are merged, separated and
+sorted and the building of ranges takes place. This phase is the most
+complex one and we will describe it in detail.
+<P>
+<OL>
+<LI> All location references are separated according to the class
+they belong to. These groups are called <EM>location class groups</EM>.
+Possible groups are all defined location and crossref classes. See
+the commands <CODE>define-location-class</CODE> and
+<CODE>define-crossref-class</CODE> for a description how these classes can
+be defined.
+
+The classes are sorted according to an order that can be defined with
+the command <CODE>define-location-class-order</CODE>.
+</LI>
+<LI> The further processing of each location class group is
+different for the location classes and the crossref classes.
+
+<UL>
+<LI> Cross references are sorted lexicographically based on
+the ISO-Latin alphabet.
+
+<A NAME="sort-merge-locrefs"></A> </LI>
+<LI> To illustrate the processing of location references we assume
+the following list:
+
+<BLOCKQUOTE>
+ <EM>13</EM>, <EM>14</EM>, <EM>15</EM>, <EM>18</EM>, <B>12</B>, <B>13</B>,
+<B>14</B>, <B>16</B>, 14, 16
+</BLOCKQUOTE>
+
+
+The location references in italics own the attribute `important,
+those with in boldface have attribute `definition', and all others
+are own the attribute `default'. Imagine, the attribute groups were
+defined with the commands
+
+<BLOCKQUOTE><CODE>
+<PRE>
+ (define-attribute-groups (("definition" "important")
+ ("default")))
+
+ (merge-to "definition" "default" :drop)
+
+</PRE>
+</CODE></BLOCKQUOTE>
+
+
+See commands <CODE>define-attributes</CODE> and <CODE>merge-to</CODE> for a
+detailed description.
+
+The substitution rules are applied. This means that
+location references <B>13</B> and <B>14</B> with attribute `important'
+are <EM>substituted</EM> by the location references <EM>13</EM> and <EM>14</EM>
+with attribute `definition'. Substitution means removing from the
+list of location references.
+
+Substitution occurs because the definition of the attribute groups
+implicitly defines <CODE>"definition"</CODE> <EM>substitutes</EM>
+<CODE>"important"</CODE>.
+
+The resulting list is now
+
+<BLOCKQUOTE>
+ <EM>13</EM>, <EM>14</EM>, <EM>15</EM>, <EM>18</EM>, <B>12</B>, <B>16</B>, 14,
+16
+</BLOCKQUOTE>
+
+
+<A NAME="def merge-to"></A> The <CODE>merge-to</CODE> rules are applied.
+Their meaning is to make location references appear with another
+attribute as well, but only in the function of supporting the
+building of ranges. They disappear after the ranges are built. The
+location references that cause new location refererences to be
+added are called <EM>parents</EM>, whereas the new ones are called
+<EM>childs</EM>. The example rule results in the adding of all
+refernces with attribute `definition' to the attribute `default'
+which results in the list
+
+<BLOCKQUOTE>
+ <EM>13</EM>, <EM>14</EM>, <EM>15</EM>, <EM>18</EM>, <B>12</B>, <B>16</B>, (13),
+14, (15), 16, (18)
+</BLOCKQUOTE>
+
+
+The childs are put in parenthesis since they may only be used to
+build up ranges.
+
+For each attribute we now try to build ranges. Since the switch
+<CODE>:drop</CODE> was specified we must start with the attribute
+`default', because a successful merging of location references may
+result in dropping the parents. This results in the range `13--16'.
+The childs
+(13) and (15) were used in the building of ranges, so their parents
+<EM>13</EM> and <EM>15</EM> have to be removed from the list of
+location references. This step would be omitted if the switch
+<CODE>:drop</CODE> were not specified. After unsucessfully trying to build
+more ranges and dropping the location references <EM>13</EM>, <EM>15</EM>
+and (18)--which was only meant to build ranges--we obtain the list
+
+<BLOCKQUOTE>
+<EM>14</EM>, <EM>18</EM>, <B>12</B>, <B>16</B>, 13--16
+</BLOCKQUOTE>
+
+
+Finally the attributes are brought into the right order. In our
+example the location references of the first attribute group are
+merged and sorted lexicographically resulting in two attribute groups
+
+<BLOCKQUOTE>
+(<B>12</B>, <EM>14</EM>, <B>16</B>, <EM>18</EM>) (13--16)
+</BLOCKQUOTE>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+</LI>
+</UL>
+
+</LI>
+</OL>
+<P>After all index entries have been processed the letter groups are
+formed and the index entries and location references are transformed
+into tree like structures as defined in the index style.
+<P>
+<P>
+<P>
+<A NAME="markup-phase"></A> <H2><A NAME="ss4.3">4.3 The Markup Phase</A>
+</H2>
+
+<P>After the index has completely been processed, the markup phase
+traverses the tree-like structure of the index. Each step triggers the
+appropriate markup events resulting in the emitting of markup tags.
+<P>
+<P>
+<P>
+<HR>
+<A HREF="manual-5.html">Next</A>
+<A HREF="manual-3.html">Previous</A>
+<A HREF="manual.html#toc4">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-5.html b/Build/source/utils/xindy/doc/manual-5.html
new file mode 100644
index 00000000000..072920545aa
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-5.html
@@ -0,0 +1,63 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: Index</TITLE>
+ <LINK HREF="manual-6.html" REL=next>
+ <LINK HREF="manual-4.html" REL=previous>
+ <LINK HREF="manual.html#toc5" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="manual-6.html">Next</A>
+<A HREF="manual-4.html">Previous</A>
+<A HREF="manual.html#toc5">Contents</A>
+<HR>
+<H2><A NAME="INDEX"></A> <A NAME="s5">5. Index</A></H2>
+
+<P>
+<P><B>List of Commands</B>
+<P>
+<A HREF="manual-3.html#define-attributes">define-attributes</A><BR>
+<A HREF="manual-3.html#define-alphabet">define-alphabet</A><BR>
+<A HREF="manual-3.html#define-crossref-class">define-crossref-class</A><BR>
+<A HREF="manual-3.html#define-letter-group">define-letter-group</A><BR>
+<A HREF="manual-3.html#define-letter-groups">define-letter-groups</A><BR>
+<A HREF="manual-3.html#define-location-class">define-location-class</A><BR>
+<A HREF="manual-3.html#define-location-class-order">define-location-class-order</A><BR>
+<A HREF="manual-3.html#define-rule-set">define-rule-set</A><BR>
+<A HREF="manual-3.html#define-sort-rule-orientations">define-sort-rule-orientations</A><BR>
+<A HREF="manual-3.html#indexentry">indexentry</A><BR>
+<A HREF="manual-3.html#markup-attribute-group">markup-attribute-group</A><BR>
+<A HREF="manual-3.html#markup-attribute-group-list">markup-attribute-group-list</A><BR>
+<A HREF="manual-3.html#markup-crossref-layer">markup-crossref-layer</A><BR>
+<A HREF="manual-3.html#markup-crossref-layer-list">markup-crossref-layer-list</A><BR>
+<A HREF="manual-3.html#markup-crossref-layer">markup-crossref-layer</A><BR>
+<A HREF="manual-3.html#markup-index">markup-index</A><BR>
+<A HREF="manual-3.html#markup-indexentry">markup-indexentry</A><BR>
+<A HREF="manual-3.html#markup-indexentry-list">markup-indexentry-list</A><BR>
+<A HREF="manual-3.html#markup-keyword">markup-keyword</A><BR>
+<A HREF="manual-3.html#markup-keyword-list">markup-keyword-list</A><BR>
+<A HREF="manual-3.html#markup-letter-group">markup-letter-group</A><BR>
+<A HREF="manual-3.html#markup-letter-group-list">markup-letter-group-list</A><BR>
+<A HREF="manual-3.html#markup-locclass-list">markup-locclass-list</A><BR>
+<A HREF="manual-3.html#markup-locref">markup-locref</A><BR>
+<A HREF="manual-3.html#markup-locref-class">markup-locref-class</A><BR>
+<A HREF="manual-3.html#markup-locref-layer">markup-locref-layer</A><BR>
+<A HREF="manual-3.html#markup-locref-layer-list">markup-locref-layer-list</A><BR>
+<A HREF="manual-3.html#markup-locref-list">markup-locref-list</A><BR>
+<A HREF="manual-3.html#markup-range">markup-range</A><BR>
+<A HREF="manual-3.html#markup-trace">markup-trace</A><BR>
+<A HREF="manual-3.html#merge-rule">merge-rule</A><BR>
+<A HREF="manual-3.html#merge-to">merge-to</A><BR>
+<A HREF="manual-3.html#require">require</A><BR>
+<A HREF="manual-3.html#searchpath">searchpath</A><BR>
+<A HREF="manual-3.html#sort-rule">sort-rule</A><BR>
+<A HREF="manual-3.html#use-rule-set">use-rule-set</A><P>
+<P>
+<P>
+<HR>
+<A HREF="manual-6.html">Next</A>
+<A HREF="manual-4.html">Previous</A>
+<A HREF="manual.html#toc5">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-6.html b/Build/source/utils/xindy/doc/manual-6.html
new file mode 100644
index 00000000000..dfbf33ccc91
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-6.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: References</TITLE>
+ <LINK HREF="manual-5.html" REL=previous>
+ <LINK HREF="manual.html#toc6" REL=contents>
+</HEAD>
+<BODY>
+Next
+<A HREF="manual-5.html">Previous</A>
+<A HREF="manual.html#toc6">Contents</A>
+<HR>
+<H2><A NAME="s6">6. References</A></H2>
+
+<P>
+<P>The following books and papers were referenced in this document.
+<P>
+<OL>
+<LI> D. E. Knuth, <EM>The TeXbook</EM>, Addison-Wesley, 1984
+</LI>
+<LI> Leslie Lamport, LaTeX <EM>A Document Preparation System</EM>,
+Addison-Wesley, 1986
+</LI>
+<LI> Joachim Schrod, <EM>An International Version of MakeIndex</EM>,
+Cahiers GUTenberg, 10, p81-90, 1991
+</LI>
+<LI> Pehong Chen and Michael A. Harrison, <EM>Automating Index
+Preparation</EM>, TR-87/347, University of California Berkeley, 1987
+<A NAME="makeindex"></A>
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF>, <EM>Ein Flexibles Indexierungssystem</EM>,
+Studienarbeit FB Informatik, TH-Darmstadt, November 1995.
+</LI>
+<LI> Joachim Schrod and Gabor Herr, <EM>MakeIndex Version 3.0</EM>,
+Technical University Darmstadt, 1991
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Technical Report No. 11/1997, Computer Science Department, Darmstadt
+University of Technology, 1997. Also accessible from the <SF>xindy</SF>
+homepage.
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Proceedings of the EuroTeX'98, St. Malo, France, March 1998
+</LI>
+</OL>
+<P>
+<HR>
+Next
+<A HREF="manual-5.html">Previous</A>
+<A HREF="manual.html#toc6">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual-7.html b/Build/source/utils/xindy/doc/manual-7.html
new file mode 100644
index 00000000000..c1c26ed507a
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual-7.html
@@ -0,0 +1,53 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual: References</TITLE>
+ <LINK HREF="manual-6.html" REL=previous>
+ <LINK HREF="manual.html#toc7" REL=contents>
+</HEAD>
+<BODY>
+Next
+<A HREF="manual-6.html">Previous</A>
+<A HREF="manual.html#toc7">Contents</A>
+<HR>
+<H2><A NAME="s7">7. References</A></H2>
+
+<P>
+<P>The following books and papers were referenced in this document.
+<P>
+<OL>
+<LI> D. E. Knuth, <EM>The TeXbook</EM>, Addison-Wesley, 1984
+</LI>
+<LI> Leslie Lamport, LaTeX <EM>A Document Preparation System</EM>,
+Addison-Wesley, 1986
+</LI>
+<LI> Joachim Schrod, <EM>An International Version of MakeIndex</EM>,
+Cahiers GUTenberg, 10, p81-90, 1991
+</LI>
+<LI> Pehong Chen and Michael A. Harrison, <EM>Automating Index
+Preparation</EM>, TR-87/347, University of California Berkeley, 1987
+<A NAME="makeindex"></A>
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF>, <EM>Ein Flexibles Indexierungssystem</EM>,
+Studienarbeit FB Informatik, TH-Darmstadt, November 1995.
+</LI>
+<LI> Joachim Schrod and Gabor Herr, <EM>MakeIndex Version 3.0</EM>,
+Technical University Darmstadt, 1991
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Technical Report No. 11/1997, Computer Science Department, Darmstadt
+University of Technology, 1997. Also accessible from the <SF>xindy</SF>
+homepage.
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF> -- <EM>A Flexible Indexing System</EM>,
+Proceedings of the EuroTeX'98, St. Malo, France, March 1998
+</LI>
+</OL>
+<P>
+<HR>
+Next
+<A HREF="manual-6.html">Previous</A>
+<A HREF="manual.html#toc7">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/manual.html b/Build/source/utils/xindy/doc/manual.html
new file mode 100644
index 00000000000..344b0e19cab
--- /dev/null
+++ b/Build/source/utils/xindy/doc/manual.html
@@ -0,0 +1,73 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>xindy Manual</TITLE>
+ <LINK HREF="manual-1.html" REL=next>
+
+
+</HEAD>
+<BODY>
+<A HREF="manual-1.html">Next</A>
+Previous
+Contents
+<HR>
+<H1><SF>xindy</SF> Manual</H1>
+
+<H2>Roger Kehr</H2>
+<H3>Computer Science Department, Technical University of Darmstadt</H3>
+ and
+<H2>Joachim Schrod</H2>
+<H3>Joachim Schrod Net &amp; Publication Consultance GmbH</H3>
+$Revision: 1.19 $, $Date: 2004/05/24 21:43:16 $,
+for xindy version 2.2
+<P><HR>
+<EM>This is the manual of the indexing system <SF>xindy</SF>. <SF>xindy</SF>
+is a powerful and flexible framework for generating indexes for many
+kinds of documents. This document describes the <SF>xindy</SF> processing
+model, terminology, and language, but not invocation and standard modules.
+The most up-to-date version can be obtained from the <SF>xindy</SF> Web Site at
+<A HREF="http://www.xindy.org/">http://www.xindy.org/</A>.</EM>
+<HR>
+<P>
+<A HREF="manual-5.html#INDEX">Index of all xindy commands</A><P>
+<P>
+<P>
+<P>
+<H2><A NAME="toc1">1.</A> <A HREF="manual-1.html">About this Manual</A></H2>
+
+<P>
+<H2><A NAME="toc2">2.</A> <A HREF="manual-2.html">How the Index Processor Works</A></H2>
+
+<UL>
+<LI><A HREF="manual-2.html#ss2.1">2.1 Data Flow</A>
+<LI><A HREF="manual-2.html#ss2.2">2.2 General Concepts and Terms</A>
+</UL>
+<P>
+<H2><A NAME="toc3">3.</A> <A HREF="manual-3.html">Command List</A></H2>
+
+<UL>
+<LI><A HREF="manual-3.html#ss3.1">3.1 Processing Commands</A>
+<LI><A HREF="manual-3.html#ss3.2">3.2 Markup Commands</A>
+<LI><A HREF="manual-3.html#ss3.3">3.3 Raw Index Interface</A>
+</UL>
+<P>
+<H2><A NAME="toc4">4.</A> <A HREF="manual-4.html">Processing Phases</A></H2>
+
+<UL>
+<LI><A HREF="manual-4.html#ss4.1">4.1 The Startup Phase</A>
+<LI><A HREF="manual-4.html#ss4.2">4.2 The Processing Phase</A>
+<LI><A HREF="manual-4.html#ss4.3">4.3 The Markup Phase</A>
+</UL>
+<P>
+<H2><A NAME="toc5">5.</A> <A HREF="manual-5.html">Index</A></H2>
+
+<P>
+<H2><A NAME="toc6">6.</A> <A HREF="manual-6.html">References</A></H2>
+
+<HR>
+<A HREF="manual-1.html">Next</A>
+Previous
+Contents
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/mappings.gif b/Build/source/utils/xindy/doc/mappings.gif
new file mode 100644
index 00000000000..be58722f4d9
--- /dev/null
+++ b/Build/source/utils/xindy/doc/mappings.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/next.gif b/Build/source/utils/xindy/doc/next.gif
new file mode 100644
index 00000000000..7a2dbe955e0
--- /dev/null
+++ b/Build/source/utils/xindy/doc/next.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/prev.gif b/Build/source/utils/xindy/doc/prev.gif
new file mode 100644
index 00000000000..aef90f1fc49
--- /dev/null
+++ b/Build/source/utils/xindy/doc/prev.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/style-tutorial-1.html b/Build/source/utils/xindy/doc/style-tutorial-1.html
new file mode 100644
index 00000000000..890b1ecd8b9
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial-1.html
@@ -0,0 +1,92 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY Style File Tutorial: About xindy</TITLE>
+ <LINK HREF="style-tutorial-2.html" REL=next>
+
+ <LINK HREF="style-tutorial.html#toc1" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="style-tutorial-2.html">Next</A>
+Previous
+<A HREF="style-tutorial.html#toc1">Contents</A>
+<HR>
+<H2><A NAME="s1">1. About <SF>xindy</SF></A></H2>
+
+<P><SF>xindy</SF> means fle<B>x</B>ible <B>ind</B>exing s<B>y</B>stem. It is an
+indexing system that can be used to generate book-like indexes for
+arbitrary document preparation systems. This term includes systems
+such as TeX [1] and LaTeX [2], the Nroff-family
+or SGML-based systems (e.g. HTML) that process some kind of text and
+generate indexing information. It is not fixed to any specific system,
+but can be configured for a wide variety of purposes.
+<P>Authors sometimes wish to include an index into their document, but
+very often their document preparation systems aren't able to produce
+indexes on their own, or the capabilities of the built-in indexers are
+insufficient and produce ugly looking results. More often they use
+separate specialized tools for this purpose, sometimes called
+<EM>index processors</EM>.
+<P>In comparison to other index processors <SF>xindy</SF> has several
+powerful features that make it an ideal framework for describing and
+generating complex indexes. Its most interesting features are
+<P>
+<DL>
+<P>
+<DT><B>Internationality</B><DD><P><SF>xindy</SF> can be configured to process indexes
+for many languages with different letter sets and different sorting
+rules. For example, many roman languages such as Italian, French,
+Portuguese or Spanish contain accentuated letters such as &Agrave;,
+&Aacute;, &ntilde;. Other languages from northern Europe have letters
+like &Auml;, &Oslash;, &aelig; or &szlig; which often can't even be
+processed by many index processors let alone sorting them correctly
+into an index. The <SF>xindy</SF> system can be configured to process
+these alphabets by defining <EM>sort</EM> and <EM>merge rules</EM> that allow
+expressing language specific rules. One example of such a rule would
+be
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule "ä" "ae")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>defining that a word containing the umlaut-a will be sorted as if it
+contained the letters <CODE>ae</CODE> instead. This is one form of how the
+umlaut-a ("ä") is sorted into german indexes. With an appropriate set
+of rules on can express the complete rules of a specific language.
+<P>
+<DT><B>User Definable Location Types</B><DD><P>Locations are the entities an
+index entry points to. Often used locations are <EM>page numbers</EM>,
+<EM>section numbers</EM>, etc. <SF>xindy</SF> allows to define new kinds of
+types to be composed of basic entities like arabic numbers, roman
+numerals, letters, etc. which can be used to describe new index types.
+Examples of these entities can be books that have a page numbering
+scheme that starts from 1 for each new chapter resulting in page
+numbers of the form <EM>1-13, 2-15, 2-20</EM>, etc. This type of locations
+can often be found in computer manuals. A more complex structure is
+represented by the locations <EM>Psalm 46, 1-8</EM> and <EM>Genesis 1,
+31</EM>. Even the structure of bible verses can be described allowing
+<SF>xindy</SF> to correctly sort and process indexes for documents with a
+completely different structure.
+<P>
+<DT><B>Highly Configurable Markup</B><DD><P>Since a index processor is only one
+component in a document preparation system it ought to fit smoothly
+into the complete environment. Many text processing systems use the
+concept of <EM>environments</EM> that can be used to describe the markup
+of the text entities. Our approach is based on this concept which has
+proved to be expressive enough for most applications. As an example
+one can view systems such as TeX, SGML and its instance HTML, GNU
+Info, RTF and the Nroff-familiy of document formatters. The markup of
+an index can be defined for all of these systems in a very comfortable
+though extremly powerful way.
+<P>
+</DL>
+<P>
+<P>
+<P>
+<HR>
+<A HREF="style-tutorial-2.html">Next</A>
+Previous
+<A HREF="style-tutorial.html#toc1">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/style-tutorial-2.html b/Build/source/utils/xindy/doc/style-tutorial-2.html
new file mode 100644
index 00000000000..b5313e59d72
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial-2.html
@@ -0,0 +1,361 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY Style File Tutorial: A Basic Introduction</TITLE>
+ <LINK HREF="style-tutorial-3.html" REL=next>
+ <LINK HREF="style-tutorial-1.html" REL=previous>
+ <LINK HREF="style-tutorial.html#toc2" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="style-tutorial-3.html">Next</A>
+<A HREF="style-tutorial-1.html">Previous</A>
+<A HREF="style-tutorial.html#toc2">Contents</A>
+<HR>
+<H2><A NAME="s2">2. A Basic Introduction</A></H2>
+
+<P>This section incrementally introduces the most important aspects of
+the system. After reading this chapter you should be able to specify
+style files for
+about 80% of the commonly used indexes. The examples are demonstrated
+with a TeX markup so one can easily typeset the results <SF>xindy</SF>
+produces. You need LaTeX and the ISO-Latin enhancements that come
+with the <CODE>inputenc</CODE> package to run the following examples. Also the
+<SF>xindy</SF> system must already be installed.
+<P>
+But this tutorial doesn't reflect real life any more. The concepts are
+introduced below to explain them, but actual usage is probably
+different. In particular, you should not expect to specify sort rules
+by hand; usually one uses the language modules for that. Same way,
+xindy standard modules provide lots of markup functionality that you
+need for your documents, and can be used as a starting point.
+Nevertheless, let's continue with the explanation of <sf>xindy</sf>'s
+style file language.
+<P>
+<H2><A NAME="ss2.1">2.1 Running <SF>xindy</SF></A>
+</H2>
+
+<P>Create a new directory somewhere and copy some files from the
+distribution directory <CODE>doc/style-tutorial/</CODE> by typing
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+eg$ mkdir tutorial
+eg$ cd tutorial
+eg$ cp &lt;distrib-dir>/doc/style-tutorial/*.raw .
+eg$ cp &lt;distrib-dir>/doc/style-tutorial/*.tex .
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>with <CODE>distrib-dir</CODE> replaced by the actual location. Now create a
+file <CODE>style1.xdy</CODE> with the following content:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+;; This is a first example using `xindy'.
+
+(define-location-class "page-numbers" ("arabic-numbers"))
+(define-attributes (("definition" "usage")))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Now run <SF>xindy</SF> by typing
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+eg$ xindy -t ex1.xlg -M style1 -I xindy ex1.raw
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>You should see something like
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+Opening logfile "ex1.xlg" (done)
+Reading indexstyle...
+Loading module "style1.xdy"...
+Finished loading module "style1.xdy".
+Finished reading indexstyle.
+Finalizing indexstyle... (done)
+
+Reading raw-index "ex1.raw"...
+Finished reading raw-index.
+
+Processing index... [10%] [20%] [30%] [40%] [50%] [60%] [70%] [80%] [90%] [100%]
+Finished processing index.
+
+Writing markup... [10%] [20%] [30%] [40%] [50%] [60%] [70%] [80%] [90%] [100%]
+Markup written into file "ex1.ind".
+</PRE>
+</CODE></BLOCKQUOTE>
+<P><SF>xindy</SF> has now successfully compiled the index <CODE>ex1.raw</CODE> using
+your index style <CODE>style1.xdy</CODE>. The result is now stored in file
+<CODE>ex1.ind</CODE>. You can view this file but currently it only contains an
+unreadable mix of data.
+<P>But now let's come back to our index style. The syntax of the command
+is in a Lisp-like form with lots of braces, looking a little bit
+weird, but you'll soon get used to it. What is the meaning of the two
+commands we specified? The first command informed <SF>xindy</SF> that we
+like to process page numbers. We do this by defining a new
+<EM>location class</EM> named <CODE>page-numbers</CODE>. The page numbers consist
+of <CODE>arabic-numbers</CODE> as we might expect but this is not necessarily
+true---imagine your page numbers consisted of roman numerals instead.
+When reading the <EM>raw index</EM> contained in file <CODE>ex1.raw</CODE>
+<SF>xindy</SF> checks all locations if they match all known location
+classes. Since in our example the only known location class is the
+class of page numbers which are written using arabic digits, all
+locations will be checked if they are correct page numbers.
+<P>The second command tells <SF>xindy</SF> that we use two types of
+attributes for location references. Most often the locations in an
+index denote different meanings. For example, in mathematical texts
+one will distinguish the <EM>definition</EM> of a mathematical term from
+its <EM>usage</EM>. Sometimes these are typeset using different font
+shapes such as <EM>italic</EM> or font series such as <B>boldface</B>. Each
+location has an associated attribute which, if it is unspecified,
+defaults to the attribute <CODE>default</CODE>. With this command you have
+made these attributes known to the system, which makes it possible to
+assign different markup to these attributes later on.
+<P>
+<P>
+<H2><A NAME="ss2.2">2.2 Adding some Markup</A>
+</H2>
+
+<P>Until now you haven't seen something exciting, so its time to specify
+some markup. Add the following lines to our index style:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-index :open "~n\begin{theindex}~n"
+ :close "~n\end{theindex}~n"
+ :tree)
+
+(markup-locref :class "page-numbers" :attr "definition"
+ :open "{\bf " :close "}")
+
+(markup-locclass-list :open "\quad{}")
+(markup-locref-list :sep ", ")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Now run <SF>xindy</SF> again and afterwards LaTeX:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+eg$ xindy -t ex1.xlg -M style1 -I xindy ex1.raw
+eg$ latex ex1.tex
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>You can view <CODE>ex1.dvi</CODE> with your prefered viewer (maybe <CODE>xdvi</CODE>
+or something else) to get a first impression of your results. Maybe
+your are not satisfied (for sure you aren't), because it still looks
+very confusing. What did the above rules tell <SF>xindy</SF>? When you
+view the file <CODE>ex1.ind</CODE> which is the result <SF>xindy</SF> generates,
+you'll recognize some of the <EM>markup tags</EM> you specified. The
+following is an excerpt of this file:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\begin{theindex}
+ academia\quad{}{\bf 1}acafetado\quad{}{\bf 2}acalmar\quad{}{\bf 4}
+ açafrão\quad{}{\bf 3}indexflat\quad{}1hierarchical\quad{}2
+ veryhierarchical\quad{}3impressive\quad{}4saber\quad{}{\bf 7}
+ sabor\quad{}{\bf 8}sabão\quad{}{\bf 6}sábado\quad{}{\bf 5}
+\end{theindex}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>First of all you'll see that the file starts with the string
+<CODE>\begin{theindex}</CODE> and ends with <CODE>\end{theindex}</CODE>.
+Additionally some locations are correctly enclosed into a TeX macro
+that typesets them in shape boldface, whereas others aren't. The
+boldface ones are all those locations from the raw index that have the
+attribute <CODE>definition</CODE>.
+<P>The <CODE>:open</CODE> and <CODE>:close</CODE> keyword arguments each take a string as
+argument. The first one is written to the file when <EM>opening</EM> an
+enviroment, whereas the latter one <EM>closes</EM> an environment. What we
+have specified is the markup for the whole index (which is actually
+printed only once) and the markup for all locations of class
+<CODE>page-numbers</CODE> which own the attribute <CODE>definition</CODE>. Here we
+have cleanly separated the structured markup from the visual one,
+allowing an easy redefinition if we decide, for example, to markup the
+<CODE>definition</CODE>-locations in italics instead of boldface.
+<P>Some words on <EM>keyword arguments</EM> and <EM>switches</EM>. Keyword
+arguments such as <CODE>:open</CODE> or <CODE>:close</CODE> always take exactly one
+argument which must be positioned right after the keyword separated by
+a whitespace (a blank or a tab-stop). Switches don't take any
+arguments. For example, <CODE>:tree</CODE> in the command <CODE>markup-index</CODE> is
+a switch and thus it does not take an argument. We will use this
+terminology throughout the rest of this document.
+<P>The third command caused <SF>xindy</SF> to insert a horizontal space
+between the keyword and the locations (the TeX command
+<CODE>\quad{}</CODE> simply inserts a specific horizontal space). The last
+command caused <SF>xindy</SF> to separate all location references from
+each other with a comma followed by a blank, independently of any
+location class.
+<P>As you already may have observed, the tilde sign (<CODE>~</CODE>) serves
+as a <EM>quoting character</EM>.
+<P>We continue specifying markup to get a printable result by adding more
+markup:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This assigns different markup for the different hierarchy layers of
+the indexentries. Our index is hierarchically organized. It contains
+items which themselves contain more sub-items which also might contain
+sub-sub-items. Each layer is started by a different markup which is
+correctly assigned with the <CODE>:depth</CODE> keyword argument. The layers
+are numbered by their <EM>depth</EM> starting from zero.
+<P>Now run <SF>xindy</SF> and TeX again and enjoy your first index. It's
+easy, isn't it! The output <CODE>ex1.ind</CODE> looks like the following:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+\begin{theindex}
+
+ \item academia\quad{}{\bf 1}
+ \item acafetado\quad{}{\bf 2}
+ \item acalmar\quad{}{\bf 4}
+ \item açafrão\quad{}{\bf 3}
+ \item index
+ \subitem flat\quad{}1
+ \subitem hierarchical\quad{}2
+ \subitem very
+ \subsubitem hierarchical\quad{}3
+ \subsubitem impressive\quad{}4
+ \item saber\quad{}{\bf 7}
+ \item sabor\quad{}{\bf 8}
+ \item sabão\quad{}{\bf 6}
+ \item sábado\quad{}{\bf 5}
+
+\end{theindex}
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>Hmm, as you might have seen there are several problems that need
+further investigation. The index contains some Portuguese words that
+are printed correctly but should appear at other positions inside the
+index. For instance, the word <EM>sábado</EM> should appear before the
+word <EM>saber</EM> since <EM>á</EM> must be sorted as if it were simply an
+<EM>a</EM>. The reason why these words are not sorted correctly is
+simple---the accentuated letters have codes beyond position 128 in the
+ISO-Latin alphabet. Sorting based on these codes yields this incorrect
+order.
+<P>What to do? We can define for each of the words containing these
+special characters an explicit <EM>print key</EM>. The print key describes
+the printed representation of the keyword whereas the <EM>key</EM> or
+<EM>main key</EM> is used for sorting and merging. A very tedious task
+which is not a very clever solution since in a non-english language
+many many words contain these special cases. We follow the way
+<SF>xindy</SF> offers: <EM>keyword-mappings</EM>.
+<P>
+<H2><A NAME="ss2.3">2.3 Keyword Mappings</A>
+</H2>
+
+<P>What are keyword mappings for? A good question. I'll try to give some
+answers.
+<P>
+<UL>
+<LI> <EM>Merging of differently written words</EM>. Some text formatting
+systems allow different writings for the same word. For example, TeX
+can be used with ISO-Latin characters as well as with its own
+character sequences. If a document is composed from smaller ones
+possibly written by different authors using different forms of writing
+the index entries, the same terms may happen to be written differently
+and consequently we need a mechanism to identify them as equal.
+</LI>
+<LI> <EM>Specifying the sort order</EM>. As outlined in the previous
+section it is really difficult and error-prone to specify the sort key
+for each keyword explicitly. Sometimes the sort order is even
+different for the type of the document, as it happens in German, where
+two different types of sortings exist, one for everyday indexes and
+one for dictionaries. The sort order actually defines the position of
+arbitrary language-specific letters inside of an index.
+</LI>
+</UL>
+<P>A detailed elaboration of these ideas can be found in the paper <EM>An
+International Version of MakeIndex</EM> by Joachim Schrod [3].
+It describes the ideas that led to modifications on one of the
+ancestors of the <SF>xindy</SF> system: <CODE>makeindex</CODE> [4].
+<P>The keyword mappings are as follows. The <EM>merge key</EM> is generated
+from the <EM>main key</EM> with the so called <EM>merge mapping</EM>. The
+merge mapping can be specified with the command <CODE>merge-rule</CODE>. The
+<EM>sort key</EM> is derived from the merge key using the <EM>sort
+mapping</EM> specified with the <CODE>sort-rule</CODE> command. The following
+scheme shows this mapping process:
+<P>
+<FIGURE>
+<EPS FILE="mappings.eps">
+<IMG SRC="mappings.gif">
+</FIGURE>
+<P>
+<P>We will use this command now to define a suitable sort mapping that
+fits our needs:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(sort-rule "à" "a")
+(sort-rule "á" "a")
+(sort-rule "ã" "a")
+(sort-rule "è" "e")
+(sort-rule "é" "e")
+(sort-rule "ç" "c")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>These rules define mappings from a keyword to a <EM>normalized</EM>
+version. In the logfile <CODE>ex1.xlg</CODE> these transformations are logged so
+that one can see how these mappings are performed. In this example we
+do not need any <CODE>merge-rule</CODE> but we will see applications in
+further examples.
+<P>Running <SF>xindy</SF> and TeXing the result now places the indexentries
+at the right positions.
+<P>In reality, such sort rules tend to be much more complex, due to
+the idiosynchrasies of sorting natural languages. Sort rules for
+many languages are available as part of the xindy distribution, as
+so-called language modules. We specify the language with the option
+<code>-L</code>, e.g., in our example we could have used
+<BLOCKQUOTE><CODE>
+<PRE>
+eg$ xindy -t ex1.xlg -M style1 -L portuguese -I xindy ex1.raw
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>If we use one of the available language modules, sort rules in
+user-written xindy styles are ignored.
+<P>The result is now quite satisfying if the index entries weren't
+clumped together that much. We usually want the different index
+entries beginning with the same letter be optically separated from the
+ofhers. This improves readability and there must be a way to
+accomplish this---the <EM>letter groups</EM>.
+<P>
+<H2><A NAME="ss2.4">2.4 Letter Groups</A>
+</H2>
+
+<P>To group indexentries we must define what indexentries form a group.
+The clustering is done by matching the keywords' prefixes (taken from
+the <EM>sort key</EM>) with a user-defined table of prefixes and define
+appropriate markup that separates the groups from each other. Here it
+goes.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+(markup-letter-group-list :sep "~n\indexspace")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This defines the given list of letter groups. When forming the letter
+groups, each letter group is checked if it matches a prefix of the
+indexentries' sort key. The longest match assigns the index entry to
+this letter group. If no match was possible the index entry is put into
+group <CODE>default</CODE>.
+<P>The result now looks much better than before. You have now learned the
+basic features that you need to specify everyday indexes. In the next
+chapter we'll continue to make you an expert in indexing.
+<P>
+<P>
+<HR>
+<A HREF="style-tutorial-3.html">Next</A>
+<A HREF="style-tutorial-1.html">Previous</A>
+<A HREF="style-tutorial.html#toc2">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/style-tutorial-3.html b/Build/source/utils/xindy/doc/style-tutorial-3.html
new file mode 100644
index 00000000000..5c598e54938
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial-3.html
@@ -0,0 +1,263 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY Style File Tutorial: Advanced Features</TITLE>
+ <LINK HREF="style-tutorial-4.html" REL=next>
+ <LINK HREF="style-tutorial-2.html" REL=previous>
+ <LINK HREF="style-tutorial.html#toc3" REL=contents>
+</HEAD>
+<BODY>
+<A HREF="style-tutorial-4.html">Next</A>
+<A HREF="style-tutorial-2.html">Previous</A>
+<A HREF="style-tutorial.html#toc3">Contents</A>
+<HR>
+<H2><A NAME="s3">3. Advanced Features</A></H2>
+
+<P>In the following sections you'll learn more about the features of
+<SF>xindy</SF>. We'll show you how you can define your own
+location classes, specify the letter groups in more detail and bring
+you close to more specfic markup features. After reading this chapter
+you should be able to master about 95% of the commonly used indexes.
+<P>
+<P>
+<H2><A NAME="ss3.1">3.1 Location Classes</A>
+</H2>
+
+<P>We continue using a more complex index. Copy the current style to a
+new file (now <CODE>style2.xdy</CODE>) and run <SF>xindy</SF> on the raw index
+<CODE>ex2.raw</CODE> by typing:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+eg$ cp style1.xdy style2.xdy
+eg$ xindy -t ex2.xlg -M style2 -I xindy ex2.raw
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>You should see some error messages indicating that something is
+unknown to <SF>xindy</SF>. What has happend? The messages should be
+similar to the following snapshot:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ ...
+WARNING:
+location-reference "B-5" did not match any location-class! (ignored)
+WARNING:
+location-reference "C-8" did not match any location-class! (ignored)
+WARNING:
+location-reference "iv" did not match any location-class! (ignored)
+WARNING:
+location-reference "ii" did not match any location-class! (ignored)
+ ...
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The index contains new, and therefore unknown, location classes. The
+first one has an appendix-like style, whereas the second one seems to
+be lowercase roman numerals. <SF>xindy</SF> reported, that it doesn't know
+these locations and therefore knows nothing about their internal
+structure. We make them known to the system by adding the following
+commands to the style file.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class "roman-pages" ("roman-numerals-lowercase"))
+(define-location-class "appendices" ("ALPHA" :sep "-" "arabic-numbers"))
+(define-location-class-order ("roman-pages" "appendices"))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The first command tells <SF>xindy</SF> that there exist some page numbers
+that are written with roman lowercase letters. The second one defines
+the structure of the appendix locations. They consist of three
+elements, a capital letter, a separator---which is a hyphen in our
+case---and finally an arabic number. To be able to correctly
+distinguish separator strings from the names of the known
+<EM>basetypes</EM>, the argument <CODE>:sep</CODE> indicates, that the following
+is a separator. The last command simply says that the locations which
+are roman numerals shall appear before the appendix locations. So far
+we know three different basetypes. The built-in basetypes of
+<SF>xindy</SF> are:
+<P>
+<DL>
+<DT><B><CODE>arabic-numbers</CODE></B><DD><P>contains all non-negative numbers beginning
+with zero: 0, 1, 2, ....
+<P>
+<DT><B><CODE>roman-numerals-uppercase</CODE>, <CODE>roman-numerals-lowercase</CODE></B><DD><P>the
+roman numerals I, II, III, (IIII/IV), V, ... It contains the old and
+new roman numeral system. Two versions for uppercase and lowercase
+letters are supported.
+<P>
+<DT><B><CODE>ALPHA</CODE>, <CODE>alpha</CODE></B><DD><P>The US-ASCII alphabet letters (uppercase
+and lowercase letters).
+<P>
+<DT><B><CODE>digits</CODE></B><DD><P>the digits 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9 in this
+order.
+</DL>
+<P>`Fine,', you'll say, `but what if my basetypes are completely
+different?' You're right! But <SF>xindy</SF> offers you to define your own
+alphabets. For example, you can define a new alphabet by writing
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-alphabet "my-personal-alphabet" ("Hi" "ho" "here" "I" "go"))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This is a valid alphabet that consists of 5 <EM>letters</EM>. You can now
+define a location class
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class "my-personal-class"
+ ("my-personal-alphabet" :sep "-" "arabic-numbers"))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>to match all of the following locations: <EM>Hi-12, ho-2, here-709,
+I-9, go-42</EM>. <SF>xindy</SF> will recognize them and be able to sort them
+according to your specification which says that <EM>Hi</EM> comes before
+all others and <EM>here</EM> is exactly at the third position. So they
+will be sorted lexicographically, layer by layer, until it can decide
+which one is before or after the other. We have prepared a concrete
+example. Do you remember the example we gave when we spoke about
+indexing bible verses? This exactly matches the situation of such a
+self-defined alphabet which could look like the following definitions:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-alphabet "bible-chapters"
+ ("Genesis" "Exodus" "Leviticus" "Numbers" "Deuteronomy"
+ ... ))
+(define-location-class "bible-verses"
+ ("bible-chapters" :sep " " "arabic-numbers" :sep "," "arabic-numbers"))
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This description would match locations like <EM>Genesis 1,3</EM>,
+<EM>Exodus 7,8</EM>, etc.
+<P>Now run LaTeX on <CODE>ex2.tex</CODE> and view the results. It looks a
+little bit strange since <SF>xindy</SF> has automatically built ranges of
+successive locations. The first locations of the index entry <EM>roman</EM>
+actually denote the range <EM>ii</EM> until <EM>iv</EM>. <EM>Ranges</EM> consist
+of location references. To typeset them correctly you can specify
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(markup-range :sep "--")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>This indicates that location reference forming a range shall be
+separated by a hyphen. Running <SF>xindy</SF> and LaTeX again gives a
+better idea of how it should look like. Here is a part of the
+generated output.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ ...
+ \item appendices\quad{}A-1, A-7, A-11, B-3--B-5, C-1, C-8, C-12,
+ C-13, C-22, D-2, D-3, D-5, D-10
+ ...
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>
+<H2><A NAME="ss3.2">3.2 Hierarchical Location Classes</A>
+</H2>
+
+<P>Somehow a lot of space is wasted when looking at the first index entry.
+Modify the definition of the location class for appendices as follows
+and add the other commands as well:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-location-class "appendices"
+ ("ALPHA" :sep "-" "arabic-numbers")
+ :hierdepth 2)
+(markup-locref-list :sep "; " :depth 0 :class "appendices")
+(markup-locref-list :open "~~" :sep ", " :depth 1 :class "appendices")
+</PRE>
+</CODE></BLOCKQUOTE>
+<P><EM>Note: Since the tilde character serves as our quoting character it
+must be quoted itself in the above example.</EM> Run <SF>xindy</SF> and view
+the output stored in <CODE>ex2.ind</CODE>. The output looks similar to the
+following:
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ ...
+ \item appendices\quad{}A~1, 7, 11; B~3--5; C~1, 8, 12, 13, 22;
+ D~2, 3, 5, 10
+ ...
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>You can see that the location references of this class have been
+transformed into a hierarchical structure caused by the
+<CODE>:hierdepth</CODE> argument. Additionally we have specified markup for
+the layers of this class separately for the depths 0 and 1. The
+locations at depth 0 are separated by a `;' whereas the ones at depth
+1 are separated by a `,'.
+<P>Maybe you get an impression why we named <SF>xindy</SF> a <EM>flexible</EM>
+system.
+<P>
+<H2><A NAME="ss3.3">3.3 More about Letter Groups</A>
+</H2>
+
+<P>More problems arise when using languages with different letter
+schemes. Hungarian is an example. In Hungarian indexes the words
+beginning with the letters <EM>Cs, Ly, Ny</EM> and more are printed in a
+separate block. The words beginning with <EM>Ly</EM>, for example, appear
+behind the words beginning with an <EM>L</EM>. <SF>xindy</SF> allows to define
+this kind of letter groups as well. Add the following lines to the
+style file.
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+(define-letter-group "ly" :after "l" :before "m")
+(define-letter-group "ny" :after "n" :before "o")
+
+(markup-letter-group :open-head "~n {\bf " :close-head "}"
+ :capitalize)
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The result looks like the following:
+<P>
+<P>
+<BLOCKQUOTE><CODE>
+<PRE>
+ ...
+ {\bf Ly}
+ \item lyuk\quad{}1
+ \item lyukas\quad{}2
+
+ \indexspace
+
+ {\bf M}
+ \item maga\quad{}1
+ \item magyar\quad{}2
+
+ \indexspace
+
+ {\bf N}
+ \item nagy\quad{}1
+ \item nagyon\quad{}9
+ \item nègy\quad{}4
+
+ \indexspace
+
+ {\bf Ny}
+ \item nyelv\quad{}1
+ \item nyolc\quad{}8
+ ...
+</PRE>
+</CODE></BLOCKQUOTE>
+<P>The result describes what the purpose of the above commands is. It
+becomes prettier from step to step, doesn't it?
+<P>You have now learned most of the features of <SF>xindy</SF>. Go playing
+around a little bit. For a detailed description of all commands and
+all their arguments and switches you should reference the manual that
+comes with this distribution.
+<P>
+<P>
+<P>
+<HR>
+<A HREF="style-tutorial-4.html">Next</A>
+<A HREF="style-tutorial-2.html">Previous</A>
+<A HREF="style-tutorial.html#toc3">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/style-tutorial-4.html b/Build/source/utils/xindy/doc/style-tutorial-4.html
new file mode 100644
index 00000000000..f3ef19aa4c8
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial-4.html
@@ -0,0 +1,41 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY Style File Tutorial: References</TITLE>
+ <LINK HREF="style-tutorial-3.html" REL=previous>
+ <LINK HREF="style-tutorial.html#toc4" REL=contents>
+</HEAD>
+<BODY>
+Next
+<A HREF="style-tutorial-3.html">Previous</A>
+<A HREF="style-tutorial.html#toc4">Contents</A>
+<HR>
+<H2><A NAME="s4">4. References</A></H2>
+
+<P>
+<P>The following books and papers were referenced in this document.
+<P>
+<OL>
+<LI> D. E. Knuth, <EM>The TeXbook</EM>, Addison-Wesley, 1984
+</LI>
+<LI> Leslie Lamport, LaTeX <EM>A Document Preparation System</EM>,
+Addison-Wesley, 1986
+</LI>
+<LI> Joachim Schrod, <EM>An International Version of MakeIndex</EM>,
+Cahiers GUTenberg, 10, p81-90, 1991
+</LI>
+<LI> Pehong Chen and Michael A. Harrison, <EM>Automating Index
+Preparation</EM>, TR-87/347, University of California Berkeley, 1987
+<A NAME="makeindex"></A>
+</LI>
+<LI> Roger Kehr, <SF>xindy</SF>, <EM>Ein Flexibles Indexierungssystem</EM>,
+Studienarbeit FB Informatik, TH-Darmstadt, November 1995.</LI>
+</OL>
+<P>
+<HR>
+Next
+<A HREF="style-tutorial-3.html">Previous</A>
+<A HREF="style-tutorial.html#toc4">Contents</A>
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/style-tutorial.html b/Build/source/utils/xindy/doc/style-tutorial.html
new file mode 100644
index 00000000000..6c815ca30d6
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial.html
@@ -0,0 +1,66 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<HTML>
+<HEAD>
+ <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
+ <TITLE>XINDY Style File Tutorial</TITLE>
+ <LINK HREF="style-tutorial-1.html" REL=next>
+
+
+</HEAD>
+<BODY>
+<A HREF="style-tutorial-1.html">Next</A>
+Previous
+Contents
+<HR>
+<H1>XINDY Style File Tutorial</H1>
+
+<H2><SF>A Flexible Indexing System</SF></H2>
+<H2>Roger Kehr</H2>
+<H3>Computer Science Department, Technical University of Darmstadt</H3>
+ and
+<H2>Joachim Schrod</H2>
+<H3>Joachim Schrod Net &amp; Publication Consultance GmbH</H3>
+Tutorial, Edition March 1997 for xindy version 1.1
+<P><HR>
+<EM> This is a tutorial on writing style files for
+the <SF>xindy</SF> indexing system
+[5]. <SF>xindy</SF> is a general purpose index processor that
+can be configured for a variety of document preparation systems. We
+will demonstrate step by step the incremental specification of a
+complete index style. The examples are based on indexes that are
+delivered with the system so one can get acquainted with it
+practically.
+<p>
+<B>Caution:</B> This tutorial does not describe the complete style file
+language. In particular, description of rule sets, the multi-run
+approach, and standard modules are missing.</EM>
+<HR>
+<P>
+<H2><A NAME="toc1">1.</A> <A HREF="style-tutorial-1.html">About <SF>xindy</SF></A></H2>
+
+<P>
+<H2><A NAME="toc2">2.</A> <A HREF="style-tutorial-2.html">A Basic Introduction</A></H2>
+
+<UL>
+<LI><A HREF="style-tutorial-2.html#ss2.1">2.1 Running <SF>xindy</SF></A>
+<LI><A HREF="style-tutorial-2.html#ss2.2">2.2 Adding some Markup</A>
+<LI><A HREF="style-tutorial-2.html#ss2.3">2.3 Keyword Mappings</A>
+<LI><A HREF="style-tutorial-2.html#ss2.4">2.4 Letter Groups</A>
+</UL>
+<P>
+<H2><A NAME="toc3">3.</A> <A HREF="style-tutorial-3.html">Advanced Features</A></H2>
+
+<UL>
+<LI><A HREF="style-tutorial-3.html#ss3.1">3.1 Location Classes</A>
+<LI><A HREF="style-tutorial-3.html#ss3.2">3.2 Hierarchical Location Classes</A>
+<LI><A HREF="style-tutorial-3.html#ss3.3">3.3 More about Letter Groups</A>
+</UL>
+<P>
+<H2><A NAME="toc4">4.</A> <A HREF="style-tutorial-4.html">References</A></H2>
+
+<HR>
+<A HREF="style-tutorial-1.html">Next</A>
+Previous
+Contents
+</BODY>
+</HTML>
diff --git a/Build/source/utils/xindy/doc/style-tutorial/Makefile.am b/Build/source/utils/xindy/doc/style-tutorial/Makefile.am
new file mode 100644
index 00000000000..20c1442b0c7
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/Makefile.am
@@ -0,0 +1,38 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+
+tutorialdir = $(docdir)/style-tutorial
+
+FILES = \
+ ex1.raw \
+ ex1.tex \
+ ex2.raw \
+ ex2.tex \
+ index.tex \
+ style1.xdy \
+ style2.xdy
+
+EXTRA_DIST = $(FILES)
+
+tutorial_DATA = $(FILES)
+
diff --git a/Build/source/utils/xindy/doc/style-tutorial/Makefile.in b/Build/source/utils/xindy/doc/style-tutorial/Makefile.in
new file mode 100644
index 00000000000..b691dc713b8
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/Makefile.in
@@ -0,0 +1,317 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = doc/style-tutorial
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(tutorialdir)"
+tutorialDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(tutorial_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+tutorialdir = $(docdir)/style-tutorial
+FILES = \
+ ex1.raw \
+ ex1.tex \
+ ex2.raw \
+ ex2.tex \
+ index.tex \
+ style1.xdy \
+ style2.xdy
+
+EXTRA_DIST = $(FILES)
+tutorial_DATA = $(FILES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign doc/style-tutorial/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign doc/style-tutorial/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-tutorialDATA: $(tutorial_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(tutorialdir)" || $(mkdir_p) "$(DESTDIR)$(tutorialdir)"
+ @list='$(tutorial_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(tutorialDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(tutorialdir)/$$f'"; \
+ $(tutorialDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(tutorialdir)/$$f"; \
+ done
+
+uninstall-tutorialDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(tutorial_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(tutorialdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(tutorialdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(tutorialdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-tutorialDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-tutorialDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip install-tutorialDATA installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \
+ uninstall-tutorialDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/doc/style-tutorial/ex1.raw b/Build/source/utils/xindy/doc/style-tutorial/ex1.raw
new file mode 100644
index 00000000000..1f4585950a9
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/ex1.raw
@@ -0,0 +1,20 @@
+;; Example raw-index file.
+
+(indexentry :key ("sábado") :locref "5" :attr "definition")
+(indexentry :key ("sabão") :locref "6" :attr "definition")
+(indexentry :key ("saber") :locref "7" :attr "definition")
+(indexentry :key ("sabor") :locref "8" :attr "definition")
+
+(indexentry :key ("academia") :locref "1" :attr "definition")
+(indexentry :key ("acafetado") :locref "2" :attr "definition")
+(indexentry :key ("açafrão") :locref "3" :attr "definition")
+(indexentry :key ("acalmar") :locref "4" :attr "definition")
+
+(indexentry :key ("index" "flat") :locref "1" :attr "usage")
+(indexentry :key ("index" "hierarchical") :locref "2" :attr "usage")
+(indexentry :key ("index" "very" "hierarchical") :locref "3" :attr "usage")
+(indexentry :key ("index" "very" "impressive") :locref "4" :attr "usage")
+
+;(indexentry :key ("arts" "classic") :locref "10" :attr "usage")
+;(indexentry :key ("arts" "contemporary") :locref "11" :attr "usage")
+;(indexentry :key ("arts" "modern") :locref "12" :attr "usage")
diff --git a/Build/source/utils/xindy/doc/style-tutorial/ex1.tex b/Build/source/utils/xindy/doc/style-tutorial/ex1.tex
new file mode 100644
index 00000000000..839c0b9834c
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/ex1.tex
@@ -0,0 +1,16 @@
+%%
+%% An sample file for typesetting an index.
+%%
+
+\documentclass[12pt]{article}
+
+\usepackage[latin1]{inputenc}
+\usepackage{makeidx}
+
+\makeindex
+
+\begin{document}
+
+\printindex
+
+\end{document}
diff --git a/Build/source/utils/xindy/doc/style-tutorial/ex2.raw b/Build/source/utils/xindy/doc/style-tutorial/ex2.raw
new file mode 100644
index 00000000000..88b767aa60f
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/ex2.raw
@@ -0,0 +1,35 @@
+;; Example raw-index file.
+
+(indexentry :key ("appendices") :locref "A-1" :attr "usage")
+(indexentry :key ("appendices") :locref "A-7" :attr "usage")
+(indexentry :key ("appendices") :locref "A-11" :attr "usage")
+(indexentry :key ("appendices") :locref "B-3" :attr "usage")
+(indexentry :key ("appendices") :locref "B-4" :attr "usage")
+(indexentry :key ("appendices") :locref "B-5" :attr "usage")
+(indexentry :key ("appendices") :locref "C-8" :attr "usage")
+(indexentry :key ("appendices") :locref "C-12" :attr "usage")
+(indexentry :key ("appendices") :locref "C-13" :attr "usage")
+(indexentry :key ("appendices") :locref "C-22" :attr "usage")
+(indexentry :key ("appendices") :locref "C-1" :attr "usage")
+(indexentry :key ("appendices") :locref "D-2" :attr "usage")
+(indexentry :key ("appendices") :locref "D-3" :attr "usage")
+(indexentry :key ("appendices") :locref "D-5" :attr "usage")
+(indexentry :key ("appendices") :locref "D-10" :attr "usage")
+
+(indexentry :key ("roman") :locref "iv" :attr "usage")
+(indexentry :key ("roman") :locref "ii" :attr "usage")
+(indexentry :key ("roman") :locref "iii" :attr "usage")
+(indexentry :key ("roman") :locref "ix" :attr "usage")
+(indexentry :key ("roman") :locref "x" :attr "usage")
+(indexentry :key ("roman") :locref "mcmxcvi" :attr "usage")
+
+(indexentry :key ("lyuk") :locref "1" :attr "usage")
+(indexentry :key ("lyukas") :locref "2" :attr "usage")
+(indexentry :key ("maga") :locref "1" :attr "usage")
+(indexentry :key ("magyar") :locref "2" :attr "usage")
+(indexentry :key ("nagy") :locref "1" :attr "usage")
+(indexentry :key ("nagyon") :locref "9" :attr "usage")
+(indexentry :key ("negy") :locref "4" :attr "usage")
+(indexentry :key ("nyolc") :locref "8" :attr "usage")
+(indexentry :key ("nyelv") :locref "1" :attr "usage")
+
diff --git a/Build/source/utils/xindy/doc/style-tutorial/ex2.tex b/Build/source/utils/xindy/doc/style-tutorial/ex2.tex
new file mode 100644
index 00000000000..839c0b9834c
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/ex2.tex
@@ -0,0 +1,16 @@
+%%
+%% An sample file for typesetting an index.
+%%
+
+\documentclass[12pt]{article}
+
+\usepackage[latin1]{inputenc}
+\usepackage{makeidx}
+
+\makeindex
+
+\begin{document}
+
+\printindex
+
+\end{document}
diff --git a/Build/source/utils/xindy/doc/style-tutorial/index.tex b/Build/source/utils/xindy/doc/style-tutorial/index.tex
new file mode 100644
index 00000000000..839c0b9834c
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/index.tex
@@ -0,0 +1,16 @@
+%%
+%% An sample file for typesetting an index.
+%%
+
+\documentclass[12pt]{article}
+
+\usepackage[latin1]{inputenc}
+\usepackage{makeidx}
+
+\makeindex
+
+\begin{document}
+
+\printindex
+
+\end{document}
diff --git a/Build/source/utils/xindy/doc/style-tutorial/style1.xdy b/Build/source/utils/xindy/doc/style-tutorial/style1.xdy
new file mode 100644
index 00000000000..ee809f9aae8
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/style1.xdy
@@ -0,0 +1,55 @@
+;; This is a first example using `xindy'.
+
+(mapc #'(lambda (x)
+ (pushnew x *features*))
+ '(:STEP1 :STEP2 :STEP3 :STEP4 :STEP5))
+
+#+:STEP1
+(progn
+ (define-location-class "page-numbers" ("arabic-numbers"))
+ (define-attributes (("definition" "usage")))
+ )
+
+
+#+:STEP2
+(progn
+ (markup-index :open "~n\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+ (markup-locref :class "page-numbers" :attr "definition"
+ :open "{\bf " :close "}")
+
+ (markup-locref-list :sep ", ")
+ (markup-locclass-list :open "\quad{}")
+ )
+
+#+:STEP3
+(progn
+ (markup-indexentry :open "~n \item " :depth 0)
+ (markup-indexentry :open "~n \subitem " :depth 1)
+ (markup-indexentry :open "~n \subsubitem " :depth 2)
+
+ (markup-range :class "page-numbers" :sep "--")
+ )
+
+#+:STEP4
+(progn
+ (sort-rule "à" "a")
+ (sort-rule "á" "a")
+ (sort-rule "ã" "a")
+ (sort-rule "è" "e")
+ (sort-rule "é" "e")
+ (sort-rule "ç" "c")
+
+ (sort-rule "\\texttt{\(.*\)}" "\1" :again :bregexp)
+ )
+
+#+:STEP5
+(progn
+ (define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+ (markup-letter-group-list :sep "~n~n \indexspace~n")
+ )
diff --git a/Build/source/utils/xindy/doc/style-tutorial/style2.xdy b/Build/source/utils/xindy/doc/style-tutorial/style2.xdy
new file mode 100644
index 00000000000..e45e2f24482
--- /dev/null
+++ b/Build/source/utils/xindy/doc/style-tutorial/style2.xdy
@@ -0,0 +1,80 @@
+;; This is another example using `xindy'.
+
+(mapc #'(lambda (x)
+ (pushnew x *features*))
+ '(:STEP1 :STEP2 :STEP3 :STEP4 :STEP5 :STEP6 :STEP7 :STEP8 :STEP9 :STEP10))
+
+#+:STEP1
+(progn
+ (define-location-class "page-numbers" ("arabic-numbers"))
+ (define-attributes (("definition" "usage")))
+ )
+
+
+#+:STEP2
+(progn
+ (markup-index :open "~n\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+ (markup-locref :class "page-numbers" :attr "definition"
+ :open "{\bf " :close "}")
+
+ (markup-locref-list :sep ", ")
+ (markup-locclass-list :open "\quad{}")
+ )
+
+#+:STEP3
+(progn
+ (markup-indexentry :open "~n \item " :depth 0)
+ (markup-indexentry :open "~n \subitem " :depth 1)
+ (markup-indexentry :open "~n \subsubitem " :depth 2)
+ )
+
+#+:STEP4
+(progn
+ (sort-rule "à" "a")
+ (sort-rule "á" "a")
+ (sort-rule "ã" "a")
+ (sort-rule "è" "e")
+ (sort-rule "é" "e")
+ (sort-rule "ç" "c")
+
+ (sort-rule "\\texttt{(.*)}" "\1" :again :bregexp)
+ )
+
+#+:STEP5
+(progn
+ (define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+ (markup-letter-group-list :sep "~n~n \indexspace~n")
+ )
+
+#+:STEP6
+(progn
+ (define-location-class "roman-pages" ("roman-numbers-lowercase"))
+ #-:STEP8
+ (define-location-class "appendices" ("ALPHA" :sep "-" "arabic-numbers"))
+ )
+
+#+:STEP7
+(markup-range :sep "--")
+
+#+:STEP8
+(progn
+ (define-location-class "appendices" ("ALPHA" :sep "-" "arabic-numbers")
+ :hierdepth 2)
+ (markup-locref-list :sep "; " :depth 0 :class "appendices")
+ (markup-locref-list :open "~~" :sep ", " :depth 1 :class "appendices")
+ )
+
+#+:STEP9
+(progn
+ (define-letter-group "ly" :after "l" :before "m")
+ (define-letter-group "ny" :after "n" :before "o")
+
+ (markup-letter-group :open-head "~n {\bf " :close-head "}"
+ :capitalize)
+ )
diff --git a/Build/source/utils/xindy/doc/tex2xindy.pdf b/Build/source/utils/xindy/doc/tex2xindy.pdf
new file mode 100644
index 00000000000..65b834d225d
--- /dev/null
+++ b/Build/source/utils/xindy/doc/tex2xindy.pdf
Binary files differ
diff --git a/Build/source/utils/xindy/doc/texindy.pdf b/Build/source/utils/xindy/doc/texindy.pdf
new file mode 100644
index 00000000000..0d460cc060f
--- /dev/null
+++ b/Build/source/utils/xindy/doc/texindy.pdf
Binary files differ
diff --git a/Build/source/utils/xindy/doc/toc.gif b/Build/source/utils/xindy/doc/toc.gif
new file mode 100644
index 00000000000..3d1aebf3274
--- /dev/null
+++ b/Build/source/utils/xindy/doc/toc.gif
Binary files differ
diff --git a/Build/source/utils/xindy/doc/xindy.pdf b/Build/source/utils/xindy/doc/xindy.pdf
new file mode 100644
index 00000000000..f861491dfb8
--- /dev/null
+++ b/Build/source/utils/xindy/doc/xindy.pdf
Binary files differ
diff --git a/Build/source/utils/xindy/doc/xindy.v2.pdf b/Build/source/utils/xindy/doc/xindy.v2.pdf
new file mode 100644
index 00000000000..121f47982e4
--- /dev/null
+++ b/Build/source/utils/xindy/doc/xindy.v2.pdf
Binary files differ
diff --git a/Build/source/utils/xindy/install-sh b/Build/source/utils/xindy/install-sh
new file mode 100755
index 00000000000..4d4a9519eaf
--- /dev/null
+++ b/Build/source/utils/xindy/install-sh
@@ -0,0 +1,323 @@
+#!/bin/sh
+# install - install a program, script, or datafile
+
+scriptversion=2005-05-14.22
+
+# This originates from X11R5 (mit/util/scripts/install.sh), which was
+# later released in X11R6 (xc/config/util/install.sh) with the
+# following copyright and license.
+#
+# Copyright (C) 1994 X Consortium
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to
+# deal in the Software without restriction, including without limitation the
+# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+# sell copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+# AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
+# TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+#
+# Except as contained in this notice, the name of the X Consortium shall not
+# be used in advertising or otherwise to promote the sale, use or other deal-
+# ings in this Software without prior written authorization from the X Consor-
+# tium.
+#
+#
+# FSF changes to this file are in the public domain.
+#
+# Calling this script install-sh is preferred over install.sh, to prevent
+# `make' implicit rules from creating a file called install from it
+# when there is no Makefile.
+#
+# This script is compatible with the BSD install script, but was written
+# from scratch. It can only install one file at a time, a restriction
+# shared with many OS's install programs.
+
+# set DOITPROG to echo to test this script
+
+# Don't use :- since 4.3BSD and earlier shells don't like it.
+doit="${DOITPROG-}"
+
+# put in absolute paths if you don't have them in your path; or use env. vars.
+
+mvprog="${MVPROG-mv}"
+cpprog="${CPPROG-cp}"
+chmodprog="${CHMODPROG-chmod}"
+chownprog="${CHOWNPROG-chown}"
+chgrpprog="${CHGRPPROG-chgrp}"
+stripprog="${STRIPPROG-strip}"
+rmprog="${RMPROG-rm}"
+mkdirprog="${MKDIRPROG-mkdir}"
+
+chmodcmd="$chmodprog 0755"
+chowncmd=
+chgrpcmd=
+stripcmd=
+rmcmd="$rmprog -f"
+mvcmd="$mvprog"
+src=
+dst=
+dir_arg=
+dstarg=
+no_target_directory=
+
+usage="Usage: $0 [OPTION]... [-T] SRCFILE DSTFILE
+ or: $0 [OPTION]... SRCFILES... DIRECTORY
+ or: $0 [OPTION]... -t DIRECTORY SRCFILES...
+ or: $0 [OPTION]... -d DIRECTORIES...
+
+In the 1st form, copy SRCFILE to DSTFILE.
+In the 2nd and 3rd, copy all SRCFILES to DIRECTORY.
+In the 4th, create DIRECTORIES.
+
+Options:
+-c (ignored)
+-d create directories instead of installing files.
+-g GROUP $chgrpprog installed files to GROUP.
+-m MODE $chmodprog installed files to MODE.
+-o USER $chownprog installed files to USER.
+-s $stripprog installed files.
+-t DIRECTORY install into DIRECTORY.
+-T report an error if DSTFILE is a directory.
+--help display this help and exit.
+--version display version info and exit.
+
+Environment variables override the default commands:
+ CHGRPPROG CHMODPROG CHOWNPROG CPPROG MKDIRPROG MVPROG RMPROG STRIPPROG
+"
+
+while test -n "$1"; do
+ case $1 in
+ -c) shift
+ continue;;
+
+ -d) dir_arg=true
+ shift
+ continue;;
+
+ -g) chgrpcmd="$chgrpprog $2"
+ shift
+ shift
+ continue;;
+
+ --help) echo "$usage"; exit $?;;
+
+ -m) chmodcmd="$chmodprog $2"
+ shift
+ shift
+ continue;;
+
+ -o) chowncmd="$chownprog $2"
+ shift
+ shift
+ continue;;
+
+ -s) stripcmd=$stripprog
+ shift
+ continue;;
+
+ -t) dstarg=$2
+ shift
+ shift
+ continue;;
+
+ -T) no_target_directory=true
+ shift
+ continue;;
+
+ --version) echo "$0 $scriptversion"; exit $?;;
+
+ *) # When -d is used, all remaining arguments are directories to create.
+ # When -t is used, the destination is already specified.
+ test -n "$dir_arg$dstarg" && break
+ # Otherwise, the last argument is the destination. Remove it from $@.
+ for arg
+ do
+ if test -n "$dstarg"; then
+ # $@ is not empty: it contains at least $arg.
+ set fnord "$@" "$dstarg"
+ shift # fnord
+ fi
+ shift # arg
+ dstarg=$arg
+ done
+ break;;
+ esac
+done
+
+if test -z "$1"; then
+ if test -z "$dir_arg"; then
+ echo "$0: no input file specified." >&2
+ exit 1
+ fi
+ # It's OK to call `install-sh -d' without argument.
+ # This can happen when creating conditional directories.
+ exit 0
+fi
+
+for src
+do
+ # Protect names starting with `-'.
+ case $src in
+ -*) src=./$src ;;
+ esac
+
+ if test -n "$dir_arg"; then
+ dst=$src
+ src=
+
+ if test -d "$dst"; then
+ mkdircmd=:
+ chmodcmd=
+ else
+ mkdircmd=$mkdirprog
+ fi
+ else
+ # Waiting for this to be detected by the "$cpprog $src $dsttmp" command
+ # might cause directories to be created, which would be especially bad
+ # if $src (and thus $dsttmp) contains '*'.
+ if test ! -f "$src" && test ! -d "$src"; then
+ echo "$0: $src does not exist." >&2
+ exit 1
+ fi
+
+ if test -z "$dstarg"; then
+ echo "$0: no destination specified." >&2
+ exit 1
+ fi
+
+ dst=$dstarg
+ # Protect names starting with `-'.
+ case $dst in
+ -*) dst=./$dst ;;
+ esac
+
+ # If destination is a directory, append the input filename; won't work
+ # if double slashes aren't ignored.
+ if test -d "$dst"; then
+ if test -n "$no_target_directory"; then
+ echo "$0: $dstarg: Is a directory" >&2
+ exit 1
+ fi
+ dst=$dst/`basename "$src"`
+ fi
+ fi
+
+ # This sed command emulates the dirname command.
+ dstdir=`echo "$dst" | sed -e 's,/*$,,;s,[^/]*$,,;s,/*$,,;s,^$,.,'`
+
+ # Make sure that the destination directory exists.
+
+ # Skip lots of stat calls in the usual case.
+ if test ! -d "$dstdir"; then
+ defaultIFS='
+ '
+ IFS="${IFS-$defaultIFS}"
+
+ oIFS=$IFS
+ # Some sh's can't handle IFS=/ for some reason.
+ IFS='%'
+ set x `echo "$dstdir" | sed -e 's@/@%@g' -e 's@^%@/@'`
+ shift
+ IFS=$oIFS
+
+ pathcomp=
+
+ while test $# -ne 0 ; do
+ pathcomp=$pathcomp$1
+ shift
+ if test ! -d "$pathcomp"; then
+ $mkdirprog "$pathcomp"
+ # mkdir can fail with a `File exist' error in case several
+ # install-sh are creating the directory concurrently. This
+ # is OK.
+ test -d "$pathcomp" || exit
+ fi
+ pathcomp=$pathcomp/
+ done
+ fi
+
+ if test -n "$dir_arg"; then
+ $doit $mkdircmd "$dst" \
+ && { test -z "$chowncmd" || $doit $chowncmd "$dst"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dst"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dst"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dst"; }
+
+ else
+ dstfile=`basename "$dst"`
+
+ # Make a couple of temp file names in the proper directory.
+ dsttmp=$dstdir/_inst.$$_
+ rmtmp=$dstdir/_rm.$$_
+
+ # Trap to clean up those temp files at exit.
+ trap 'ret=$?; rm -f "$dsttmp" "$rmtmp" && exit $ret' 0
+ trap '(exit $?); exit' 1 2 13 15
+
+ # Copy the file name to the temp name.
+ $doit $cpprog "$src" "$dsttmp" &&
+
+ # and set any options; do chmod last to preserve setuid bits.
+ #
+ # If any of these fail, we abort the whole thing. If we want to
+ # ignore errors from any of these, just make sure not to ignore
+ # errors from the above "$doit $cpprog $src $dsttmp" command.
+ #
+ { test -z "$chowncmd" || $doit $chowncmd "$dsttmp"; } \
+ && { test -z "$chgrpcmd" || $doit $chgrpcmd "$dsttmp"; } \
+ && { test -z "$stripcmd" || $doit $stripcmd "$dsttmp"; } \
+ && { test -z "$chmodcmd" || $doit $chmodcmd "$dsttmp"; } &&
+
+ # Now rename the file to the real destination.
+ { $doit $mvcmd -f "$dsttmp" "$dstdir/$dstfile" 2>/dev/null \
+ || {
+ # The rename failed, perhaps because mv can't rename something else
+ # to itself, or perhaps because mv is so ancient that it does not
+ # support -f.
+
+ # Now remove or move aside any old file at destination location.
+ # We try this two ways since rm can't unlink itself on some
+ # systems and the destination file might be busy for other
+ # reasons. In this case, the final cleanup might fail but the new
+ # file should still install successfully.
+ {
+ if test -f "$dstdir/$dstfile"; then
+ $doit $rmcmd -f "$dstdir/$dstfile" 2>/dev/null \
+ || $doit $mvcmd -f "$dstdir/$dstfile" "$rmtmp" 2>/dev/null \
+ || {
+ echo "$0: cannot unlink or rename $dstdir/$dstfile" >&2
+ (exit 1); exit 1
+ }
+ else
+ :
+ fi
+ } &&
+
+ # Now rename the file to the real destination.
+ $doit $mvcmd "$dsttmp" "$dstdir/$dstfile"
+ }
+ }
+ fi || { (exit 1); exit 1; }
+done
+
+# The final little trick to "correctly" pass the exit status to the exit trap.
+{
+ (exit 0); exit 0
+}
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/Build/source/utils/xindy/m4/ac_prog_latex.m4 b/Build/source/utils/xindy/m4/ac_prog_latex.m4
new file mode 100644
index 00000000000..450eaf91daf
--- /dev/null
+++ b/Build/source/utils/xindy/m4/ac_prog_latex.m4
@@ -0,0 +1,19 @@
+dnl @synopsis AC_PROG_LATEX
+dnl
+dnl This macro test if latex is installed. If latex is installed, it
+dnl set $latex to the right value
+dnl
+dnl @category LaTeX
+dnl @author Mathieu Boretti <boretti@bss-network.com>
+dnl @version 2005-01-21
+dnl @license GPLWithACException
+
+AC_DEFUN([AC_PROG_LATEX],[
+AC_CHECK_PROGS(latex,[latex elatex lambda],no)
+export latex;
+if test $latex = "no" ;
+then
+ AC_MSG_ERROR([Unable to find a LaTeX application]);
+fi
+AC_SUBST(latex)
+])
diff --git a/Build/source/utils/xindy/m4/ac_prog_pdflatex.m4 b/Build/source/utils/xindy/m4/ac_prog_pdflatex.m4
new file mode 100644
index 00000000000..4ab0ee45291
--- /dev/null
+++ b/Build/source/utils/xindy/m4/ac_prog_pdflatex.m4
@@ -0,0 +1,19 @@
+dnl @synopsis AC_PROG_PDFLATEX
+dnl
+dnl This macro test if pdflatex is installed. If pdflatex is installed,
+dnl it set $pdflatex to the right value
+dnl
+dnl @category LaTeX
+dnl @author Mathieu Boretti <boretti@bss-network.com>
+dnl @version 2005-01-21
+dnl @license GPLWithACException
+
+AC_DEFUN([AC_PROG_PDFLATEX],[
+AC_CHECK_PROGS(pdflatex,[pdflatex],no)
+export pdflatex;
+if test $pdflatex = "no" ;
+then
+ AC_MSG_ERROR([Unable to find a PDFLaTeX application]);
+fi
+AC_SUBST(pdflatex)
+])
diff --git a/Build/source/utils/xindy/make-rules/Makefile.am b/Build/source/utils/xindy/make-rules/Makefile.am
new file mode 100644
index 00000000000..e1b76698fa8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/Makefile.am
@@ -0,0 +1,25 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+SUBDIRS = alphabets inputenc styles
+
+EXTRA_DIST = makeindex.sh README
+
diff --git a/Build/source/utils/xindy/make-rules/Makefile.in b/Build/source/utils/xindy/make-rules/Makefile.in
new file mode 100644
index 00000000000..344d754b3d2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/Makefile.in
@@ -0,0 +1,416 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = alphabets inputenc styles
+EXTRA_DIST = makeindex.sh README
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+ clean clean-generic clean-recursive ctags ctags-recursive \
+ distclean distclean-generic distclean-recursive distclean-tags \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/README b/Build/source/utils/xindy/make-rules/README
new file mode 100644
index 00000000000..5e36c4de8d4
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/README
@@ -0,0 +1,40 @@
+
+MAKE-RULES
+
+This package contains the following:
+
+1. A Perl script to transform a description of a (language-specific)
+alphabet into a set of sorting rules for xindy. Alphabets for some languages
+are also provided.
+
+2. A Perl script to generate sets of rules which are needed in combination
+with the LaTeX `inputenc' package.
+
+Requirements:
+- TeX and LaTeX
+- Perl 5 or higher
+- GNU make or an equivalent `make' program
+- If your favourite character set is not yet supported: iconv
+
+The sorting rules for each language are described in files
+alphabets/*/*.pl. You can check them and change them if necessary.
+
+======================================================================
+
+This is a modified release of the xindy make-rules package.
+The modifications were done to integrate it into this overall xindy
+source distribution and adapt it to autoconf/automake.
+
+make-rules was written by Thomas Henlich <thenlich _AT_ web.de>, with
+contributions by Martin Vermeer <martin.vermeer _AT_ hut.fi>.
+The modifications were written by Gour <list _AT_ atmarama.org>.
+
+This release is based on a snapshot that was taken around January 14,
+2004. The modifications are only available in this distribution, they
+are not (yet) committed to CVS. That's partly because we need to merge
+them in, make-rules has changed a bit in CVS.
+
+======================================================================
+
+All autoconf/automake adaptions are released under
+GPL version 2, or later.
diff --git a/Build/source/utils/xindy/make-rules/alphabets/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/Makefile.am
new file mode 100644
index 00000000000..490522508c3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/Makefile.am
@@ -0,0 +1,1177 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+langdir = $(pkglibdir)/modules/lang
+
+albaniandir = $(langdir)/albanian
+
+ALBANIAN = \
+ albanian/latin1-lang.xdy \
+ albanian/latin1-test.xdy \
+ albanian/latin1.xdy \
+ albanian/utf8.pl \
+ albanian/utf8-lang.xdy \
+ albanian/utf8-test.xdy \
+ albanian/utf8.xdy
+
+nodist_albanian_DATA = $(ALBANIAN)
+
+belarusiandir = $(langdir)/belarusian
+
+BELARUSIAN = \
+ belarusian/cp1251-lang.xdy \
+ belarusian/cp1251-test.xdy \
+ belarusian/cp1251.xdy \
+ belarusian/iso88595-lang.xdy \
+ belarusian/iso88595-test.xdy \
+ belarusian/iso88595.xdy \
+ belarusian/isoir111-lang.xdy \
+ belarusian/isoir111-test.xdy \
+ belarusian/isoir111.xdy \
+ belarusian/utf8.pl \
+ belarusian/utf8-lang.xdy \
+ belarusian/utf8-test.xdy \
+ belarusian/utf8.xdy
+
+nodist_belarusian_DATA = $(BELARUSIAN)
+
+
+bulgariandir = $(langdir)/bulgarian
+
+BULGARIAN = \
+ bulgarian/cp1251-lang.xdy \
+ bulgarian/cp1251-test.xdy \
+ bulgarian/cp1251.xdy \
+ bulgarian/iso88595-lang.xdy \
+ bulgarian/iso88595-test.xdy \
+ bulgarian/iso88595.xdy \
+ bulgarian/koi8-r-lang.xdy \
+ bulgarian/koi8-r-test.xdy \
+ bulgarian/koi8-r.xdy \
+ bulgarian/utf8.pl \
+ bulgarian/utf8-lang.xdy \
+ bulgarian/utf8-test.xdy \
+ bulgarian/utf8.xdy
+
+nodist_bulgarian_DATA = $(BULGARIAN)
+
+croatiandir = $(langdir)/croatian
+
+CROATIAN = \
+ croatian/cp1250-lang.xdy \
+ croatian/cp1250-test.xdy \
+ croatian/cp1250.xdy \
+ croatian/latin2-lang.xdy \
+ croatian/latin2-test.xdy \
+ croatian/latin2.xdy \
+ croatian/utf8.pl \
+ croatian/utf8-lang.xdy \
+ croatian/utf8-test.xdy \
+ croatian/utf8.xdy
+
+nodist_croatian_DATA = $(CROATIAN)
+
+czechdir = $(langdir)/czech
+
+CZECH = \
+ czech/cp1250-lang.xdy \
+ czech/cp1250-test.xdy \
+ czech/cp1250.xdy \
+ czech/latin2-lang.xdy \
+ czech/latin2-test.xdy \
+ czech/latin2.xdy \
+ czech/utf8.pl \
+ czech/utf8-lang.xdy \
+ czech/utf8-test.xdy \
+ czech/utf8.xdy
+
+nodist_czech_DATA = $(CZECH)
+
+
+danishdir = $(langdir)/danish
+
+DANISH = \
+ danish/cp1252-lang.xdy \
+ danish/cp1252-test.xdy \
+ danish/cp1252.xdy \
+ danish/latin9-lang.xdy \
+ danish/latin9-test.xdy \
+ danish/latin9.xdy \
+ danish/utf8.pl \
+ danish/utf8-lang.xdy \
+ danish/utf8-test.xdy \
+ danish/utf8.xdy
+
+nodist_danish_DATA = $(DANISH)
+
+dutchdir = $(langdir)/dutch
+
+DUTCH = \
+ dutch/ij-as-ij-latin1-lang.xdy \
+ dutch/ij-as-ij-latin1-test.xdy \
+ dutch/ij-as-ij-latin1.xdy \
+ dutch/ij-as-ij-utf8.pl \
+ dutch/ij-as-ij-utf8-lang.xdy \
+ dutch/ij-as-ij-utf8-test.xdy \
+ dutch/ij-as-ij-utf8.xdy \
+ dutch/ij-as-y-utf8.pl \
+ dutch/ij-as-y-utf8.xdy \
+ dutch/ij-as-y-utf8-lang.xdy \
+ dutch/ij-as-y-utf8-test.xdy \
+ dutch/ij-as-y-utf8.xdy
+
+nodist_dutch_DATA = $(DUTCH)
+
+englishdir = $(langdir)/english
+
+ENGLISH = \
+ english/cp1252-lang.xdy \
+ english/cp1252-test.xdy \
+ english/cp1252.xdy \
+ english/latin9-lang.xdy \
+ english/latin9-test.xdy \
+ english/latin9.xdy \
+ english/utf8.pl \
+ english/utf8-lang.xdy \
+ english/utf8-test.xdy \
+ english/utf8.xdy
+
+nodist_english_DATA = $(ENGLISH)
+
+esperantodir = $(langdir)/esperanto
+
+ESPERANTO = \
+ esperanto/latin3-lang.xdy \
+ esperanto/latin3-test.xdy \
+ esperanto/latin3.xdy \
+ esperanto/utf8.pl \
+ esperanto/utf8-lang.xdy \
+ esperanto/utf8-test.xdy \
+ esperanto/utf8.xdy
+
+nodist_esperanto_DATA = $(ESPERANTO)
+
+estoniandir = $(langdir)/estonian
+
+ESTONIAN = \
+ estonian/cp1252-lang.xdy \
+ estonian/cp1252-test.xdy \
+ estonian/cp1252.xdy \
+ estonian/latin9-lang.xdy \
+ estonian/latin9-test.xdy \
+ estonian/latin9.xdy \
+ estonian/utf8.pl \
+ estonian/utf8-lang.xdy \
+ estonian/utf8-test.xdy \
+ estonian/utf8.xdy
+
+nodist_estonian_DATA = $(ESTONIAN)
+
+finnishdir = $(langdir)/finnish
+
+FINNISH = \
+ finnish/cp1252-lang.xdy \
+ finnish/cp1252-test.xdy \
+ finnish/cp1252.xdy \
+ finnish/latin9-lang.xdy \
+ finnish/latin9-test.xdy \
+ finnish/latin9.xdy \
+ finnish/utf8.pl \
+ finnish/utf8-lang.xdy \
+ finnish/utf8-test.xdy \
+ finnish/utf8.xdy
+
+nodist_finnish_DATA = $(FINNISH)
+
+frenchdir = $(langdir)/french
+
+FRENCH = \
+ french/cp1252-lang.xdy \
+ french/cp1252-test.xdy \
+ french/cp1252.xdy \
+ french/latin9-lang.xdy \
+ french/latin9-test.xdy \
+ french/latin9.xdy \
+ french/utf8.pl \
+ french/utf8-lang.xdy \
+ french/utf8-test.xdy \
+ french/utf8.xdy
+
+nodist_french_DATA = $(FRENCH)
+
+generaldir = $(langdir)/general
+
+GENERAL = \
+ general/cp1252-lang.xdy \
+ general/cp1252-test.xdy \
+ general/cp1252.xdy \
+ general/cp850-lang.xdy \
+ general/cp850-test.xdy \
+ general/cp850.xdy \
+ general/latin9-lang.xdy \
+ general/latin9-test.xdy \
+ general/latin9.xdy \
+ general/utf8.pl \
+ general/utf8-lang.xdy \
+ general/utf8-test.xdy \
+ general/utf8.xdy
+
+nodist_general_DATA = $(GENERAL)
+
+georgiandir = $(langdir)/georgian
+
+GEORGIAN = \
+ georgian/utf8.pl \
+ georgian/utf8-lang.xdy \
+ georgian/utf8-test.xdy \
+ georgian/utf8.xdy
+
+nodist_georgian_DATA = $(GEORGIAN)
+
+germandir = $(langdir)/german
+
+GERMAN = \
+ german/braille-utf8.pl \
+ german/braille-utf8-lang.xdy \
+ german/braille-utf8-test.xdy \
+ german/braille-utf8.xdy \
+ german/din5007-latin1-lang.xdy \
+ german/din5007-latin1-test.xdy \
+ german/din5007-latin1.xdy \
+ german/din5007-utf8.pl \
+ german/din5007-utf8-lang.xdy \
+ german/din5007-utf8-test.xdy \
+ german/din5007-utf8.xdy \
+ german/duden-latin1-lang.xdy \
+ german/duden-latin1-test.xdy \
+ german/duden-latin1.xdy \
+ german/duden-utf8.pl \
+ german/duden-utf8-lang.xdy \
+ german/duden-utf8-test.xdy \
+ german/duden-utf8.xdy
+
+nodist_german_DATA = $(GERMAN)
+
+greekdir = $(langdir)/greek
+
+GREEK = \
+ greek/iso88597-lang.xdy \
+ greek/iso88597-test.xdy \
+ greek/iso88597.xdy \
+ greek/polytonic-utf8.pl \
+ greek/polytonic-utf8-lang.xdy \
+ greek/polytonic-utf8-test.xdy \
+ greek/polytonic-utf8.xdy \
+ greek/translit-latin4-lang.xdy \
+ greek/translit-latin4-test.xdy \
+ greek/translit-latin4.xdy \
+ greek/translit-utf8.pl \
+ greek/translit-utf8-lang.xdy \
+ greek/translit-utf8-test.xdy \
+ greek/translit-utf8.xdy \
+ greek/utf8.pl \
+ greek/utf8-lang.xdy \
+ greek/utf8-test.xdy \
+ greek/utf8.xdy
+
+nodist_greek_DATA = $(GREEK)
+
+gypsydir = $(langdir)/gypsy
+
+GYPSY = \
+ gypsy/northrussian-utf8.pl \
+ gypsy/northrussian-utf8-lang.xdy \
+ gypsy/northrussian-utf8-test.xdy \
+ gypsy/northrussian-utf8.xdy
+
+nodist_gypsy_DATA = $(GYPSY)
+
+hausadir = $(langdir)/hausa
+
+HAUSA = \
+ hausa/utf8.pl \
+ hausa/utf8-lang.xdy \
+ hausa/utf8-test.xdy \
+ hausa/utf8.xdy
+
+nodist_hausa_DATA = $(HAUSA)
+
+hebrewdir = $(langdir)/hebrew
+
+HEBREW = \
+ hebrew/iso88598-lang.xdy \
+ hebrew/iso88598-test.xdy \
+ hebrew/iso88598.xdy \
+ hebrew/utf8.pl \
+ hebrew/utf8-lang.xdy \
+ hebrew/utf8-test.xdy \
+ hebrew/utf8.xdy
+
+nodist_hebrew_DATA = $(HEBREW)
+
+hungariandir = $(langdir)/hungarian
+
+HUNGARIAN = \
+ hungarian/cp1250-lang.xdy \
+ hungarian/cp1250-test.xdy \
+ hungarian/cp1250.xdy \
+ hungarian/latin2-lang.xdy \
+ hungarian/latin2-test.xdy \
+ hungarian/latin2.xdy \
+ hungarian/utf8.pl \
+ hungarian/utf8-lang.xdy \
+ hungarian/utf8-test.xdy \
+ hungarian/utf8.xdy
+
+nodist_hungarian_DATA = $(HUNGARIAN)
+
+icelandicdir = $(langdir)/icelandic
+
+ICELANDIC = \
+ icelandic/cp1252-lang.xdy \
+ icelandic/cp1252-test.xdy \
+ icelandic/cp1252.xdy \
+ icelandic/latin9-lang.xdy \
+ icelandic/latin9-test.xdy \
+ icelandic/latin9.xdy \
+ icelandic/utf8.pl \
+ icelandic/utf8-lang.xdy \
+ icelandic/utf8-test.xdy \
+ icelandic/utf8.xdy
+
+nodist_icelandic_DATA = $(ICELANDIC)
+
+italiandir = $(langdir)/italian
+
+ITALIAN = \
+ italian/latin1-lang.xdy \
+ italian/latin1-test.xdy \
+ italian/latin1.xdy \
+ italian/utf8.pl \
+ italian/utf8-lang.xdy \
+ italian/utf8-test.xdy \
+ italian/utf8.xdy
+
+nodist_italian_DATA = $(ITALIAN)
+
+klingondir = $(langdir)/klingon
+
+KLINGON = \
+ klingon/utf8.pl \
+ klingon/utf8-lang.xdy \
+ klingon/utf8-test.xdy \
+ klingon/utf8.xdy
+
+nodist_klingon_DATA = $(KLINGON)
+
+kurdishdir = $(langdir)/kurdish
+
+KURDISH = \
+ kurdish/bedirxan-latin5-lang.xdy \
+ kurdish/bedirxan-latin5-test.xdy \
+ kurdish/bedirxan-latin5.xdy \
+ kurdish/bedirxan-utf8.pl \
+ kurdish/bedirxan-utf8-lang.xdy \
+ kurdish/bedirxan-utf8-test.xdy \
+ kurdish/bedirxan-utf8.xdy \
+ kurdish/turkish-i-latin5-lang.xdy \
+ kurdish/turkish-i-latin5-test.xdy \
+ kurdish/turkish-i-latin5.xdy \
+ kurdish/turkish-i-utf8.pl \
+ kurdish/turkish-i-utf8-lang.xdy \
+ kurdish/turkish-i-utf8-test.xdy \
+ kurdish/turkish-i-utf8.xdy
+
+nodist_kurdish_DATA = $(KURDISH)
+
+latindir = $(langdir)/latin
+
+LATIN = \
+ latin/utf8.pl \
+ latin/utf8-lang.xdy \
+ latin/utf8-test.xdy \
+ latin/utf8.xdy
+
+nodist_latin_DATA = $(LATIN)
+
+latviandir = $(langdir)/latvian
+
+LATVIAN = \
+ latvian/latin4-lang.xdy \
+ latvian/latin4-test.xdy \
+ latvian/latin4.xdy \
+ latvian/utf8.pl \
+ latvian/utf8-lang.xdy \
+ latvian/utf8-test.xdy \
+ latvian/utf8.xdy
+
+nodist_latvian_DATA = $(LATVIAN)
+
+lithuaniandir = $(langdir)/lithuanian
+
+LITHUANIAN = \
+ lithuanian/latin4-lang.xdy \
+ lithuanian/latin4-test.xdy \
+ lithuanian/latin4.xdy \
+ lithuanian/utf8.pl \
+ lithuanian/utf8-lang.xdy \
+ lithuanian/utf8-test.xdy \
+ lithuanian/utf8.xdy
+
+nodist_lithuanian_DATA = $(LITHUANIAN)
+
+lower_sorbiandir = $(langdir)/lower-sorbian
+
+LOWER_SORBIAN = \
+ lower-sorbian/cp1250-lang.xdy \
+ lower-sorbian/cp1250-test.xdy \
+ lower-sorbian/cp1250.xdy \
+ lower-sorbian/latin2-lang.xdy \
+ lower-sorbian/latin2-test.xdy \
+ lower-sorbian/latin2.xdy \
+ lower-sorbian/utf8.pl \
+ lower-sorbian/utf8-lang.xdy \
+ lower-sorbian/utf8-test.xdy \
+ lower-sorbian/utf8.xdy
+
+nodist_lower_sorbian_DATA = $(LOWER_SORBIAN)
+
+macedoniandir = $(langdir)/macedonian
+
+MACEDONIAN = \
+ macedonian/cp1251-lang.xdy \
+ macedonian/cp1251-test.xdy \
+ macedonian/cp1251.xdy \
+ macedonian/iso88595-lang.xdy \
+ macedonian/iso88595-test.xdy \
+ macedonian/iso88595.xdy \
+ macedonian/isoir111-lang.xdy \
+ macedonian/isoir111-test.xdy \
+ macedonian/isoir111.xdy \
+ macedonian/utf8.pl \
+ macedonian/utf8-lang.xdy \
+ macedonian/utf8-test.xdy \
+ macedonian/utf8.xdy
+
+nodist_macedonian_DATA = $(MACEDONIAN)
+
+mongoliandir = $(langdir)/mongolian
+
+MONGOLIAN = \
+ mongolian/cyrillic-utf8.pl \
+ mongolian/cyrillic-utf8-lang.xdy \
+ mongolian/cyrillic-utf8-test.xdy \
+ mongolian/cyrillic-utf8.xdy
+
+nodist_mongolian_DATA = $(MONGOLIAN)
+
+norwegiandir = $(langdir)/norwegian
+
+NORWEGIAN = \
+ norwegian/latin1-lang.xdy \
+ norwegian/latin1-test.xdy \
+ norwegian/latin1.xdy \
+ norwegian/utf8.pl \
+ norwegian/utf8-lang.xdy \
+ norwegian/utf8-test.xdy \
+ norwegian/utf8.xdy
+
+nodist_norwegian_DATA = $(NORWEGIAN)
+
+polishdir = $(langdir)/polish
+
+POLISH = \
+ polish/cp1250-lang.xdy \
+ polish/cp1250-test.xdy \
+ polish/cp1250.xdy \
+ polish/latin2-lang.xdy \
+ polish/latin2-test.xdy \
+ polish/latin2.xdy \
+ polish/utf8.pl \
+ polish/utf8-lang.xdy \
+ polish/utf8-test.xdy \
+ polish/utf8.xdy
+
+nodist_polish_DATA = $(POLISH)
+
+portuguesedir = $(langdir)/portuguese
+
+PORTUGUESE = \
+ portuguese/latin1-lang.xdy \
+ portuguese/latin1-test.xdy \
+ portuguese/latin1.xdy \
+ portuguese/utf8.pl \
+ portuguese/utf8-lang.xdy \
+ portuguese/utf8-test.xdy \
+ portuguese/utf8.xdy
+
+nodist_portuguese_DATA = $(PORTUGUESE)
+
+romaniandir = $(langdir)/romanian
+
+ROMANIAN = \
+ romanian/latin2-lang.xdy \
+ romanian/latin2-test.xdy \
+ romanian/latin2.xdy \
+ romanian/utf8.pl \
+ romanian/utf8-lang.xdy \
+ romanian/utf8-test.xdy \
+ romanian/utf8.xdy
+
+nodist_romanian_DATA = $(ROMANIAN)
+
+russiandir = $(langdir)/russian
+
+RUSSIAN = \
+ russian/cp1251-lang.xdy \
+ russian/cp1251-test.xdy \
+ russian/cp1251.xdy \
+ russian/iso88595-lang.xdy \
+ russian/iso88595-test.xdy \
+ russian/iso88595.xdy \
+ russian/koi8-r-lang.xdy \
+ russian/koi8-r-test.xdy \
+ russian/koi8-r.xdy \
+ russian/translit-iso-utf8.pl \
+ russian/translit-iso-utf8-lang.xdy \
+ russian/translit-iso-utf8-test.xdy \
+ russian/translit-iso-utf8.xdy \
+ russian/utf8.pl \
+ russian/utf8-lang.xdy \
+ russian/utf8-test.xdy \
+ russian/utf8.xdy
+
+nodist_russian_DATA = $(RUSSIAN)
+
+serbiandir = $(langdir)/serbian
+
+SERBIAN = \
+ serbian/cp1251-lang.xdy \
+ serbian/cp1251-test.xdy \
+ serbian/cp1251.xdy \
+ serbian/iso88595-lang.xdy \
+ serbian/iso88595-test.xdy \
+ serbian/iso88595.xdy \
+ serbian/isoir111-lang.xdy \
+ serbian/isoir111-test.xdy \
+ serbian/isoir111.xdy \
+ serbian/utf8.pl \
+ serbian/utf8-lang.xdy \
+ serbian/utf8-test.xdy \
+ serbian/utf8.xdy
+
+nodist_serbian_DATA = $(SERBIAN)
+
+slovakdir = $(langdir)/slovak
+
+SLOVAK = \
+ slovak/large-cp1250-lang.xdy \
+ slovak/large-cp1250-test.xdy \
+ slovak/large-cp1250.xdy \
+ slovak/large-latin2-lang.xdy \
+ slovak/large-latin2-test.xdy \
+ slovak/large-latin2.xdy \
+ slovak/large-utf8.pl \
+ slovak/large-utf8-lang.xdy \
+ slovak/large-utf8-test.xdy \
+ slovak/large-utf8.xdy \
+ slovak/small-cp1250-lang.xdy \
+ slovak/small-cp1250-test.xdy \
+ slovak/small-cp1250.xdy \
+ slovak/small-latin2-lang.xdy \
+ slovak/small-latin2-test.xdy \
+ slovak/small-latin2.xdy \
+ slovak/small-utf8.pl \
+ slovak/small-utf8-lang.xdy \
+ slovak/small-utf8-test.xdy \
+ slovak/small-utf8.xdy
+
+nodist_slovak_DATA = $(SLOVAK)
+
+sloveniandir = $(langdir)/slovenian
+
+SLOVENIAN = \
+ slovenian/cp1250-lang.xdy \
+ slovenian/cp1250-test.xdy \
+ slovenian/cp1250.xdy \
+ slovenian/latin2-lang.xdy \
+ slovenian/latin2-test.xdy \
+ slovenian/latin2.xdy \
+ slovenian/utf8.pl \
+ slovenian/utf8-lang.xdy \
+ slovenian/utf8-test.xdy \
+ slovenian/utf8.xdy
+
+nodist_slovenian_DATA = $(SLOVENIAN)
+
+spanishdir = $(langdir)/spanish
+
+SPANISH = \
+ spanish/modern-latin1-lang.xdy \
+ spanish/modern-latin1-test.xdy \
+ spanish/modern-latin1.xdy \
+ spanish/modern-utf8.pl \
+ spanish/modern-utf8-lang.xdy \
+ spanish/modern-utf8-test.xdy \
+ spanish/modern-utf8.xdy \
+ spanish/traditional-latin1-lang.xdy \
+ spanish/traditional-latin1-test.xdy \
+ spanish/traditional-latin1.xdy \
+ spanish/traditional-utf8.pl \
+ spanish/traditional-utf8-lang.xdy \
+ spanish/traditional-utf8-test.xdy \
+ spanish/traditional-utf8.xdy
+
+nodist_spanish_DATA = $(SPANISH)
+
+swedishdir = $(langdir)/swedish
+
+SWEDISH = \
+ swedish/cp1252-lang.xdy \
+ swedish/cp1252-test.xdy \
+ swedish/cp1252.xdy \
+ swedish/latin9-lang.xdy \
+ swedish/latin9-test.xdy \
+ swedish/latin9.xdy \
+ swedish/utf8.pl \
+ swedish/utf8-lang.xdy \
+ swedish/utf8-test.xdy \
+ swedish/utf8.xdy
+
+nodist_swedish_DATA = $(SWEDISH)
+
+turkishdir = $(langdir)/turkish
+
+TURKISH = \
+ turkish/latin3-lang.xdy \
+ turkish/latin3-test.xdy \
+ turkish/latin3.xdy \
+ turkish/latin5-lang.xdy \
+ turkish/latin5-test.xdy \
+ turkish/latin5.xdy \
+ turkish/utf8.pl \
+ turkish/utf8-lang.xdy \
+ turkish/utf8-test.xdy \
+ turkish/utf8.xdy
+
+nodist_turkish_DATA = $(TURKISH)
+
+ukrainiandir = $(langdir)/ukrainian
+
+UKRAINIAN = \
+ ukrainian/cp1251-lang.xdy \
+ ukrainian/cp1251-test.xdy \
+ ukrainian/cp1251.xdy \
+ ukrainian/koi8-u-lang.xdy \
+ ukrainian/koi8-u-test.xdy \
+ ukrainian/koi8-u.xdy \
+ ukrainian/utf8.pl \
+ ukrainian/utf8-lang.xdy \
+ ukrainian/utf8-test.xdy \
+ ukrainian/utf8.xdy
+
+nodist_ukrainian_DATA = $(UKRAINIAN)
+
+upper_sorbiandir = $(langdir)/upper-sorbian
+
+UPPER_SORBIAN = \
+ upper-sorbian/cp1250-lang.xdy \
+ upper-sorbian/cp1250-test.xdy \
+ upper-sorbian/cp1250.xdy \
+ upper-sorbian/latin2-lang.xdy \
+ upper-sorbian/latin2-test.xdy \
+ upper-sorbian/latin2.xdy \
+ upper-sorbian/utf8.pl \
+ upper-sorbian/utf8-lang.xdy \
+ upper-sorbian/utf8-test.xdy \
+ upper-sorbian/utf8.xdy
+
+nodist_upper_sorbian_DATA = $(UPPER_SORBIAN)
+
+vietnamesedir = $(langdir)/vietnamese
+
+VIETNAMESE = \
+ vietnamese/utf8.pl \
+ vietnamese/utf8-lang.xdy \
+ vietnamese/utf8-test.xdy \
+ vietnamese/utf8.xdy
+
+nodist_vietnamese_DATA = $(VIETNAMESE)
+
+
+%utf8.pl : %utf8.pl.in
+ sed -e 's/@.{\([^}]*\)}/\1/g;' <$< >$@
+
+%latin1.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-1 >$@
+
+%cp850.pl : %utf8.pl.in
+ sed -e 's/@.{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP850 >$@
+
+romanian/latin2.pl : romanian/utf8.pl
+ sed -e 's/@u{\([^}]*\)}//g;' -f rom-comma-kludge.sed <$< | \
+ iconv -f UTF-8 -t ISO8859-2 >$@
+
+%latin2.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-2 >$@
+
+%latin3.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-3 >$@
+
+%latin4.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-4 >$@
+
+%iso88595.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-5 >$@
+
+%iso88597.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-7 >$@
+
+%iso88598.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-8 >$@
+
+%latin5.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-5 >$@
+
+%latin9.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;s/@9{\([^}]*\)}/\1/g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-15 >$@
+
+romanian/cp1250.pl : romanian/utf8.pl
+ sed -e 's/@u{\([^}]*\)}//g;' -f rom-comma-kludge.sed <$< | \
+ iconv -f UTF-8 -t CP1250 >$@
+
+%cp1250.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP1250 >$@
+
+%cp1251.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP1251 >$@
+
+%cp1252.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;s/@9{\([^}]*\)}/\1/g;' <$< | \
+ iconv -f UTF-8 -t CP1252 >$@
+
+%isoir111.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-IR-111 >$@
+
+%koi8-r.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t KOI8-R >$@
+
+%koi8-u.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t KOI8-U >$@
+
+# %tex.pl : %utf8.pl utf8-to-tex.sed
+# sed -f utf8-to-tex.sed <$< >$@
+
+
+
+%-lang.xdy : %-test.xdy
+ echo '(require "lang/$*.xdy")' >$@
+ sed -n '1,10 p' <$< >$@
+
+%-test.xdy : %.pl
+ perl $< $*
+
+%-doc.tex : %.pl
+ perl $< $*
+
+%.xdy : %.pl
+ perl $< $*
+
+SUBDIRS = \
+ albanian \
+ belarusian \
+ bulgarian \
+ croatian \
+ czech \
+ danish \
+ dutch \
+ english \
+ esperanto \
+ estonian \
+ finnish \
+ french \
+ general \
+ georgian \
+ german \
+ greek \
+ gypsy \
+ hausa \
+ hebrew \
+ hungarian \
+ icelandic \
+ italian \
+ klingon \
+ kurdish \
+ latin \
+ latvian \
+ lithuanian \
+ lower-sorbian \
+ macedonian \
+ mongolian \
+ norwegian \
+ polish \
+ portuguese \
+ romanian \
+ russian \
+ serbian \
+ slovak \
+ slovenian \
+ spanish \
+ swedish \
+ test1 \
+ turkish \
+ ukrainian \
+ upper-sorbian \
+ vietnamese
+
+SCRS = \
+ alphabets-doc.tex \
+ make-rules.pl \
+ utf8-to-tex.sed
+
+ALPHABETS = \
+ $(ALBANIAN) \
+ $(BELARUSIAN) \
+ $(BULGARIAN) \
+ $(CROATIAN) \
+ $(CZECH) \
+ $(DANISH) \
+ $(DUTCH) \
+ $(ENGLISH) \
+ $(ESPERANTO) \
+ $(ESTONIAN) \
+ $(FINNISH) \
+ $(FRENCH) \
+ $(GENERAL) \
+ $(GEORGIAN) \
+ $(GERMAN) \
+ $(GREEK) \
+ $(GYPSY) \
+ $(HAUSA) \
+ $(HEBREW) \
+ $(HUNGARIAN) \
+ $(ICELANDIC) \
+ $(ITALIAN) \
+ $(KLINGON) \
+ $(KURDISH) \
+ $(LATIN) \
+ $(LATVIAN) \
+ $(LITHUANIAN) \
+ $(LOWER_SORBIAN) \
+ $(MACEDONIAN) \
+ $(MONGOLIAN) \
+ $(NORWEGIAN) \
+ $(POLISH) \
+ $(PORTUGUESE) \
+ $(ROMANIAN) \
+ $(RUSSIAN) \
+ $(SERBIAN) \
+ $(SLOVAK) \
+ $(SLOVENIAN) \
+ $(SPANISH) \
+ $(SWEDISH) \
+ $(TURKISH) \
+ $(UKRAINIAN) \
+ $(UPPER_SORBIAN) \
+ $(VIETNAMESE)
+
+DOCS_CP1250 = \
+ croatian/cp1250-doc.tex \
+ czech/cp1250-doc.tex \
+ hungarian/cp1250-doc.tex \
+ lower-sorbian/cp1250-doc.tex \
+ polish/cp1250-doc.tex \
+ slovak/large-cp1250-doc.tex \
+ slovak/small-cp1250-doc.tex \
+ slovenian/cp1250-doc.tex \
+ upper-sorbian/cp1250-doc.tex
+
+DOCS_CP1252 = \
+ danish/cp1252-doc.tex \
+ english/cp1252-doc.tex \
+ estonian/cp1252-doc.tex \
+ finnish/cp1252-doc.tex \
+ french/cp1252-doc.tex \
+ general/cp1252-doc.tex \
+ icelandic/cp1252-doc.tex \
+ swedish/cp1252-doc.tex
+
+DOCS_CP850 = \
+ general/cp850-doc.tex
+
+DOCS_LATIN1 = \
+ albanian/latin1-doc.tex \
+ dutch/ij-as-ij-latin1-doc.tex \
+ german/din5007-latin1-doc.tex \
+ german/duden-latin1-doc.tex \
+ italian/latin1-doc.tex \
+ norwegian/latin1-doc.tex \
+ portuguese/latin1-doc.tex \
+ spanish/modern-latin1-doc.tex \
+ spanish/traditional-latin1-doc.tex
+
+
+DOCS_LATIN2 = \
+ croatian/latin2-doc.tex \
+ czech/latin2-doc.tex \
+ hungarian/latin2-doc.tex \
+ lower-sorbian/latin2-doc.tex \
+ polish/latin2-doc.tex \
+ romanian/latin2-doc.tex \
+ slovak/small-latin2-doc.tex \
+ slovak/large-latin2-doc.tex \
+ slovenian/latin2-doc.tex \
+ upper-sorbian/latin2-doc.tex
+
+DOCS_LATIN3 = \
+ esperanto/latin3-doc.tex \
+ turkish/latin3-doc.tex
+
+DOCS_LATIN4 = \
+ greek/translit-latin4-doc.tex \
+ latvian/latin4-doc.tex \
+ lithuanian/latin4-doc.tex
+
+DOCS_LATIN5 = \
+ kurdish/bedirxan-latin5-doc.tex \
+ kurdish/turkish-i-latin5-doc.tex \
+ turkish/latin5-doc.tex
+
+DOCS_LATIN9 = \
+ danish/latin9-doc.tex \
+ english/latin9-doc.tex \
+ estonian/latin9-doc.tex \
+ finnish/latin9-doc.tex \
+ french/latin9-doc.tex \
+ general/latin9-doc.tex \
+ icelandic/latin9-doc.tex \
+ swedish/latin9-doc.tex
+
+DOCS_CYR_1251 = \
+ belarusian/cp1251-doc.tex \
+ bulgarian/cp1251-doc.tex \
+ macedonian/cp1251-doc.tex \
+ russian/cp1251-doc.tex \
+ serbian/cp1251-doc.tex \
+ ukrainian/cp1251-doc.tex
+
+DOCS_CYR_ISO88595 = \
+ belarusian/iso88595-doc.tex \
+ bulgarian/iso88595-doc.tex \
+ macedonian/iso88595-doc.tex \
+ russian/iso88595-doc.tex \
+ serbian/iso88595-doc.tex
+
+DOCS_CYR_ISOIR111 = \
+ belarusian/isoir111-doc.tex \
+ macedonian/isoir111-doc.tex \
+ serbian/isoir111-doc.tex
+
+DOCS_CYR_KOI8_R = \
+ bulgarian/koi8-r-doc.tex \
+ russian/koi8-r-doc.tex
+
+DOCS_CYR_KOI8_U = \
+ ukrainian/koi8-u-doc.tex
+
+DOCS_CYR = \
+ $(DOCS_CYR_1251) \
+ $(DOCS_CYR_ISO88595) \
+ $(DOCS_CYR_ISOIR111) \
+ $(DOCS_CYR_KOI8_R) \
+ $(DOCS_CYR_KOI8_U)
+
+
+DOCS_OTHER = \
+ greek/iso88597-doc.tex \
+ hebrew/iso88598-doc.tex
+
+
+DOCS_UTF8_LAT = \
+ albanian/utf8-doc.tex \
+ croatian/utf8-doc.tex \
+ czech/utf8-doc.tex \
+ danish/utf8-doc.tex \
+ dutch/ij-as-ij-utf8-doc.tex \
+ dutch/ij-as-y-utf8-doc.tex \
+ english/utf8-doc.tex \
+ esperanto/utf8-doc.tex \
+ estonian/utf8-doc.tex \
+ finnish/utf8-doc.tex \
+ french/utf8-doc.tex \
+ general/utf8-doc.tex \
+ german/din5007-utf8-doc.tex \
+ german/duden-utf8-doc.tex \
+ greek/translit-utf8-doc.tex \
+ greek/utf8-doc.tex \
+ gypsy/northrussian-utf8-doc.tex \
+ hausa/utf8-doc.tex \
+ hungarian/utf8-doc.tex \
+ icelandic/utf8-doc.tex \
+ italian/utf8-doc.tex \
+ kurdish/bedirxan-utf8-doc.tex \
+ kurdish/turkish-i-utf8-doc.tex \
+ latin/utf8-doc.tex \
+ latvian/utf8-doc.tex \
+ lithuanian/utf8-doc.tex \
+ lower-sorbian/utf8-doc.tex \
+ norwegian/utf8-doc.tex \
+ polish/utf8-doc.tex \
+ portuguese/utf8-doc.tex \
+ romanian/utf8-doc.tex \
+ russian/translit-iso-utf8-doc.tex \
+ slovak/small-utf8-doc.tex \
+ slovak/large-utf8-doc.tex \
+ slovenian/utf8-doc.tex \
+ spanish/modern-utf8-doc.tex \
+ spanish/traditional-utf8-doc.tex \
+ swedish/utf8-doc.tex \
+ turkish/utf8-doc.tex \
+ upper-sorbian/utf8-doc.tex \
+ vietnamese/utf8-doc.tex
+
+DOCS_UTF8_CYR = \
+ belarusian/utf8-doc.tex \
+ bulgarian/utf8-doc.tex \
+ macedonian/utf8-doc.tex \
+ mongolian/cyrillic-utf8-doc.tex \
+ russian/utf8-doc.tex \
+ serbian/utf8-doc.tex \
+ ukrainian/utf8-doc.tex
+
+DOCS_UTF8_OTHER = \
+ georgian/utf8-doc.tex \
+ german/braille-utf8-doc.tex \
+ greek/utf8-doc.tex \
+ greek/polytonic-utf8-doc.tex \
+ hebrew/utf8-doc.tex \
+ klingon/utf8-doc.tex
+
+DOCS_CPS = \
+ $(DOCS_CP1250) \
+ $(DOCS_CP1252) \
+ $(DOCS_CP850)
+
+DOCS_LAT = \
+ $(DOCS_LATIN1) \
+ $(DOCS_LATIN2) \
+ $(DOCS_LATIN3) \
+ $(DOCS_LATIN4) \
+ $(DOCS_LATIN5) \
+ $(DOCS_LATIN9)
+
+DOCS_UTF8 = \
+ $(DOCS_UTF8_LAT) \
+ $(DOCS_UTF8_CYR) \
+ $(DOCS_UTF8_OTHER)
+
+DOCS = $(DOCS_CPS) $(DOCS_LAT) $(DOCS_CYR) $(DOCS_OTHER) $(DOCS_UTF8)
+
+
+alphabets-inc.tex : $(DOCS)
+ $(RM) $@
+ echo "\chapter{Latin scripts}" >>$@
+ echo "\ienc{cp1252}" >>$@
+ echo "\section{Codepage 1252}" >>$@
+ for i in $(DOCS_CP1252); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin1}" >>$@
+ echo "\section{Codepage latin1}" >>$@
+ for i in $(DOCS_LATIN1); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp850}" >>$@
+ echo "\section{Codepage 850}" >>$@
+ for i in $(DOCS_CP850); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin2}" >>$@
+ echo "\section{Codepage latin2}" >>$@
+ for i in $(DOCS_LATIN2); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp1250}" >>$@
+ echo "\section{Codepage 1250}" >>$@
+ for i in $(DOCS_CP1250); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin3}" >>$@
+ echo "\section{Codepage latin3}" >>$@
+ for i in $(DOCS_LATIN3); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin4}" >>$@
+ echo "\section{Codepage latin4}" >>$@
+ for i in $(DOCS_LATIN4); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin5}" >>$@
+ echo "\section{Codepage latin5}" >>$@
+ for i in $(DOCS_LATIN5); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin9}" >>$@
+ echo "\section{Codepage latin9}" >>$@
+ for i in $(DOCS_LATIN9); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp1251}" >>$@
+ echo "\fenc{T2A}" >>$@
+ echo "\chapter{Cyrillic scripts}" >>$@
+ echo "\section{Codepage 1251}" >>$@
+ for i in $(DOCS_CYR_1251); do echo "\input{$$i}" >>$@; done
+# echo "\ienc{iso-8859-7}" >>$@
+# echo "\fenc{LGR}" >>$@
+# echo "\chapter{Other scripts}" >>$@
+# for i in $(DOCS_OTHER); do echo "\input{$$i}" >>$@; done
+# FIXME: UTF8 encoding
+# echo "\section{UTF-8 scripts}" >>$@
+# for i in $(DOCS_UTF8); do echo "\input{$$i}" >>$@; done
+# echo "\ienc{utf8}" >>$@
+
+# whether to build docs
+if BUILDRULES
+
+if BUILDDOCS
+alphabets-doc.pdf : alphabets-doc.tex alphabets-inc.tex
+ pdflatex alphabets-doc.tex
+ pdflatex alphabets-doc.tex
+
+docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+
+PDFS = alphabets-doc.pdf
+
+doc_DATA = $(PDFS)
+
+endif # (end BUILDDOCS)
+
+endif # end (BUILDRULES)
+
+DOC_CLEAN = \
+ alphabets-doc.aux \
+ alphabets-doc.log \
+ alphabets-doc.out \
+ alphabets-doc.pdf \
+ alphabets-inc.tex \
+ alphabets-doc.toc
+
+EXTRA_DIST = $(SCRS) test.xdy
+
+CLEANFILES = $(ALPHABETS) $(DOC_CLEAN)
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/Makefile.in
new file mode 100644
index 00000000000..f2f1c2ff7ca
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/Makefile.in
@@ -0,0 +1,2418 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(docdir)" "$(DESTDIR)$(albaniandir)" \
+ "$(DESTDIR)$(belarusiandir)" "$(DESTDIR)$(bulgariandir)" \
+ "$(DESTDIR)$(croatiandir)" "$(DESTDIR)$(czechdir)" \
+ "$(DESTDIR)$(danishdir)" "$(DESTDIR)$(dutchdir)" \
+ "$(DESTDIR)$(englishdir)" "$(DESTDIR)$(esperantodir)" \
+ "$(DESTDIR)$(estoniandir)" "$(DESTDIR)$(finnishdir)" \
+ "$(DESTDIR)$(frenchdir)" "$(DESTDIR)$(generaldir)" \
+ "$(DESTDIR)$(georgiandir)" "$(DESTDIR)$(germandir)" \
+ "$(DESTDIR)$(greekdir)" "$(DESTDIR)$(gypsydir)" \
+ "$(DESTDIR)$(hausadir)" "$(DESTDIR)$(hebrewdir)" \
+ "$(DESTDIR)$(hungariandir)" "$(DESTDIR)$(icelandicdir)" \
+ "$(DESTDIR)$(italiandir)" "$(DESTDIR)$(klingondir)" \
+ "$(DESTDIR)$(kurdishdir)" "$(DESTDIR)$(latindir)" \
+ "$(DESTDIR)$(latviandir)" "$(DESTDIR)$(lithuaniandir)" \
+ "$(DESTDIR)$(lower_sorbiandir)" "$(DESTDIR)$(macedoniandir)" \
+ "$(DESTDIR)$(mongoliandir)" "$(DESTDIR)$(norwegiandir)" \
+ "$(DESTDIR)$(polishdir)" "$(DESTDIR)$(portuguesedir)" \
+ "$(DESTDIR)$(romaniandir)" "$(DESTDIR)$(russiandir)" \
+ "$(DESTDIR)$(serbiandir)" "$(DESTDIR)$(slovakdir)" \
+ "$(DESTDIR)$(sloveniandir)" "$(DESTDIR)$(spanishdir)" \
+ "$(DESTDIR)$(swedishdir)" "$(DESTDIR)$(turkishdir)" \
+ "$(DESTDIR)$(ukrainiandir)" "$(DESTDIR)$(upper_sorbiandir)" \
+ "$(DESTDIR)$(vietnamesedir)"
+docDATA_INSTALL = $(INSTALL_DATA)
+nodist_albanianDATA_INSTALL = $(INSTALL_DATA)
+nodist_belarusianDATA_INSTALL = $(INSTALL_DATA)
+nodist_bulgarianDATA_INSTALL = $(INSTALL_DATA)
+nodist_croatianDATA_INSTALL = $(INSTALL_DATA)
+nodist_czechDATA_INSTALL = $(INSTALL_DATA)
+nodist_danishDATA_INSTALL = $(INSTALL_DATA)
+nodist_dutchDATA_INSTALL = $(INSTALL_DATA)
+nodist_englishDATA_INSTALL = $(INSTALL_DATA)
+nodist_esperantoDATA_INSTALL = $(INSTALL_DATA)
+nodist_estonianDATA_INSTALL = $(INSTALL_DATA)
+nodist_finnishDATA_INSTALL = $(INSTALL_DATA)
+nodist_frenchDATA_INSTALL = $(INSTALL_DATA)
+nodist_generalDATA_INSTALL = $(INSTALL_DATA)
+nodist_georgianDATA_INSTALL = $(INSTALL_DATA)
+nodist_germanDATA_INSTALL = $(INSTALL_DATA)
+nodist_greekDATA_INSTALL = $(INSTALL_DATA)
+nodist_gypsyDATA_INSTALL = $(INSTALL_DATA)
+nodist_hausaDATA_INSTALL = $(INSTALL_DATA)
+nodist_hebrewDATA_INSTALL = $(INSTALL_DATA)
+nodist_hungarianDATA_INSTALL = $(INSTALL_DATA)
+nodist_icelandicDATA_INSTALL = $(INSTALL_DATA)
+nodist_italianDATA_INSTALL = $(INSTALL_DATA)
+nodist_klingonDATA_INSTALL = $(INSTALL_DATA)
+nodist_kurdishDATA_INSTALL = $(INSTALL_DATA)
+nodist_latinDATA_INSTALL = $(INSTALL_DATA)
+nodist_latvianDATA_INSTALL = $(INSTALL_DATA)
+nodist_lithuanianDATA_INSTALL = $(INSTALL_DATA)
+nodist_lower_sorbianDATA_INSTALL = $(INSTALL_DATA)
+nodist_macedonianDATA_INSTALL = $(INSTALL_DATA)
+nodist_mongolianDATA_INSTALL = $(INSTALL_DATA)
+nodist_norwegianDATA_INSTALL = $(INSTALL_DATA)
+nodist_polishDATA_INSTALL = $(INSTALL_DATA)
+nodist_portugueseDATA_INSTALL = $(INSTALL_DATA)
+nodist_romanianDATA_INSTALL = $(INSTALL_DATA)
+nodist_russianDATA_INSTALL = $(INSTALL_DATA)
+nodist_serbianDATA_INSTALL = $(INSTALL_DATA)
+nodist_slovakDATA_INSTALL = $(INSTALL_DATA)
+nodist_slovenianDATA_INSTALL = $(INSTALL_DATA)
+nodist_spanishDATA_INSTALL = $(INSTALL_DATA)
+nodist_swedishDATA_INSTALL = $(INSTALL_DATA)
+nodist_turkishDATA_INSTALL = $(INSTALL_DATA)
+nodist_ukrainianDATA_INSTALL = $(INSTALL_DATA)
+nodist_upper_sorbianDATA_INSTALL = $(INSTALL_DATA)
+nodist_vietnameseDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(doc_DATA) $(nodist_albanian_DATA) $(nodist_belarusian_DATA) \
+ $(nodist_bulgarian_DATA) $(nodist_croatian_DATA) \
+ $(nodist_czech_DATA) $(nodist_danish_DATA) \
+ $(nodist_dutch_DATA) $(nodist_english_DATA) \
+ $(nodist_esperanto_DATA) $(nodist_estonian_DATA) \
+ $(nodist_finnish_DATA) $(nodist_french_DATA) \
+ $(nodist_general_DATA) $(nodist_georgian_DATA) \
+ $(nodist_german_DATA) $(nodist_greek_DATA) \
+ $(nodist_gypsy_DATA) $(nodist_hausa_DATA) \
+ $(nodist_hebrew_DATA) $(nodist_hungarian_DATA) \
+ $(nodist_icelandic_DATA) $(nodist_italian_DATA) \
+ $(nodist_klingon_DATA) $(nodist_kurdish_DATA) \
+ $(nodist_latin_DATA) $(nodist_latvian_DATA) \
+ $(nodist_lithuanian_DATA) $(nodist_lower_sorbian_DATA) \
+ $(nodist_macedonian_DATA) $(nodist_mongolian_DATA) \
+ $(nodist_norwegian_DATA) $(nodist_polish_DATA) \
+ $(nodist_portuguese_DATA) $(nodist_romanian_DATA) \
+ $(nodist_russian_DATA) $(nodist_serbian_DATA) \
+ $(nodist_slovak_DATA) $(nodist_slovenian_DATA) \
+ $(nodist_spanish_DATA) $(nodist_swedish_DATA) \
+ $(nodist_turkish_DATA) $(nodist_ukrainian_DATA) \
+ $(nodist_upper_sorbian_DATA) $(nodist_vietnamese_DATA)
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+langdir = $(pkglibdir)/modules/lang
+albaniandir = $(langdir)/albanian
+ALBANIAN = \
+ albanian/latin1-lang.xdy \
+ albanian/latin1-test.xdy \
+ albanian/latin1.xdy \
+ albanian/utf8.pl \
+ albanian/utf8-lang.xdy \
+ albanian/utf8-test.xdy \
+ albanian/utf8.xdy
+
+nodist_albanian_DATA = $(ALBANIAN)
+belarusiandir = $(langdir)/belarusian
+BELARUSIAN = \
+ belarusian/cp1251-lang.xdy \
+ belarusian/cp1251-test.xdy \
+ belarusian/cp1251.xdy \
+ belarusian/iso88595-lang.xdy \
+ belarusian/iso88595-test.xdy \
+ belarusian/iso88595.xdy \
+ belarusian/isoir111-lang.xdy \
+ belarusian/isoir111-test.xdy \
+ belarusian/isoir111.xdy \
+ belarusian/utf8.pl \
+ belarusian/utf8-lang.xdy \
+ belarusian/utf8-test.xdy \
+ belarusian/utf8.xdy
+
+nodist_belarusian_DATA = $(BELARUSIAN)
+bulgariandir = $(langdir)/bulgarian
+BULGARIAN = \
+ bulgarian/cp1251-lang.xdy \
+ bulgarian/cp1251-test.xdy \
+ bulgarian/cp1251.xdy \
+ bulgarian/iso88595-lang.xdy \
+ bulgarian/iso88595-test.xdy \
+ bulgarian/iso88595.xdy \
+ bulgarian/koi8-r-lang.xdy \
+ bulgarian/koi8-r-test.xdy \
+ bulgarian/koi8-r.xdy \
+ bulgarian/utf8.pl \
+ bulgarian/utf8-lang.xdy \
+ bulgarian/utf8-test.xdy \
+ bulgarian/utf8.xdy
+
+nodist_bulgarian_DATA = $(BULGARIAN)
+croatiandir = $(langdir)/croatian
+CROATIAN = \
+ croatian/cp1250-lang.xdy \
+ croatian/cp1250-test.xdy \
+ croatian/cp1250.xdy \
+ croatian/latin2-lang.xdy \
+ croatian/latin2-test.xdy \
+ croatian/latin2.xdy \
+ croatian/utf8.pl \
+ croatian/utf8-lang.xdy \
+ croatian/utf8-test.xdy \
+ croatian/utf8.xdy
+
+nodist_croatian_DATA = $(CROATIAN)
+czechdir = $(langdir)/czech
+CZECH = \
+ czech/cp1250-lang.xdy \
+ czech/cp1250-test.xdy \
+ czech/cp1250.xdy \
+ czech/latin2-lang.xdy \
+ czech/latin2-test.xdy \
+ czech/latin2.xdy \
+ czech/utf8.pl \
+ czech/utf8-lang.xdy \
+ czech/utf8-test.xdy \
+ czech/utf8.xdy
+
+nodist_czech_DATA = $(CZECH)
+danishdir = $(langdir)/danish
+DANISH = \
+ danish/cp1252-lang.xdy \
+ danish/cp1252-test.xdy \
+ danish/cp1252.xdy \
+ danish/latin9-lang.xdy \
+ danish/latin9-test.xdy \
+ danish/latin9.xdy \
+ danish/utf8.pl \
+ danish/utf8-lang.xdy \
+ danish/utf8-test.xdy \
+ danish/utf8.xdy
+
+nodist_danish_DATA = $(DANISH)
+dutchdir = $(langdir)/dutch
+DUTCH = \
+ dutch/ij-as-ij-latin1-lang.xdy \
+ dutch/ij-as-ij-latin1-test.xdy \
+ dutch/ij-as-ij-latin1.xdy \
+ dutch/ij-as-ij-utf8.pl \
+ dutch/ij-as-ij-utf8-lang.xdy \
+ dutch/ij-as-ij-utf8-test.xdy \
+ dutch/ij-as-ij-utf8.xdy \
+ dutch/ij-as-y-utf8.pl \
+ dutch/ij-as-y-utf8.xdy \
+ dutch/ij-as-y-utf8-lang.xdy \
+ dutch/ij-as-y-utf8-test.xdy \
+ dutch/ij-as-y-utf8.xdy
+
+nodist_dutch_DATA = $(DUTCH)
+englishdir = $(langdir)/english
+ENGLISH = \
+ english/cp1252-lang.xdy \
+ english/cp1252-test.xdy \
+ english/cp1252.xdy \
+ english/latin9-lang.xdy \
+ english/latin9-test.xdy \
+ english/latin9.xdy \
+ english/utf8.pl \
+ english/utf8-lang.xdy \
+ english/utf8-test.xdy \
+ english/utf8.xdy
+
+nodist_english_DATA = $(ENGLISH)
+esperantodir = $(langdir)/esperanto
+ESPERANTO = \
+ esperanto/latin3-lang.xdy \
+ esperanto/latin3-test.xdy \
+ esperanto/latin3.xdy \
+ esperanto/utf8.pl \
+ esperanto/utf8-lang.xdy \
+ esperanto/utf8-test.xdy \
+ esperanto/utf8.xdy
+
+nodist_esperanto_DATA = $(ESPERANTO)
+estoniandir = $(langdir)/estonian
+ESTONIAN = \
+ estonian/cp1252-lang.xdy \
+ estonian/cp1252-test.xdy \
+ estonian/cp1252.xdy \
+ estonian/latin9-lang.xdy \
+ estonian/latin9-test.xdy \
+ estonian/latin9.xdy \
+ estonian/utf8.pl \
+ estonian/utf8-lang.xdy \
+ estonian/utf8-test.xdy \
+ estonian/utf8.xdy
+
+nodist_estonian_DATA = $(ESTONIAN)
+finnishdir = $(langdir)/finnish
+FINNISH = \
+ finnish/cp1252-lang.xdy \
+ finnish/cp1252-test.xdy \
+ finnish/cp1252.xdy \
+ finnish/latin9-lang.xdy \
+ finnish/latin9-test.xdy \
+ finnish/latin9.xdy \
+ finnish/utf8.pl \
+ finnish/utf8-lang.xdy \
+ finnish/utf8-test.xdy \
+ finnish/utf8.xdy
+
+nodist_finnish_DATA = $(FINNISH)
+frenchdir = $(langdir)/french
+FRENCH = \
+ french/cp1252-lang.xdy \
+ french/cp1252-test.xdy \
+ french/cp1252.xdy \
+ french/latin9-lang.xdy \
+ french/latin9-test.xdy \
+ french/latin9.xdy \
+ french/utf8.pl \
+ french/utf8-lang.xdy \
+ french/utf8-test.xdy \
+ french/utf8.xdy
+
+nodist_french_DATA = $(FRENCH)
+generaldir = $(langdir)/general
+GENERAL = \
+ general/cp1252-lang.xdy \
+ general/cp1252-test.xdy \
+ general/cp1252.xdy \
+ general/cp850-lang.xdy \
+ general/cp850-test.xdy \
+ general/cp850.xdy \
+ general/latin9-lang.xdy \
+ general/latin9-test.xdy \
+ general/latin9.xdy \
+ general/utf8.pl \
+ general/utf8-lang.xdy \
+ general/utf8-test.xdy \
+ general/utf8.xdy
+
+nodist_general_DATA = $(GENERAL)
+georgiandir = $(langdir)/georgian
+GEORGIAN = \
+ georgian/utf8.pl \
+ georgian/utf8-lang.xdy \
+ georgian/utf8-test.xdy \
+ georgian/utf8.xdy
+
+nodist_georgian_DATA = $(GEORGIAN)
+germandir = $(langdir)/german
+GERMAN = \
+ german/braille-utf8.pl \
+ german/braille-utf8-lang.xdy \
+ german/braille-utf8-test.xdy \
+ german/braille-utf8.xdy \
+ german/din5007-latin1-lang.xdy \
+ german/din5007-latin1-test.xdy \
+ german/din5007-latin1.xdy \
+ german/din5007-utf8.pl \
+ german/din5007-utf8-lang.xdy \
+ german/din5007-utf8-test.xdy \
+ german/din5007-utf8.xdy \
+ german/duden-latin1-lang.xdy \
+ german/duden-latin1-test.xdy \
+ german/duden-latin1.xdy \
+ german/duden-utf8.pl \
+ german/duden-utf8-lang.xdy \
+ german/duden-utf8-test.xdy \
+ german/duden-utf8.xdy
+
+nodist_german_DATA = $(GERMAN)
+greekdir = $(langdir)/greek
+GREEK = \
+ greek/iso88597-lang.xdy \
+ greek/iso88597-test.xdy \
+ greek/iso88597.xdy \
+ greek/polytonic-utf8.pl \
+ greek/polytonic-utf8-lang.xdy \
+ greek/polytonic-utf8-test.xdy \
+ greek/polytonic-utf8.xdy \
+ greek/translit-latin4-lang.xdy \
+ greek/translit-latin4-test.xdy \
+ greek/translit-latin4.xdy \
+ greek/translit-utf8.pl \
+ greek/translit-utf8-lang.xdy \
+ greek/translit-utf8-test.xdy \
+ greek/translit-utf8.xdy \
+ greek/utf8.pl \
+ greek/utf8-lang.xdy \
+ greek/utf8-test.xdy \
+ greek/utf8.xdy
+
+nodist_greek_DATA = $(GREEK)
+gypsydir = $(langdir)/gypsy
+GYPSY = \
+ gypsy/northrussian-utf8.pl \
+ gypsy/northrussian-utf8-lang.xdy \
+ gypsy/northrussian-utf8-test.xdy \
+ gypsy/northrussian-utf8.xdy
+
+nodist_gypsy_DATA = $(GYPSY)
+hausadir = $(langdir)/hausa
+HAUSA = \
+ hausa/utf8.pl \
+ hausa/utf8-lang.xdy \
+ hausa/utf8-test.xdy \
+ hausa/utf8.xdy
+
+nodist_hausa_DATA = $(HAUSA)
+hebrewdir = $(langdir)/hebrew
+HEBREW = \
+ hebrew/iso88598-lang.xdy \
+ hebrew/iso88598-test.xdy \
+ hebrew/iso88598.xdy \
+ hebrew/utf8.pl \
+ hebrew/utf8-lang.xdy \
+ hebrew/utf8-test.xdy \
+ hebrew/utf8.xdy
+
+nodist_hebrew_DATA = $(HEBREW)
+hungariandir = $(langdir)/hungarian
+HUNGARIAN = \
+ hungarian/cp1250-lang.xdy \
+ hungarian/cp1250-test.xdy \
+ hungarian/cp1250.xdy \
+ hungarian/latin2-lang.xdy \
+ hungarian/latin2-test.xdy \
+ hungarian/latin2.xdy \
+ hungarian/utf8.pl \
+ hungarian/utf8-lang.xdy \
+ hungarian/utf8-test.xdy \
+ hungarian/utf8.xdy
+
+nodist_hungarian_DATA = $(HUNGARIAN)
+icelandicdir = $(langdir)/icelandic
+ICELANDIC = \
+ icelandic/cp1252-lang.xdy \
+ icelandic/cp1252-test.xdy \
+ icelandic/cp1252.xdy \
+ icelandic/latin9-lang.xdy \
+ icelandic/latin9-test.xdy \
+ icelandic/latin9.xdy \
+ icelandic/utf8.pl \
+ icelandic/utf8-lang.xdy \
+ icelandic/utf8-test.xdy \
+ icelandic/utf8.xdy
+
+nodist_icelandic_DATA = $(ICELANDIC)
+italiandir = $(langdir)/italian
+ITALIAN = \
+ italian/latin1-lang.xdy \
+ italian/latin1-test.xdy \
+ italian/latin1.xdy \
+ italian/utf8.pl \
+ italian/utf8-lang.xdy \
+ italian/utf8-test.xdy \
+ italian/utf8.xdy
+
+nodist_italian_DATA = $(ITALIAN)
+klingondir = $(langdir)/klingon
+KLINGON = \
+ klingon/utf8.pl \
+ klingon/utf8-lang.xdy \
+ klingon/utf8-test.xdy \
+ klingon/utf8.xdy
+
+nodist_klingon_DATA = $(KLINGON)
+kurdishdir = $(langdir)/kurdish
+KURDISH = \
+ kurdish/bedirxan-latin5-lang.xdy \
+ kurdish/bedirxan-latin5-test.xdy \
+ kurdish/bedirxan-latin5.xdy \
+ kurdish/bedirxan-utf8.pl \
+ kurdish/bedirxan-utf8-lang.xdy \
+ kurdish/bedirxan-utf8-test.xdy \
+ kurdish/bedirxan-utf8.xdy \
+ kurdish/turkish-i-latin5-lang.xdy \
+ kurdish/turkish-i-latin5-test.xdy \
+ kurdish/turkish-i-latin5.xdy \
+ kurdish/turkish-i-utf8.pl \
+ kurdish/turkish-i-utf8-lang.xdy \
+ kurdish/turkish-i-utf8-test.xdy \
+ kurdish/turkish-i-utf8.xdy
+
+nodist_kurdish_DATA = $(KURDISH)
+latindir = $(langdir)/latin
+LATIN = \
+ latin/utf8.pl \
+ latin/utf8-lang.xdy \
+ latin/utf8-test.xdy \
+ latin/utf8.xdy
+
+nodist_latin_DATA = $(LATIN)
+latviandir = $(langdir)/latvian
+LATVIAN = \
+ latvian/latin4-lang.xdy \
+ latvian/latin4-test.xdy \
+ latvian/latin4.xdy \
+ latvian/utf8.pl \
+ latvian/utf8-lang.xdy \
+ latvian/utf8-test.xdy \
+ latvian/utf8.xdy
+
+nodist_latvian_DATA = $(LATVIAN)
+lithuaniandir = $(langdir)/lithuanian
+LITHUANIAN = \
+ lithuanian/latin4-lang.xdy \
+ lithuanian/latin4-test.xdy \
+ lithuanian/latin4.xdy \
+ lithuanian/utf8.pl \
+ lithuanian/utf8-lang.xdy \
+ lithuanian/utf8-test.xdy \
+ lithuanian/utf8.xdy
+
+nodist_lithuanian_DATA = $(LITHUANIAN)
+lower_sorbiandir = $(langdir)/lower-sorbian
+LOWER_SORBIAN = \
+ lower-sorbian/cp1250-lang.xdy \
+ lower-sorbian/cp1250-test.xdy \
+ lower-sorbian/cp1250.xdy \
+ lower-sorbian/latin2-lang.xdy \
+ lower-sorbian/latin2-test.xdy \
+ lower-sorbian/latin2.xdy \
+ lower-sorbian/utf8.pl \
+ lower-sorbian/utf8-lang.xdy \
+ lower-sorbian/utf8-test.xdy \
+ lower-sorbian/utf8.xdy
+
+nodist_lower_sorbian_DATA = $(LOWER_SORBIAN)
+macedoniandir = $(langdir)/macedonian
+MACEDONIAN = \
+ macedonian/cp1251-lang.xdy \
+ macedonian/cp1251-test.xdy \
+ macedonian/cp1251.xdy \
+ macedonian/iso88595-lang.xdy \
+ macedonian/iso88595-test.xdy \
+ macedonian/iso88595.xdy \
+ macedonian/isoir111-lang.xdy \
+ macedonian/isoir111-test.xdy \
+ macedonian/isoir111.xdy \
+ macedonian/utf8.pl \
+ macedonian/utf8-lang.xdy \
+ macedonian/utf8-test.xdy \
+ macedonian/utf8.xdy
+
+nodist_macedonian_DATA = $(MACEDONIAN)
+mongoliandir = $(langdir)/mongolian
+MONGOLIAN = \
+ mongolian/cyrillic-utf8.pl \
+ mongolian/cyrillic-utf8-lang.xdy \
+ mongolian/cyrillic-utf8-test.xdy \
+ mongolian/cyrillic-utf8.xdy
+
+nodist_mongolian_DATA = $(MONGOLIAN)
+norwegiandir = $(langdir)/norwegian
+NORWEGIAN = \
+ norwegian/latin1-lang.xdy \
+ norwegian/latin1-test.xdy \
+ norwegian/latin1.xdy \
+ norwegian/utf8.pl \
+ norwegian/utf8-lang.xdy \
+ norwegian/utf8-test.xdy \
+ norwegian/utf8.xdy
+
+nodist_norwegian_DATA = $(NORWEGIAN)
+polishdir = $(langdir)/polish
+POLISH = \
+ polish/cp1250-lang.xdy \
+ polish/cp1250-test.xdy \
+ polish/cp1250.xdy \
+ polish/latin2-lang.xdy \
+ polish/latin2-test.xdy \
+ polish/latin2.xdy \
+ polish/utf8.pl \
+ polish/utf8-lang.xdy \
+ polish/utf8-test.xdy \
+ polish/utf8.xdy
+
+nodist_polish_DATA = $(POLISH)
+portuguesedir = $(langdir)/portuguese
+PORTUGUESE = \
+ portuguese/latin1-lang.xdy \
+ portuguese/latin1-test.xdy \
+ portuguese/latin1.xdy \
+ portuguese/utf8.pl \
+ portuguese/utf8-lang.xdy \
+ portuguese/utf8-test.xdy \
+ portuguese/utf8.xdy
+
+nodist_portuguese_DATA = $(PORTUGUESE)
+romaniandir = $(langdir)/romanian
+ROMANIAN = \
+ romanian/latin2-lang.xdy \
+ romanian/latin2-test.xdy \
+ romanian/latin2.xdy \
+ romanian/utf8.pl \
+ romanian/utf8-lang.xdy \
+ romanian/utf8-test.xdy \
+ romanian/utf8.xdy
+
+nodist_romanian_DATA = $(ROMANIAN)
+russiandir = $(langdir)/russian
+RUSSIAN = \
+ russian/cp1251-lang.xdy \
+ russian/cp1251-test.xdy \
+ russian/cp1251.xdy \
+ russian/iso88595-lang.xdy \
+ russian/iso88595-test.xdy \
+ russian/iso88595.xdy \
+ russian/koi8-r-lang.xdy \
+ russian/koi8-r-test.xdy \
+ russian/koi8-r.xdy \
+ russian/translit-iso-utf8.pl \
+ russian/translit-iso-utf8-lang.xdy \
+ russian/translit-iso-utf8-test.xdy \
+ russian/translit-iso-utf8.xdy \
+ russian/utf8.pl \
+ russian/utf8-lang.xdy \
+ russian/utf8-test.xdy \
+ russian/utf8.xdy
+
+nodist_russian_DATA = $(RUSSIAN)
+serbiandir = $(langdir)/serbian
+SERBIAN = \
+ serbian/cp1251-lang.xdy \
+ serbian/cp1251-test.xdy \
+ serbian/cp1251.xdy \
+ serbian/iso88595-lang.xdy \
+ serbian/iso88595-test.xdy \
+ serbian/iso88595.xdy \
+ serbian/isoir111-lang.xdy \
+ serbian/isoir111-test.xdy \
+ serbian/isoir111.xdy \
+ serbian/utf8.pl \
+ serbian/utf8-lang.xdy \
+ serbian/utf8-test.xdy \
+ serbian/utf8.xdy
+
+nodist_serbian_DATA = $(SERBIAN)
+slovakdir = $(langdir)/slovak
+SLOVAK = \
+ slovak/large-cp1250-lang.xdy \
+ slovak/large-cp1250-test.xdy \
+ slovak/large-cp1250.xdy \
+ slovak/large-latin2-lang.xdy \
+ slovak/large-latin2-test.xdy \
+ slovak/large-latin2.xdy \
+ slovak/large-utf8.pl \
+ slovak/large-utf8-lang.xdy \
+ slovak/large-utf8-test.xdy \
+ slovak/large-utf8.xdy \
+ slovak/small-cp1250-lang.xdy \
+ slovak/small-cp1250-test.xdy \
+ slovak/small-cp1250.xdy \
+ slovak/small-latin2-lang.xdy \
+ slovak/small-latin2-test.xdy \
+ slovak/small-latin2.xdy \
+ slovak/small-utf8.pl \
+ slovak/small-utf8-lang.xdy \
+ slovak/small-utf8-test.xdy \
+ slovak/small-utf8.xdy
+
+nodist_slovak_DATA = $(SLOVAK)
+sloveniandir = $(langdir)/slovenian
+SLOVENIAN = \
+ slovenian/cp1250-lang.xdy \
+ slovenian/cp1250-test.xdy \
+ slovenian/cp1250.xdy \
+ slovenian/latin2-lang.xdy \
+ slovenian/latin2-test.xdy \
+ slovenian/latin2.xdy \
+ slovenian/utf8.pl \
+ slovenian/utf8-lang.xdy \
+ slovenian/utf8-test.xdy \
+ slovenian/utf8.xdy
+
+nodist_slovenian_DATA = $(SLOVENIAN)
+spanishdir = $(langdir)/spanish
+SPANISH = \
+ spanish/modern-latin1-lang.xdy \
+ spanish/modern-latin1-test.xdy \
+ spanish/modern-latin1.xdy \
+ spanish/modern-utf8.pl \
+ spanish/modern-utf8-lang.xdy \
+ spanish/modern-utf8-test.xdy \
+ spanish/modern-utf8.xdy \
+ spanish/traditional-latin1-lang.xdy \
+ spanish/traditional-latin1-test.xdy \
+ spanish/traditional-latin1.xdy \
+ spanish/traditional-utf8.pl \
+ spanish/traditional-utf8-lang.xdy \
+ spanish/traditional-utf8-test.xdy \
+ spanish/traditional-utf8.xdy
+
+nodist_spanish_DATA = $(SPANISH)
+swedishdir = $(langdir)/swedish
+SWEDISH = \
+ swedish/cp1252-lang.xdy \
+ swedish/cp1252-test.xdy \
+ swedish/cp1252.xdy \
+ swedish/latin9-lang.xdy \
+ swedish/latin9-test.xdy \
+ swedish/latin9.xdy \
+ swedish/utf8.pl \
+ swedish/utf8-lang.xdy \
+ swedish/utf8-test.xdy \
+ swedish/utf8.xdy
+
+nodist_swedish_DATA = $(SWEDISH)
+turkishdir = $(langdir)/turkish
+TURKISH = \
+ turkish/latin3-lang.xdy \
+ turkish/latin3-test.xdy \
+ turkish/latin3.xdy \
+ turkish/latin5-lang.xdy \
+ turkish/latin5-test.xdy \
+ turkish/latin5.xdy \
+ turkish/utf8.pl \
+ turkish/utf8-lang.xdy \
+ turkish/utf8-test.xdy \
+ turkish/utf8.xdy
+
+nodist_turkish_DATA = $(TURKISH)
+ukrainiandir = $(langdir)/ukrainian
+UKRAINIAN = \
+ ukrainian/cp1251-lang.xdy \
+ ukrainian/cp1251-test.xdy \
+ ukrainian/cp1251.xdy \
+ ukrainian/koi8-u-lang.xdy \
+ ukrainian/koi8-u-test.xdy \
+ ukrainian/koi8-u.xdy \
+ ukrainian/utf8.pl \
+ ukrainian/utf8-lang.xdy \
+ ukrainian/utf8-test.xdy \
+ ukrainian/utf8.xdy
+
+nodist_ukrainian_DATA = $(UKRAINIAN)
+upper_sorbiandir = $(langdir)/upper-sorbian
+UPPER_SORBIAN = \
+ upper-sorbian/cp1250-lang.xdy \
+ upper-sorbian/cp1250-test.xdy \
+ upper-sorbian/cp1250.xdy \
+ upper-sorbian/latin2-lang.xdy \
+ upper-sorbian/latin2-test.xdy \
+ upper-sorbian/latin2.xdy \
+ upper-sorbian/utf8.pl \
+ upper-sorbian/utf8-lang.xdy \
+ upper-sorbian/utf8-test.xdy \
+ upper-sorbian/utf8.xdy
+
+nodist_upper_sorbian_DATA = $(UPPER_SORBIAN)
+vietnamesedir = $(langdir)/vietnamese
+VIETNAMESE = \
+ vietnamese/utf8.pl \
+ vietnamese/utf8-lang.xdy \
+ vietnamese/utf8-test.xdy \
+ vietnamese/utf8.xdy
+
+nodist_vietnamese_DATA = $(VIETNAMESE)
+SUBDIRS = \
+ albanian \
+ belarusian \
+ bulgarian \
+ croatian \
+ czech \
+ danish \
+ dutch \
+ english \
+ esperanto \
+ estonian \
+ finnish \
+ french \
+ general \
+ georgian \
+ german \
+ greek \
+ gypsy \
+ hausa \
+ hebrew \
+ hungarian \
+ icelandic \
+ italian \
+ klingon \
+ kurdish \
+ latin \
+ latvian \
+ lithuanian \
+ lower-sorbian \
+ macedonian \
+ mongolian \
+ norwegian \
+ polish \
+ portuguese \
+ romanian \
+ russian \
+ serbian \
+ slovak \
+ slovenian \
+ spanish \
+ swedish \
+ test1 \
+ turkish \
+ ukrainian \
+ upper-sorbian \
+ vietnamese
+
+SCRS = \
+ alphabets-doc.tex \
+ make-rules.pl \
+ utf8-to-tex.sed
+
+ALPHABETS = \
+ $(ALBANIAN) \
+ $(BELARUSIAN) \
+ $(BULGARIAN) \
+ $(CROATIAN) \
+ $(CZECH) \
+ $(DANISH) \
+ $(DUTCH) \
+ $(ENGLISH) \
+ $(ESPERANTO) \
+ $(ESTONIAN) \
+ $(FINNISH) \
+ $(FRENCH) \
+ $(GENERAL) \
+ $(GEORGIAN) \
+ $(GERMAN) \
+ $(GREEK) \
+ $(GYPSY) \
+ $(HAUSA) \
+ $(HEBREW) \
+ $(HUNGARIAN) \
+ $(ICELANDIC) \
+ $(ITALIAN) \
+ $(KLINGON) \
+ $(KURDISH) \
+ $(LATIN) \
+ $(LATVIAN) \
+ $(LITHUANIAN) \
+ $(LOWER_SORBIAN) \
+ $(MACEDONIAN) \
+ $(MONGOLIAN) \
+ $(NORWEGIAN) \
+ $(POLISH) \
+ $(PORTUGUESE) \
+ $(ROMANIAN) \
+ $(RUSSIAN) \
+ $(SERBIAN) \
+ $(SLOVAK) \
+ $(SLOVENIAN) \
+ $(SPANISH) \
+ $(SWEDISH) \
+ $(TURKISH) \
+ $(UKRAINIAN) \
+ $(UPPER_SORBIAN) \
+ $(VIETNAMESE)
+
+DOCS_CP1250 = \
+ croatian/cp1250-doc.tex \
+ czech/cp1250-doc.tex \
+ hungarian/cp1250-doc.tex \
+ lower-sorbian/cp1250-doc.tex \
+ polish/cp1250-doc.tex \
+ slovak/large-cp1250-doc.tex \
+ slovak/small-cp1250-doc.tex \
+ slovenian/cp1250-doc.tex \
+ upper-sorbian/cp1250-doc.tex
+
+DOCS_CP1252 = \
+ danish/cp1252-doc.tex \
+ english/cp1252-doc.tex \
+ estonian/cp1252-doc.tex \
+ finnish/cp1252-doc.tex \
+ french/cp1252-doc.tex \
+ general/cp1252-doc.tex \
+ icelandic/cp1252-doc.tex \
+ swedish/cp1252-doc.tex
+
+DOCS_CP850 = \
+ general/cp850-doc.tex
+
+DOCS_LATIN1 = \
+ albanian/latin1-doc.tex \
+ dutch/ij-as-ij-latin1-doc.tex \
+ german/din5007-latin1-doc.tex \
+ german/duden-latin1-doc.tex \
+ italian/latin1-doc.tex \
+ norwegian/latin1-doc.tex \
+ portuguese/latin1-doc.tex \
+ spanish/modern-latin1-doc.tex \
+ spanish/traditional-latin1-doc.tex
+
+DOCS_LATIN2 = \
+ croatian/latin2-doc.tex \
+ czech/latin2-doc.tex \
+ hungarian/latin2-doc.tex \
+ lower-sorbian/latin2-doc.tex \
+ polish/latin2-doc.tex \
+ romanian/latin2-doc.tex \
+ slovak/small-latin2-doc.tex \
+ slovak/large-latin2-doc.tex \
+ slovenian/latin2-doc.tex \
+ upper-sorbian/latin2-doc.tex
+
+DOCS_LATIN3 = \
+ esperanto/latin3-doc.tex \
+ turkish/latin3-doc.tex
+
+DOCS_LATIN4 = \
+ greek/translit-latin4-doc.tex \
+ latvian/latin4-doc.tex \
+ lithuanian/latin4-doc.tex
+
+DOCS_LATIN5 = \
+ kurdish/bedirxan-latin5-doc.tex \
+ kurdish/turkish-i-latin5-doc.tex \
+ turkish/latin5-doc.tex
+
+DOCS_LATIN9 = \
+ danish/latin9-doc.tex \
+ english/latin9-doc.tex \
+ estonian/latin9-doc.tex \
+ finnish/latin9-doc.tex \
+ french/latin9-doc.tex \
+ general/latin9-doc.tex \
+ icelandic/latin9-doc.tex \
+ swedish/latin9-doc.tex
+
+DOCS_CYR_1251 = \
+ belarusian/cp1251-doc.tex \
+ bulgarian/cp1251-doc.tex \
+ macedonian/cp1251-doc.tex \
+ russian/cp1251-doc.tex \
+ serbian/cp1251-doc.tex \
+ ukrainian/cp1251-doc.tex
+
+DOCS_CYR_ISO88595 = \
+ belarusian/iso88595-doc.tex \
+ bulgarian/iso88595-doc.tex \
+ macedonian/iso88595-doc.tex \
+ russian/iso88595-doc.tex \
+ serbian/iso88595-doc.tex
+
+DOCS_CYR_ISOIR111 = \
+ belarusian/isoir111-doc.tex \
+ macedonian/isoir111-doc.tex \
+ serbian/isoir111-doc.tex
+
+DOCS_CYR_KOI8_R = \
+ bulgarian/koi8-r-doc.tex \
+ russian/koi8-r-doc.tex
+
+DOCS_CYR_KOI8_U = \
+ ukrainian/koi8-u-doc.tex
+
+DOCS_CYR = \
+ $(DOCS_CYR_1251) \
+ $(DOCS_CYR_ISO88595) \
+ $(DOCS_CYR_ISOIR111) \
+ $(DOCS_CYR_KOI8_R) \
+ $(DOCS_CYR_KOI8_U)
+
+DOCS_OTHER = \
+ greek/iso88597-doc.tex \
+ hebrew/iso88598-doc.tex
+
+DOCS_UTF8_LAT = \
+ albanian/utf8-doc.tex \
+ croatian/utf8-doc.tex \
+ czech/utf8-doc.tex \
+ danish/utf8-doc.tex \
+ dutch/ij-as-ij-utf8-doc.tex \
+ dutch/ij-as-y-utf8-doc.tex \
+ english/utf8-doc.tex \
+ esperanto/utf8-doc.tex \
+ estonian/utf8-doc.tex \
+ finnish/utf8-doc.tex \
+ french/utf8-doc.tex \
+ general/utf8-doc.tex \
+ german/din5007-utf8-doc.tex \
+ german/duden-utf8-doc.tex \
+ greek/translit-utf8-doc.tex \
+ greek/utf8-doc.tex \
+ gypsy/northrussian-utf8-doc.tex \
+ hausa/utf8-doc.tex \
+ hungarian/utf8-doc.tex \
+ icelandic/utf8-doc.tex \
+ italian/utf8-doc.tex \
+ kurdish/bedirxan-utf8-doc.tex \
+ kurdish/turkish-i-utf8-doc.tex \
+ latin/utf8-doc.tex \
+ latvian/utf8-doc.tex \
+ lithuanian/utf8-doc.tex \
+ lower-sorbian/utf8-doc.tex \
+ norwegian/utf8-doc.tex \
+ polish/utf8-doc.tex \
+ portuguese/utf8-doc.tex \
+ romanian/utf8-doc.tex \
+ russian/translit-iso-utf8-doc.tex \
+ slovak/small-utf8-doc.tex \
+ slovak/large-utf8-doc.tex \
+ slovenian/utf8-doc.tex \
+ spanish/modern-utf8-doc.tex \
+ spanish/traditional-utf8-doc.tex \
+ swedish/utf8-doc.tex \
+ turkish/utf8-doc.tex \
+ upper-sorbian/utf8-doc.tex \
+ vietnamese/utf8-doc.tex
+
+DOCS_UTF8_CYR = \
+ belarusian/utf8-doc.tex \
+ bulgarian/utf8-doc.tex \
+ macedonian/utf8-doc.tex \
+ mongolian/cyrillic-utf8-doc.tex \
+ russian/utf8-doc.tex \
+ serbian/utf8-doc.tex \
+ ukrainian/utf8-doc.tex
+
+DOCS_UTF8_OTHER = \
+ georgian/utf8-doc.tex \
+ german/braille-utf8-doc.tex \
+ greek/utf8-doc.tex \
+ greek/polytonic-utf8-doc.tex \
+ hebrew/utf8-doc.tex \
+ klingon/utf8-doc.tex
+
+DOCS_CPS = \
+ $(DOCS_CP1250) \
+ $(DOCS_CP1252) \
+ $(DOCS_CP850)
+
+DOCS_LAT = \
+ $(DOCS_LATIN1) \
+ $(DOCS_LATIN2) \
+ $(DOCS_LATIN3) \
+ $(DOCS_LATIN4) \
+ $(DOCS_LATIN5) \
+ $(DOCS_LATIN9)
+
+DOCS_UTF8 = \
+ $(DOCS_UTF8_LAT) \
+ $(DOCS_UTF8_CYR) \
+ $(DOCS_UTF8_OTHER)
+
+DOCS = $(DOCS_CPS) $(DOCS_LAT) $(DOCS_CYR) $(DOCS_OTHER) $(DOCS_UTF8)
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@docdir = $(datadir)/doc/$(PACKAGE_NAME)-$(PACKAGE_VERSION)
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@PDFS = alphabets-doc.pdf
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@doc_DATA = $(PDFS)
+DOC_CLEAN = \
+ alphabets-doc.aux \
+ alphabets-doc.log \
+ alphabets-doc.out \
+ alphabets-doc.pdf \
+ alphabets-inc.tex \
+ alphabets-doc.toc
+
+EXTRA_DIST = $(SCRS) test.xdy
+CLEANFILES = $(ALPHABETS) $(DOC_CLEAN)
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-docDATA: $(doc_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(docdir)" || $(mkdir_p) "$(DESTDIR)$(docdir)"
+ @list='$(doc_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(docDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(docdir)/$$f'"; \
+ $(docDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(docdir)/$$f"; \
+ done
+
+uninstall-docDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(doc_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(docdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(docdir)/$$f"; \
+ done
+install-nodist_albanianDATA: $(nodist_albanian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(albaniandir)" || $(mkdir_p) "$(DESTDIR)$(albaniandir)"
+ @list='$(nodist_albanian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_albanianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(albaniandir)/$$f'"; \
+ $(nodist_albanianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(albaniandir)/$$f"; \
+ done
+
+uninstall-nodist_albanianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_albanian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(albaniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(albaniandir)/$$f"; \
+ done
+install-nodist_belarusianDATA: $(nodist_belarusian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(belarusiandir)" || $(mkdir_p) "$(DESTDIR)$(belarusiandir)"
+ @list='$(nodist_belarusian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_belarusianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(belarusiandir)/$$f'"; \
+ $(nodist_belarusianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(belarusiandir)/$$f"; \
+ done
+
+uninstall-nodist_belarusianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_belarusian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(belarusiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(belarusiandir)/$$f"; \
+ done
+install-nodist_bulgarianDATA: $(nodist_bulgarian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(bulgariandir)" || $(mkdir_p) "$(DESTDIR)$(bulgariandir)"
+ @list='$(nodist_bulgarian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_bulgarianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(bulgariandir)/$$f'"; \
+ $(nodist_bulgarianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(bulgariandir)/$$f"; \
+ done
+
+uninstall-nodist_bulgarianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_bulgarian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(bulgariandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bulgariandir)/$$f"; \
+ done
+install-nodist_croatianDATA: $(nodist_croatian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(croatiandir)" || $(mkdir_p) "$(DESTDIR)$(croatiandir)"
+ @list='$(nodist_croatian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_croatianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(croatiandir)/$$f'"; \
+ $(nodist_croatianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(croatiandir)/$$f"; \
+ done
+
+uninstall-nodist_croatianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_croatian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(croatiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(croatiandir)/$$f"; \
+ done
+install-nodist_czechDATA: $(nodist_czech_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(czechdir)" || $(mkdir_p) "$(DESTDIR)$(czechdir)"
+ @list='$(nodist_czech_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_czechDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(czechdir)/$$f'"; \
+ $(nodist_czechDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(czechdir)/$$f"; \
+ done
+
+uninstall-nodist_czechDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_czech_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(czechdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(czechdir)/$$f"; \
+ done
+install-nodist_danishDATA: $(nodist_danish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(danishdir)" || $(mkdir_p) "$(DESTDIR)$(danishdir)"
+ @list='$(nodist_danish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_danishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(danishdir)/$$f'"; \
+ $(nodist_danishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(danishdir)/$$f"; \
+ done
+
+uninstall-nodist_danishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_danish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(danishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(danishdir)/$$f"; \
+ done
+install-nodist_dutchDATA: $(nodist_dutch_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(dutchdir)" || $(mkdir_p) "$(DESTDIR)$(dutchdir)"
+ @list='$(nodist_dutch_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_dutchDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(dutchdir)/$$f'"; \
+ $(nodist_dutchDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(dutchdir)/$$f"; \
+ done
+
+uninstall-nodist_dutchDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_dutch_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(dutchdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(dutchdir)/$$f"; \
+ done
+install-nodist_englishDATA: $(nodist_english_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(englishdir)" || $(mkdir_p) "$(DESTDIR)$(englishdir)"
+ @list='$(nodist_english_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_englishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(englishdir)/$$f'"; \
+ $(nodist_englishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(englishdir)/$$f"; \
+ done
+
+uninstall-nodist_englishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_english_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(englishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(englishdir)/$$f"; \
+ done
+install-nodist_esperantoDATA: $(nodist_esperanto_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(esperantodir)" || $(mkdir_p) "$(DESTDIR)$(esperantodir)"
+ @list='$(nodist_esperanto_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_esperantoDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(esperantodir)/$$f'"; \
+ $(nodist_esperantoDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(esperantodir)/$$f"; \
+ done
+
+uninstall-nodist_esperantoDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_esperanto_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(esperantodir)/$$f'"; \
+ rm -f "$(DESTDIR)$(esperantodir)/$$f"; \
+ done
+install-nodist_estonianDATA: $(nodist_estonian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(estoniandir)" || $(mkdir_p) "$(DESTDIR)$(estoniandir)"
+ @list='$(nodist_estonian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_estonianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(estoniandir)/$$f'"; \
+ $(nodist_estonianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(estoniandir)/$$f"; \
+ done
+
+uninstall-nodist_estonianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_estonian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(estoniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(estoniandir)/$$f"; \
+ done
+install-nodist_finnishDATA: $(nodist_finnish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(finnishdir)" || $(mkdir_p) "$(DESTDIR)$(finnishdir)"
+ @list='$(nodist_finnish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_finnishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(finnishdir)/$$f'"; \
+ $(nodist_finnishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(finnishdir)/$$f"; \
+ done
+
+uninstall-nodist_finnishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_finnish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(finnishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(finnishdir)/$$f"; \
+ done
+install-nodist_frenchDATA: $(nodist_french_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(frenchdir)" || $(mkdir_p) "$(DESTDIR)$(frenchdir)"
+ @list='$(nodist_french_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_frenchDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(frenchdir)/$$f'"; \
+ $(nodist_frenchDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(frenchdir)/$$f"; \
+ done
+
+uninstall-nodist_frenchDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_french_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(frenchdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(frenchdir)/$$f"; \
+ done
+install-nodist_generalDATA: $(nodist_general_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(generaldir)" || $(mkdir_p) "$(DESTDIR)$(generaldir)"
+ @list='$(nodist_general_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_generalDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(generaldir)/$$f'"; \
+ $(nodist_generalDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(generaldir)/$$f"; \
+ done
+
+uninstall-nodist_generalDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_general_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(generaldir)/$$f'"; \
+ rm -f "$(DESTDIR)$(generaldir)/$$f"; \
+ done
+install-nodist_georgianDATA: $(nodist_georgian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(georgiandir)" || $(mkdir_p) "$(DESTDIR)$(georgiandir)"
+ @list='$(nodist_georgian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_georgianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(georgiandir)/$$f'"; \
+ $(nodist_georgianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(georgiandir)/$$f"; \
+ done
+
+uninstall-nodist_georgianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_georgian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(georgiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(georgiandir)/$$f"; \
+ done
+install-nodist_germanDATA: $(nodist_german_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(germandir)" || $(mkdir_p) "$(DESTDIR)$(germandir)"
+ @list='$(nodist_german_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_germanDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(germandir)/$$f'"; \
+ $(nodist_germanDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(germandir)/$$f"; \
+ done
+
+uninstall-nodist_germanDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_german_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(germandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(germandir)/$$f"; \
+ done
+install-nodist_greekDATA: $(nodist_greek_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(greekdir)" || $(mkdir_p) "$(DESTDIR)$(greekdir)"
+ @list='$(nodist_greek_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_greekDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(greekdir)/$$f'"; \
+ $(nodist_greekDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(greekdir)/$$f"; \
+ done
+
+uninstall-nodist_greekDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_greek_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(greekdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(greekdir)/$$f"; \
+ done
+install-nodist_gypsyDATA: $(nodist_gypsy_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(gypsydir)" || $(mkdir_p) "$(DESTDIR)$(gypsydir)"
+ @list='$(nodist_gypsy_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_gypsyDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(gypsydir)/$$f'"; \
+ $(nodist_gypsyDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(gypsydir)/$$f"; \
+ done
+
+uninstall-nodist_gypsyDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_gypsy_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(gypsydir)/$$f'"; \
+ rm -f "$(DESTDIR)$(gypsydir)/$$f"; \
+ done
+install-nodist_hausaDATA: $(nodist_hausa_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(hausadir)" || $(mkdir_p) "$(DESTDIR)$(hausadir)"
+ @list='$(nodist_hausa_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_hausaDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(hausadir)/$$f'"; \
+ $(nodist_hausaDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(hausadir)/$$f"; \
+ done
+
+uninstall-nodist_hausaDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_hausa_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(hausadir)/$$f'"; \
+ rm -f "$(DESTDIR)$(hausadir)/$$f"; \
+ done
+install-nodist_hebrewDATA: $(nodist_hebrew_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(hebrewdir)" || $(mkdir_p) "$(DESTDIR)$(hebrewdir)"
+ @list='$(nodist_hebrew_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_hebrewDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(hebrewdir)/$$f'"; \
+ $(nodist_hebrewDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(hebrewdir)/$$f"; \
+ done
+
+uninstall-nodist_hebrewDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_hebrew_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(hebrewdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(hebrewdir)/$$f"; \
+ done
+install-nodist_hungarianDATA: $(nodist_hungarian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(hungariandir)" || $(mkdir_p) "$(DESTDIR)$(hungariandir)"
+ @list='$(nodist_hungarian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_hungarianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(hungariandir)/$$f'"; \
+ $(nodist_hungarianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(hungariandir)/$$f"; \
+ done
+
+uninstall-nodist_hungarianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_hungarian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(hungariandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(hungariandir)/$$f"; \
+ done
+install-nodist_icelandicDATA: $(nodist_icelandic_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(icelandicdir)" || $(mkdir_p) "$(DESTDIR)$(icelandicdir)"
+ @list='$(nodist_icelandic_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_icelandicDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(icelandicdir)/$$f'"; \
+ $(nodist_icelandicDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(icelandicdir)/$$f"; \
+ done
+
+uninstall-nodist_icelandicDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_icelandic_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(icelandicdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(icelandicdir)/$$f"; \
+ done
+install-nodist_italianDATA: $(nodist_italian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(italiandir)" || $(mkdir_p) "$(DESTDIR)$(italiandir)"
+ @list='$(nodist_italian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_italianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(italiandir)/$$f'"; \
+ $(nodist_italianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(italiandir)/$$f"; \
+ done
+
+uninstall-nodist_italianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_italian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(italiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(italiandir)/$$f"; \
+ done
+install-nodist_klingonDATA: $(nodist_klingon_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(klingondir)" || $(mkdir_p) "$(DESTDIR)$(klingondir)"
+ @list='$(nodist_klingon_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_klingonDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(klingondir)/$$f'"; \
+ $(nodist_klingonDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(klingondir)/$$f"; \
+ done
+
+uninstall-nodist_klingonDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_klingon_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(klingondir)/$$f'"; \
+ rm -f "$(DESTDIR)$(klingondir)/$$f"; \
+ done
+install-nodist_kurdishDATA: $(nodist_kurdish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(kurdishdir)" || $(mkdir_p) "$(DESTDIR)$(kurdishdir)"
+ @list='$(nodist_kurdish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_kurdishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(kurdishdir)/$$f'"; \
+ $(nodist_kurdishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(kurdishdir)/$$f"; \
+ done
+
+uninstall-nodist_kurdishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_kurdish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(kurdishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(kurdishdir)/$$f"; \
+ done
+install-nodist_latinDATA: $(nodist_latin_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(latindir)" || $(mkdir_p) "$(DESTDIR)$(latindir)"
+ @list='$(nodist_latin_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_latinDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(latindir)/$$f'"; \
+ $(nodist_latinDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(latindir)/$$f"; \
+ done
+
+uninstall-nodist_latinDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_latin_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(latindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(latindir)/$$f"; \
+ done
+install-nodist_latvianDATA: $(nodist_latvian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(latviandir)" || $(mkdir_p) "$(DESTDIR)$(latviandir)"
+ @list='$(nodist_latvian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_latvianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(latviandir)/$$f'"; \
+ $(nodist_latvianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(latviandir)/$$f"; \
+ done
+
+uninstall-nodist_latvianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_latvian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(latviandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(latviandir)/$$f"; \
+ done
+install-nodist_lithuanianDATA: $(nodist_lithuanian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(lithuaniandir)" || $(mkdir_p) "$(DESTDIR)$(lithuaniandir)"
+ @list='$(nodist_lithuanian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_lithuanianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(lithuaniandir)/$$f'"; \
+ $(nodist_lithuanianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(lithuaniandir)/$$f"; \
+ done
+
+uninstall-nodist_lithuanianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_lithuanian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(lithuaniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(lithuaniandir)/$$f"; \
+ done
+install-nodist_lower_sorbianDATA: $(nodist_lower_sorbian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(lower_sorbiandir)" || $(mkdir_p) "$(DESTDIR)$(lower_sorbiandir)"
+ @list='$(nodist_lower_sorbian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_lower_sorbianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(lower_sorbiandir)/$$f'"; \
+ $(nodist_lower_sorbianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(lower_sorbiandir)/$$f"; \
+ done
+
+uninstall-nodist_lower_sorbianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_lower_sorbian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(lower_sorbiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(lower_sorbiandir)/$$f"; \
+ done
+install-nodist_macedonianDATA: $(nodist_macedonian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(macedoniandir)" || $(mkdir_p) "$(DESTDIR)$(macedoniandir)"
+ @list='$(nodist_macedonian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_macedonianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(macedoniandir)/$$f'"; \
+ $(nodist_macedonianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(macedoniandir)/$$f"; \
+ done
+
+uninstall-nodist_macedonianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_macedonian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(macedoniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(macedoniandir)/$$f"; \
+ done
+install-nodist_mongolianDATA: $(nodist_mongolian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(mongoliandir)" || $(mkdir_p) "$(DESTDIR)$(mongoliandir)"
+ @list='$(nodist_mongolian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_mongolianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(mongoliandir)/$$f'"; \
+ $(nodist_mongolianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(mongoliandir)/$$f"; \
+ done
+
+uninstall-nodist_mongolianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_mongolian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(mongoliandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(mongoliandir)/$$f"; \
+ done
+install-nodist_norwegianDATA: $(nodist_norwegian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(norwegiandir)" || $(mkdir_p) "$(DESTDIR)$(norwegiandir)"
+ @list='$(nodist_norwegian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_norwegianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(norwegiandir)/$$f'"; \
+ $(nodist_norwegianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(norwegiandir)/$$f"; \
+ done
+
+uninstall-nodist_norwegianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_norwegian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(norwegiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(norwegiandir)/$$f"; \
+ done
+install-nodist_polishDATA: $(nodist_polish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(polishdir)" || $(mkdir_p) "$(DESTDIR)$(polishdir)"
+ @list='$(nodist_polish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_polishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(polishdir)/$$f'"; \
+ $(nodist_polishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(polishdir)/$$f"; \
+ done
+
+uninstall-nodist_polishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_polish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(polishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(polishdir)/$$f"; \
+ done
+install-nodist_portugueseDATA: $(nodist_portuguese_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(portuguesedir)" || $(mkdir_p) "$(DESTDIR)$(portuguesedir)"
+ @list='$(nodist_portuguese_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_portugueseDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(portuguesedir)/$$f'"; \
+ $(nodist_portugueseDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(portuguesedir)/$$f"; \
+ done
+
+uninstall-nodist_portugueseDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_portuguese_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(portuguesedir)/$$f'"; \
+ rm -f "$(DESTDIR)$(portuguesedir)/$$f"; \
+ done
+install-nodist_romanianDATA: $(nodist_romanian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(romaniandir)" || $(mkdir_p) "$(DESTDIR)$(romaniandir)"
+ @list='$(nodist_romanian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_romanianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(romaniandir)/$$f'"; \
+ $(nodist_romanianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(romaniandir)/$$f"; \
+ done
+
+uninstall-nodist_romanianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_romanian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(romaniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(romaniandir)/$$f"; \
+ done
+install-nodist_russianDATA: $(nodist_russian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(russiandir)" || $(mkdir_p) "$(DESTDIR)$(russiandir)"
+ @list='$(nodist_russian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_russianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(russiandir)/$$f'"; \
+ $(nodist_russianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(russiandir)/$$f"; \
+ done
+
+uninstall-nodist_russianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_russian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(russiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(russiandir)/$$f"; \
+ done
+install-nodist_serbianDATA: $(nodist_serbian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(serbiandir)" || $(mkdir_p) "$(DESTDIR)$(serbiandir)"
+ @list='$(nodist_serbian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_serbianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(serbiandir)/$$f'"; \
+ $(nodist_serbianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(serbiandir)/$$f"; \
+ done
+
+uninstall-nodist_serbianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_serbian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(serbiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(serbiandir)/$$f"; \
+ done
+install-nodist_slovakDATA: $(nodist_slovak_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(slovakdir)" || $(mkdir_p) "$(DESTDIR)$(slovakdir)"
+ @list='$(nodist_slovak_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_slovakDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(slovakdir)/$$f'"; \
+ $(nodist_slovakDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(slovakdir)/$$f"; \
+ done
+
+uninstall-nodist_slovakDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_slovak_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(slovakdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(slovakdir)/$$f"; \
+ done
+install-nodist_slovenianDATA: $(nodist_slovenian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(sloveniandir)" || $(mkdir_p) "$(DESTDIR)$(sloveniandir)"
+ @list='$(nodist_slovenian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_slovenianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(sloveniandir)/$$f'"; \
+ $(nodist_slovenianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(sloveniandir)/$$f"; \
+ done
+
+uninstall-nodist_slovenianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_slovenian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(sloveniandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(sloveniandir)/$$f"; \
+ done
+install-nodist_spanishDATA: $(nodist_spanish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(spanishdir)" || $(mkdir_p) "$(DESTDIR)$(spanishdir)"
+ @list='$(nodist_spanish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_spanishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(spanishdir)/$$f'"; \
+ $(nodist_spanishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(spanishdir)/$$f"; \
+ done
+
+uninstall-nodist_spanishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_spanish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(spanishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(spanishdir)/$$f"; \
+ done
+install-nodist_swedishDATA: $(nodist_swedish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(swedishdir)" || $(mkdir_p) "$(DESTDIR)$(swedishdir)"
+ @list='$(nodist_swedish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_swedishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(swedishdir)/$$f'"; \
+ $(nodist_swedishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(swedishdir)/$$f"; \
+ done
+
+uninstall-nodist_swedishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_swedish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(swedishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(swedishdir)/$$f"; \
+ done
+install-nodist_turkishDATA: $(nodist_turkish_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(turkishdir)" || $(mkdir_p) "$(DESTDIR)$(turkishdir)"
+ @list='$(nodist_turkish_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_turkishDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(turkishdir)/$$f'"; \
+ $(nodist_turkishDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(turkishdir)/$$f"; \
+ done
+
+uninstall-nodist_turkishDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_turkish_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(turkishdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(turkishdir)/$$f"; \
+ done
+install-nodist_ukrainianDATA: $(nodist_ukrainian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(ukrainiandir)" || $(mkdir_p) "$(DESTDIR)$(ukrainiandir)"
+ @list='$(nodist_ukrainian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_ukrainianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(ukrainiandir)/$$f'"; \
+ $(nodist_ukrainianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(ukrainiandir)/$$f"; \
+ done
+
+uninstall-nodist_ukrainianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_ukrainian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(ukrainiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(ukrainiandir)/$$f"; \
+ done
+install-nodist_upper_sorbianDATA: $(nodist_upper_sorbian_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(upper_sorbiandir)" || $(mkdir_p) "$(DESTDIR)$(upper_sorbiandir)"
+ @list='$(nodist_upper_sorbian_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_upper_sorbianDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(upper_sorbiandir)/$$f'"; \
+ $(nodist_upper_sorbianDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(upper_sorbiandir)/$$f"; \
+ done
+
+uninstall-nodist_upper_sorbianDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_upper_sorbian_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(upper_sorbiandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(upper_sorbiandir)/$$f"; \
+ done
+install-nodist_vietnameseDATA: $(nodist_vietnamese_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(vietnamesedir)" || $(mkdir_p) "$(DESTDIR)$(vietnamesedir)"
+ @list='$(nodist_vietnamese_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_vietnameseDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(vietnamesedir)/$$f'"; \
+ $(nodist_vietnameseDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(vietnamesedir)/$$f"; \
+ done
+
+uninstall-nodist_vietnameseDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_vietnamese_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(vietnamesedir)/$$f'"; \
+ rm -f "$(DESTDIR)$(vietnamesedir)/$$f"; \
+ done
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile $(DATA)
+installdirs: installdirs-recursive
+installdirs-am:
+ for dir in "$(DESTDIR)$(docdir)" "$(DESTDIR)$(albaniandir)" "$(DESTDIR)$(belarusiandir)" "$(DESTDIR)$(bulgariandir)" "$(DESTDIR)$(croatiandir)" "$(DESTDIR)$(czechdir)" "$(DESTDIR)$(danishdir)" "$(DESTDIR)$(dutchdir)" "$(DESTDIR)$(englishdir)" "$(DESTDIR)$(esperantodir)" "$(DESTDIR)$(estoniandir)" "$(DESTDIR)$(finnishdir)" "$(DESTDIR)$(frenchdir)" "$(DESTDIR)$(generaldir)" "$(DESTDIR)$(georgiandir)" "$(DESTDIR)$(germandir)" "$(DESTDIR)$(greekdir)" "$(DESTDIR)$(gypsydir)" "$(DESTDIR)$(hausadir)" "$(DESTDIR)$(hebrewdir)" "$(DESTDIR)$(hungariandir)" "$(DESTDIR)$(icelandicdir)" "$(DESTDIR)$(italiandir)" "$(DESTDIR)$(klingondir)" "$(DESTDIR)$(kurdishdir)" "$(DESTDIR)$(latindir)" "$(DESTDIR)$(latviandir)" "$(DESTDIR)$(lithuaniandir)" "$(DESTDIR)$(lower_sorbiandir)" "$(DESTDIR)$(macedoniandir)" "$(DESTDIR)$(mongoliandir)" "$(DESTDIR)$(norwegiandir)" "$(DESTDIR)$(polishdir)" "$(DESTDIR)$(portuguesedir)" "$(DESTDIR)$(romaniandir)" "$(DESTDIR)$(russiandir)" "$(DESTDIR)$(serbiandir)" "$(DESTDIR)$(slovakdir)" "$(DESTDIR)$(sloveniandir)" "$(DESTDIR)$(spanishdir)" "$(DESTDIR)$(swedishdir)" "$(DESTDIR)$(turkishdir)" "$(DESTDIR)$(ukrainiandir)" "$(DESTDIR)$(upper_sorbiandir)" "$(DESTDIR)$(vietnamesedir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am: install-docDATA install-nodist_albanianDATA \
+ install-nodist_belarusianDATA install-nodist_bulgarianDATA \
+ install-nodist_croatianDATA install-nodist_czechDATA \
+ install-nodist_danishDATA install-nodist_dutchDATA \
+ install-nodist_englishDATA install-nodist_esperantoDATA \
+ install-nodist_estonianDATA install-nodist_finnishDATA \
+ install-nodist_frenchDATA install-nodist_generalDATA \
+ install-nodist_georgianDATA install-nodist_germanDATA \
+ install-nodist_greekDATA install-nodist_gypsyDATA \
+ install-nodist_hausaDATA install-nodist_hebrewDATA \
+ install-nodist_hungarianDATA install-nodist_icelandicDATA \
+ install-nodist_italianDATA install-nodist_klingonDATA \
+ install-nodist_kurdishDATA install-nodist_latinDATA \
+ install-nodist_latvianDATA install-nodist_lithuanianDATA \
+ install-nodist_lower_sorbianDATA install-nodist_macedonianDATA \
+ install-nodist_mongolianDATA install-nodist_norwegianDATA \
+ install-nodist_polishDATA install-nodist_portugueseDATA \
+ install-nodist_romanianDATA install-nodist_russianDATA \
+ install-nodist_serbianDATA install-nodist_slovakDATA \
+ install-nodist_slovenianDATA install-nodist_spanishDATA \
+ install-nodist_swedishDATA install-nodist_turkishDATA \
+ install-nodist_ukrainianDATA install-nodist_upper_sorbianDATA \
+ install-nodist_vietnameseDATA
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-docDATA uninstall-info-am \
+ uninstall-nodist_albanianDATA uninstall-nodist_belarusianDATA \
+ uninstall-nodist_bulgarianDATA uninstall-nodist_croatianDATA \
+ uninstall-nodist_czechDATA uninstall-nodist_danishDATA \
+ uninstall-nodist_dutchDATA uninstall-nodist_englishDATA \
+ uninstall-nodist_esperantoDATA uninstall-nodist_estonianDATA \
+ uninstall-nodist_finnishDATA uninstall-nodist_frenchDATA \
+ uninstall-nodist_generalDATA uninstall-nodist_georgianDATA \
+ uninstall-nodist_germanDATA uninstall-nodist_greekDATA \
+ uninstall-nodist_gypsyDATA uninstall-nodist_hausaDATA \
+ uninstall-nodist_hebrewDATA uninstall-nodist_hungarianDATA \
+ uninstall-nodist_icelandicDATA uninstall-nodist_italianDATA \
+ uninstall-nodist_klingonDATA uninstall-nodist_kurdishDATA \
+ uninstall-nodist_latinDATA uninstall-nodist_latvianDATA \
+ uninstall-nodist_lithuanianDATA \
+ uninstall-nodist_lower_sorbianDATA \
+ uninstall-nodist_macedonianDATA uninstall-nodist_mongolianDATA \
+ uninstall-nodist_norwegianDATA uninstall-nodist_polishDATA \
+ uninstall-nodist_portugueseDATA uninstall-nodist_romanianDATA \
+ uninstall-nodist_russianDATA uninstall-nodist_serbianDATA \
+ uninstall-nodist_slovakDATA uninstall-nodist_slovenianDATA \
+ uninstall-nodist_spanishDATA uninstall-nodist_swedishDATA \
+ uninstall-nodist_turkishDATA uninstall-nodist_ukrainianDATA \
+ uninstall-nodist_upper_sorbianDATA \
+ uninstall-nodist_vietnameseDATA
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+ clean clean-generic clean-recursive ctags ctags-recursive \
+ distclean distclean-generic distclean-recursive distclean-tags \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-docDATA install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-nodist_albanianDATA install-nodist_belarusianDATA \
+ install-nodist_bulgarianDATA install-nodist_croatianDATA \
+ install-nodist_czechDATA install-nodist_danishDATA \
+ install-nodist_dutchDATA install-nodist_englishDATA \
+ install-nodist_esperantoDATA install-nodist_estonianDATA \
+ install-nodist_finnishDATA install-nodist_frenchDATA \
+ install-nodist_generalDATA install-nodist_georgianDATA \
+ install-nodist_germanDATA install-nodist_greekDATA \
+ install-nodist_gypsyDATA install-nodist_hausaDATA \
+ install-nodist_hebrewDATA install-nodist_hungarianDATA \
+ install-nodist_icelandicDATA install-nodist_italianDATA \
+ install-nodist_klingonDATA install-nodist_kurdishDATA \
+ install-nodist_latinDATA install-nodist_latvianDATA \
+ install-nodist_lithuanianDATA install-nodist_lower_sorbianDATA \
+ install-nodist_macedonianDATA install-nodist_mongolianDATA \
+ install-nodist_norwegianDATA install-nodist_polishDATA \
+ install-nodist_portugueseDATA install-nodist_romanianDATA \
+ install-nodist_russianDATA install-nodist_serbianDATA \
+ install-nodist_slovakDATA install-nodist_slovenianDATA \
+ install-nodist_spanishDATA install-nodist_swedishDATA \
+ install-nodist_turkishDATA install-nodist_ukrainianDATA \
+ install-nodist_upper_sorbianDATA install-nodist_vietnameseDATA \
+ install-strip installcheck installcheck-am installdirs \
+ installdirs-am maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-docDATA uninstall-info-am \
+ uninstall-nodist_albanianDATA uninstall-nodist_belarusianDATA \
+ uninstall-nodist_bulgarianDATA uninstall-nodist_croatianDATA \
+ uninstall-nodist_czechDATA uninstall-nodist_danishDATA \
+ uninstall-nodist_dutchDATA uninstall-nodist_englishDATA \
+ uninstall-nodist_esperantoDATA uninstall-nodist_estonianDATA \
+ uninstall-nodist_finnishDATA uninstall-nodist_frenchDATA \
+ uninstall-nodist_generalDATA uninstall-nodist_georgianDATA \
+ uninstall-nodist_germanDATA uninstall-nodist_greekDATA \
+ uninstall-nodist_gypsyDATA uninstall-nodist_hausaDATA \
+ uninstall-nodist_hebrewDATA uninstall-nodist_hungarianDATA \
+ uninstall-nodist_icelandicDATA uninstall-nodist_italianDATA \
+ uninstall-nodist_klingonDATA uninstall-nodist_kurdishDATA \
+ uninstall-nodist_latinDATA uninstall-nodist_latvianDATA \
+ uninstall-nodist_lithuanianDATA \
+ uninstall-nodist_lower_sorbianDATA \
+ uninstall-nodist_macedonianDATA uninstall-nodist_mongolianDATA \
+ uninstall-nodist_norwegianDATA uninstall-nodist_polishDATA \
+ uninstall-nodist_portugueseDATA uninstall-nodist_romanianDATA \
+ uninstall-nodist_russianDATA uninstall-nodist_serbianDATA \
+ uninstall-nodist_slovakDATA uninstall-nodist_slovenianDATA \
+ uninstall-nodist_spanishDATA uninstall-nodist_swedishDATA \
+ uninstall-nodist_turkishDATA uninstall-nodist_ukrainianDATA \
+ uninstall-nodist_upper_sorbianDATA \
+ uninstall-nodist_vietnameseDATA
+
+
+%utf8.pl : %utf8.pl.in
+ sed -e 's/@.{\([^}]*\)}/\1/g;' <$< >$@
+
+%latin1.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-1 >$@
+
+%cp850.pl : %utf8.pl.in
+ sed -e 's/@.{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP850 >$@
+
+romanian/latin2.pl : romanian/utf8.pl
+ sed -e 's/@u{\([^}]*\)}//g;' -f rom-comma-kludge.sed <$< | \
+ iconv -f UTF-8 -t ISO8859-2 >$@
+
+%latin2.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-2 >$@
+
+%latin3.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-3 >$@
+
+%latin4.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-4 >$@
+
+%iso88595.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-5 >$@
+
+%iso88597.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-7 >$@
+
+%iso88598.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-8 >$@
+
+%latin5.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO8859-5 >$@
+
+%latin9.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;s/@9{\([^}]*\)}/\1/g;' <$< | \
+ iconv -f UTF-8 -t ISO-8859-15 >$@
+
+romanian/cp1250.pl : romanian/utf8.pl
+ sed -e 's/@u{\([^}]*\)}//g;' -f rom-comma-kludge.sed <$< | \
+ iconv -f UTF-8 -t CP1250 >$@
+
+%cp1250.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP1250 >$@
+
+%cp1251.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t CP1251 >$@
+
+%cp1252.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;s/@9{\([^}]*\)}/\1/g;' <$< | \
+ iconv -f UTF-8 -t CP1252 >$@
+
+%isoir111.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t ISO-IR-111 >$@
+
+%koi8-r.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t KOI8-R >$@
+
+%koi8-u.pl : %utf8.pl.in
+ sed -e 's/@u{\([^}]*\)}//g;' <$< | \
+ iconv -f UTF-8 -t KOI8-U >$@
+
+# %tex.pl : %utf8.pl utf8-to-tex.sed
+# sed -f utf8-to-tex.sed <$< >$@
+
+%-lang.xdy : %-test.xdy
+ echo '(require "lang/$*.xdy")' >$@
+ sed -n '1,10 p' <$< >$@
+
+%-test.xdy : %.pl
+ perl $< $*
+
+%-doc.tex : %.pl
+ perl $< $*
+
+%.xdy : %.pl
+ perl $< $*
+
+alphabets-inc.tex : $(DOCS)
+ $(RM) $@
+ echo "\chapter{Latin scripts}" >>$@
+ echo "\ienc{cp1252}" >>$@
+ echo "\section{Codepage 1252}" >>$@
+ for i in $(DOCS_CP1252); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin1}" >>$@
+ echo "\section{Codepage latin1}" >>$@
+ for i in $(DOCS_LATIN1); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp850}" >>$@
+ echo "\section{Codepage 850}" >>$@
+ for i in $(DOCS_CP850); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin2}" >>$@
+ echo "\section{Codepage latin2}" >>$@
+ for i in $(DOCS_LATIN2); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp1250}" >>$@
+ echo "\section{Codepage 1250}" >>$@
+ for i in $(DOCS_CP1250); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin3}" >>$@
+ echo "\section{Codepage latin3}" >>$@
+ for i in $(DOCS_LATIN3); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin4}" >>$@
+ echo "\section{Codepage latin4}" >>$@
+ for i in $(DOCS_LATIN4); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin5}" >>$@
+ echo "\section{Codepage latin5}" >>$@
+ for i in $(DOCS_LATIN5); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{latin9}" >>$@
+ echo "\section{Codepage latin9}" >>$@
+ for i in $(DOCS_LATIN9); do echo "\input{$$i}" >>$@; done
+ echo "\ienc{cp1251}" >>$@
+ echo "\fenc{T2A}" >>$@
+ echo "\chapter{Cyrillic scripts}" >>$@
+ echo "\section{Codepage 1251}" >>$@
+ for i in $(DOCS_CYR_1251); do echo "\input{$$i}" >>$@; done
+# echo "\ienc{iso-8859-7}" >>$@
+# echo "\fenc{LGR}" >>$@
+# echo "\chapter{Other scripts}" >>$@
+# for i in $(DOCS_OTHER); do echo "\input{$$i}" >>$@; done
+# FIXME: UTF8 encoding
+# echo "\section{UTF-8 scripts}" >>$@
+# for i in $(DOCS_UTF8); do echo "\input{$$i}" >>$@; done
+# echo "\ienc{utf8}" >>$@
+
+# whether to build docs
+
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@alphabets-doc.pdf : alphabets-doc.tex alphabets-inc.tex
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@ pdflatex alphabets-doc.tex
+@BUILDDOCS_TRUE@@BUILDRULES_TRUE@ pdflatex alphabets-doc.tex
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.am
new file mode 100644
index 00000000000..8e0fcda24ed
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin1.pl utf8.pl.in
+
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.in
new file mode 100644
index 00000000000..a8727f7d640
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/albanian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/albanian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin1.pl utf8.pl.in
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/albanian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/albanian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/albanian/latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/albanian/latin1.pl
new file mode 100755
index 00000000000..632fb12db52
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/albanian/latin1.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Albanian";
+$prefix = "sq";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+['Dh', ['dh','Dh','DH']],
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+['Ë', ['ë','Ë']],
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+['Gj', ['gj','Gj','GJ']],
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+['Rr', ['rr','Rr','RR']],
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+['Sh', ['sh','Sh','SH']],
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+['Th', ['th','Th','TH']],
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+['Xh', ['xh','Xh','XH']],
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+['Zh', ['zh','Zh','ZH']],
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/albanian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/albanian/utf8.pl.in
new file mode 100644
index 00000000000..78f5da4b373
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/albanian/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Albanian";
+$prefix = "sq";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+['Dh', ['dh','Dh','DH']],
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+['Ë', ['ë','Ë']],
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+['Gj', ['gj','Gj','GJ']],
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+['Rr', ['rr','Rr','RR']],
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+['Sh', ['sh','Sh','SH']],
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+['Th', ['th','Th','TH']],
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+['Xh', ['xh','Xh','XH']],
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+['Zh', ['zh','Zh','ZH']],
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/alphabets-doc.tex b/Build/source/utils/xindy/make-rules/alphabets/alphabets-doc.tex
new file mode 100644
index 00000000000..ce556900cb6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/alphabets-doc.tex
@@ -0,0 +1,42 @@
+\documentclass{report}
+\usepackage{a4wide}
+\usepackage[TS1,LGR,T2A,T1]{fontenc}
+\usepackage[colorlinks]{hyperref}
+\usepackage[cp1252,latin1,cp850,latin2,cp1250,latin3,latin4,latin5,latin9,cp1251]{inputenc}
+\newcommand{\idef}{\inputencoding{cp1252}}
+\newcommand{\fdef}{\fontencoding{T1}\selectfont}
+\newcommand{\icod}{\inputencoding{cp1252}}
+\newcommand{\fcod}{\fontencoding{T1}\selectfont}
+\newcommand{\ienc}[1]{\renewcommand{\icod}{\inputencoding{#1}}}
+\newcommand{\fenc}[1]{\renewcommand{\fcod}{\fontencoding{#1}\selectfont}}
+\newenvironment{alphabet}{\begin{tabular}{*{16}{l}}%
+ &
+ \small (\v{}) & \small (\'{}) & \small (\`{}) & \small (\u{}) &
+ \small (\^{}) & \small (\~{}) & \small (\r{}) & \small (\"{}) &
+ \small (,) & \small (\c{}) & \small (k{}) & \small (\.{}) &
+ \small (-) & \small (\={}) & \small (?)\\}{\end{tabular}}
+\setlength{\topskip}{0mm}
+\setlength{\topmargin}{-15mm}
+\setlength{\textheight}{260mm}
+\setcounter{tocdepth}{2}
+
+\renewcommand*{\contentsname}{\begin{center}
+{Alphabets} \\
+\texttt{\Large Generated by \tt make-rules.pl \\}
+\normalsize{\textnormal{\today}}
+\end{center}}
+
+\begin{document}
+
+%\maketitle
+
+%\begin{center}
+%{\LARGE Alphabets} ---
+%\texttt{\Large Generated by \tt make-rules.pl} --
+% \large \today
+%\end{center}
+
+\tableofcontents
+\newpage
+\input{alphabets-inc.tex}
+\end{document}
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.am
new file mode 100644
index 00000000000..c16f2620112
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.am
@@ -0,0 +1,37 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.in
new file mode 100644
index 00000000000..e630c7846dc
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/Makefile.in
@@ -0,0 +1,285 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/belarusian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/belarusian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/belarusian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/belarusian/cp1251.pl
new file mode 100755
index 00000000000..3880a2c9a9f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+ [], # ghe with upturn (ukrainian)
+['Ä', ['ä','Ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Å', ['å','Å'],['¸','¨']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dze (macedonian)
+['È', ['è','È']],
+['²', ['³','²']],
+ [], # yi (ukrainian)
+['É', ['é','É']],
+ [], # je (macedonian, serbian)
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+ [], # lje (macedonian, serbian)
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+ [], # nje (macedonian, serbian)
+['Î', ['î','Î']],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð']],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ó', ['ó','Ó']],
+['¡', ['¢','¡']],
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+ [], # dzhe (macedonian, serbian)
+['Ø', ['ø','Ø']],
+['Ù', ['ù','Ù']],
+['Ú', ['ú','Ú']],
+['Û', ['û','Û']],
+['Ü', ['ü','Ü']],
+ [],
+['Ý', ['ý','Ý']],
+['Þ', ['þ','Þ']],
+['ß', ['ÿ','ß']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/iso88595.pl b/Build/source/utils/xindy/make-rules/alphabets/belarusian/iso88595.pl
new file mode 100755
index 00000000000..edbcdb109ea
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['°', ['Ð','°']],
+['±', ['Ñ','±']],
+['²', ['Ò','²']],
+['³', ['Ó','³']],
+ [], # ghe with upturn (ukrainian)
+['´', ['Ô','´']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['µ', ['Õ','µ'],['ñ','¡']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['¶', ['Ö','¶']],
+['·', ['×','·']],
+ [], # dze (macedonian)
+['¸', ['Ø','¸']],
+['¦', ['ö','¦']],
+ [], # yi (ukrainian)
+['¹', ['Ù','¹']],
+ [], # je (macedonian, serbian)
+['º', ['Ú','º']],
+['»', ['Û','»']],
+ [], # lje (macedonian, serbian)
+['¼', ['Ü','¼']],
+['½', ['Ý','½']],
+ [], # nje (macedonian, serbian)
+['¾', ['Þ','¾']],
+ [], # barred o (mongolian)
+['¿', ['ß','¿']],
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ã', ['ã','Ã']],
+['®', ['þ','®']],
+ [], # straight u (mongolian)
+['Ä', ['ä','Ä']],
+['Å', ['å','Å']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dzhe (macedonian, serbian)
+['È', ['è','È']],
+['É', ['é','É']],
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+['Ì', ['ì','Ì']],
+ [],
+['Í', ['í','Í']],
+['Î', ['î','Î']],
+['Ï', ['ï','Ï']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/isoir111.pl b/Build/source/utils/xindy/make-rules/alphabets/belarusian/isoir111.pl
new file mode 100755
index 00000000000..55905ff7559
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á']],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+ [], # ghe with upturn (ukrainian)
+['ä', ['Ä','ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['å', ['Å','å'],['£','³']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+ [], # dze (macedonian)
+['é', ['É','é']],
+['¶', ['¦','¶']],
+ [], # yi (ukrainian)
+['ê', ['Ê','ê']],
+ [], # je (macedonian, serbian)
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+ [], # lje (macedonian, serbian)
+['í', ['Í','í']],
+['î', ['Î','î']],
+ [], # nje (macedonian, serbian)
+['ï', ['Ï','ï']],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò']],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['õ', ['Õ','õ']],
+['¾', ['®','¾']],
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+ [], # dzhe (macedonian, serbian)
+['û', ['Û','û']],
+['ý', ['Ý','ý']],
+['ÿ', ['ß','ÿ']],
+['ù', ['Ù','ù']],
+['ø', ['Ø','ø']],
+ [],
+['ü', ['Ü','ü']],
+['à', ['À','à']],
+['ñ', ['Ñ','ñ']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/belarusian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/belarusian/utf8.pl.in
new file mode 100644
index 00000000000..6d2cfd55832
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/belarusian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Belarusian";
+$prefix = "be";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð']],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Е', ['е','Е'],['Ñ‘','Ð']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И']],
+['І', ['і','І']],
+ [], # yi (ukrainian)
+['Й', ['й','Й']],
+ [], # je (macedonian, serbian)
+['К', ['к','К']],
+['Л', ['л','Л']],
+ [], # lje (macedonian, serbian)
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+ [], # nje (macedonian, serbian)
+['О', ['о','О']],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['У', ['у','У']],
+['ÐŽ', ['Ñž','ÐŽ']],
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+ [], # dzhe (macedonian, serbian)
+['Ш', ['ш','Ш']],
+['Щ', ['щ','Щ']],
+['Ъ', ['ъ','Ъ']],
+['Ы', ['ы','Ы']],
+['Ь', ['ь','Ь']],
+ [],
+['Э', ['Ñ','Э']],
+['Ю', ['ю','Ю']],
+['Я', ['Ñ','Я']],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.am
new file mode 100644
index 00000000000..4e8ed351ac9
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.am
@@ -0,0 +1,37 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1251.pl iso88595.pl koi8-r.pl utf8.pl.in
+
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ koi8-r.raw \
+ koi8-r-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.in
new file mode 100644
index 00000000000..34dae372ecb
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/Makefile.in
@@ -0,0 +1,285 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/bulgarian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1251.pl iso88595.pl koi8-r.pl utf8.pl.in
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ koi8-r.raw \
+ koi8-r-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/bulgarian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/bulgarian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/cp1251.pl
new file mode 100755
index 00000000000..b18ba01af3f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+ [], # ghe with upturn (ukrainian)
+['Ä', ['ä','Ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Å', ['å','Å']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dze (macedonian)
+['È', ['è','È']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['É', ['é','É']],
+ [], # je (macedonian, serbian)
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+ [], # lje (macedonian, serbian)
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+ [], # nje (macedonian, serbian)
+['Î', ['î','Î']],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð']],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ó', ['ó','Ó']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+ [], # dzhe (macedonian, serbian)
+['Ø', ['ø','Ø']],
+['Ù', ['ù','Ù']],
+['Ú', ['ú','Ú']],
+ [], # yeru (belarusian, russian)
+['Ü', ['ü','Ü']],
+ [],
+ [], # e (belarusian, russian)
+['Þ', ['þ','Þ']],
+['ß', ['ÿ','ß']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/iso88595.pl b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/iso88595.pl
new file mode 100755
index 00000000000..a745b534f38
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['°', ['Ð','°']],
+['±', ['Ñ','±']],
+['²', ['Ò','²']],
+['³', ['Ó','³']],
+ [], # ghe with upturn (ukrainian)
+['´', ['Ô','´']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['µ', ['Õ','µ']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['¶', ['Ö','¶']],
+['·', ['×','·']],
+ [], # dze (macedonian)
+['¸', ['Ø','¸']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['¹', ['Ù','¹']],
+ [], # je (macedonian, serbian)
+['º', ['Ú','º']],
+['»', ['Û','»']],
+ [], # lje (macedonian, serbian)
+['¼', ['Ü','¼']],
+['½', ['Ý','½']],
+ [], # nje (macedonian, serbian)
+['¾', ['Þ','¾']],
+ [], # barred o (mongolian)
+['¿', ['ß','¿']],
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ã', ['ã','Ã']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ä', ['ä','Ä']],
+['Å', ['å','Å']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dzhe (macedonian, serbian)
+['È', ['è','È']],
+['É', ['é','É']],
+['Ê', ['ê','Ê']],
+ [], # yeru (belarusian, russian)
+['Ì', ['ì','Ì']],
+ [],
+ [], # e (belarusian, russian)
+['Î', ['î','Î']],
+['Ï', ['ï','Ï']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/koi8-r.pl b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/koi8-r.pl
new file mode 100755
index 00000000000..79e53a25250
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/koi8-r.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á']],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+ [], # ghe with upturn (ukrainian)
+['ä', ['Ä','ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['å', ['Å','å']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+ [], # dze (macedonian)
+['é', ['É','é']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['ê', ['Ê','ê']],
+ [], # je (macedonian, serbian)
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+ [], # lje (macedonian, serbian)
+['í', ['Í','í']],
+['î', ['Î','î']],
+ [], # nje (macedonian, serbian)
+['ï', ['Ï','ï']],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò']],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['õ', ['Õ','õ']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+ [], # dzhe (macedonian, serbian)
+['û', ['Û','û']],
+['ý', ['Ý','ý']],
+['ÿ', ['ß','ÿ']],
+ [], # yeru (belarusian, russian)
+['ø', ['Ø','ø']],
+ [],
+ [], # e (belarusian, russian)
+['à', ['À','à']],
+['ñ', ['Ñ','ñ']],
+ [],
+[],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/bulgarian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/utf8.pl.in
new file mode 100644
index 00000000000..c9393a1a0a7
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/bulgarian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Bulgarian";
+$prefix = "bg";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð']],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Е', ['е','Е']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+['Й', ['й','Й']],
+ [], # je (macedonian, serbian)
+['К', ['к','К']],
+['Л', ['л','Л']],
+ [], # lje (macedonian, serbian)
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+ [], # nje (macedonian, serbian)
+['О', ['о','О']],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['У', ['у','У']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+ [], # dzhe (macedonian, serbian)
+['Ш', ['ш','Ш']],
+['Щ', ['щ','Щ']],
+['Ъ', ['ъ','Ъ']],
+ [], # yeru (belarusian, russian)
+['Ь', ['ь','Ь']],
+ [],
+ [], # e (belarusian, russian)
+['Ю', ['ю','Ю']],
+['Я', ['Ñ','Я']],
+ [],
+[@u{'Ѫ', ['ѫ','Ѫ']}],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.in
new file mode 100644
index 00000000000..8e5d435a07a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/croatian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/croatian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/croatian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/croatian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/croatian/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/croatian/cp1250.pl
new file mode 100755
index 00000000000..ef624f39335
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/croatian/cp1250.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Croatian";
+$prefix = "hr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'] ],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È']],
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+['Dž', ['dž','Dž','DŽ']],
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['Ð', ['ð','Ð']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'] ],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G'] ],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'] ],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K'] ],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['Lj', ['lj','Lj','LJ']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'] ],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'] ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/croatian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/croatian/latin2.pl
new file mode 100755
index 00000000000..5f94c9c0321
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/croatian/latin2.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Croatian";
+$prefix = "hr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'] ],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È']],
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+['D¾', ['d¾','D¾','D®']],
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['Ð', ['ð','Ð']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'] ],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G'] ],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'] ],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K'] ],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['Lj', ['lj','Lj','LJ']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'] ],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'] ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/croatian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/croatian/utf8.pl.in
new file mode 100644
index 00000000000..ec71a6d608a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/croatian/utf8.pl.in
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Croatian";
+$prefix = "hr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'] @u{,['à','À'],['È','È€'],['ȃ','È‚']}],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+['Ć', ['ć','Ć']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+['Dž', ['dž','Dž','DŽ']],
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['Ä', ['Ä‘','Ä']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'] @u{,['è','È'],['ȅ','Ȅ'],['ȇ','Ȇ']}],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G'] @u{,['ǵ','Ǵ']}],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'] @u{,['ì','Ì'],['ȉ','Ȉ'],['ȋ','Ȋ']}],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K'] @u{,['ḱ','Ḱ']}],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['Lj', ['lj','Lj','LJ']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+['Nj', ['nj','Nj','NJ']],
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'] @u{,['ò','Ã’'],['È','ÈŒ'],['È','ÈŽ']}],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] @u{,['È‘','È'],['È“','È’']}],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'] @u{,['ù','Ù'],['ȕ','Ȕ'],['ȗ','Ȗ']}],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+@u{[['dz','Dz','DZ'], 'after', [['d','z'],['D','z'],['D','Z']]],}
+@u{[['dž','Dž','DŽ'], 'after', [['d','ž'],['D','ž'],['D','Ž']]],}
+@u{[['lj','Lj','LJ'], 'after', [['l','j'],['L','j'],['L','J']]],}
+@u{[['nj','Nj','NJ'], 'after', [['n','j'],['N','j'],['N','J']]]}
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.in
new file mode 100644
index 00000000000..ddfd3e5362f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/czech/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/czech
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/czech/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/czech/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/czech/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/czech/cp1250.pl
new file mode 100755
index 00000000000..a8dda762d5f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/czech/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Czech";
+$prefix = "cs";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['ï','Ï']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É'], ['ì','Ì']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ò','Ò']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/czech/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/czech/latin2.pl
new file mode 100755
index 00000000000..7af4d817e4c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/czech/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Czech";
+$prefix = "cs";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['ï','Ï']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É'], ['ì','Ì']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ò','Ò']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['»','«']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/czech/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/czech/utf8.pl.in
new file mode 100644
index 00000000000..b4e189dd06b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/czech/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Czech";
+$prefix = "cs";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Ã'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['Ä','ÄŽ']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É'], ['ě','Ě']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ň','Ň']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ř', ['ř','Ř']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['ť','Ť']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ů','Ů'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ã']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.am
new file mode 100644
index 00000000000..99c3afdec44
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.am
@@ -0,0 +1,37 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.in
new file mode 100644
index 00000000000..03986a50cec
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/danish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/danish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/danish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/danish/cp1252.pl
new file mode 100755
index 00000000000..dd3e3dedae2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Danish";
+$prefix = "da";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['Æ', ['æ','Æ']],
+['Ø', ['ø','Ø'],['ö','Ö'],['œ','Œ']],
+['Å', ['å','Å'],['aa','Aa','AA']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['þ','Þ'], 'after', [['t','h'], ['T','h']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/danish/latin1.xdy
new file mode 100644
index 00000000000..3162e0169e7
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/latin1.xdy
@@ -0,0 +1,299 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Danish
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "Q" :after "P" :prefixes ("Í"))
+(define-letter-group "R" :after "Q" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "W" :after "V" :prefixes ("ä"))
+(define-letter-group "X" :after "W" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+(define-letter-group "Æ" :after "Z" :prefixes ("ï"))
+(define-letter-group "Ø" :after "Æ" :prefixes ("ð"))
+(define-letter-group "Å" :after "Ø" :prefixes ("ñ"))
+
+(define-rule-set "da-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("d" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "©" :string)
+ ("e" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("h" "³" :string)
+ ("H" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("j" "¹" :string)
+ ("J" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("Q" "Í" :string)
+ ("q" "Í" :string)
+ ("R" "Î" :string)
+ ("r" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("ß" "ÒÒ" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("U" "ß" :string)
+ ("u" "ß" :string)
+ ("V" "ã" :string)
+ ("v" "ã" :string)
+ ("w" "ä" :string)
+ ("W" "ä" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("y" "ç" :string)
+ ("Y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ("Æ" "ï" :string)
+ ("æ" "ï" :string)
+ ("ø" "ð" :string)
+ ("Ø" "ð" :string)
+ ("å" "ñ" :string)
+ ("Å" "ñ" :string)
+ ))
+
+(define-rule-set "da-resolve-diacritics"
+
+ :rules (("A" "¢" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("Å" "¢" :string)
+ ("E" "¢" :string)
+ ("Æ" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("Q" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("W" "¢" :string)
+ ("Ø" "¢" :string)
+ ("X" "¢" :string)
+ ("Y" "¢" :string)
+ ("Z" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("å" "¢" :string)
+ ("e" "¢" :string)
+ ("æ" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("q" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("v" "¢" :string)
+ ("w" "¢" :string)
+ ("ø" "¢" :string)
+ ("x" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ("ß" "ÿ" :string)
+ ))
+
+(define-rule-set "da-resolve-case"
+
+ :rules (("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("Å" "8" :string)
+ ("E" "8" :string)
+ ("Æ" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("Q" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("W" "8" :string)
+ ("Ø" "8" :string)
+ ("X" "8" :string)
+ ("Y" "8" :string)
+ ("Z" "8" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("c" "9" :string)
+ ("d" "9" :string)
+ ("å" "9" :string)
+ ("e" "9" :string)
+ ("æ" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("q" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("v" "9" :string)
+ ("w" "9" :string)
+ ("ø" "9" :string)
+ ("x" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("ß" "99" :string)
+ ))
+
+(define-rule-set "da-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "da-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("B" "¤" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("Å" "¤" :string)
+ ("E" "¤" :string)
+ ("Æ" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("Q" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("V" "¤" :string)
+ ("W" "¤" :string)
+ ("Ø" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("å" "¤" :string)
+ ("e" "¤" :string)
+ ("æ" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("q" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("v" "¤" :string)
+ ("w" "¤" :string)
+ ("ø" "¤" :string)
+ ("x" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("A" "¤" :string)
+ ("ß" "¤¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/danish/latin9.pl
new file mode 100755
index 00000000000..89ee37be0ae
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Danish";
+$prefix = "da";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['Æ', ['æ','Æ']],
+['Ø', ['ø','Ø'],['ö','Ö'],['½','¼']],
+['Å', ['å','Å'],['aa','Aa','AA']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['þ','Þ'], 'after', [['t','h'], ['T','h']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/danish/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/danish/utf8.pl.in
new file mode 100644
index 00000000000..dca83190cfc
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/danish/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Danish";
+$prefix = "da";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ã']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ã'],['ü','Ãœ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['Æ', ['æ','Æ']@u{,['ǽ','Ǽ']}],
+['Ø', ['ø','Ø'],@u{['ǿ','Ǿ'],}['ö','Ö'],['œ','Œ']],
+['Å', ['å','Å'],['aa','Aa','AA']@u{,['ǻ','Ǻ']}],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['þ','Þ'], 'after', [['t','h'], ['T','h']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.am
new file mode 100644
index 00000000000..d2ff67180d4
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.am
@@ -0,0 +1,36 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ ij-as-ij-latin1.pl ij-as-y-utf8.pl.in ij-as-ij-utf8.pl.in \
+ latin1.xdy tex-latin1.xdy
+
+CLEANFILES = \
+ ij-as-ij-latin1.raw \
+ ij-as-ij-latin1-doc.tex \
+ ij-as-ij-utf8.raw \
+ ij-as-ij-utf8-doc.tex \
+ ij-as-y-utf8.raw \
+ ij-as-y-utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.in
new file mode 100644
index 00000000000..fa4912cdbfe
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/dutch
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ ij-as-ij-latin1.pl ij-as-y-utf8.pl.in ij-as-ij-utf8.pl.in \
+ latin1.xdy tex-latin1.xdy
+
+CLEANFILES = \
+ ij-as-ij-latin1.raw \
+ ij-as-ij-latin1-doc.tex \
+ ij-as-ij-utf8.raw \
+ ij-as-ij-utf8-doc.tex \
+ ij-as-y-utf8.raw \
+ ij-as-y-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/dutch/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/dutch/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl
new file mode 100755
index 00000000000..9704c976872
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-latin1.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+# Not quite sure about this -- MV
+
+$language = "Dutch";
+$variant = "Ligature IJ sorted as I+J";
+$prefix = "nl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['ë','Ë'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-utf8.pl.in
new file mode 100644
index 00000000000..a457eb90dc2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-ij-utf8.pl.in
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+# Not quite sure about this -- MV
+
+$language = "Dutch";
+$variant = "Ligature IJ sorted as I+J";
+$prefix = "nl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['ë','Ë'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+@u{[['ij','IJ'], 'after', [['i','j'], ['I','j']]]}
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-y-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-y-utf8.pl.in
new file mode 100644
index 00000000000..befbec9d89e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/ij-as-y-utf8.pl.in
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+# Not quite sure about this -- MV
+
+$language = "Dutch";
+$variant = "Ligature IJ sorted as Y";
+$prefix = "nl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['ë','Ë'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']@u{,['ij','IJ']}],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/dutch/latin1.xdy
new file mode 100644
index 00000000000..5878dab4741
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/latin1.xdy
@@ -0,0 +1,300 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Dutch
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "Q" :after "P" :prefixes ("Í"))
+(define-letter-group "R" :after "Q" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "W" :after "V" :prefixes ("ä"))
+(define-letter-group "X" :after "W" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+
+(define-rule-set "nl-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("D" "¢" :string)
+ ("d" "¢" :string)
+ ("E" "©" :string)
+ ("É" "©" :string)
+ ("e" "©" :string)
+ ("Ë" "©" :string)
+ ("ë" "©" :string)
+ ("é" "©" :string)
+ ("f" "®" :string)
+ ("F" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("m" "Â" :string)
+ ("M" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("o" "É" :string)
+ ("O" "É" :string)
+ ("Ö" "É" :string)
+ ("ö" "É" :string)
+ ("p" "Ì" :string)
+ ("P" "Ì" :string)
+ ("q" "Í" :string)
+ ("Q" "Í" :string)
+ ("r" "Î" :string)
+ ("R" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("ß" "ÒÒ" :string)
+ ("t" "Ú" :string)
+ ("T" "Ú" :string)
+ ("U" "ß" :string)
+ ("u" "ß" :string)
+ ("v" "ã" :string)
+ ("V" "ã" :string)
+ ("W" "ä" :string)
+ ("w" "ä" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("Y" "ç" :string)
+ ("y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ))
+
+(define-rule-set "nl-resolve-diacritics"
+
+ :rules (("A" "¢" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("x" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("y" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("Q" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("z" "¢" :string)
+ ("W" "¢" :string)
+ ("X" "¢" :string)
+ ("Y" "¢" :string)
+ ("Z" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("q" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("v" "¢" :string)
+ ("w" "¢" :string)
+ ("ö" "£" :string)
+ ("Ë" "£" :string)
+ ("Ö" "£" :string)
+ ("ë" "£" :string)
+ ("É" "¤" :string)
+ ("é" "¤" :string)
+ ("ß" "ÿ" :string)
+ ))
+
+(define-rule-set "nl-resolve-case"
+
+ :rules (("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("É" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("Ë" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("Q" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("Ö" "8" :string)
+ ("W" "8" :string)
+ ("X" "8" :string)
+ ("Y" "8" :string)
+ ("Z" "8" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("c" "9" :string)
+ ("d" "9" :string)
+ ("e" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("é" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("ë" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("q" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("v" "9" :string)
+ ("ö" "9" :string)
+ ("w" "9" :string)
+ ("x" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("ß" "99" :string)
+ ))
+
+(define-rule-set "nl-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "nl-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("A" "¤" :string)
+ ("B" "¤" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("É" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("Ë" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("Q" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("Ö" "¤" :string)
+ ("V" "¤" :string)
+ ("W" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("é" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("ë" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("q" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("ö" "¤" :string)
+ ("v" "¤" :string)
+ ("w" "¤" :string)
+ ("x" "¤" :string)
+ ("ß" "¤¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ("{" "§" :string)
+ ("}" "¨" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/dutch/tex-latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/dutch/tex-latin1.xdy
new file mode 100644
index 00000000000..03ac1ebcd03
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/dutch/tex-latin1.xdy
@@ -0,0 +1,8 @@
+
+(require "tex/inputenc/latin1.xdy")
+
+(merge-rule "~"Y" "IJ" :string)
+(merge-rule "~"y" "ij" :string)
+(merge-rule "\IJ" "IJ" :string)
+(merge-rule "\ij" "ij" :string)
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.am
new file mode 100644
index 00000000000..2bfa518ac99
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.am
@@ -0,0 +1,36 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ ascii.xdy tex-ascii.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.in
new file mode 100644
index 00000000000..ccb5fc68f30
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/english
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ ascii.xdy tex-ascii.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/english/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/english/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/ascii.xdy b/Build/source/utils/xindy/make-rules/alphabets/english/ascii.xdy
new file mode 100644
index 00000000000..171e3bab15f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/ascii.xdy
@@ -0,0 +1,272 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: English
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "Q" :after "P" :prefixes ("Í"))
+(define-letter-group "R" :after "Q" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "W" :after "V" :prefixes ("ä"))
+(define-letter-group "X" :after "W" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+
+(define-rule-set "en-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("D" "¢" :string)
+ ("d" "¢" :string)
+ ("E" "©" :string)
+ ("e" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("Q" "Í" :string)
+ ("q" "Í" :string)
+ ("R" "Î" :string)
+ ("r" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("U" "ß" :string)
+ ("u" "ß" :string)
+ ("V" "ã" :string)
+ ("v" "ã" :string)
+ ("W" "ä" :string)
+ ("w" "ä" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("Y" "ç" :string)
+ ("y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ))
+
+(define-rule-set "en-resolve-diacritics"
+
+ :rules (("A" "¢" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("Q" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("W" "¢" :string)
+ ("X" "¢" :string)
+ ("Y" "¢" :string)
+ ("Z" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("q" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("v" "¢" :string)
+ ("w" "¢" :string)
+ ("x" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ))
+
+(define-rule-set "en-resolve-case"
+
+ :rules (("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("Q" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("W" "8" :string)
+ ("X" "8" :string)
+ ("Y" "8" :string)
+ ("Z" "8" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("c" "9" :string)
+ ("d" "9" :string)
+ ("e" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("q" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("v" "9" :string)
+ ("w" "9" :string)
+ ("x" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ))
+
+(define-rule-set "en-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("{" "" :string)
+ ("}" "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "en-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("Q" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("V" "¤" :string)
+ ("W" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("A" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("q" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("v" "¤" :string)
+ ("w" "¤" :string)
+ ("x" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("B" "¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ("{" "§" :string)
+ ("}" "¨" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/english/cp1252.pl
new file mode 100755
index 00000000000..1cea424628d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/cp1252.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "English";
+$prefix = "en";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ë','Ë'],['ê','Ê']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ö','Ö'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+[],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+[],
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['œ','Œ'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/english/latin9.pl
new file mode 100755
index 00000000000..bafb500811c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/latin9.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "English";
+$prefix = "en";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ë','Ë'],['ê','Ê']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ö','Ö'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+[],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+[],
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['½','¼'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/tex-ascii.xdy b/Build/source/utils/xindy/make-rules/alphabets/english/tex-ascii.xdy
new file mode 100644
index 00000000000..52679e968b3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/tex-ascii.xdy
@@ -0,0 +1,11 @@
+;; Finnish LaTeX support.
+;;
+;; This file contains some rules to process TeX-letters with xindy.
+;;
+;; We first map them to the ISO-Latin counterpart and then use the
+;; mappings in one of the two other modules to map them to the actual
+;; position.
+
+(require "tex/inputenc/latin1.xdy")
+
+;; End
diff --git a/Build/source/utils/xindy/make-rules/alphabets/english/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/english/utf8.pl.in
new file mode 100644
index 00000000000..2574685bd23
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/english/utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "English";
+$prefix = "en";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ã']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ë','Ë'],['ê','Ê']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ö','Ö'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+[@u{'Èœ', ['È','Èœ']}],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+[@u{'Æ¿', ['Æ¿','Ç·']}],
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['Å“','Å’'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.am
new file mode 100644
index 00000000000..626f6bb4be8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin3.pl utf8.pl.in
+
+CLEANFILES = \
+ latin3.raw \
+ latin3-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.in
new file mode 100644
index 00000000000..755eba3285f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/esperanto/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/esperanto
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin3.pl utf8.pl.in
+CLEANFILES = \
+ latin3.raw \
+ latin3-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/esperanto/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/esperanto/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/esperanto/latin3.pl b/Build/source/utils/xindy/make-rules/alphabets/esperanto/latin3.pl
new file mode 100755
index 00000000000..9a77c47ad9c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/esperanto/latin3.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Esperanto";
+$prefix = "eo";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+['Æ', ['æ','Æ']],
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+['Ø', ['ø','Ø']],
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+['¦', ['¶','¦']],
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+['¬', ['¼','¬']],
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+['Þ', ['þ','Þ']],
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+['Ý', ['ý','Ý']],
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/esperanto/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/esperanto/utf8.pl.in
new file mode 100644
index 00000000000..5bec57dee84
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/esperanto/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Esperanto";
+$prefix = "eo";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+['Ĉ', ['ĉ','Ĉ']],
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+['Äœ', ['Ä','Äœ']],
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+['Ĥ', ['ĥ','Ĥ']],
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+['Ĵ', ['ĵ','Ĵ']],
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+['Åœ', ['Å','Åœ']],
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+['Ŭ', ['ŭ','Ŭ']],
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.am
new file mode 100644
index 00000000000..b6f8f4c27a0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1252.pl latin9.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.in
new file mode 100644
index 00000000000..20fea6ebf22
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/estonian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/estonian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1252.pl latin9.pl utf8.pl.in
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/estonian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/estonian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/estonian/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/estonian/cp1252.pl
new file mode 100755
index 00000000000..9a036a1c4d7
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/estonian/cp1252.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Estonian";
+$prefix = "et";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['Z', ['z','Z']],
+['Ž', ['ž','Ž']],
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'],['w','W']],
+ [], # w (many)
+['Õ', ['õ','Õ']],
+['Ä', ['ä','Ä']],
+['Ö', ['ö','Ö']],
+['Ü', ['ü','Ü']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/estonian/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/estonian/latin9.pl
new file mode 100755
index 00000000000..773772d6000
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/estonian/latin9.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Estonian";
+$prefix = "et";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['¦', ['¨','¦']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['Z', ['z','Z']],
+['´', ['¸','´']],
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'],['w','W']],
+ [], # w (many)
+['Õ', ['õ','Õ']],
+['Ä', ['ä','Ä']],
+['Ö', ['ö','Ö']],
+['Ü', ['ü','Ü']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/estonian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/estonian/utf8.pl.in
new file mode 100644
index 00000000000..fece7fb6642
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/estonian/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Estonian";
+$prefix = "et";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['Z', ['z','Z']],
+['Ž', ['ž','Ž']],
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'],['w','W']],
+ [], # w (many)
+['Õ', ['õ','Õ']],
+['Ä', ['ä','Ä']],
+['Ö', ['ö','Ö']],
+['Ü', ['ü','Ü']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.am
new file mode 100644
index 00000000000..f2524aa4255
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.am
@@ -0,0 +1,37 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ tex-cp1252.xdy tex-latin9.xdy
+
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.in
new file mode 100644
index 00000000000..b054b53459a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/finnish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ tex-cp1252.xdy tex-latin9.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/finnish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/finnish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/finnish/cp1252.pl
new file mode 100755
index 00000000000..01624cfa4cf
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Finnish";
+$prefix = "fi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['š','Š']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Å', ['å','Å']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø'],['õ','Õ']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/finnish/latin9.pl
new file mode 100755
index 00000000000..a7b71077b45
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Finnish";
+$prefix = "fi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['¨','¦']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['¸','´']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Å', ['å','Å']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø'],['õ','Õ']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-cp1252.xdy b/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-cp1252.xdy
new file mode 100644
index 00000000000..f079bc98648
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-cp1252.xdy
@@ -0,0 +1,16 @@
+;; Finnish LaTeX support.
+;;
+;; This file contains some rules to process TeX-letters with xindy.
+;;
+;; We first map them to the ISO-Latin counterpart and then use the
+;; mappings in one of the two other modules to map them to the actual
+;; position.
+
+(require "tex/inputenc/cp1252.xdy")
+
+(merge-rule "\aa" "å" :string)
+(merge-rule "\AA" "Å" :string)
+
+(merge-rule "\ss" "ß" :string)
+
+;; End
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-latin9.xdy b/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-latin9.xdy
new file mode 100644
index 00000000000..d85f22d798f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/tex-latin9.xdy
@@ -0,0 +1,18 @@
+;; Finnish LaTeX support.
+;;
+;; This file contains some rules to process TeX-letters with xindy.
+;;
+;; We first map them to the ISO-Latin counterpart and then use the
+;; mappings in one of the two other modules to map them to the actual
+;; position.
+
+(require "tex/inputenc/latin1.xdy")
+
+;; These are not in the inputenc stuff:
+
+(merge-rule "\aa" "å" :string)
+(merge-rule "\AA" "Å" :string)
+
+(merge-rule "\ss" "ß" :string)
+
+;; End
diff --git a/Build/source/utils/xindy/make-rules/alphabets/finnish/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/finnish/utf8.pl.in
new file mode 100644
index 00000000000..ecc5ba6e173
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/finnish/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Finnish";
+$prefix = "fi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['Å¡','Å ']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Ã…', ['Ã¥','Ã…']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø'],['õ','Õ']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.am
new file mode 100644
index 00000000000..b6f8f4c27a0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1252.pl latin9.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.in
new file mode 100644
index 00000000000..1b437d0fc5e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/french/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/french
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1252.pl latin9.pl utf8.pl.in
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/french/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/french/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/french/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/french/cp1252.pl
new file mode 100755
index 00000000000..36a261558bb
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/french/cp1252.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "French";
+$prefix = "fr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â'],['à','À'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['ê','Ê'],['è','È'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ô','Ô'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û'],['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ÿ','Ÿ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['œ','Œ'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/french/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/french/latin9.pl
new file mode 100755
index 00000000000..8fe8ea0e09e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/french/latin9.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "French";
+$prefix = "fr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â'],['à','À'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['ê','Ê'],['è','È'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ô','Ô'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û'],['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ÿ','¾']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['½','¼'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/french/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/french/utf8.pl.in
new file mode 100644
index 00000000000..d81ebf37579
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/french/utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "French";
+$prefix = "fr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â'],['à','À'],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['ê','Ê'],['è','È'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['î','ÃŽ'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ô','Ô'],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û'],['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ÿ','Ÿ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['Å“','Å’'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.am
new file mode 100644
index 00000000000..8749ed9c5e1
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.am
@@ -0,0 +1,38 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl cp850.pl latin9.pl template.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ cp850.raw \
+ cp850-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.in
new file mode 100644
index 00000000000..88ab2d6cd35
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/Makefile.in
@@ -0,0 +1,288 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/general
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl cp850.pl latin9.pl template.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ cp850.raw \
+ cp850-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/general/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/general/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/general/cp1252.pl
new file mode 100755
index 00000000000..eb1c5c60229
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/cp1252.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â'],['ã','Ã'],['å','Å'],
+ ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì'],['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô'],['õ','Õ'],['ö','Ö'],
+ ['ø','Ø']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['š','Š']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['û','Û'],['ü','Ü'],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ÿ','Ÿ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'],['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['œ','Œ'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/cp850.pl b/Build/source/utils/xindy/make-rules/alphabets/general/cp850.pl
new file mode 100755
index 00000000000..cbc98fee23f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/cp850.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[' ','µ'],['…','·'],['ƒ','¶'],['Æ','Ç'],['†',''],
+ ['„','Ž']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['‡','€']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['‚',''],['Š','Ô'],['ˆ','Ò'],['‰','Ó']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['¡','Ö'],['','Þ'],['Œ','×'],['‹','Ø']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['¤','¥']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['¢','à'],['•','ã'],['“','â'],['ä','å'],['”','™'],
+ ['›','']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['£','é'],['—','ë'],['–','ê'],['','š'],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ì','í'],['˜']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['á'], 'after', [['s','s']]],
+[['‘','’'], 'after', [['a','e'], ['A','e']]],
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/general/latin1.xdy
new file mode 100644
index 00000000000..c6523c21917
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/latin1.xdy
@@ -0,0 +1,500 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: A general sorting order for Western European languages
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "Q" :after "P" :prefixes ("Í"))
+(define-letter-group "R" :after "Q" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "W" :after "V" :prefixes ("ä"))
+(define-letter-group "X" :after "W" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+
+(define-rule-set "xy-alphabetize"
+
+ :rules (("À" "–" :string)
+ ("A" "–" :string)
+ ("Á" "–" :string)
+ ("Â" "–" :string)
+ ("à" "–" :string)
+ ("Ã" "–" :string)
+ ("å" "–" :string)
+ ("Ä" "–" :string)
+ ("ä" "–" :string)
+ ("Å" "–" :string)
+ ("ã" "–" :string)
+ ("á" "–" :string)
+ ("a" "–" :string)
+ ("â" "–" :string)
+ ("æ" "–©" :string)
+ ("Æ" "–©" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("ç" "›" :string)
+ ("Ç" "›" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("D" "¢" :string)
+ ("d" "¢" :string)
+ ("E" "©" :string)
+ ("ê" "©" :string)
+ ("ë" "©" :string)
+ ("È" "©" :string)
+ ("e" "©" :string)
+ ("É" "©" :string)
+ ("è" "©" :string)
+ ("Ê" "©" :string)
+ ("é" "©" :string)
+ ("Ë" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("I" "·" :string)
+ ("í" "·" :string)
+ ("î" "·" :string)
+ ("Ì" "·" :string)
+ ("ï" "·" :string)
+ ("Í" "·" :string)
+ ("Î" "·" :string)
+ ("ì" "·" :string)
+ ("Ï" "·" :string)
+ ("i" "·" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("m" "Â" :string)
+ ("M" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("Ñ" "Ã" :string)
+ ("ñ" "Ã" :string)
+ ("Ø" "É" :string)
+ ("Ò" "É" :string)
+ ("O" "É" :string)
+ ("Õ" "É" :string)
+ ("Ö" "É" :string)
+ ("Ô" "É" :string)
+ ("o" "É" :string)
+ ("Ó" "É" :string)
+ ("ò" "É" :string)
+ ("ó" "É" :string)
+ ("ô" "É" :string)
+ ("õ" "É" :string)
+ ("ö" "É" :string)
+ ("ø" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("Q" "Í" :string)
+ ("q" "Í" :string)
+ ("r" "Î" :string)
+ ("R" "Î" :string)
+ ("s" "Ò" :string)
+ ("S" "Ò" :string)
+ ("ß" "ÒÒ" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("ú" "ß" :string)
+ ("ù" "ß" :string)
+ ("Ú" "ß" :string)
+ ("U" "ß" :string)
+ ("Ù" "ß" :string)
+ ("Ü" "ß" :string)
+ ("û" "ß" :string)
+ ("Û" "ß" :string)
+ ("u" "ß" :string)
+ ("ü" "ß" :string)
+ ("v" "ã" :string)
+ ("V" "ã" :string)
+ ("w" "ä" :string)
+ ("W" "ä" :string)
+ ("x" "å" :string)
+ ("X" "å" :string)
+ ("Ý" "ç" :string)
+ ("y" "ç" :string)
+ ("Y" "ç" :string)
+ ("ý" "ç" :string)
+ ("ÿ" "ç" :string)
+ ("z" "è" :string)
+ ("Z" "è" :string)
+ ))
+
+(define-rule-set "xy-resolve-diacritics"
+
+ :rules (("Z" "¢" :string)
+ ("t" "¢" :string)
+ ("A" "¢" :string)
+ ("B" "¢" :string)
+ ("l" "¢" :string)
+ ("C" "¢" :string)
+ ("k" "¢" :string)
+ ("D" "¢" :string)
+ ("j" "¢" :string)
+ ("E" "¢" :string)
+ ("u" "¢" :string)
+ ("i" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("v" "¢" :string)
+ ("H" "¢" :string)
+ ("w" "¢" :string)
+ ("I" "¢" :string)
+ ("x" "¢" :string)
+ ("J" "¢" :string)
+ ("h" "¢" :string)
+ ("K" "¢" :string)
+ ("y" "¢" :string)
+ ("L" "¢" :string)
+ ("a" "¢" :string)
+ ("M" "¢" :string)
+ ("z" "¢" :string)
+ ("N" "¢" :string)
+ ("g" "¢" :string)
+ ("O" "¢" :string)
+ ("f" "¢" :string)
+ ("P" "¢" :string)
+ ("Q" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("e" "¢" :string)
+ ("U" "¢" :string)
+ ("d" "¢" :string)
+ ("V" "¢" :string)
+ ("c" "¢" :string)
+ ("W" "¢" :string)
+ ("X" "¢" :string)
+ ("b" "¢" :string)
+ ("Y" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("q" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("Á" "£" :string)
+ ("é" "£" :string)
+ ("Ç" "£" :string)
+ ("Ú" "£" :string)
+ ("É" "£" :string)
+ ("ç" "£" :string)
+ ("Í" "£" :string)
+ ("á" "£" :string)
+ ("Ý" "£" :string)
+ ("Ñ" "£" :string)
+ ("ñ" "£" :string)
+ ("í" "£" :string)
+ ("Ó" "£" :string)
+ ("ó" "£" :string)
+ ("ú" "£" :string)
+ ("ý" "£" :string)
+ ("Ì" "¤" :string)
+ ("Ò" "¤" :string)
+ ("Ù" "¤" :string)
+ ("à" "¤" :string)
+ ("è" "¤" :string)
+ ("ì" "¤" :string)
+ ("ù" "¤" :string)
+ ("ò" "¤" :string)
+ ("À" "¤" :string)
+ ("È" "¤" :string)
+ ("ÿ" "¤" :string)
+ ("Ô" "¥" :string)
+ ("Û" "¥" :string)
+ ("ê" "¥" :string)
+ ("â" "¥" :string)
+ ("î" "¥" :string)
+ ("û" "¥" :string)
+ ("Â" "¥" :string)
+ ("Î" "¥" :string)
+ ("ô" "¥" :string)
+ ("Ê" "¥" :string)
+ ("Ü" "¦" :string)
+ ("Ï" "¦" :string)
+ ("Õ" "¦" :string)
+ ("ï" "¦" :string)
+ ("ã" "¦" :string)
+ ("õ" "¦" :string)
+ ("Ã" "¦" :string)
+ ("Ë" "¦" :string)
+ ("ü" "¦" :string)
+ ("ë" "¦" :string)
+ ("Ä" "§" :string)
+ ("Ö" "§" :string)
+ ("ä" "§" :string)
+ ("ö" "§" :string)
+ ("Å" "¨" :string)
+ ("Ø" "¨" :string)
+ ("å" "¨" :string)
+ ("ø" "¨" :string)
+ ("æ" "ÿ" :string)
+ ("ß" "ÿ" :string)
+ ("Æ" "ÿ" :string)
+ ))
+
+(define-rule-set "xy-resolve-case"
+
+ :rules (("À" "8" :string)
+ ("Á" "8" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("Â" "8" :string)
+ ("C" "8" :string)
+ ("Ã" "8" :string)
+ ("D" "8" :string)
+ ("Ä" "8" :string)
+ ("E" "8" :string)
+ ("Å" "8" :string)
+ ("Ý" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("Ç" "8" :string)
+ ("H" "8" :string)
+ ("È" "8" :string)
+ ("I" "8" :string)
+ ("É" "8" :string)
+ ("J" "8" :string)
+ ("Ê" "8" :string)
+ ("K" "8" :string)
+ ("Ë" "8" :string)
+ ("L" "8" :string)
+ ("Ì" "8" :string)
+ ("M" "8" :string)
+ ("Í" "8" :string)
+ ("N" "8" :string)
+ ("Î" "8" :string)
+ ("O" "8" :string)
+ ("Ï" "8" :string)
+ ("P" "8" :string)
+ ("Q" "8" :string)
+ ("Ñ" "8" :string)
+ ("R" "8" :string)
+ ("Ò" "8" :string)
+ ("S" "8" :string)
+ ("Ó" "8" :string)
+ ("T" "8" :string)
+ ("Ô" "8" :string)
+ ("U" "8" :string)
+ ("Õ" "8" :string)
+ ("V" "8" :string)
+ ("Ö" "8" :string)
+ ("W" "8" :string)
+ ("X" "8" :string)
+ ("Ø" "8" :string)
+ ("Y" "8" :string)
+ ("Ù" "8" :string)
+ ("Z" "8" :string)
+ ("Ú" "8" :string)
+ ("Û" "8" :string)
+ ("Ü" "8" :string)
+ ("Æ" "89" :string)
+ ("à" "9" :string)
+ ("á" "9" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("â" "9" :string)
+ ("c" "9" :string)
+ ("ã" "9" :string)
+ ("d" "9" :string)
+ ("ä" "9" :string)
+ ("e" "9" :string)
+ ("å" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("ç" "9" :string)
+ ("h" "9" :string)
+ ("è" "9" :string)
+ ("i" "9" :string)
+ ("é" "9" :string)
+ ("j" "9" :string)
+ ("ê" "9" :string)
+ ("k" "9" :string)
+ ("ë" "9" :string)
+ ("l" "9" :string)
+ ("ì" "9" :string)
+ ("m" "9" :string)
+ ("í" "9" :string)
+ ("n" "9" :string)
+ ("î" "9" :string)
+ ("o" "9" :string)
+ ("ï" "9" :string)
+ ("p" "9" :string)
+ ("q" "9" :string)
+ ("ñ" "9" :string)
+ ("r" "9" :string)
+ ("ò" "9" :string)
+ ("s" "9" :string)
+ ("ó" "9" :string)
+ ("t" "9" :string)
+ ("ô" "9" :string)
+ ("u" "9" :string)
+ ("õ" "9" :string)
+ ("v" "9" :string)
+ ("ö" "9" :string)
+ ("w" "9" :string)
+ ("x" "9" :string)
+ ("ø" "9" :string)
+ ("y" "9" :string)
+ ("ù" "9" :string)
+ ("z" "9" :string)
+ ("ú" "9" :string)
+ ("û" "9" :string)
+ ("ü" "9" :string)
+ ("ý" "9" :string)
+ ("ÿ" "9" :string)
+ ("æ" "99" :string)
+ ("ß" "99" :string)
+ ))
+
+(define-rule-set "xy-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "xy-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("ü" "¤" :string)
+ ("ý" "¤" :string)
+ ("À" "¤" :string)
+ ("Á" "¤" :string)
+ ("A" "¤" :string)
+ ("B" "¤" :string)
+ ("Â" "¤" :string)
+ ("C" "¤" :string)
+ ("Ã" "¤" :string)
+ ("D" "¤" :string)
+ ("Ä" "¤" :string)
+ ("E" "¤" :string)
+ ("Å" "¤" :string)
+ ("ÿ" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("Ç" "¤" :string)
+ ("H" "¤" :string)
+ ("È" "¤" :string)
+ ("I" "¤" :string)
+ ("É" "¤" :string)
+ ("J" "¤" :string)
+ ("Ê" "¤" :string)
+ ("K" "¤" :string)
+ ("Ë" "¤" :string)
+ ("L" "¤" :string)
+ ("Ì" "¤" :string)
+ ("M" "¤" :string)
+ ("Í" "¤" :string)
+ ("N" "¤" :string)
+ ("Î" "¤" :string)
+ ("O" "¤" :string)
+ ("Ï" "¤" :string)
+ ("P" "¤" :string)
+ ("Q" "¤" :string)
+ ("Ñ" "¤" :string)
+ ("R" "¤" :string)
+ ("Ò" "¤" :string)
+ ("S" "¤" :string)
+ ("Ó" "¤" :string)
+ ("T" "¤" :string)
+ ("Ô" "¤" :string)
+ ("U" "¤" :string)
+ ("Õ" "¤" :string)
+ ("V" "¤" :string)
+ ("Ö" "¤" :string)
+ ("W" "¤" :string)
+ ("X" "¤" :string)
+ ("Ø" "¤" :string)
+ ("Y" "¤" :string)
+ ("Ù" "¤" :string)
+ ("Z" "¤" :string)
+ ("Ú" "¤" :string)
+ ("Û" "¤" :string)
+ ("Ü" "¤" :string)
+ ("Ý" "¤" :string)
+ ("à" "¤" :string)
+ ("á" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("â" "¤" :string)
+ ("c" "¤" :string)
+ ("ã" "¤" :string)
+ ("d" "¤" :string)
+ ("ä" "¤" :string)
+ ("e" "¤" :string)
+ ("å" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("ç" "¤" :string)
+ ("h" "¤" :string)
+ ("è" "¤" :string)
+ ("i" "¤" :string)
+ ("é" "¤" :string)
+ ("j" "¤" :string)
+ ("ê" "¤" :string)
+ ("k" "¤" :string)
+ ("ë" "¤" :string)
+ ("l" "¤" :string)
+ ("ì" "¤" :string)
+ ("m" "¤" :string)
+ ("í" "¤" :string)
+ ("n" "¤" :string)
+ ("î" "¤" :string)
+ ("o" "¤" :string)
+ ("ï" "¤" :string)
+ ("p" "¤" :string)
+ ("q" "¤" :string)
+ ("ñ" "¤" :string)
+ ("r" "¤" :string)
+ ("ò" "¤" :string)
+ ("s" "¤" :string)
+ ("ó" "¤" :string)
+ ("t" "¤" :string)
+ ("ô" "¤" :string)
+ ("u" "¤" :string)
+ ("õ" "¤" :string)
+ ("v" "¤" :string)
+ ("ö" "¤" :string)
+ ("w" "¤" :string)
+ ("x" "¤" :string)
+ ("ø" "¤" :string)
+ ("y" "¤" :string)
+ ("ù" "¤" :string)
+ ("z" "¤" :string)
+ ("ú" "¤" :string)
+ ("û" "¤" :string)
+ ("Æ" "¤¤" :string)
+ ("æ" "¤¤" :string)
+ ("ß" "¤¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/general/latin9.pl
new file mode 100755
index 00000000000..0be6256bd6c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/latin9.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â'],['ã','Ã'],['å','Å'],
+ ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì'],['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô'],['õ','Õ'],['ö','Ö'],
+ ['ø','Ø']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['¨','¦']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['û','Û'],['ü','Ü'],
+ ],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ÿ','¾']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'],['¸','´']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+[['½','¼'], 'after', [['o','e'], ['O','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/template.pl b/Build/source/utils/xindy/make-rules/alphabets/general/template.pl
new file mode 100755
index 00000000000..7aca3c2f984
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/template.pl
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "Template";
+$prefix = "??";
+$script = "latin";
+
+# preferred order of diacritics of not specified otherwise:
+# go from little to big, from non-touching to touching
+
+# caron acute grave dot-above breve circumflex tilde
+# ring-above diaeresis comma-below cedilla ogonek stroke
+
+$alphabet = [
+ [], # a (many)
+ [], # a with breve (romanian, vietnamese)
+ [], # a with circumflex (romanian, vietnamese)
+ [], # a with ogonek (polish)
+ [], # b (many)
+ [], # b with hook (hausa)
+ [], # c (many)
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+ [], # d (many)
+ [], # dh (albanian)
+ [], # dz (hungarian, gypsy/northrussian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian, vietnamese)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+ [], # e (many)
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish, vietnamese)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+ [], # f (many)
+ [], # g (many)
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+ [], # h (many)
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+ [], # i (many)
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+ [], # j (many)
+ [], # j with circumflex (esperanto)
+ [], # k (many)
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+ [], # l (many)
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # m (many)
+ [], # n (many)
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+ [], # o (many)
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+ [], # p (many)
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+ [], # r (many)
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+ [], # s (many)
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+ [], # t (many)
+ [], # th (albanian, gypsy/northrussian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+ [], # u (many)
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+ [], # v (many)
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+ [], # x (many)
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+ [], # z (many)
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, icelandic, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/general/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/general/utf8.pl.in
new file mode 100644
index 00000000000..cc0dbe36fa7
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/general/utf8.pl.in
@@ -0,0 +1,150 @@
+#!/usr/bin/perl
+
+$language = "A general sorting order for Western European languages";
+$prefix = "xy";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã'],['à','À'],@u{['ă','Ä‚'],}['â','Â'],['ã','Ã'],['Ã¥','Ã…'],
+ ['ä','Ä']@u{,['ą','Ą']}],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']@u{,['Ä','ÄŒ'],['ć','Ć'],['ĉ','Ĉ']},['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']@u{,['Ä','ÄŽ'],['Ä‘','Ä']}],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']@u{,['ě','Ě']},['é','É'],['è','È'],['ê','Ê'],['ë','Ë']@u{,['ę','Ę']}],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']@u{,['Ä','Äœ'],['ÄŸ','Äž']}],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']@u{,['ĥ','Ĥ']}],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']@u{,['ı'],['','Ä°']},['í','Ã'],['ì','ÃŒ'],['î','ÃŽ'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']@u{,['ĵ','Ĵ']}],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']@u{,['ľ','Ľ'],['Å‚','Å']}],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],@u{['ň','Ň'],['ń','Ń'],}['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ã’'],['ô','Ô'],['õ','Õ'],['ö','Ö']@u{,['Å‘','Å']},
+ ['ø','Ø']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']@u{,['ř','Ř'],['ŕ','Ŕ']}],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']@9{,['Å¡','Å ']}@u{,['Å›','Åš'],['Å','Åœ'],['È™','Ș'],['ÅŸ','Åž']}],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']@u{,['ť','Ť'],['ț','Ț']}],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù']@u{,['ŭ','Ŭ']},['û','Û']@u{,['ů','Ů']},['ü','Ü'],
+ @u{['ű','Ű']}],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ã'],['ÿ'@9{,'Ÿ'}]],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']@9{,['ž','Ž']}@u{,['ź','Ź'],['ż','Ż']}],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]],
+@9{[['Å“','Å’'], 'after', [['o','e'], ['O','e']]]}
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.am
new file mode 100644
index 00000000000..335df3f4f71
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = utf8.pl.in
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.in
new file mode 100644
index 00000000000..1c200940652
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/georgian/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/georgian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = utf8.pl.in
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/georgian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/georgian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/georgian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/georgian/utf8.pl.in
new file mode 100644
index 00000000000..94e594e87db
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/georgian/utf8.pl.in
@@ -0,0 +1,55 @@
+#!/usr/bin/perl
+
+$language = "Georgian";
+$prefix = "ka";
+$script = "georgian";
+
+$alphabet = [
+['áƒ', ['áƒ']],
+['ბ', ['ბ']],
+['გ', ['გ']],
+['დ', ['დ']],
+['ე', ['ე']],
+['ვ', ['ვ']],
+['ზ', ['ზ']],
+['ჱ', ['ჱ']],
+['თ', ['თ']],
+['ი', ['ი']],
+['კ', ['კ']],
+['ლ', ['ლ']],
+['მ', ['მ']],
+['ნ', ['ნ']],
+['ჲ', ['ჲ']],
+['áƒ', ['áƒ']],
+['პ', ['პ']],
+['ჟ', ['ჟ']],
+['რ', ['რ']],
+['ს', ['ს']],
+['ტ', ['ტ']],
+['ჳ', ['ჳ']],
+['უ', ['უ']],
+['ფ', ['ფ']],
+['ქ', ['ქ']],
+['ღ', ['ღ']],
+['ყ', ['ყ']],
+['შ', ['შ']],
+['ჩ', ['ჩ']],
+['ც', ['ც']],
+['ძ', ['ძ']],
+['წ', ['წ']],
+['ჭ', ['ჭ']],
+['ხ', ['ხ']],
+['ჴ', ['ჴ']],
+['ჯ', ['ჯ']],
+['ჰ', ['ჰ']],
+['ჵ', ['ჵ']]
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.am
new file mode 100644
index 00000000000..647016cdbfe
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.am
@@ -0,0 +1,41 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ braille-utf8.pl.in duden-latin1.pl \
+ din5007-latin1.pl duden-utf8.pl.in din5007-utf8.pl.in \
+ tex-din5007-latin1.xdy tex-duden-latin1.xdy tex-latin1.xdy
+
+CLEANFILES = \
+ braille-utf8.raw \
+ braille-utf8-doc.tex \
+ din5007-latin1.raw \
+ din5007-latin1-doc.tex \
+ din5007-utf8.raw \
+ din5007-utf8-doc.tex \
+ duden-latin1.raw \
+ duden-latin1-doc.tex \
+ duden-utf8.raw \
+ duden-utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.in
new file mode 100644
index 00000000000..d72df932177
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/Makefile.in
@@ -0,0 +1,291 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/german
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ braille-utf8.pl.in duden-latin1.pl \
+ din5007-latin1.pl duden-utf8.pl.in din5007-utf8.pl.in \
+ tex-din5007-latin1.xdy tex-duden-latin1.xdy tex-latin1.xdy
+
+CLEANFILES = \
+ braille-utf8.raw \
+ braille-utf8-doc.tex \
+ din5007-latin1.raw \
+ din5007-latin1-doc.tex \
+ din5007-utf8.raw \
+ din5007-utf8-doc.tex \
+ duden-latin1.raw \
+ duden-latin1-doc.tex \
+ duden-utf8.raw \
+ duden-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/german/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/german/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/braille-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/german/braille-utf8.pl.in
new file mode 100644
index 00000000000..aad74f2756f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/braille-utf8.pl.in
@@ -0,0 +1,156 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "Blindenvollschrift";
+$prefix = "de";
+$script = "braille";
+
+$alphabet = [
+['â ', ['â '],['â œ']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['â ƒ', ['â ƒ']],
+ [], # b with hook (hausa)
+['â ‰', ['â ‰']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['â ™', ['â ™']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['â ‘', ['â ‘']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['â ‹', ['â ‹']],
+['â ›', ['â ›']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['â “', ['â “']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['â Š', ['â Š']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['â š', ['â š']],
+ [], # j with circumflex (esperanto)
+['â …', ['â …']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['â ‡', ['â ‡']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['â ', ['â ']],
+['â ', ['â ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['â •', ['â •'],['â ª']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['â ', ['â ']],
+ [], # ph (gypsy/northrussian)
+['â Ÿ', ['â Ÿ']],
+['â —', ['â —']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['â Ž', ['â Ž']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['â ž', ['â ž']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['â ¥', ['â ¥'],['â ³']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['â §', ['â §']],
+['â º', ['â º']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['â ­', ['â ­']],
+ [], # xh (albanian)
+['â ½', ['â ½']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['â µ', ['â µ']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['â ®'], 'after', [['â Ž','â Ž']]],
+[['â ¾'], 'after', [['â Ž','â ž']]],
+[['â ¡'], 'after', [['â ','â ¥']]],
+[['â £'], 'after', [['â ‘','â ¥']]],
+[['â ©'], 'after', [['â ‘','â Š']]],
+[['â ¹'], 'after', [['â ‰','â “']]],
+[['â ±'], 'after', [['â Ž','â ‰','â “']]],
+[['⠌'], 'after', [['⠜','⠥']]],
+[['â ¬'], 'after', [['â Š','â ‘']]]
+];
+
+@special = ('â ‚', 'â †', 'â ’', 'â ¢', 'â –', 'â ¶', 'â ¦', 'â ”', 'â ´', 'â „', 'â ¤', 'â â ‚',
+ 'letters',
+ 'â ˆ', 'â ˜', 'â ¸', 'â ¨', 'â  ', 'â ¼');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/din5007-latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/german/din5007-latin1.pl
new file mode 100755
index 00000000000..ee03c89ee51
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/din5007-latin1.pl
@@ -0,0 +1,149 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "DIN 5007";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['ä','Ä'], 'after', [['a','e'], ['A','e']]],
+[['ö','Ö'], 'after', [['o','e'], ['O','e']]],
+[['ü','Ü'], 'after', [['u','e'], ['U','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/din5007-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/german/din5007-utf8.pl.in
new file mode 100644
index 00000000000..dd6fa4e000f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/din5007-utf8.pl.in
@@ -0,0 +1,149 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "DIN 5007";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['ä','Ä'], 'after', [['a','e'], ['A','e']]],
+[['ö','Ö'], 'after', [['o','e'], ['O','e']]],
+[['ü','Ü'], 'after', [['u','e'], ['U','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/duden-latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/german/duden-latin1.pl
new file mode 100755
index 00000000000..0b8d82d2532
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/duden-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "Duden";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],[],[],[],[],[],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],[],[],[],[],[],[],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],[],[],[],[],[],[],[],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/duden-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/german/duden-utf8.pl.in
new file mode 100644
index 00000000000..79931166c2b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/duden-utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "German";
+$variant = "Duden";
+$prefix = "de";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],[],[],[],[],[],['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],[],[],[],[],[],[],['ö','Ö']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],[],[],[],[],[],[],[],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/tex-din5007-latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/german/tex-din5007-latin1.xdy
new file mode 100644
index 00000000000..668b623a5c9
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/tex-din5007-latin1.xdy
@@ -0,0 +1,13 @@
+
+(require "tex/inputenc/latin1.xdy")
+
+;; map special German TeX letters (german.sty) to 8-bit characters
+
+(merge-rule "~"A" "Ä" :string)
+(merge-rule "~"O" "Ö" :string)
+(merge-rule "~"U" "Ü" :string)
+(merge-rule "~"a" "ä" :string)
+(merge-rule "~"o" "ö" :string)
+(merge-rule "~"u" "ü" :string)
+(merge-rule "~"s" "ß" :string)
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/tex-duden-latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/german/tex-duden-latin1.xdy
new file mode 100644
index 00000000000..81c33c2bfbd
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/tex-duden-latin1.xdy
@@ -0,0 +1,14 @@
+
+(require "tex/inputenc/latin1.xdy")
+
+;; map special German TeX letters (german.sty) to 8-bit characters
+
+(merge-rule "~"A" "Ä" :string)
+(merge-rule "~"O" "Ö" :string)
+(merge-rule "~"U" "Ü" :string)
+(merge-rule "~"a" "ä" :string)
+(merge-rule "~"o" "ö" :string)
+(merge-rule "~"u" "ü" :string)
+(merge-rule "~"s" "ß" :string)
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/german/tex-latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/german/tex-latin1.xdy
new file mode 100644
index 00000000000..f3b09f38940
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/german/tex-latin1.xdy
@@ -0,0 +1,9 @@
+;; map special German TeX letters (german.sty) to 8-bit characters
+
+(merge-rule "~"A" "Ä" :string)
+(merge-rule "~"O" "Ö" :string)
+(merge-rule "~"U" "Ü" :string)
+(merge-rule "~"a" "ä" :string)
+(merge-rule "~"o" "ö" :string)
+(merge-rule "~"u" "ü" :string)
+(merge-rule "~"s" "ß" :string)
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.am
new file mode 100644
index 00000000000..47b0e986100
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.am
@@ -0,0 +1,42 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ iso88597.pl polytonic-utf8.pl.in utf8.pl.in \
+ translit-latin4.pl translit-utf8.pl.in \
+ translit-tex.xdy
+
+
+CLEANFILES = \
+ iso88597.raw \
+ iso88597-doc.tex \
+ polytonic-utf8.raw \
+ polytonic-utf8-doc.tex \
+ translit-latin4.raw \
+ translit-latin4-doc.tex \
+ translit-utf8.raw \
+ translit-utf8-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.in
new file mode 100644
index 00000000000..7458003ae24
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/Makefile.in
@@ -0,0 +1,291 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/greek
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ iso88597.pl polytonic-utf8.pl.in utf8.pl.in \
+ translit-latin4.pl translit-utf8.pl.in \
+ translit-tex.xdy
+
+CLEANFILES = \
+ iso88597.raw \
+ iso88597-doc.tex \
+ polytonic-utf8.raw \
+ polytonic-utf8-doc.tex \
+ translit-latin4.raw \
+ translit-latin4-doc.tex \
+ translit-utf8.raw \
+ translit-utf8-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/greek/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/greek/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/iso88597.pl b/Build/source/utils/xindy/make-rules/alphabets/greek/iso88597.pl
new file mode 100755
index 00000000000..1e304dadec3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/iso88597.pl
@@ -0,0 +1,47 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$prefix = "el";
+$script = "greek";
+
+$alphabet = [
+['Á', ['á', 'Á'], ['Ü','¶']],
+['Â', ['â', 'Â']],
+['Ã', ['ã', 'Ã']],
+['Ä', ['ä', 'Ä']],
+['Å', ['å', 'Å'], ['Ý','¸']],
+['Æ', ['æ', 'Æ']],
+ [],
+['Ç', ['ç', 'Ç'], ['Þ','¹']],
+['È', ['è', 'È']],
+['É', ['é', 'É'], ['ß','º'], ['ú', 'Ú'], ['À']],
+ [],
+['Ê', ['ê', 'Ê']],
+['Ë', ['ë', 'Ë']],
+['Ì', ['ì', 'Ì']],
+['Í', ['í', 'Í']],
+['Î', ['î', 'Î']],
+['Ï', ['ï', 'Ï'], ['ü','¼']],
+['Ð', ['ð', 'Ð']],
+ [],
+['Ñ', ['ñ', 'Ñ']],
+['Ó', ['ó', 'Ó'], ['ò']],
+['Ô', ['ô', 'Ô']],
+['Õ', ['õ', 'Õ'], ['ý','¾'], ['û', 'Û'], ['à']],
+['Ö', ['ö', 'Ö']],
+['×', ['÷', '×']],
+['Ø', ['ø', 'Ø']],
+['Ù', ['ù', 'Ù'], ['þ', '¿']]
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+#@letter_group_names = ('Á','Â','Ã','Ä','Å','Æ','Ç','È','É','Ê','Ë','Ì',
+#'Í','Î','Ï','Ð','Ñ','Ó','Ô','Õ','Ö','×','Ø','Ù');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/polytonic-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/greek/polytonic-utf8.pl.in
new file mode 100644
index 00000000000..02e8a77f005
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/polytonic-utf8.pl.in
@@ -0,0 +1,50 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$variant = "polytonic";
+$prefix = "el";
+$script = "greek";
+
+$alphabet = [
+['Α', ['α','Α'],['ᾰ','Ᾰ'],['ᾱ','Ᾱ'],['ὰ','Ὰ'],['ά','Ά'],['ἀ','Ἀ'],
+ ['á¼','Ἁ'],['ἂ','Ἂ'],['ἃ','Ἃ'],['ἄ','Ἄ'],['á¼…','á¼'],['ἆ','Ἆ'],
+ ['ἇ','á¼'],['á¾³','á¾¼'],['á¾²'],['á¾´'],['ᾶ'],['á¾·'],['á¾€','ᾈ'],['á¾','ᾉ'],
+ ['ᾂ','ᾊ'],['ᾃ','ᾋ'],['ᾄ','ᾌ'],['á¾…','á¾'],['ᾆ','ᾎ'],['ᾇ','á¾']],
+['Î’', ['β','Î’'],['Ï']],
+['Γ', ['γ','Γ']],
+['Δ', ['δ','Δ']],
+['Ε', ['ε','Ε'],['á½²','Ὲ'],['á½³','Έ'],['á¼','Ἐ'],['ἑ','á¼™'],
+ ['á¼’','Ἒ'],['ἓ','á¼›'],['á¼”','Ἔ'],['ἕ','á¼']],
+['Ζ', ['ζ','Ζ']],
+['Ïœ', ['Ï','Ïœ']],
+['Η', ['η','Η'],['ὴ','Ὴ'],['ή','Ή'],['ἠ','Ἠ'],['ἡ','Ἡ'],
+ ['ἢ','Ἢ'],['ἣ','Ἣ'],['ἤ','Ἤ'],['ἥ','Ἥ']],
+['Θ', ['θ', 'Θ']],
+['Ι', ['ι', 'Ι'], ['ί','Ί'], ['ÏŠ', 'Ϊ'], ['Î']],
+['ϳ', ['ϳ']],
+['Κ', ['κ', 'Κ']],
+['Λ', ['λ', 'Λ']],
+['Μ', ['μ', 'Μ']],
+['Î', ['ν', 'Î']],
+['Ξ', ['ξ', 'Ξ']],
+['Ο', ['ο', 'Ο'], ['ό','Ό']],
+['Π', ['π', 'Π']],
+ [],
+['Ρ', ['Ï', 'Ρ']],
+['Σ', ['σ', 'Σ'], ['ς']],
+['Τ', ['τ', 'Τ']],
+['Î¥', ['Ï…', 'Î¥'], ['Ï','ÎŽ'], ['Ï‹', 'Ϋ'], ['ΰ']],
+['Φ', ['φ', 'Φ']],
+['Χ', ['χ', 'Χ']],
+['Ψ', ['ψ', 'Ψ']],
+['Ω', ['ω', 'Ω'], ['ÏŽ', 'Î']]
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/translit-latin4.pl b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-latin4.pl
new file mode 100755
index 00000000000..94c9c905d34
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-latin4.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$variant = "ISO transliteration, for western languages";
+$prefix = "el";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+ [], # c (many)
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['º','ª']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+ [], # j (many)
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ò','Ò']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+ [], # v (many)
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/translit-tex.xdy b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-tex.xdy
new file mode 100644
index 00000000000..b7c36a03090
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-tex.xdy
@@ -0,0 +1,230 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Greek
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "D" :after "B" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "K" :after "I" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "R" :after "P" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "X" :after "U" :prefixes ("å"))
+(define-letter-group "Z" :after "X" :prefixes ("è"))
+
+(define-rule-set "el-alphabetize"
+
+ :rules (("\=e" "©" :string)
+ ("\=E" "©" :string)
+ ("\=O" "É" :string)
+ ("\=o" "É" :string)
+ ("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("D" "¢" :string)
+ ("d" "¢" :string)
+ ("E" "©" :string)
+ ("e" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("R" "Î" :string)
+ ("r" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("u" "ß" :string)
+ ("U" "ß" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ))
+
+(define-rule-set "el-resolve-diacritics"
+
+ :rules (("\=O" "£" :string)
+ ("\=e" "£" :string)
+ ("\=o" "£" :string)
+ ("\=E" "£" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("X" "¢" :string)
+ ("Z" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("d" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("A" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("x" "¢" :string)
+ ("z" "¢" :string)
+ ("B" "¢" :string)
+ ))
+
+(define-rule-set "el-resolve-case"
+
+ :rules (("\=O" "8" :string)
+ ("\=E" "8" :string)
+ ("\=e" "9" :string)
+ ("\=o" "9" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("X" "8" :string)
+ ("Z" "8" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("d" "9" :string)
+ ("e" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("a" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("k" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("x" "9" :string)
+ ("z" "9" :string)
+ ("b" "9" :string)
+ ))
+
+(define-rule-set "el-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "el-resolve-special"
+
+ :rules (("\=O" "¤" :string)
+ ("\=e" "¤" :string)
+ ("\=o" "¤" :string)
+ ("\=E" "¤" :string)
+ ("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("X" "¤" :string)
+ ("Z" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("A" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("B" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("x" "¤" :string)
+ ("z" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/translit-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-utf8.pl.in
new file mode 100644
index 00000000000..b1f5b8478fe
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/translit-utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$variant = "ISO transliteration, for western languages";
+$prefix = "el";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+ [], # c (many)
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['Ä“','Ä’']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+ [], # j (many)
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['Å','ÅŒ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+ [], # v (many)
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/greek/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/greek/utf8.pl.in
new file mode 100644
index 00000000000..c1624c5eeea
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/greek/utf8.pl.in
@@ -0,0 +1,47 @@
+#!/usr/bin/perl
+
+$language = "Greek";
+$prefix = "el";
+$script = "greek";
+
+$alphabet = [
+['Α', ['α', 'Α'], ['ά','Ά']],
+['Β', ['β', 'Β']],
+['Γ', ['γ', 'Γ']],
+['Δ', ['δ', 'Δ']],
+['Ε', ['ε', 'Ε'], ['έ','Έ']],
+['Ζ', ['ζ', 'Ζ']],
+ [],
+['Η', ['η', 'Η'], ['ή','Ή']],
+['Θ', ['θ', 'Θ']],
+['Ι', ['ι', 'Ι'], ['ί','Ί'], ['ÏŠ', 'Ϊ'], ['Î']],
+ [],
+['Κ', ['κ', 'Κ']],
+['Λ', ['λ', 'Λ']],
+['Μ', ['μ', 'Μ']],
+['Î', ['ν', 'Î']],
+['Ξ', ['ξ', 'Ξ']],
+['Ο', ['ο', 'Ο'], ['ό','Ό']],
+['Π', ['π', 'Π']],
+ [],
+['Ρ', ['Ï', 'Ρ']],
+['Σ', ['σ', 'Σ'], ['ς']],
+['Τ', ['τ', 'Τ']],
+['Î¥', ['Ï…', 'Î¥'], ['Ï','ÎŽ'], ['Ï‹', 'Ϋ'], ['ΰ']],
+['Φ', ['φ', 'Φ']],
+['Χ', ['χ', 'Χ']],
+['Ψ', ['ψ', 'Ψ']],
+['Ω', ['ω', 'Ω'], ['ÏŽ', 'Î']]
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+#@letter_group_names = ('Α','Β','Γ','Δ','Ε','Ζ','Η','Θ','Ι','Κ','Λ','Μ',
+#'Î','Ξ','Ο','Π','Ρ','Σ','Τ','Î¥','Φ','Χ','Ψ','Ω');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.am
new file mode 100644
index 00000000000..69f1cebd123
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.am
@@ -0,0 +1,29 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = northrussian-utf8.pl.in
+
+CLEANFILES = \
+ northrussian-utf8.raw \
+ northrussian-utf8-doc.tex
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.in
new file mode 100644
index 00000000000..a68bc19c89e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/gypsy/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/gypsy
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = northrussian-utf8.pl.in
+CLEANFILES = \
+ northrussian-utf8.raw \
+ northrussian-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/gypsy/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/gypsy/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/gypsy/northrussian-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/gypsy/northrussian-utf8.pl.in
new file mode 100644
index 00000000000..ce5d1d3871c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/gypsy/northrussian-utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Gypsy";
+$variant = "North-Russian dialect";
+$prefix = "g1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['Dz', ['dz','Dz','DZ']],
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+['Γ', ['γ','Γ']],
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã']],
+['I̯', ['i̯','I̯']],
+ [], # i with circumflex (kurdish, romanian)
+['Ã', ['ï','Ã'],['ḯ','Ḯ']],
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+['Kh', ['kh','Kh','KH']],
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+['X', ['x','X']],
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+['Ph', ['ph','Ph','PH']],
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+['Th', ['th','Th','TH']],
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+ [], # x (many)
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', 'ˈ', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.am
new file mode 100644
index 00000000000..335df3f4f71
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = utf8.pl.in
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.in
new file mode 100644
index 00000000000..1c860174b05
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hausa/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/hausa
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = utf8.pl.in
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/hausa/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/hausa/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hausa/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/hausa/utf8.pl.in
new file mode 100644
index 00000000000..333fd9a1d04
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hausa/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Hausa";
+$prefix = "ha";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['Ä','Ä€'],['a̱','A̱'],['Ä̱','Ā̱'],['à','À'],['ÄÌ€','Ā̀']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+['Æ', ['É“','Æ']],
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+['ÆŠ', ['É—','ÆŠ']],
+ [], # eth (icelandic)
+['E', ['e','E'],['ē','Ē'],['e̱','E̱'],['ē̱','Ē̱'],['è','È'],['ḕ','Ḕ']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ī','Ī'],['i̱','I̱'],['ī̱','Ī̱'],['ì','Ì'],['ī̀','Ī̀']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+['Ƙ', ['ƙ','Ƙ']],
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['Å','ÅŒ'],['o̱','O̱'],['Å̱','Ō̱'],['ò','Ã’'],['ÅÌ€','Ṑ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ū','Ū'],['u̱','U̱'],['ū̱','Ū̱'],['ù','Ù'],['ū̀','Ū̀']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+['ʼY', ['ʼy','ʼY']],
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', 'ʼ', '-', '\'', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.am
new file mode 100644
index 00000000000..69b552b0559
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = iso88598.pl utf8.pl.in
+
+CLEANFILES = \
+ iso88598.raw \
+ iso88598-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.in
new file mode 100644
index 00000000000..ae56caa54de
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hebrew/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/hebrew
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = iso88598.pl utf8.pl.in
+CLEANFILES = \
+ iso88598.raw \
+ iso88598-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/hebrew/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/hebrew/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hebrew/iso88598.pl b/Build/source/utils/xindy/make-rules/alphabets/hebrew/iso88598.pl
new file mode 100755
index 00000000000..a9d66cb9ef1
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hebrew/iso88598.pl
@@ -0,0 +1,45 @@
+#!/usr/bin/perl
+
+$language = "Hebrew";
+$prefix = "iw";
+$script = "hebrew";
+
+$alphabet = [
+['à', ['à'] ],
+['á', ['á'] ],
+['â', ['â'] ],
+['ã', ['ã'] ],
+['ä', ['ä'] ],
+['å', ['å'] ],
+['æ', ['æ'] ],
+['ç', ['ç']],
+['è', ['è'] ],
+['é', ['é'] ],
+['ë', ['ë','ê'] ],
+['ì', ['ì'] ],
+['î', ['î','í'] ],
+['ð', ['ð','ï'] ],
+['ñ', ['ñ'] ],
+['ò', ['ò']],
+['ô', ['ô','ó'] ],
+['ö', ['ö','õ'] ],
+['÷', ['÷'] ],
+['ø', ['ø'] ],
+['ù', ['ù'] ],
+['ú', ['ú'] ]
+];
+
+$ligatures = [
+
+
+
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', '-');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hebrew/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/hebrew/utf8.pl.in
new file mode 100644
index 00000000000..cfe814b18bc
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hebrew/utf8.pl.in
@@ -0,0 +1,45 @@
+#!/usr/bin/perl
+
+$language = "Hebrew";
+$prefix = "iw";
+$script = "hebrew";
+
+$alphabet = [
+['×', ['×'] @u{,['אַ'],['×Ö¶'],['אּ'],['אָ'],['×Ö»']}],
+['ב', ['ב'] @u{,['בַ'],['בָ'],['בּ'],['בֵּ']}],
+['ג', ['ג'] @u{,['גּ']}],
+['ד', ['ד'] @u{,['דּ']}],
+['ה', ['ה'] @u{,['הּ']}],
+['ו', ['ו'] @u{,['וּ']}],
+['ז', ['ז'] @u{,['זּ']}],
+['×—', ['×—']],
+['ט', ['ט'] @u{,['טּ']}],
+['י', ['י'] @u{,['יּ']}],
+['כ', ['כ','ך'] @u{,['כּ','ךּ']}],
+['ל', ['ל'] @u{,['לּ']}],
+['מ', ['מ','×'] @u{,['מּ']}],
+['נ', ['נ','ן'] @u{,['נּ']}],
+['ס', ['ס'] @u{,['ï­']}],
+['×¢', ['×¢']],
+['פ', ['פ','ף'] @u{,['פּ','ףּ']}],
+['צ', ['צ','ץ'] @u{,['צּ']}],
+['ק', ['ק'] @u{,['קּ']}],
+['ר', ['ר'] @u{,['רּ']}],
+['ש', ['ש'] @u{,['שׂ'],['שׁ'],['שּׁ']}],
+['ת', ['ת'] @u{,['תּ']}]
+];
+
+$ligatures = [
+@u{[['װ'], 'after', [['ו','ו']]],}
+@u{[['ױ'], 'after', [['ו','י']]],}
+@u{[['ײ'], 'after', [['י','י']]],}
+];
+
+@special = ('?', '!', '.', ';', '·', 'letters', @u{'וֹ',} '-');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.in
new file mode 100644
index 00000000000..4f066561db1
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hungarian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/hungarian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/hungarian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/hungarian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hungarian/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/hungarian/cp1250.pl
new file mode 100755
index 00000000000..acf1c224984
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hungarian/cp1250.pl
@@ -0,0 +1,147 @@
+#!/usr/bin/perl
+
+# TODO: It seems that "ssz" has to be sorted like "szs" (?)
+# I don't know why, I don't know how...
+
+$language = "Hungarian";
+$prefix = "hu";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+['Cs', ['cs','Cs','CS']],
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['D', ['dz','Dz','DZ']],
+['D', ['dzs','Dzs','DZs','DZS']],
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+['G', ['gy','Gy','GY']],
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['L', ['ly','Ly','LY']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+['Ny', ['ny','Ny','NY']],
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö'],['õ','Õ']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+['Sz', ['sz','Sz','SZ']],
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+['T', ['ty','Ty','TY']],
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü'],['û','Û']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+['Zs', ['zs','Zs','ZS']],
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hungarian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/hungarian/latin2.pl
new file mode 100755
index 00000000000..acf1c224984
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hungarian/latin2.pl
@@ -0,0 +1,147 @@
+#!/usr/bin/perl
+
+# TODO: It seems that "ssz" has to be sorted like "szs" (?)
+# I don't know why, I don't know how...
+
+$language = "Hungarian";
+$prefix = "hu";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+['Cs', ['cs','Cs','CS']],
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['D', ['dz','Dz','DZ']],
+['D', ['dzs','Dzs','DZs','DZS']],
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+['G', ['gy','Gy','GY']],
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['L', ['ly','Ly','LY']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+['Ny', ['ny','Ny','NY']],
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö'],['õ','Õ']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+['Sz', ['sz','Sz','SZ']],
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+['T', ['ty','Ty','TY']],
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü'],['û','Û']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+['Zs', ['zs','Zs','ZS']],
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/hungarian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/hungarian/utf8.pl.in
new file mode 100644
index 00000000000..0cc0f28681e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/hungarian/utf8.pl.in
@@ -0,0 +1,147 @@
+#!/usr/bin/perl
+
+# TODO: It seems that "ssz" has to be sorted like "szs" (?)
+# I don't know why, I don't know how...
+
+$language = "Hungarian";
+$prefix = "hu";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã']@u{,['à','À']}],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+['Cs', ['cs','Cs','CS']],
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+['D', ['dz','Dz','DZ']],
+['D', ['dzs','Dzs','DZs','DZS']],
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+['G', ['gy','Gy','GY']],
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+['L', ['ly','Ly','LY']],
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+['Ny', ['ny','Ny','NY']],
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö'],['Å‘','Å']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+['Sz', ['sz','Sz','SZ']],
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+['T', ['ty','Ty','TY']],
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü'],['ű','Ű']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+['Zs', ['zs','Zs','ZS']],
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.am
new file mode 100644
index 00000000000..d82e1ebb615
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.am
@@ -0,0 +1,37 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.in
new file mode 100644
index 00000000000..40db07d0c85
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/icelandic
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/icelandic/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/icelandic/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/icelandic/cp1252.pl
new file mode 100755
index 00000000000..dd0bf0d4377
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Icelandic";
+$prefix = "is";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+['ð', ['ð','Ð']],
+['E', ['e','E'],['ë','Ë'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+ [], # wynn (english)
+['Æ', ['æ','Æ'],['œ','Œ'],['ä','Ä']],
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+['Ö', ['ö','Ö'],['ø','Ø']],
+['Å', ['å','Å']],
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin1.xdy
new file mode 100644
index 00000000000..83828fa0e82
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin1.xdy
@@ -0,0 +1,320 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Icelandic
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "D" :after "B" :prefixes ("¢"))
+(define-letter-group "ð" :after "D" :prefixes ("¨"))
+(define-letter-group "E" :after "ð" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "R" :after "P" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "X" :after "V" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+(define-letter-group "Þ" :after "Z" :prefixes ("î"))
+(define-letter-group "Æ" :after "Þ" :prefixes ("ï"))
+
+(define-rule-set "is-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("Á" "–" :string)
+ ("a" "–" :string)
+ ("á" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("d" "¢" :string)
+ ("D" "¢" :string)
+ ("Ð" "¨" :string)
+ ("ð" "¨" :string)
+ ("e" "©" :string)
+ ("E" "©" :string)
+ ("é" "©" :string)
+ ("É" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("Í" "·" :string)
+ ("i" "·" :string)
+ ("í" "·" :string)
+ ("I" "·" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("k" "»" :string)
+ ("K" "»" :string)
+ ("l" "½" :string)
+ ("L" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("n" "Ã" :string)
+ ("N" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("Ó" "É" :string)
+ ("ó" "É" :string)
+ ("p" "Ì" :string)
+ ("P" "Ì" :string)
+ ("r" "Î" :string)
+ ("R" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("ß" "ÒÒ" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("ú" "ß" :string)
+ ("U" "ß" :string)
+ ("Ú" "ß" :string)
+ ("u" "ß" :string)
+ ("V" "ã" :string)
+ ("v" "ã" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("Ý" "ç" :string)
+ ("y" "ç" :string)
+ ("Y" "ç" :string)
+ ("ý" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ("Þ" "î" :string)
+ ("þ" "î" :string)
+ ("Æ" "ï" :string)
+ ("æ" "ï" :string)
+ ))
+
+(define-rule-set "is-resolve-diacritics"
+
+ :rules (("X" "¢" :string)
+ ("A" "¢" :string)
+ ("B" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("Æ" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("Y" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("Z" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("Ð" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("Þ" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("d" "¢" :string)
+ ("e" "¢" :string)
+ ("æ" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("ð" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("v" "¢" :string)
+ ("x" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ("þ" "¢" :string)
+ ("Í" "£" :string)
+ ("Ó" "£" :string)
+ ("ó" "£" :string)
+ ("Ú" "£" :string)
+ ("Ý" "£" :string)
+ ("í" "£" :string)
+ ("á" "£" :string)
+ ("Á" "£" :string)
+ ("É" "£" :string)
+ ("ú" "£" :string)
+ ("ý" "£" :string)
+ ("é" "£" :string)
+ ("ß" "ÿ" :string)
+ ))
+
+(define-rule-set "is-resolve-case"
+
+ :rules (("Á" "8" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("Æ" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("É" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("Í" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("Ð" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("Ó" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("X" "8" :string)
+ ("Y" "8" :string)
+ ("Z" "8" :string)
+ ("Ú" "8" :string)
+ ("Ý" "8" :string)
+ ("Þ" "8" :string)
+ ("á" "9" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("d" "9" :string)
+ ("e" "9" :string)
+ ("æ" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("é" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("í" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("ð" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("ó" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("v" "9" :string)
+ ("x" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("ú" "9" :string)
+ ("ý" "9" :string)
+ ("þ" "9" :string)
+ ("ß" "99" :string)
+ ))
+
+(define-rule-set "is-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "is-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("ý" "¤" :string)
+ ("þ" "¤" :string)
+ ("Á" "¤" :string)
+ ("A" "¤" :string)
+ ("B" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("Æ" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("É" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("Í" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("Ð" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("Ó" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("V" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("Ú" "¤" :string)
+ ("Ý" "¤" :string)
+ ("Þ" "¤" :string)
+ ("á" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("æ" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("é" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("í" "¤" :string)
+ ("n" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("ð" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("ó" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("v" "¤" :string)
+ ("x" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("ú" "¤" :string)
+ ("ß" "¤¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin9.pl
new file mode 100755
index 00000000000..f0712f260e5
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Icelandic";
+$prefix = "is";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+['ð', ['ð','Ð']],
+['E', ['e','E'],['ë','Ë'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+ [], # wynn (english)
+['Æ', ['æ','Æ'],['½','¼'],['ä','Ä']],
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+['Ö', ['ö','Ö'],['ø','Ø']],
+['Å', ['å','Å']],
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/icelandic/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/icelandic/utf8.pl.in
new file mode 100644
index 00000000000..e5dddcc2d79
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/icelandic/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Icelandic";
+$prefix = "is";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã']@u{,['Ç«Ì','ǪÌ']}],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+['ð', ['ð','Ã']],
+['E', ['e','E']@u{,['ę','Ę']},['ë','Ë'],['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ü','Ü'],['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ã']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+['Þ', ['þ','Þ']],
+ [], # wynn (english)
+['Æ', ['æ','Æ']@u{,['ǽ','Ǽ'],['Ä™Ì','ĘÌ'],['Ç¿','Ǿ']},['Å“','Å’'],['ä','Ä']],
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+['Ö', ['ö','Ö'],['ø','Ø']@u{,['ǫ','Ǫ']}],
+['Ã…', ['Ã¥','Ã…']],
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.am
new file mode 100644
index 00000000000..8e0fcda24ed
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin1.pl utf8.pl.in
+
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.in
new file mode 100644
index 00000000000..d5df1526870
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/italian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/italian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin1.pl utf8.pl.in
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/italian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/italian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/italian/latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/italian/latin1.pl
new file mode 100755
index 00000000000..cf641534121
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/italian/latin1.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Italian";
+$prefix = "it";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],[],['é','É'],['è','È']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],['ó','Ó'],['ò','Ò']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/italian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/italian/utf8.pl.in
new file mode 100644
index 00000000000..110c18e304a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/italian/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Italian";
+$prefix = "it";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],[],[],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],[],['é','É'],['è','È']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã'],['ì','ÃŒ'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],[],['ó','Ó'],['ò','Ò']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zs (hungarian)
+ [], # zh (albanian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.am
new file mode 100644
index 00000000000..306bbcfa66d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.am
@@ -0,0 +1,33 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ utf8.pl.in \
+ translit-ascii.pl
+
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.in
new file mode 100644
index 00000000000..7556bc74f68
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/klingon/Makefile.in
@@ -0,0 +1,282 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/klingon
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ utf8.pl.in \
+ translit-ascii.pl
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/klingon/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/klingon/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/klingon/translit-ascii.pl b/Build/source/utils/xindy/make-rules/alphabets/klingon/translit-ascii.pl
new file mode 100755
index 00000000000..f7537e1e8a2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/klingon/translit-ascii.pl
@@ -0,0 +1,45 @@
+#!/usr/bin/perl
+
+$language = "Klingon";
+$variant = "Standard Okrand Latin transliteration";
+$prefix = "k1";
+$script = "latin";
+
+$alphabet = [
+['a', ['a']],
+['b', ['b']],
+['ch', ['ch']],
+['D', ['D']],
+['e', ['e']],
+['gh', ['gh']],
+['H', ['H']],
+['I', ['I']],
+['j', ['j']],
+['l', ['l']],
+['m', ['m']],
+['n', ['n']],
+['ng', ['ng']],
+['o', ['o']],
+['p', ['p']],
+['q', ['q']],
+['Q', ['Q']],
+['r', ['r']],
+['S', ['S']],
+['t', ['t']],
+['tlh', ['tlh']],
+['u', ['u']],
+['v', ['v']],
+['w', ['w']],
+['y', ['y']],
+['\'', ['\'']]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/klingon/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/klingon/utf8.pl.in
new file mode 100644
index 00000000000..110f72cadd4
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/klingon/utf8.pl.in
@@ -0,0 +1,41 @@
+#!/usr/bin/perl
+
+$language = "Klingon";
+$prefix = "k1";
+$script = "klingon";
+
+$alphabet = [
+['ï£', ['ï£']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['ï£', ['ï£']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']],
+['', ['']]
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '{', '}');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.am
new file mode 100644
index 00000000000..e0fa0e0b853
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.am
@@ -0,0 +1,38 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ bedirxan-latin5.pl bedirxan-utf8.pl.in \
+ turkish-i-latin5.pl turkish-i-utf8.pl.in \
+ latin5.xdy
+
+CLEANFILES = \
+ bedirxan-latin5.raw \
+ bedirxan-latin5-doc.tex \
+ bedirxan-utf8.raw \
+ bedirxan-utf8-doc.tex \
+ turkish-i-latin5.raw \
+ turkish-i-latin5-doc.tex \
+ turkish-i-utf8.raw \
+ turkish-i-utf8-doc.tex
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.in
new file mode 100644
index 00000000000..e64cbfbd9f5
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/Makefile.in
@@ -0,0 +1,289 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/kurdish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ bedirxan-latin5.pl bedirxan-utf8.pl.in \
+ turkish-i-latin5.pl turkish-i-utf8.pl.in \
+ latin5.xdy
+
+CLEANFILES = \
+ bedirxan-latin5.raw \
+ bedirxan-latin5-doc.tex \
+ bedirxan-utf8.raw \
+ bedirxan-utf8-doc.tex \
+ turkish-i-latin5.raw \
+ turkish-i-latin5-doc.tex \
+ turkish-i-utf8.raw \
+ turkish-i-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/kurdish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/kurdish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl b/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl
new file mode 100755
index 00000000000..82e95dc5146
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-latin5.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Bedirxan";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['Ê', ['ê','Ê']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['Î', ['î','Î']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Þ', ['þ','Þ']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['Û', ['û','Û']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-utf8.pl.in
new file mode 100644
index 00000000000..7b7794d74e6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/bedirxan-utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Bedirxan";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['Ê', ['ê','Ê']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['Î', ['î','Î']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Åž', ['ÅŸ','Åž']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['Û', ['û','Û']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/latin5.xdy b/Build/source/utils/xindy/make-rules/alphabets/kurdish/latin5.xdy
new file mode 100644
index 00000000000..2475b937df0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/latin5.xdy
@@ -0,0 +1,304 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Kurdish
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "Ç" :after "C" :prefixes ("¡"))
+(define-letter-group "D" :after "Ç" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "Ê" :after "E" :prefixes ("«"))
+(define-letter-group "F" :after "Ê" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "Î" :after "I" :prefixes ("¸"))
+(define-letter-group "J" :after "Î" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "R" :after "P" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "Þ" :after "S" :prefixes ("Ù"))
+(define-letter-group "T" :after "Þ" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "Û" :after "U" :prefixes ("á"))
+(define-letter-group "V" :after "Û" :prefixes ("ã"))
+(define-letter-group "W" :after "V" :prefixes ("ä"))
+(define-letter-group "X" :after "W" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+
+(define-rule-set "ku-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("Ç" "¡" :string)
+ ("ç" "¡" :string)
+ ("d" "¢" :string)
+ ("D" "¢" :string)
+ ("e" "©" :string)
+ ("E" "©" :string)
+ ("Ê" "«" :string)
+ ("ê" "«" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("h" "³" :string)
+ ("H" "³" :string)
+ ("i" "·" :string)
+ ("I" "·" :string)
+ ("Î" "¸" :string)
+ ("î" "¸" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("k" "»" :string)
+ ("K" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("m" "Â" :string)
+ ("M" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("R" "Î" :string)
+ ("r" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("Þ" "Ù" :string)
+ ("þ" "Ù" :string)
+ ("t" "Ú" :string)
+ ("T" "Ú" :string)
+ ("U" "ß" :string)
+ ("u" "ß" :string)
+ ("Û" "á" :string)
+ ("û" "á" :string)
+ ("v" "ã" :string)
+ ("V" "ã" :string)
+ ("w" "ä" :string)
+ ("W" "ä" :string)
+ ("x" "å" :string)
+ ("X" "å" :string)
+ ("y" "ç" :string)
+ ("Y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ))
+
+(define-rule-set "ku-resolve-diacritics"
+
+ :rules (("A" "¢" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("Ç" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("Ê" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("Î" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("W" "¢" :string)
+ ("X" "¢" :string)
+ ("Y" "¢" :string)
+ ("Z" "¢" :string)
+ ("Û" "¢" :string)
+ ("Þ" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("ç" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("ê" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("î" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("v" "¢" :string)
+ ("w" "¢" :string)
+ ("x" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ("û" "¢" :string)
+ ("þ" "¢" :string)
+ ))
+
+(define-rule-set "ku-resolve-case"
+
+ :rules (("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("Ç" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("Ê" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("Î" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("W" "8" :string)
+ ("X" "8" :string)
+ ("Y" "8" :string)
+ ("Z" "8" :string)
+ ("Û" "8" :string)
+ ("Þ" "8" :string)
+ ("a" "9" :string)
+ ("b" "9" :string)
+ ("c" "9" :string)
+ ("d" "9" :string)
+ ("e" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("ç" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("ê" "9" :string)
+ ("k" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("î" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("v" "9" :string)
+ ("w" "9" :string)
+ ("x" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("û" "9" :string)
+ ("þ" "9" :string)
+ ))
+
+(define-rule-set "ku-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "ku-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("Ç" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("Ê" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("Î" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("V" "¤" :string)
+ ("W" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("Û" "¤" :string)
+ ("Þ" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("ç" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("ê" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("î" "¤" :string)
+ ("A" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("v" "¤" :string)
+ ("w" "¤" :string)
+ ("x" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("û" "¤" :string)
+ ("þ" "¤" :string)
+ ("B" "¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl b/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl
new file mode 100755
index 00000000000..612d0d6a42b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-latin5.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Turkish i";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['Ê', ['ê','Ê']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['ý','I']],
+['Ý', ['i','Ý']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Þ', ['þ','Þ']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['Û', ['û','Û']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-utf8.pl.in
new file mode 100644
index 00000000000..7754e117b33
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/kurdish/turkish-i-utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Kurdish";
+$variant = "Turkish i";
+$prefix = "ku";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+['Ê', ['ê','Ê']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['ı','I']],
+['Ä°', ['i','Ä°']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Åž', ['ÅŸ','Åž']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+['Û', ['û','Û']],
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.am
new file mode 100644
index 00000000000..335df3f4f71
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = utf8.pl.in
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.in
new file mode 100644
index 00000000000..88869d2ecb3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latin/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/latin
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = utf8.pl.in
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/latin/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/latin/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latin/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/latin/utf8.pl.in
new file mode 100644
index 00000000000..516dde99823
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latin/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Latin";
+$prefix = "la";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['Ä','Ä€'],['ă','Ä‚']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['Ä“','Ä’'],['Ä•','Ä”']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ī','Ī'],['ĭ','Ĭ']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['Å','ÅŒ'],['Å','ÅŽ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ū','Ū'],['ŭ','Ŭ']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.am
new file mode 100644
index 00000000000..430a5d77d83
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin4.pl utf8.pl.in
+
+CLEANFILES = \
+ latin4.raw \
+ latin4-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.in
new file mode 100644
index 00000000000..81393c5f5d3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latvian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/latvian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin4.pl utf8.pl.in
+CLEANFILES = \
+ latin4.raw \
+ latin4-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/latvian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/latvian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latvian/latin4.pl b/Build/source/utils/xindy/make-rules/alphabets/latvian/latin4.pl
new file mode 100755
index 00000000000..ae2305ffd0d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latvian/latin4.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Latvian";
+$prefix = "lv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['à','À']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['È', ['è','È']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['º','ª']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+['«', ['»','«']],
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['y','Y'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+['Ó', ['ó','Ó']],
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+['¦', ['¶','¦']],
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+['Ñ', ['ñ','Ñ']],
+['O', ['o','O'],['ò','Ò']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+['£', ['³','£']],
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['þ','Þ']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/latvian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/latvian/utf8.pl.in
new file mode 100644
index 00000000000..d6b18eef8fd
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/latvian/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Latvian";
+$prefix = "lv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['Ä','Ä€']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['Ä“','Ä’']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+['Ä¢', ['Ä£','Ä¢']],
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['y','Y'],['ī','Ī']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+['Ķ', ['ķ','Ķ']],
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+['Ļ', ['ļ','Ļ']],
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+['Ņ', ['ņ','Ņ']],
+['O', ['o','O'],['Å','ÅŒ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+['Å–', ['Å—','Å–']],
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ū','Ū']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.am
new file mode 100644
index 00000000000..430a5d77d83
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin4.pl utf8.pl.in
+
+CLEANFILES = \
+ latin4.raw \
+ latin4-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.in
new file mode 100644
index 00000000000..08e10bd05d0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/lithuanian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin4.pl utf8.pl.in
+CLEANFILES = \
+ latin4.raw \
+ latin4-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/lithuanian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/lithuanian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lithuanian/latin4.pl b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/latin4.pl
new file mode 100755
index 00000000000..2fcd174ada9
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/latin4.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Lithuanian";
+$prefix = "lt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['±','¡']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ch','Ch','CH']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['ê','Ê'],['ì','Ì']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ç','Ç'],['y','Y']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ù','Ù'],['þ','Þ']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lithuanian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/utf8.pl.in
new file mode 100644
index 00000000000..1acab74a883
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lithuanian/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Lithuanian";
+$prefix = "lt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['Ä…','Ä„']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ch','Ch','CH']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['ę','Ę'],['ė','Ė']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['į','Į'],['y','Y']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ų','Ų'],['ū','Ū']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+ [], # y (many)
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.in
new file mode 100644
index 00000000000..6ce03a8cb1b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/lower-sorbian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/lower-sorbian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/lower-sorbian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl
new file mode 100755
index 00000000000..3710d5cd0d3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Lower Sorbian";
+$prefix = "s1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Ì', ['ì','Ì']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['£', ['³','£']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+['À', ['à','À']],
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+['Œ', ['œ','Œ']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+['', ['Ÿ','']],
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/latin2.pl
new file mode 100755
index 00000000000..e4ed97dec5e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Lower Sorbian";
+$prefix = "s1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Ì', ['ì','Ì']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['£', ['³','£']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+['À', ['à','À']],
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+['¦', ['¶','¦']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+['¬', ['¼','¬']],
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/utf8.pl.in
new file mode 100644
index 00000000000..da20de078b7
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/lower-sorbian/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Lower Sorbian";
+$prefix = "s1";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+['Ć', ['ć','Ć']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Äš', ['Ä›','Äš']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['Å', ['Å‚','Å']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ń', ['ń','Ń']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+['Å”', ['Å•','Å”']],
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+['Åš', ['Å›','Åš']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+['Ź', ['ź','Ź']],
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.am
new file mode 100644
index 00000000000..6327f7b6dde
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.am
@@ -0,0 +1,36 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.in
new file mode 100644
index 00000000000..c1930c60667
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/Makefile.in
@@ -0,0 +1,285 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/macedonian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/macedonian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/macedonian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/macedonian/cp1251.pl
new file mode 100755
index 00000000000..a48acc17123
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+ [], # ghe with upturn (ukrainian)
+['Ä', ['ä','Ä']],
+ [], # dje (serbian)
+['', ['ƒ','']],
+['Å', ['å','Å']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+['½', ['¾','½']],
+['È', ['è','È']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['£', ['¼','£']],
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+['Š', ['š','Š']],
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+['Œ', ['œ','Œ']],
+['Î', ['î','Î']],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð']],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+ [], # tshe (serbian)
+['', ['','']],
+['Ó', ['ó','Ó']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+['', ['Ÿ','']],
+['Ø', ['ø','Ø']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/iso88595.pl b/Build/source/utils/xindy/make-rules/alphabets/macedonian/iso88595.pl
new file mode 100755
index 00000000000..b2c3ebea89c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['°', ['Ð','°']],
+['±', ['Ñ','±']],
+['²', ['Ò','²']],
+['³', ['Ó','³']],
+ [], # ghe with upturn (ukrainian)
+['´', ['Ô','´']],
+ [], # dje (serbian)
+['£', ['ó','£']],
+['µ', ['Õ','µ']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['¶', ['Ö','¶']],
+['·', ['×','·']],
+['¥', ['õ','¥']],
+['¸', ['Ø','¸']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['¨', ['ø','¨']],
+['º', ['Ú','º']],
+['»', ['Û','»']],
+['©', ['ù','©']],
+['¼', ['Ü','¼']],
+['½', ['Ý','½']],
+['ª', ['ú','ª']],
+['¾', ['Þ','¾']],
+ [], # barred o (mongolian)
+['¿', ['ß','¿']],
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+ [], # tshe (serbian)
+['¬', ['ü','¬']],
+['Ã', ['ã','Ã']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ä', ['ä','Ä']],
+['Å', ['å','Å']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+['¯', ['ÿ','¯']],
+['È', ['è','È']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/isoir111.pl b/Build/source/utils/xindy/make-rules/alphabets/macedonian/isoir111.pl
new file mode 100755
index 00000000000..3740cf02c30
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á']],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+ [], # ghe with upturn (ukrainian)
+['ä', ['Ä','ä']],
+ [], # dje (serbian)
+['²', ['¢','²']],
+['å', ['Å','å']],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+['µ', ['¥','µ']],
+['é', ['É','é']],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['¸', ['¨','¸']],
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+['¹', ['©','¹']],
+['í', ['Í','í']],
+['î', ['Î','î']],
+['º', ['ª','º']],
+['ï', ['Ï','ï']],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò']],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+ [], # tshe (serbian)
+['¼', ['¬','¼']],
+['õ', ['Õ','õ']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+['¿', ['¯','¿']],
+['û', ['Û','û']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/macedonian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/macedonian/utf8.pl.in
new file mode 100644
index 00000000000..0c228304caa
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/macedonian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Macedonian";
+$prefix = "mk";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð']],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+ [], # dje (serbian)
+['Ѓ', ['ѓ','Ѓ']],
+['Е', ['е','Е']@u{,['Ñ','Ѐ']}],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+['Ð…', ['Ñ•','Ð…']],
+['И', ['и','И']@u{,['Ñ','Ð']}],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['Ј', ['ј','Ј']],
+['К', ['к','К']],
+['Л', ['л','Л']],
+['Љ', ['љ','Љ']],
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+['Њ', ['њ','Њ']],
+['О', ['о','О']],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+['Ќ', ['ќ','Ќ']],
+['У', ['у','У']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+['Ð', ['ÑŸ','Ð']],
+['Ш', ['ш','Ш']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/make-rules.pl b/Build/source/utils/xindy/make-rules/alphabets/make-rules.pl
new file mode 100755
index 00000000000..a2b5040d5ed
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/make-rules.pl
@@ -0,0 +1,265 @@
+#!/usr/bin/perl
+
+open XDY,">$ARGV[0].xdy";
+open DOC,">$ARGV[0]-doc.tex";
+open TEST,">$ARGV[0].raw";
+open TESTXDY,">$ARGV[0]-test.xdy";
+
+print XDY ";; Rules for xindy; generated by make-rules.pl\n";
+print XDY ";; language: $language\n\n";
+
+if ($prefix) {
+ $prefix = $prefix . '-';
+}
+
+print TESTXDY "(require \"lang/$ARGV[0].xdy\")\n";
+print TESTXDY "(define-sort-rule-orientations (forward backward forward forward))\n";
+print TESTXDY "(use-rule-set :run 0\n";
+print TESTXDY " :rule-set (\"".$prefix."alphabetize\" \"".$prefix."ignore-special\"))\n";
+print TESTXDY "(use-rule-set :run 1\n";
+print TESTXDY " :rule-set (\"".$prefix."resolve-diacritics\" \"".$prefix."ignore-special\"))\n";
+print TESTXDY "(use-rule-set :run 2\n";
+print TESTXDY " :rule-set (\"".$prefix."resolve-case\" \"".$prefix."ignore-special\"))\n";
+print TESTXDY "(use-rule-set :run 3\n";
+print TESTXDY " :rule-set (\"".$prefix."resolve-special\"))\n";
+close TESTXDY;
+system("cat test.xdy >> $ARGV[0]-test.xdy");
+
+$begin = 128;
+# $begin = 97 if ($script eq "cyrillic");
+# $begin = 150 if ($script eq "latin");
+# $begin = 65 if ($script eq "greek");
+
+if (!$begin) {
+ $begin = 65;
+}
+
+print "Alphabet has " . @{$alphabet} . " elements.\n";
+
+for ($i = 0; $i < @{$alphabet}; $i++) {
+ if (defined($alphabet->[$i][0])) {
+ $letter = $alphabet->[$i][0];
+ $lout = $letter;
+ $lout =~ s/\~/~~/g;
+ $lout =~ s/\"/~\"/g;
+ $token = chr($i+$begin);
+ $token =~ s/\~/~~/g;
+ $token =~ s/\"/~\"/g;
+ if ($after ne $letter) {
+ print XDY "\"))\n" if ($i);
+ print XDY "(define-letter-group \"$lout\"";
+ print XDY " :after \"$after\"" if ($i);
+ print XDY " :prefixes (\"";
+ } else {
+ print XDY "\" \"";
+ }
+ print XDY "$token";
+ $after = $letter;
+ }
+}
+
+print XDY "\"))\n\n";
+
+$ref = \$i;
+$offset = $begin;
+$f = 1;
+make_tokens();
+
+# print test raw file
+# alphabet
+ $p = 1;
+ foreach $letter (keys %tokens) {
+ print TEST "(indexentry :key (\"$letter\") :locref \"$p\")\n";
+ $p++;
+ }
+# end
+
+process_ligatures();
+
+print_tokens($prefix . "alphabetize");
+
+$ref = \$j;
+$offset = 161;
+$f = 1;
+make_tokens();
+
+for ($i = 0; $i < @{$ligatures}; $i++) {
+ if ($ligatures->[$i][1] eq "before") {
+ $token = chr(161);
+ } else {
+ $token = chr(255);
+ }
+ foreach $ligature_variant (@{$ligatures->[$i][0]}) {
+ $tokens{$ligature_variant} = $token;
+ }
+}
+
+print_tokens($prefix . "resolve-diacritics");
+
+$ref = \$k;
+$offset = 48;
+$f = 1;
+if ($sortcase eq "Aa") {
+ $offset = 57;
+ $f = -1;
+}
+
+make_tokens();
+
+process_ligatures();
+
+print_tokens($prefix . "resolve-case");
+
+foreach $character (@special) {
+ $tokens{$character} = "" unless ($character eq "letters");
+}
+
+print_tokens($prefix . "ignore-special");
+
+$offset = 161;
+$f = 1;
+
+for ($l = 0; $l < @special; $l++) {
+ if (@special[$l] eq "letters") {
+ $ref = \$l;
+ make_tokens();
+ process_ligatures();
+ } else {
+ $token = chr($l+$offset);
+ $tokens{@special[$l]} = $token;
+ }
+}
+
+print_tokens($prefix . "resolve-special");
+
+# print doc:
+# alphabet
+ for ($i = 0; $i < @{$alphabet}; $i++) {
+ for ($j = 1; $j < @{$alphabet->[$i]}; $j++) {
+ push @l,join("\\,", (@{$alphabet->[$i][$j]}));
+ }
+ if ((@l)) {
+ push @m, join(" & ", (@l));
+ }
+# push @m, "`".$alphabet->[$i][0]."':\\>".join(" -- ", (@l));
+ @l = ();
+ }
+ print DOC "\\subsection{$language";
+ print DOC " ($variant)" if ($variant);
+ print DOC "}\n\n";
+ print DOC "\\subsubsection{Alphabet}\n";
+ print DOC "\\icod\\fcod\n";
+ print DOC "\\begin{alphabet}\n";
+ print DOC join("\\\\\n", (@m));
+ print DOC "\n\\end{alphabet}\n";
+ print DOC "\\idef\\fdef\n";
+
+# ligatures
+ print DOC "\n\\subsubsection{Ligatures}\n";
+ print DOC "\\begin{flushleft}\n";
+ print DOC "None.\n" unless @{$ligatures};
+ @m = ();
+ for ($i = 0; $i < @{$ligatures}; $i++) {
+ for ($j = 0; $j < @{$ligatures->[$i][0]}; $j++) {
+ push @m, "`$ligatures->[$i][0][$j]' is sorted like `" .
+ join("\\,", (@{$ligatures->[$i][2][$j]})) .
+ "', but \\emph{$ligatures->[$i][1]} it in otherwise equal words.";
+ }
+ }
+ print DOC join("\\\\\n", (@m));
+ print DOC "\n\\end{flushleft}\n";
+
+# case
+ print DOC "\n\\subsubsection{Upper-/lowercase words}\n";
+ if ($sortcase eq "Aa") {
+ print DOC "Capitalized or uppercase words are sorted \\emph{before} ";
+ print DOC "otherwise equal lowercase words.\n";
+ } else {
+ print DOC "Capitalized or uppercase words are sorted \\emph{after} ";
+ print DOC "otherwise equal lowercase words.\n";
+ }
+
+# special
+print DOC "\n\\subsubsection{Special characters}\n";
+print DOC "The order of special characters and letters is:\n";
+print DOC "\\begin{flushleft}\n";
+print DOC join("\\hspace{4mm}", (@special));
+print DOC "\n\\end{flushleft}\n";
+print DOC "\\newpage\n";
+
+# end
+
+# print test raw file
+
+# for ($i = 0; $i < @{$alphabet}; $i++) {
+# for ($j = 1; $j < @{$alphabet->[$i]}; $j++) {
+# foreach $letter (@{$alphabet->[$i][$j]}) {
+# print TEST "(indexentry :key (\"$letter\") :locref \"$p\")\n";
+# $p++;
+# }
+# }
+# }
+
+# ligatures
+ for ($i = 0; $i < @{$ligatures}; $i++) {
+ for ($j = 0; $j < @{$ligatures->[$i][0]}; $j++) {
+ print TEST
+ "(indexentry :key (\"$ligatures->[$i][0][$j]\") :locref \"$p\")\n";
+ $p++;
+ print TEST "(indexentry :key (\"" .
+ join("", (@{$ligatures->[$i][2][$j]})) . "\") :locref \"$p\")\n";
+ $p++;
+ }
+ }
+
+# special
+foreach $letter (@special) {
+ if ($letter ne "letters") {
+ print TEST "(indexentry :key (\"$letter\") :locref \"$p\")\n";
+ $p++;
+ }
+}
+
+# end
+
+sub make_tokens {
+ for ($i = 0; $i < @{$alphabet}; $i++) {
+ for ($j = 1; $j < @{$alphabet->[$i]}; $j++) {
+ for ($k = 0; $k < @{$alphabet->[$i][$j]}; $k++) {
+ $token = chr($f*$$ref+$offset);
+ if ($alphabet->[$i][$j][$k]) {
+ $tokens{$alphabet->[$i][$j][$k]} = $token;
+ }
+ }
+ }
+ }
+}
+
+sub process_ligatures {
+ for ($i = 0; $i < @{$ligatures}; $i++) {
+ for ($j = 0; $j < @{$ligatures->[$i][0]}; $j++) {
+ $token = "";
+ foreach $ligature_component (@{$ligatures->[$i][2][$j]}) {
+ $token = $token.$tokens{$ligature_component};
+ }
+ $tokens{$ligatures->[$i][0][$j]} = $token;
+ }
+ }
+}
+
+sub print_tokens {
+ print XDY "(define-rule-set \"$_[0]\"\n\n :rules (";
+ foreach $letter (sort {
+ (length($b) <=> length($a)) || ($tokens{$a} cmp $tokens{$b})
+ } (keys %tokens)) {
+ $lout = $letter;
+ $lout =~ s/\~/~~/g;
+ $lout =~ s/\"/~\"/g;
+ $tout = $tokens{$letter};
+ $tout =~ s/\~/~~/g;
+ $tout =~ s/\"/~\"/g;
+ print XDY "(\"$lout\" \"$tout\" :string)\n ";
+ }
+ print XDY "))\n\n";
+ %tokens = ();
+}
diff --git a/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.am
new file mode 100644
index 00000000000..8179ba607b0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cyrillic-utf8.pl.in
+
+CLEANFILES = \
+ cyrillic-utf8.raw \
+ cyrillic-utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.in
new file mode 100644
index 00000000000..f264d2b4056
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/mongolian/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/mongolian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cyrillic-utf8.pl.in
+CLEANFILES = \
+ cyrillic-utf8.raw \
+ cyrillic-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/mongolian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/mongolian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/mongolian/cyrillic-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/mongolian/cyrillic-utf8.pl.in
new file mode 100644
index 00000000000..75c9f8dc4f3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/mongolian/cyrillic-utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Mongolian";
+$prefix = "mn";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð'] @u{,['аÌ','ÐÌ']}],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Е', ['е','Е'], @u{['еÌ','ЕÌ']}],
+['Ð', ['Ñ‘','Ð'], @u{['Ñ‘Ì','ÐÌ']}],
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И']@u{,['иÌ','ИÌ']}],
+ [],
+ [], # yi (ukrainian)
+['Й', ['й','Й']@u{,['йÌ','ЙÌ']}],
+ [], # je (macedonian, serbian)
+['К', ['к','К']],
+['Л', ['л','Л']],
+ [], # lje (macedonian, serbian)
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+ [], # nje (macedonian, serbian)
+['О', ['о','О']@u{,['оÌ','ОÌ']}],
+['Ó¨', ['Ó©','Ó¨']@u{,['Ó©Ì','Ó¨Ì']}],
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['У', ['у','У']@u{,['уÌ','УÌ']}],
+ [], # short u (belarusian)
+['Ò®', ['Ò¯','Ò®']@u{,['Ò¯Ì','Ò®Ì']}],
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+ [], # dzhe (macedonian, serbian)
+['Ш', ['ш','Ш']],
+['Щ', ['щ','Щ']],
+['Ъ', ['ъ','Ъ']],
+['Ы', ['Ñ‹','Ы']@u{,['Ñ‹Ì','ЫÌ']}],
+['Ь', ['ь','Ь']],
+ [],
+['Э', ['Ñ','Э']@u{,['ÑÌ','ЭÌ']}],
+['Ю', ['ÑŽ','Ю']@u{,['ÑŽÌ','ЮÌ']}],
+['Я', ['Ñ','Я']@u{,['ÑÌ','ЯÌ']}],
+ [],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\''@u{, 'Ì'});
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.am
new file mode 100644
index 00000000000..8e0fcda24ed
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin1.pl utf8.pl.in
+
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.in
new file mode 100644
index 00000000000..2a734b7e576
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/norwegian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/norwegian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin1.pl utf8.pl.in
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/norwegian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/norwegian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/norwegian/latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/norwegian/latin1.pl
new file mode 100755
index 00000000000..aec63a80ab9
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/norwegian/latin1.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Norwegian";
+$prefix = "no";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['Æ', ['æ','Æ'],['ä','Ä']],
+['Ø', ['ø','Ø'],['ö','Ö']],
+['Å', ['å','Å']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/norwegian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/norwegian/utf8.pl.in
new file mode 100644
index 00000000000..902b07bb388
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/norwegian/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Norwegian";
+$prefix = "no";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+['Æ', ['æ','Æ'],['ä','Ä']],
+['Ø', ['ø','Ø'],['ö','Ö']],
+['Ã…', ['Ã¥','Ã…']],
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.in
new file mode 100644
index 00000000000..9069ea9f75a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/polish/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/polish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/polish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/polish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/polish/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/polish/cp1250.pl
new file mode 100755
index 00000000000..3d780ef7b5e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/polish/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Polish";
+$prefix = "pl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+['¥', ['¹','¥']],
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+['Ê', ['ê','Ê']],
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+['£', ['³','£']],
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+['Œ', ['œ','Œ']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+['', ['Ÿ','']],
+['¯', ['¿','¯']],
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/polish/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/polish/latin2.pl
new file mode 100755
index 00000000000..32cdec691bf
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/polish/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Polish";
+$prefix = "pl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+['¡', ['±','¡']],
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+['Æ', ['æ','Æ']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+['Ê', ['ê','Ê']],
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+['£', ['³','£']],
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+['¦', ['¶','¦']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+['¬', ['¼','¬']],
+['¯', ['¿','¯']],
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/polish/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/polish/utf8.pl.in
new file mode 100644
index 00000000000..3b527705410
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/polish/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Polish";
+$prefix = "pl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+['Ä„', ['Ä…','Ä„']],
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+['Ć', ['ć','Ć']],
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+['Ę', ['ę','Ę']],
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with caron (slovak/large)
+ [], # l with cedilla/comma (latvian)
+['Å', ['Å‚','Å']],
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ń', ['ń','Ń']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+['Åš', ['Å›','Åš']],
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+['Ź', ['ź','Ź']],
+['Ż', ['ż','Ż']],
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.am
new file mode 100644
index 00000000000..8e0fcda24ed
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin1.pl utf8.pl.in
+
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.in
new file mode 100644
index 00000000000..1a4a621d4b3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/portuguese/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/portuguese
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin1.pl utf8.pl.in
+CLEANFILES = \
+ latin1.raw \
+ latin1-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/portuguese/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/portuguese/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/portuguese/latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/portuguese/latin1.pl
new file mode 100755
index 00000000000..89ca29650a6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/portuguese/latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Portuguese";
+$prefix = "pt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â'],['ã','Ã']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô'],['õ','Õ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/portuguese/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/portuguese/utf8.pl.in
new file mode 100644
index 00000000000..467f4008511
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/portuguese/utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Portuguese";
+$prefix = "pt";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã'],['à','À'],['â','Â'],['ã','Ã']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã'],['ì','ÃŒ']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô'],['õ','Õ']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['æ','Æ'], 'after', [['a','e'], ['A','e']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/rom-comma-kludge.sed b/Build/source/utils/xindy/make-rules/alphabets/rom-comma-kludge.sed
new file mode 100644
index 00000000000..32dee324c4b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/rom-comma-kludge.sed
@@ -0,0 +1,6 @@
+# replace [SsTt] with comma below -> [SsTt] with cedilla
+# for latin2 with romanian language
+s/Ș/Ş/g;
+s/È™/ÅŸ/g;
+s/Èš/Å¢/g;
+s/È›/Å£/g;
diff --git a/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.am
new file mode 100644
index 00000000000..0b84363ba45
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.in
new file mode 100644
index 00000000000..ebbc14b467b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/romanian/Makefile.in
@@ -0,0 +1,281 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/romanian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin2.pl utf8.pl.in
+CLEANFILES = \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/romanian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/romanian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/romanian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/romanian/latin2.pl
new file mode 100755
index 00000000000..f3f23492fc6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/romanian/latin2.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Romanian";
+$prefix = "ro";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+['Ã', ['ã','Ã']],
+['Â', ['â','Â']],
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditonal)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['Î', ['î','Î']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditonal)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+['ª', ['º','ª']],
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+['Þ', ['þ','Þ']],
+ [], # c with acute (upper sorbian) @@
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/romanian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/romanian/utf8.pl.in
new file mode 100644
index 00000000000..12701c4591a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/romanian/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Romanian";
+$prefix = "ro";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+['Ă', ['ă','Ă']],
+['Â', ['â','Â']],
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditonal)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+['Î', ['î','Î']],
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditonal)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+['Ș', ['ș','Ș']],
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+['Èš', ['È›','Èš']],
+ [], # c with acute (upper sorbian) @@
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.am
new file mode 100644
index 00000000000..1ecb21a4166
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.am
@@ -0,0 +1,40 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1251.pl iso88595.pl koi8-r.pl translit-iso-utf8.pl.in utf8.pl.in \
+ translit-iso-tex.xdy translit-tex.xdy translit-tgl-tex.xdy
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ koi8-r.raw \
+ koi8-r-doc.tex \
+ translit-iso-utf8.raw \
+ translit-iso-utf8-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.in
new file mode 100644
index 00000000000..1af6343a694
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/Makefile.in
@@ -0,0 +1,290 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/russian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1251.pl iso88595.pl koi8-r.pl translit-iso-utf8.pl.in utf8.pl.in \
+ translit-iso-tex.xdy translit-tex.xdy translit-tgl-tex.xdy
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ koi8-r.raw \
+ koi8-r-doc.tex \
+ translit-iso-utf8.raw \
+ translit-iso-utf8-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/russian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/russian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/russian/cp1251.pl
new file mode 100755
index 00000000000..635466a39b6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À'] ],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+ [], # ghe with upturn (ukrainian)
+['Ä', ['ä','Ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Å', ['å','Å'], ['¸','¨'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dze (macedonian)
+['È', ['è','È']],
+[],
+ [], # yi (ukrainian)
+['É', ['é','É']],
+ [], # je (macedonian, serbian)
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+ [], # lje (macedonian, serbian)
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+ [], # nje (macedonian, serbian)
+['Î', ['î','Î']],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð']],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ó', ['ó','Ó']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+ [], # dzhe (macedonian, serbian)
+['Ø', ['ø','Ø']],
+['Ù', ['ù','Ù']],
+['Ú', ['ú','Ú']],
+['Û', ['û','Û']],
+['Ü', ['ü','Ü']],
+[],
+['Ý', ['ý','Ý']],
+['Þ', ['þ','Þ']],
+['ß', ['ÿ','ß']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/iso88595.pl b/Build/source/utils/xindy/make-rules/alphabets/russian/iso88595.pl
new file mode 100755
index 00000000000..d4b6327e6f0
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['°', ['Ð','°'] ],
+['±', ['Ñ','±']],
+['²', ['Ò','²']],
+['³', ['Ó','³']],
+ [], # ghe with upturn (ukrainian)
+['´', ['Ô','´']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['µ', ['Õ','µ'], ['ñ','¡'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['¶', ['Ö','¶']],
+['·', ['×','·']],
+ [], # dze (macedonian)
+['¸', ['Ø','¸']],
+[],
+ [], # yi (ukrainian)
+['¹', ['Ù','¹']],
+ [], # je (macedonian, serbian)
+['º', ['Ú','º']],
+['»', ['Û','»']],
+ [], # lje (macedonian, serbian)
+['¼', ['Ü','¼']],
+['½', ['Ý','½']],
+ [], # nje (macedonian, serbian)
+['¾', ['Þ','¾']],
+ [], # barred o (mongolian)
+['¿', ['ß','¿']],
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ã', ['ã','Ã']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ä', ['ä','Ä']],
+['Å', ['å','Å']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dzhe (macedonian, serbian)
+['È', ['è','È']],
+['É', ['é','É']],
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+['Ì', ['ì','Ì']],
+[],
+['Í', ['í','Í']],
+['Î', ['î','Î']],
+['Ï', ['ï','Ï']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/koi8-r.pl b/Build/source/utils/xindy/make-rules/alphabets/russian/koi8-r.pl
new file mode 100755
index 00000000000..06a0f78eceb
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/koi8-r.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á'] ],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+ [], # ghe with upturn (ukrainian)
+['ä', ['Ä','ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['å', ['Å','å'], ['£','³'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+ [], # dze (macedonian)
+['é', ['É','é']],
+[],
+ [], # yi (ukrainian)
+['ê', ['Ê','ê']],
+ [], # je (macedonian, serbian)
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+ [], # lje (macedonian, serbian)
+['í', ['Í','í']],
+['î', ['Î','î']],
+ [], # nje (macedonian, serbian)
+['ï', ['Ï','ï']],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò']],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['õ', ['Õ','õ']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+ [], # dzhe (macedonian, serbian)
+['û', ['Û','û']],
+['ý', ['Ý','ý']],
+['ÿ', ['ß','ÿ']],
+['ù', ['Ù','ù']],
+['ø', ['Ø','ø']],
+[],
+['ü', ['Ü','ü']],
+['à', ['À','à']],
+['ñ', ['Ñ','ñ']],
+ [],
+ [],
+[],
+[]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-tex.xdy b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-tex.xdy
new file mode 100644
index 00000000000..706bb59485e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-tex.xdy
@@ -0,0 +1,307 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "R" :after "P" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "Y" :after "V" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("\v C" "›" :string)
+ ("\v c" "›" :string)
+ ("\v s" "Ò" :string)
+ ("\v S" "Ò" :string)
+ ("\v z" "è" :string)
+ ("\v Z" "è" :string)
+ ("\^a" "–" :string)
+ ("\^A" "–" :string)
+ ("\`e" "©" :string)
+ ("\`E" "©" :string)
+ ("\~"E" "©" :string)
+ ("\~"e" "©" :string)
+ ("\^S" "Ò" :string)
+ ("\^s" "Ò" :string)
+ ("\^u" "ß" :string)
+ ("\^U" "ß" :string)
+ ("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("d" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "©" :string)
+ ("e" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("H" "³" :string)
+ ("h" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("J" "¹" :string)
+ ("j" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("p" "Ì" :string)
+ ("P" "Ì" :string)
+ ("r" "Î" :string)
+ ("R" "Î" :string)
+ ("s" "Ò" :string)
+ ("S" "Ò" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("u" "ß" :string)
+ ("U" "ß" :string)
+ ("v" "ã" :string)
+ ("V" "ã" :string)
+ ("y" "ç" :string)
+ ("Y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("\v S" "£" :string)
+ ("\v C" "£" :string)
+ ("\v c" "£" :string)
+ ("\v Z" "£" :string)
+ ("\v z" "£" :string)
+ ("\v s" "£" :string)
+ ("\`E" "£" :string)
+ ("\^u" "£" :string)
+ ("\^U" "£" :string)
+ ("\^A" "£" :string)
+ ("\`e" "£" :string)
+ ("\^a" "£" :string)
+ ("\^S" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\~"E" "¤" :string)
+ ("\^s" "¤" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("Y" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("V" "¢" :string)
+ ("l" "¢" :string)
+ ("A" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("Z" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("U" "¢" :string)
+ ("v" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ("a" "¢" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("\v Z" "8" :string)
+ ("\v S" "8" :string)
+ ("\v C" "8" :string)
+ ("\v c" "9" :string)
+ ("\v s" "9" :string)
+ ("\v z" "9" :string)
+ ("\`E" "8" :string)
+ ("\^U" "8" :string)
+ ("\^S" "8" :string)
+ ("\~"E" "8" :string)
+ ("\^A" "8" :string)
+ ("\~"e" "9" :string)
+ ("\^s" "9" :string)
+ ("\^u" "9" :string)
+ ("\`e" "9" :string)
+ ("\^a" "9" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("Z" "8" :string)
+ ("Y" "8" :string)
+ ("V" "8" :string)
+ ("U" "8" :string)
+ ("T" "8" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("c" "9" :string)
+ ("l" "9" :string)
+ ("a" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("b" "9" :string)
+ ("o" "9" :string)
+ ("p" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("d" "9" :string)
+ ("v" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("e" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("$''$" "" :string)
+ ("$'$" "" :string)
+ ("!" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("\v C" "¤" :string)
+ ("\v z" "¤" :string)
+ ("\v S" "¤" :string)
+ ("\v c" "¤" :string)
+ ("\v s" "¤" :string)
+ ("\v Z" "¤" :string)
+ ("$''$" "¥" :string)
+ ("\~"E" "¤" :string)
+ ("\^A" "¤" :string)
+ ("\^u" "¤" :string)
+ ("\^s" "¤" :string)
+ ("\`E" "¤" :string)
+ ("\^U" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\^S" "¤" :string)
+ ("\^a" "¤" :string)
+ ("\`e" "¤" :string)
+ ("$'$" "¦" :string)
+ ("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("B" "¤" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("Z" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("Y" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("V" "¤" :string)
+ ("l" "¤" :string)
+ ("U" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("A" "¤" :string)
+ ("T" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("S" "¤" :string)
+ ("R" "¤" :string)
+ ("v" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("P" "¤" :string)
+ ("O" "¤" :string)
+ ("-" "§" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-utf8.pl.in
new file mode 100644
index 00000000000..0436bd1ed7c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-iso-utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$variant = "ISO 9 transliteration, for western languages";
+$prefix = "ru";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['Ä','ÄŒ']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['è','È'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+ [], # q (many)
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['Å¡','Å '],['Å','Åœ']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+ [], # x (many)
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'],['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', 'ʺ', 'ʹ', '-');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tex.xdy b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tex.xdy
new file mode 100644
index 00000000000..3c6b60dfe11
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tex.xdy
@@ -0,0 +1,291 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "A" :prefixes (" "))
+(define-letter-group "B" :after "A" :prefixes ("¤"))
+(define-letter-group "C" :after "B" :prefixes ("¥"))
+(define-letter-group "D" :after "C" :prefixes ("¬"))
+(define-letter-group "E" :after "D" :prefixes ("²"))
+(define-letter-group "F" :after "E" :prefixes ("¶"))
+(define-letter-group "G" :after "F" :prefixes ("·"))
+(define-letter-group "H" :after "G" :prefixes ("»"))
+(define-letter-group "I" :after "H" :prefixes ("¿"))
+(define-letter-group "J" :after "I" :prefixes ("Á"))
+(define-letter-group "K" :after "J" :prefixes ("Ã"))
+(define-letter-group "L" :after "K" :prefixes ("Å"))
+(define-letter-group "M" :after "L" :prefixes ("Ê"))
+(define-letter-group "N" :after "M" :prefixes ("Ë"))
+(define-letter-group "O" :after "N" :prefixes ("Ñ"))
+(define-letter-group "P" :after "O" :prefixes ("Ô"))
+(define-letter-group "R" :after "P" :prefixes ("Ö"))
+(define-letter-group "S" :after "R" :prefixes ("Ú"))
+(define-letter-group "T" :after "S" :prefixes ("á"))
+(define-letter-group "U" :after "T" :prefixes ("å"))
+(define-letter-group "V" :after "U" :prefixes ("è"))
+(define-letter-group "Y" :after "V" :prefixes ("ì"))
+(define-letter-group "Z" :after "Y" :prefixes ("í"))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("\v c" "¥" :string)
+ ("\v C" "¥" :string)
+ ("\~"E" "²" :string)
+ ("\~"e" "²" :string)
+ ("\~"i" "¿" :string)
+ ("\~"I" "¿" :string)
+ ("\v s" "Ú" :string)
+ ("\v S" "Ú" :string)
+ ("\v z" "í" :string)
+ ("\v Z" "í" :string)
+ ("\.E" "²" :string)
+ ("\.e" "²" :string)
+ ("A" " " :string)
+ ("a" " " :string)
+ ("B" "¤" :string)
+ ("b" "¤" :string)
+ ("C" "¥" :string)
+ ("c" "¥" :string)
+ ("D" "¬" :string)
+ ("d" "¬" :string)
+ ("E" "²" :string)
+ ("e" "²" :string)
+ ("F" "¶" :string)
+ ("f" "¶" :string)
+ ("G" "·" :string)
+ ("g" "·" :string)
+ ("H" "»" :string)
+ ("h" "»" :string)
+ ("I" "¿" :string)
+ ("i" "¿" :string)
+ ("J" "Á" :string)
+ ("j" "Á" :string)
+ ("K" "Ã" :string)
+ ("k" "Ã" :string)
+ ("L" "Å" :string)
+ ("l" "Å" :string)
+ ("M" "Ê" :string)
+ ("m" "Ê" :string)
+ ("N" "Ë" :string)
+ ("n" "Ë" :string)
+ ("O" "Ñ" :string)
+ ("o" "Ñ" :string)
+ ("p" "Ô" :string)
+ ("P" "Ô" :string)
+ ("R" "Ö" :string)
+ ("r" "Ö" :string)
+ ("s" "Ú" :string)
+ ("S" "Ú" :string)
+ ("T" "á" :string)
+ ("t" "á" :string)
+ ("u" "å" :string)
+ ("U" "å" :string)
+ ("V" "è" :string)
+ ("v" "è" :string)
+ ("Y" "ì" :string)
+ ("y" "ì" :string)
+ ("Z" "í" :string)
+ ("z" "í" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("\~"i" "£" :string)
+ ("\v c" "£" :string)
+ ("\v z" "£" :string)
+ ("\v C" "£" :string)
+ ("\v Z" "£" :string)
+ ("\v S" "£" :string)
+ ("\~"I" "£" :string)
+ ("\v s" "£" :string)
+ ("\~"E" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\.E" "£" :string)
+ ("\.e" "£" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("V" "¢" :string)
+ ("Z" "¢" :string)
+ ("Y" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("A" "¢" :string)
+ ("B" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("C" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("D" "¢" :string)
+ ("p" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("E" "¢" :string)
+ ("v" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("\~"E" "8" :string)
+ ("\v S" "8" :string)
+ ("\~"I" "8" :string)
+ ("\v C" "8" :string)
+ ("\v Z" "8" :string)
+ ("\v c" "9" :string)
+ ("\v s" "9" :string)
+ ("\~"e" "9" :string)
+ ("\~"i" "9" :string)
+ ("\v z" "9" :string)
+ ("\.E" "8" :string)
+ ("\.e" "9" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("S" "8" :string)
+ ("T" "8" :string)
+ ("U" "8" :string)
+ ("V" "8" :string)
+ ("Z" "8" :string)
+ ("Y" "8" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("b" "9" :string)
+ ("e" "9" :string)
+ ("f" "9" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("c" "9" :string)
+ ("l" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("o" "9" :string)
+ ("d" "9" :string)
+ ("p" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("a" "9" :string)
+ ("v" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("$''$" "" :string)
+ ("$'$" "" :string)
+ ("!" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("\~"E" "¤" :string)
+ ("\v c" "¤" :string)
+ ("\v z" "¤" :string)
+ ("\~"i" "¤" :string)
+ ("\v Z" "¤" :string)
+ ("\v S" "¤" :string)
+ ("\~"I" "¤" :string)
+ ("\v s" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\v C" "¤" :string)
+ ("$''$" "¥" :string)
+ ("\.E" "¤" :string)
+ ("\.e" "¤" :string)
+ ("$'$" "¦" :string)
+ ("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("B" "¤" :string)
+ ("C" "¤" :string)
+ ("D" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("Z" "¤" :string)
+ ("Y" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("V" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("A" "¤" :string)
+ ("o" "¤" :string)
+ ("U" "¤" :string)
+ ("p" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("T" "¤" :string)
+ ("S" "¤" :string)
+ ("v" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("R" "¤" :string)
+ ("-" "§" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tgl-tex.xdy b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tgl-tex.xdy
new file mode 100644
index 00000000000..9351782bc7e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/translit-tgl-tex.xdy
@@ -0,0 +1,315 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Russian
+
+(define-letter-group "A" :prefixes (" "))
+(define-letter-group "B" :after "A" :prefixes ("¤"))
+(define-letter-group "C" :after "B" :prefixes ("¥"))
+(define-letter-group "D" :after "C" :prefixes ("¬"))
+(define-letter-group "E" :after "D" :prefixes ("²"))
+(define-letter-group "F" :after "E" :prefixes ("¶"))
+(define-letter-group "G" :after "F" :prefixes ("·"))
+(define-letter-group "H" :after "G" :prefixes ("»"))
+(define-letter-group "I" :after "H" :prefixes ("¿"))
+(define-letter-group "J" :after "I" :prefixes ("Á"))
+(define-letter-group "K" :after "J" :prefixes ("Ã"))
+(define-letter-group "L" :after "K" :prefixes ("Å"))
+(define-letter-group "M" :after "L" :prefixes ("Ê"))
+(define-letter-group "N" :after "M" :prefixes ("Ë"))
+(define-letter-group "O" :after "N" :prefixes ("Ñ"))
+(define-letter-group "P" :after "O" :prefixes ("Ô"))
+(define-letter-group "R" :after "P" :prefixes ("Ö"))
+(define-letter-group "S" :after "R" :prefixes ("Ú"))
+(define-letter-group "T" :after "S" :prefixes ("á"))
+(define-letter-group "U" :after "T" :prefixes ("å"))
+(define-letter-group "V" :after "U" :prefixes ("è"))
+(define-letter-group "Y" :after "V" :prefixes ("ì"))
+(define-letter-group "Z" :after "Y" :prefixes ("í"))
+
+(define-rule-set "ru-alphabetize"
+
+ :rules (("\v c" "¥" :string)
+ ("\v C" "¥" :string)
+ ("\~"E" "²" :string)
+ ("\~"e" "²" :string)
+ ("\~"i" "¿" :string)
+ ("\~"I" "¿" :string)
+ ("\v S" "Ú" :string)
+ ("\v s" "Ú" :string)
+ ("\v z" "í" :string)
+ ("\v Z" "í" :string)
+ ("\^A" " " :string)
+ ("\^a" " " :string)
+ ("\.E" "²" :string)
+ ("\.e" "²" :string)
+ ("\^S" "Ú" :string)
+ ("\^s" "Ú" :string)
+ ("\^U" "å" :string)
+ ("\^u" "å" :string)
+ ("A" " " :string)
+ ("a" " " :string)
+ ("B" "¤" :string)
+ ("b" "¤" :string)
+ ("C" "¥" :string)
+ ("c" "¥" :string)
+ ("D" "¬" :string)
+ ("d" "¬" :string)
+ ("e" "²" :string)
+ ("E" "²" :string)
+ ("F" "¶" :string)
+ ("f" "¶" :string)
+ ("G" "·" :string)
+ ("g" "·" :string)
+ ("H" "»" :string)
+ ("h" "»" :string)
+ ("I" "¿" :string)
+ ("i" "¿" :string)
+ ("J" "Á" :string)
+ ("j" "Á" :string)
+ ("K" "Ã" :string)
+ ("k" "Ã" :string)
+ ("L" "Å" :string)
+ ("l" "Å" :string)
+ ("M" "Ê" :string)
+ ("m" "Ê" :string)
+ ("n" "Ë" :string)
+ ("N" "Ë" :string)
+ ("o" "Ñ" :string)
+ ("O" "Ñ" :string)
+ ("p" "Ô" :string)
+ ("P" "Ô" :string)
+ ("R" "Ö" :string)
+ ("r" "Ö" :string)
+ ("S" "Ú" :string)
+ ("s" "Ú" :string)
+ ("T" "á" :string)
+ ("t" "á" :string)
+ ("U" "å" :string)
+ ("u" "å" :string)
+ ("V" "è" :string)
+ ("v" "è" :string)
+ ("y" "ì" :string)
+ ("Y" "ì" :string)
+ ("Z" "í" :string)
+ ("z" "í" :string)
+ ))
+
+(define-rule-set "ru-resolve-diacritics"
+
+ :rules (("\v c" "£" :string)
+ ("\v s" "£" :string)
+ ("\~"i" "£" :string)
+ ("\v C" "£" :string)
+ ("\v z" "£" :string)
+ ("\v S" "£" :string)
+ ("\~"I" "£" :string)
+ ("\v Z" "£" :string)
+ ("\~"E" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\^u" "£" :string)
+ ("\.e" "£" :string)
+ ("\^A" "£" :string)
+ ("\^U" "£" :string)
+ ("\^a" "£" :string)
+ ("\.E" "£" :string)
+ ("\^S" "¤" :string)
+ ("\^s" "¤" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("c" "¢" :string)
+ ("d" "¢" :string)
+ ("Y" "¢" :string)
+ ("V" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("U" "¢" :string)
+ ("l" "¢" :string)
+ ("A" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("Z" "¢" :string)
+ ("o" "¢" :string)
+ ("a" "¢" :string)
+ ("p" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("T" "¢" :string)
+ ("v" "¢" :string)
+ ("y" "¢" :string)
+ ("z" "¢" :string)
+ ("b" "¢" :string)
+ ))
+
+(define-rule-set "ru-resolve-case"
+
+ :rules (("\~"E" "8" :string)
+ ("\v Z" "8" :string)
+ ("\v C" "8" :string)
+ ("\v S" "8" :string)
+ ("\~"I" "8" :string)
+ ("\v z" "9" :string)
+ ("\v c" "9" :string)
+ ("\~"i" "9" :string)
+ ("\v s" "9" :string)
+ ("\~"e" "9" :string)
+ ("\^S" "8" :string)
+ ("\^U" "8" :string)
+ ("\.E" "8" :string)
+ ("\^A" "8" :string)
+ ("\.e" "9" :string)
+ ("\^a" "9" :string)
+ ("\^s" "9" :string)
+ ("\^u" "9" :string)
+ ("A" "8" :string)
+ ("B" "8" :string)
+ ("C" "8" :string)
+ ("D" "8" :string)
+ ("E" "8" :string)
+ ("F" "8" :string)
+ ("G" "8" :string)
+ ("H" "8" :string)
+ ("I" "8" :string)
+ ("J" "8" :string)
+ ("K" "8" :string)
+ ("L" "8" :string)
+ ("M" "8" :string)
+ ("N" "8" :string)
+ ("O" "8" :string)
+ ("P" "8" :string)
+ ("R" "8" :string)
+ ("Y" "8" :string)
+ ("V" "8" :string)
+ ("U" "8" :string)
+ ("Z" "8" :string)
+ ("T" "8" :string)
+ ("S" "8" :string)
+ ("g" "9" :string)
+ ("h" "9" :string)
+ ("i" "9" :string)
+ ("j" "9" :string)
+ ("k" "9" :string)
+ ("c" "9" :string)
+ ("l" "9" :string)
+ ("d" "9" :string)
+ ("m" "9" :string)
+ ("n" "9" :string)
+ ("a" "9" :string)
+ ("o" "9" :string)
+ ("b" "9" :string)
+ ("p" "9" :string)
+ ("r" "9" :string)
+ ("s" "9" :string)
+ ("t" "9" :string)
+ ("u" "9" :string)
+ ("e" "9" :string)
+ ("v" "9" :string)
+ ("y" "9" :string)
+ ("z" "9" :string)
+ ("f" "9" :string)
+ ))
+
+(define-rule-set "ru-ignore-special"
+
+ :rules (("$''$" "" :string)
+ ("$'$" "" :string)
+ ("!" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "ru-resolve-special"
+
+ :rules (("\~"E" "¤" :string)
+ ("\~"I" "¤" :string)
+ ("\v C" "¤" :string)
+ ("\~"e" "¤" :string)
+ ("\v Z" "¤" :string)
+ ("\~"i" "¤" :string)
+ ("\v c" "¤" :string)
+ ("\v S" "¤" :string)
+ ("\v s" "¤" :string)
+ ("\v z" "¤" :string)
+ ("$''$" "¥" :string)
+ ("\^A" "¤" :string)
+ ("\^S" "¤" :string)
+ ("\^U" "¤" :string)
+ ("\^a" "¤" :string)
+ ("\.E" "¤" :string)
+ ("\.e" "¤" :string)
+ ("\^s" "¤" :string)
+ ("\^u" "¤" :string)
+ ("$'$" "¦" :string)
+ ("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("V" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("A" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("d" "¤" :string)
+ ("e" "¤" :string)
+ ("B" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("C" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("D" "¤" :string)
+ ("n" "¤" :string)
+ ("o" "¤" :string)
+ ("E" "¤" :string)
+ ("p" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("v" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("-" "§" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/russian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/russian/utf8.pl.in
new file mode 100644
index 00000000000..c5882c35427
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/russian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Russian";
+$prefix = "ru";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð'] @u{,['аÌ','ÐÌ']}],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Е', ['е','Е'], @u{['еÌ','ЕÌ'],} ['Ñ‘','Ð'] @u{,['Ñ‘Ì','ÐÌ']}],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И']@u{,['иÌ','ИÌ']}],
+[@u{'І', ['Ñ–','І'],['Ñ–Ì','ІÌ']}],
+ [], # yi (ukrainian)
+['Й', ['й','Й']@u{,['йÌ','ЙÌ']}],
+ [], # je (macedonian, serbian)
+['К', ['к','К']],
+['Л', ['л','Л']],
+ [], # lje (macedonian, serbian)
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+ [], # nje (macedonian, serbian)
+['О', ['о','О']@u{,['оÌ','ОÌ']}],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['У', ['у','У']@u{,['уÌ','УÌ']}],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+ [], # dzhe (macedonian, serbian)
+['Ш', ['ш','Ш']],
+['Щ', ['щ','Щ']],
+['Ъ', ['ъ','Ъ']],
+['Ы', ['Ñ‹','Ы']@u{,['Ñ‹Ì','ЫÌ']}],
+['Ь', ['ь','Ь']],
+[@u{'Ñ¢', ['Ñ£','Ñ¢']}],
+['Э', ['Ñ','Э']@u{,['ÑÌ','ЭÌ']}],
+['Ю', ['ÑŽ','Ю']@u{,['ÑŽÌ','ЮÌ']}],
+['Я', ['Ñ','Я']@u{,['ÑÌ','ЯÌ']}],
+ [],
+ [],
+[@u{'Ѳ', ['ѳ','Ѳ']}],
+[@u{'Ѵ', ['ѵ','Ѵ']}]
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\''@u{, 'Ì'});
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.am
new file mode 100644
index 00000000000..6327f7b6dde
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.am
@@ -0,0 +1,36 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.in
new file mode 100644
index 00000000000..a5e8d32fc1b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/Makefile.in
@@ -0,0 +1,285 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/serbian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1251.pl iso88595.pl isoir111.pl utf8.pl.in
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ iso88595.raw \
+ iso88595-doc.tex \
+ isoir111.raw \
+ isoir111-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/serbian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/serbian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/serbian/cp1251.pl
new file mode 100755
index 00000000000..926388183df
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À'] ],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+ [], # ghe with upturn (ukrainian)
+['Ä', ['ä','Ä']],
+['€', ['','€']],
+ [], # gje (macedonian)
+['Å', ['å','Å'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dze (macedonian)
+['È', ['è','È'] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['£', ['¼','£']],
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+['Š', ['š','Š']],
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+['Œ', ['œ','Œ']],
+['Î', ['î','Î'] ],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð'] ],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+['Ž', ['ž','Ž']],
+ [], # kje (macedonian)
+['Ó', ['ó','Ó'] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+['', ['Ÿ','']],
+['Ø', ['ø','Ø']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/iso88595.pl b/Build/source/utils/xindy/make-rules/alphabets/serbian/iso88595.pl
new file mode 100755
index 00000000000..e23b9832236
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/iso88595.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['°', ['Ð','°'] ],
+['±', ['Ñ','±']],
+['²', ['Ò','²']],
+['³', ['Ó','³']],
+ [], # ghe with upturn (ukrainian)
+['´', ['Ô','´']],
+['¢', ['ò','¢']],
+ [], # gje (macedonian)
+['µ', ['Õ','µ'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['¶', ['Ö','¶']],
+['·', ['×','·']],
+ [], # dze (macedonian)
+['¸', ['Ø','¸'] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['¨', ['ø','¨']],
+['º', ['Ú','º']],
+['»', ['Û','»']],
+['©', ['ù','©']],
+['¼', ['Ü','¼']],
+['½', ['Ý','½']],
+['ª', ['ú','ª']],
+['¾', ['Þ','¾'] ],
+ [], # barred o (mongolian)
+['¿', ['ß','¿']],
+['À', ['à','À'] ],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['«', ['û','«']],
+ [], # kje (macedonian)
+['Ã', ['ã','Ã'] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ä', ['ä','Ä']],
+['Å', ['å','Å']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+['¯', ['ÿ','¯']],
+['È', ['è','È']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/isoir111.pl b/Build/source/utils/xindy/make-rules/alphabets/serbian/isoir111.pl
new file mode 100755
index 00000000000..eb8a377e264
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/isoir111.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á'] ],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+ [], # ghe with upturn (ukrainian)
+['ä', ['Ä','ä']],
+['±', ['¡','±']],
+ [], # gje (macedonian)
+['å', ['Å','å'] ],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+ [], # dze (macedonian)
+['é', ['É','é'] ],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['¸', ['¨','¸']],
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+['¹', ['©','¹']],
+['í', ['Í','í']],
+['î', ['Î','î']],
+['º', ['ª','º']],
+['ï', ['Ï','ï'] ],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò'] ],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+['»', ['«','»']],
+ [], # kje (macedonian)
+['õ', ['Õ','õ'] ],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+['¿', ['¯','¿']],
+['û', ['Û','û']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/serbian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/serbian/utf8.pl.in
new file mode 100644
index 00000000000..029e0bb0ae9
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/serbian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Serbian";
+$prefix = "sr";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð'] @u{,['аÌ','ÐÌ'],['а̑','ÐÌ‘']}],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+ [], # ghe with upturn (ukrainian)
+['Д', ['д','Д']],
+['Ђ', ['ђ','Ђ']],
+ [], # gje (macedonian)
+['Е', ['е','Е'] @u{,['еÌ','ЕÌ'],['е̑','Е̑']}],
+ [], # io (mongolian)
+ [], # ukrainian ie
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И'] @u{,['иÌ','ИÌ'],['и̑','И̑']}],
+ [], # belarusian-ukrainian i
+ [], # yi (ukrainian)
+ [], # short i (many)
+['Ј', ['ј','Ј']],
+['К', ['к','К']],
+['Л', ['л','Л']],
+['Љ', ['љ','Љ']],
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+['Њ', ['њ','Њ']],
+['О', ['о','О'] @u{,['оÌ','ОÌ'],['о̑','О̑']}],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['Ñ€','Р'] @u{,['Ñ€Ì','РÌ'],['р̑','Р̑']}],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+['Ћ', ['ћ','Ћ']],
+ [], # kje (macedonian)
+['У', ['у','У'] @u{,['уÌ','УÌ'],['у̑','У̑']}],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+['Ð', ['ÑŸ','Ð']],
+['Ш', ['ш','Ш']],
+ [], # shcha (many)
+ [], # hard sign (bulgarian, russian)
+ [], # yeru (belarusian, russian)
+ [], # soft sign (many)
+ [],
+ [], # e (belarusian, russian)
+ [], # yu (many)
+ [], # ya (many)
+ [], # soft sign (ukrainian)
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\''@u{, 'Ì', 'Ì‘'});
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.am
new file mode 100644
index 00000000000..e1522102b9c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.am
@@ -0,0 +1,42 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ large-cp1250.pl large-latin2.pl large-utf8.pl.in \
+ small-cp1250.pl small-latin2.pl small-utf8.pl.in
+
+CLEANFILES = \
+ large-cp1250.raw \
+ large-cp1250-doc.tex \
+ large-latin2.raw \
+ large-latin2-doc.tex \
+ large-utf8.raw \
+ large-utf8-doc.tex \
+ small-cp1250.raw \
+ small-cp1250-doc.tex \
+ small-latin2.raw \
+ small-latin2-doc.tex \
+ small-utf8.raw \
+ small-utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.in
new file mode 100644
index 00000000000..78863bbe89e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/Makefile.in
@@ -0,0 +1,292 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/slovak
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ large-cp1250.pl large-latin2.pl large-utf8.pl.in \
+ small-cp1250.pl small-latin2.pl small-utf8.pl.in
+
+CLEANFILES = \
+ large-cp1250.raw \
+ large-cp1250-doc.tex \
+ large-latin2.raw \
+ large-latin2-doc.tex \
+ large-utf8.raw \
+ large-utf8-doc.tex \
+ small-cp1250.raw \
+ small-cp1250-doc.tex \
+ small-latin2.raw \
+ small-latin2-doc.tex \
+ small-utf8.raw \
+ small-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/slovak/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/slovak/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/large-cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-cp1250.pl
new file mode 100755
index 00000000000..037a8589c6b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-cp1250.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "large";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+['Ï', ['ï','Ï']],
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['å','Å']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+['¼', ['¾','¼']],
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['Ò', ['ò','Ò']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['à','À']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+['', ['','']],
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/large-latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-latin2.pl
new file mode 100755
index 00000000000..14f0a0e5617
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-latin2.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "large";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+['Ï', ['ï','Ï']],
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['å','Å']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+['¥', ['µ','¥']],
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['Ò', ['ò','Ò']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['à','À']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+['«', ['»','«']],
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/large-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-utf8.pl.in
new file mode 100644
index 00000000000..fac86202984
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/large-utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "large";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Ã'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+['ÄŽ', ['Ä','ÄŽ']],
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['ĺ','Ĺ']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+['Ľ', ['ľ','Ľ']],
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['Ň', ['ň','Ň']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['Å•','Å”']],
+ [], # rr (albanian)
+['Ř', ['ř','Ř']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+['Ť', ['ť','Ť']],
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ã']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/small-cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-cp1250.pl
new file mode 100755
index 00000000000..218d6b3518a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-cp1250.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "small";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'], ['è','È']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['ï','Ï']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['å','Å'], ['¾','¼']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ò','Ò']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['à','À'], ['ø','Ø']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['š','Š']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['','']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/small-latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-latin2.pl
new file mode 100755
index 00000000000..9468636b4ec
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-latin2.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "small";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'], ['è','È']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['ï','Ï']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['å','Å'], ['µ','¥']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ò','Ò']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['à','À'], ['ø','Ø']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['¹','©']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['»','«']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ý']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['¾','®']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovak/small-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-utf8.pl.in
new file mode 100644
index 00000000000..d4c468d26d2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovak/small-utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Slovak";
+$variant = "small";
+$prefix = "sk";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Ã'], ['ä','Ä']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'], ['Ä','ÄŒ']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'], ['Ä','ÄŽ']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L'], ['ĺ','Ĺ'], ['ľ','Ľ']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'], ['ň','Ň']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó'], ['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'], ['ŕ','Ŕ'], ['ř','Ř']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'], ['Å¡','Å ']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T'], ['ť','Ť']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'], ['ý','Ã']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z'], ['ž','Ž']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.in
new file mode 100644
index 00000000000..fbe3a2cc143
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovenian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/slovenian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/slovenian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/slovenian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovenian/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/slovenian/cp1250.pl
new file mode 100755
index 00000000000..8bd9bd5ac0a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovenian/cp1250.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Slovenian";
+$prefix = "sl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È'],['æ','Æ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovenian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/slovenian/latin2.pl
new file mode 100755
index 00000000000..2184852c12a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovenian/latin2.pl
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Slovenian";
+$prefix = "sl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['È', ['è','È'],['æ','Æ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+
+
+
+
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/slovenian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/slovenian/utf8.pl.in
new file mode 100644
index 00000000000..bee08dd48b8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/slovenian/utf8.pl.in
@@ -0,0 +1,148 @@
+#!/usr/bin/perl
+
+$language = "Slovenian";
+$prefix = "sl";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ'],['ć','Ć']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['Ä‘','Ä']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']@u{,['ǵ','Ǵ']}],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']@u{,['ḱ','Ḱ']}],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+@u{[['dz','Dz','DZ'], 'after', [['d','z'],['D','z'],['D','Z']]],}
+@u{[['dž','Dž','DŽ'], 'after', [['d','ž'],['D','ž'],['D','Ž']]],}
+@u{[['lj','Lj','LJ'], 'after', [['l','j'],['L','j'],['L','J']]],}
+@u{[['nj','Nj','NJ'], 'after', [['n','j'],['N','j'],['N','J']]]}
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.am
new file mode 100644
index 00000000000..e43c9215567
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.am
@@ -0,0 +1,38 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ modern-latin1.pl modern-utf8.pl.in \
+ traditional-latin1.pl traditional-utf8.pl.in
+
+CLEANFILES = \
+ modern-latin1.raw \
+ modern-latin1-doc.tex \
+ modern-utf8.raw \
+ modern-utf8-doc.tex \
+ traditional-latin1.raw \
+ traditional-latin1-doc.tex \
+ traditional-utf8.raw \
+ traditional-utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.in
new file mode 100644
index 00000000000..de002ea2d58
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/Makefile.in
@@ -0,0 +1,288 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/spanish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ modern-latin1.pl modern-utf8.pl.in \
+ traditional-latin1.pl traditional-utf8.pl.in
+
+CLEANFILES = \
+ modern-latin1.raw \
+ modern-latin1-doc.tex \
+ modern-utf8.raw \
+ modern-utf8-doc.tex \
+ traditional-latin1.raw \
+ traditional-latin1-doc.tex \
+ traditional-utf8.raw \
+ traditional-utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/spanish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/spanish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-latin1.pl
new file mode 100755
index 00000000000..17bff7f8d1d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "modern";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['Ñ', ['ñ','Ñ']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '¿', '?', '¡', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-utf8.pl.in
new file mode 100644
index 00000000000..12f4d32cbde
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/modern-utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "modern";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Ã']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['Ñ', ['ñ','Ñ']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '¿', '?', '¡', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-latin1.pl b/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-latin1.pl
new file mode 100755
index 00000000000..69fcf5a57c6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-latin1.pl
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "traditional";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['Ch', ['ch','Ch','CH']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['Ñ', ['ñ','Ñ']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, icelandic, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '¿', '?', '¡', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-utf8.pl.in
new file mode 100644
index 00000000000..dd4e321ca6d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/spanish/traditional-utf8.pl.in
@@ -0,0 +1,146 @@
+#!/usr/bin/perl
+
+$language = "Spanish";
+$variant = "traditional";
+$prefix = "es";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'], ['á','Ã']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+['Ch', ['ch','Ch','CH']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+['Ñ', ['ñ','Ñ']],
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'], ['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], ['ú','Ú'], ['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, icelandic, swedish)
+ [] # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('letters', '.', '-', '\'', '¿', '?', '¡', '!');
+
+#$sortcase = "Aa";
+$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.am
new file mode 100644
index 00000000000..4d431bde4e5
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.am
@@ -0,0 +1,36 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.in
new file mode 100644
index 00000000000..82752c1a945
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/Makefile.in
@@ -0,0 +1,286 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/swedish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = \
+ cp1252.pl latin9.pl utf8.pl.in \
+ latin1.xdy
+
+CLEANFILES = \
+ cp1252.raw \
+ cp1252-doc.tex \
+ latin9.raw \
+ latin9-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/swedish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/swedish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/cp1252.pl b/Build/source/utils/xindy/make-rules/alphabets/swedish/cp1252.pl
new file mode 100755
index 00000000000..326feb22962
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/cp1252.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Swedish";
+$prefix = "sv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì'],['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['š','Š']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Å', ['å','Å']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/latin1.xdy b/Build/source/utils/xindy/make-rules/alphabets/swedish/latin1.xdy
new file mode 100644
index 00000000000..edffb7e8482
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/latin1.xdy
@@ -0,0 +1,298 @@
+;; Rules for xindy; generated by make-rules.pl
+;; language: Swedish
+
+(define-letter-group "A" :prefixes ("–"))
+(define-letter-group "B" :after "A" :prefixes ("š"))
+(define-letter-group "C" :after "B" :prefixes ("›"))
+(define-letter-group "D" :after "C" :prefixes ("¢"))
+(define-letter-group "E" :after "D" :prefixes ("©"))
+(define-letter-group "F" :after "E" :prefixes ("®"))
+(define-letter-group "G" :after "F" :prefixes ("¯"))
+(define-letter-group "H" :after "G" :prefixes ("³"))
+(define-letter-group "I" :after "H" :prefixes ("·"))
+(define-letter-group "J" :after "I" :prefixes ("¹"))
+(define-letter-group "K" :after "J" :prefixes ("»"))
+(define-letter-group "L" :after "K" :prefixes ("½"))
+(define-letter-group "M" :after "L" :prefixes ("Â"))
+(define-letter-group "N" :after "M" :prefixes ("Ã"))
+(define-letter-group "O" :after "N" :prefixes ("É"))
+(define-letter-group "P" :after "O" :prefixes ("Ì"))
+(define-letter-group "Q" :after "P" :prefixes ("Í"))
+(define-letter-group "R" :after "Q" :prefixes ("Î"))
+(define-letter-group "S" :after "R" :prefixes ("Ò"))
+(define-letter-group "T" :after "S" :prefixes ("Ú"))
+(define-letter-group "U" :after "T" :prefixes ("ß"))
+(define-letter-group "V" :after "U" :prefixes ("ã"))
+(define-letter-group "X" :after "V" :prefixes ("å"))
+(define-letter-group "Y" :after "X" :prefixes ("ç"))
+(define-letter-group "Z" :after "Y" :prefixes ("è"))
+(define-letter-group "Å" :after "Z" :prefixes ("ñ"))
+(define-letter-group "Ä" :after "Å" :prefixes ("ò"))
+(define-letter-group "Ö" :after "Ä" :prefixes ("ó"))
+
+(define-rule-set "sv-alphabetize"
+
+ :rules (("A" "–" :string)
+ ("a" "–" :string)
+ ("B" "š" :string)
+ ("b" "š" :string)
+ ("C" "›" :string)
+ ("c" "›" :string)
+ ("d" "¢" :string)
+ ("D" "¢" :string)
+ ("E" "©" :string)
+ ("e" "©" :string)
+ ("F" "®" :string)
+ ("f" "®" :string)
+ ("G" "¯" :string)
+ ("g" "¯" :string)
+ ("h" "³" :string)
+ ("H" "³" :string)
+ ("I" "·" :string)
+ ("i" "·" :string)
+ ("j" "¹" :string)
+ ("J" "¹" :string)
+ ("K" "»" :string)
+ ("k" "»" :string)
+ ("L" "½" :string)
+ ("l" "½" :string)
+ ("M" "Â" :string)
+ ("m" "Â" :string)
+ ("N" "Ã" :string)
+ ("n" "Ã" :string)
+ ("O" "É" :string)
+ ("o" "É" :string)
+ ("P" "Ì" :string)
+ ("p" "Ì" :string)
+ ("Q" "Í" :string)
+ ("q" "Í" :string)
+ ("R" "Î" :string)
+ ("r" "Î" :string)
+ ("S" "Ò" :string)
+ ("s" "Ò" :string)
+ ("ß" "ÒÒ" :string)
+ ("T" "Ú" :string)
+ ("t" "Ú" :string)
+ ("u" "ß" :string)
+ ("U" "ß" :string)
+ ("V" "ã" :string)
+ ("w" "ã" :string)
+ ("W" "ã" :string)
+ ("v" "ã" :string)
+ ("X" "å" :string)
+ ("x" "å" :string)
+ ("Y" "ç" :string)
+ ("y" "ç" :string)
+ ("Z" "è" :string)
+ ("z" "è" :string)
+ ("Å" "ñ" :string)
+ ("å" "ñ" :string)
+ ("Ä" "ò" :string)
+ ("ä" "ò" :string)
+ ("Ö" "ó" :string)
+ ("ö" "ó" :string)
+ ))
+
+(define-rule-set "sv-resolve-diacritics"
+
+ :rules (("A" "¢" :string)
+ ("B" "¢" :string)
+ ("C" "¢" :string)
+ ("Ä" "¢" :string)
+ ("D" "¢" :string)
+ ("Å" "¢" :string)
+ ("E" "¢" :string)
+ ("F" "¢" :string)
+ ("G" "¢" :string)
+ ("H" "¢" :string)
+ ("I" "¢" :string)
+ ("J" "¢" :string)
+ ("K" "¢" :string)
+ ("L" "¢" :string)
+ ("M" "¢" :string)
+ ("N" "¢" :string)
+ ("O" "¢" :string)
+ ("P" "¢" :string)
+ ("Q" "¢" :string)
+ ("R" "¢" :string)
+ ("S" "¢" :string)
+ ("T" "¢" :string)
+ ("U" "¢" :string)
+ ("Ö" "¢" :string)
+ ("V" "¢" :string)
+ ("z" "¢" :string)
+ ("X" "¢" :string)
+ ("Y" "¢" :string)
+ ("Z" "¢" :string)
+ ("a" "¢" :string)
+ ("b" "¢" :string)
+ ("c" "¢" :string)
+ ("ä" "¢" :string)
+ ("d" "¢" :string)
+ ("å" "¢" :string)
+ ("e" "¢" :string)
+ ("f" "¢" :string)
+ ("g" "¢" :string)
+ ("h" "¢" :string)
+ ("i" "¢" :string)
+ ("j" "¢" :string)
+ ("k" "¢" :string)
+ ("l" "¢" :string)
+ ("m" "¢" :string)
+ ("n" "¢" :string)
+ ("o" "¢" :string)
+ ("p" "¢" :string)
+ ("q" "¢" :string)
+ ("r" "¢" :string)
+ ("s" "¢" :string)
+ ("t" "¢" :string)
+ ("u" "¢" :string)
+ ("ö" "¢" :string)
+ ("v" "¢" :string)
+ ("x" "¢" :string)
+ ("y" "¢" :string)
+ ("W" "£" :string)
+ ("w" "£" :string)
+ ("ß" "ÿ" :string)
+ ))
+
+(define-rule-set "sv-resolve-case"
+
+ :rules (("z" "0" :string)
+ ("y" "0" :string)
+ ("x" "0" :string)
+ ("w" "0" :string)
+ ("v" "0" :string)
+ ("ö" "0" :string)
+ ("u" "0" :string)
+ ("t" "0" :string)
+ ("s" "0" :string)
+ ("r" "0" :string)
+ ("q" "0" :string)
+ ("p" "0" :string)
+ ("o" "0" :string)
+ ("n" "0" :string)
+ ("m" "0" :string)
+ ("l" "0" :string)
+ ("k" "0" :string)
+ ("j" "0" :string)
+ ("i" "0" :string)
+ ("h" "0" :string)
+ ("g" "0" :string)
+ ("f" "0" :string)
+ ("e" "0" :string)
+ ("å" "0" :string)
+ ("d" "0" :string)
+ ("ä" "0" :string)
+ ("c" "0" :string)
+ ("b" "0" :string)
+ ("a" "0" :string)
+ ("ß" "00" :string)
+ ("Z" "1" :string)
+ ("Y" "1" :string)
+ ("X" "1" :string)
+ ("W" "1" :string)
+ ("V" "1" :string)
+ ("Ö" "1" :string)
+ ("U" "1" :string)
+ ("T" "1" :string)
+ ("S" "1" :string)
+ ("R" "1" :string)
+ ("Q" "1" :string)
+ ("P" "1" :string)
+ ("O" "1" :string)
+ ("N" "1" :string)
+ ("M" "1" :string)
+ ("L" "1" :string)
+ ("K" "1" :string)
+ ("J" "1" :string)
+ ("I" "1" :string)
+ ("H" "1" :string)
+ ("G" "1" :string)
+ ("F" "1" :string)
+ ("E" "1" :string)
+ ("Å" "1" :string)
+ ("D" "1" :string)
+ ("Ä" "1" :string)
+ ("C" "1" :string)
+ ("B" "1" :string)
+ ("A" "1" :string)
+ ))
+
+(define-rule-set "sv-ignore-special"
+
+ :rules (("!" "" :string)
+ ("'" "" :string)
+ ("-" "" :string)
+ ("." "" :string)
+ ("?" "" :string)
+ ))
+
+(define-rule-set "sv-resolve-special"
+
+ :rules (("?" "¡" :string)
+ ("!" "¢" :string)
+ ("." "£" :string)
+ ("B" "¤" :string)
+ ("C" "¤" :string)
+ ("Ä" "¤" :string)
+ ("D" "¤" :string)
+ ("Å" "¤" :string)
+ ("E" "¤" :string)
+ ("F" "¤" :string)
+ ("G" "¤" :string)
+ ("H" "¤" :string)
+ ("I" "¤" :string)
+ ("J" "¤" :string)
+ ("K" "¤" :string)
+ ("L" "¤" :string)
+ ("M" "¤" :string)
+ ("N" "¤" :string)
+ ("O" "¤" :string)
+ ("P" "¤" :string)
+ ("Q" "¤" :string)
+ ("R" "¤" :string)
+ ("S" "¤" :string)
+ ("T" "¤" :string)
+ ("U" "¤" :string)
+ ("Ö" "¤" :string)
+ ("V" "¤" :string)
+ ("W" "¤" :string)
+ ("X" "¤" :string)
+ ("Y" "¤" :string)
+ ("Z" "¤" :string)
+ ("a" "¤" :string)
+ ("b" "¤" :string)
+ ("c" "¤" :string)
+ ("ä" "¤" :string)
+ ("d" "¤" :string)
+ ("å" "¤" :string)
+ ("e" "¤" :string)
+ ("f" "¤" :string)
+ ("g" "¤" :string)
+ ("h" "¤" :string)
+ ("i" "¤" :string)
+ ("j" "¤" :string)
+ ("k" "¤" :string)
+ ("l" "¤" :string)
+ ("m" "¤" :string)
+ ("n" "¤" :string)
+ ("o" "¤" :string)
+ ("p" "¤" :string)
+ ("q" "¤" :string)
+ ("r" "¤" :string)
+ ("s" "¤" :string)
+ ("t" "¤" :string)
+ ("u" "¤" :string)
+ ("ö" "¤" :string)
+ ("v" "¤" :string)
+ ("w" "¤" :string)
+ ("x" "¤" :string)
+ ("y" "¤" :string)
+ ("z" "¤" :string)
+ ("A" "¤" :string)
+ ("ß" "¤¤" :string)
+ ("-" "¥" :string)
+ ("'" "¦" :string)
+ ))
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/latin9.pl b/Build/source/utils/xindy/make-rules/alphabets/swedish/latin9.pl
new file mode 100755
index 00000000000..e2cfa4e924e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/latin9.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Swedish";
+$prefix = "sv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Á'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ð']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Í'],['ì','Ì'],['î','Î'],['ï','Ï']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] ],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S'],['¨','¦']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ý'],['ü','Ü']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Å', ['å','Å']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/swedish/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/swedish/utf8.pl.in
new file mode 100644
index 00000000000..31047626676
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/swedish/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Swedish";
+$prefix = "sv";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['á','Ã'],['à','À'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C'],['ç','Ç']@u{,['ć','Ć'],['Ä','ÄŒ']}],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D'],['ð','Ã']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['é','É'],['è','È'],['ê','Ê'],['ë','Ë']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['í','Ã'],['ì','ÃŒ'],['î','ÃŽ'],['ï','Ã']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']@u{,['Å‚','Å']}],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N'],@u{['ń','Ń'],}['ñ','Ñ']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ó','Ó'],['ò','Ò'],['ô','Ô']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R'] @u{,['ř','Ř']}],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']@u{,['Å›','Åš']},['Å¡','Å ']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['ú','Ú'],['ù','Ù'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V'], ['w','W']],
+ [], # w (many)
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ý','Ã'],['ü','Ãœ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+['Ã…', ['Ã¥','Ã…']],
+['Ä', ['ä','Ä'],['æ','Æ']],
+['Ö', ['ö','Ö'],['ø','Ø']],
+ [] # a with ring above (icelandic)
+];
+
+#$sortcase = 'Aa';
+$sortcase = 'aA';
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]]
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/test.xdy b/Build/source/utils/xindy/make-rules/alphabets/test.xdy
new file mode 100644
index 00000000000..a843dafb8dd
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/test.xdy
@@ -0,0 +1,82 @@
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.am
new file mode 100644
index 00000000000..6878a837154
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.am
@@ -0,0 +1,28 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = test1.pl
+
+
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.in
new file mode 100644
index 00000000000..e9ec67a7ced
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/test1/Makefile.in
@@ -0,0 +1,274 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/test1
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = test1.pl
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/test1/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/test1/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/test1/test1.pl b/Build/source/utils/xindy/make-rules/alphabets/test1/test1.pl
new file mode 100755
index 00000000000..cf74233784b
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/test1/test1.pl
@@ -0,0 +1,166 @@
+#!/usr/bin/perl
+
+# a string describing the language (to be exact, the sorting order)
+$language = "Test1";
+$prefix = "xx";
+$script = "latin";
+
+# Technically speaking, $alphabet is (a reference to) an array of arrays of
+# arrays. Sounds complicated? Don't worry! Explanation follows:
+
+# Every line describes one letter of the alphabet (in all its variants).
+# The first string is the name of the letter; this appears in the heading of
+# letter groups (when defined with the proper markup). Currently the maximum
+# number of letters is limited to 95. A future expansion up to 223 letters
+# should be no problem.
+
+# Next follows a sequence of arrays, delimited by commas. Each of these arrays
+# describes one variant of the letter with different diacritical marks
+# (accents). The order of those describes the sorting order if two words
+# appear which differ only in the diacritical variant of this letter.
+# Currently the maximum supported number of diacritical variants of one letter
+# is 93.
+
+# Each of these arrays contains first the lowercase variant of the letter,
+# followed by uppercase variant(s). You might wonder: How can there be other
+# than one uppercase variant? Consider the letter combination `ch': Uppercase
+# variants here are: `Ch' and `CH'. Also, in some character sets there might
+# not exist an uppercase variant of a letter, e.g. the letter `ÿ' in the
+# ISO-8859-1 character set. In this case we just leave it out.
+
+# The sum of the number of uppercase and lowercase variants of one diacritical
+# version of a letter should be 10 or less. (In case of `ch' it is 3:
+# `ch', `Ch' and `CH')
+
+# There can be empty arrays [] which are called slots. They are used for
+# mixing alphabets of different languages.
+
+# In order to merge several letters into on letter group, give them the same
+# letter-group name. (see 'c' and 'ch').
+
+$alphabet = [
+['A', ['a','A'], ['á','Á']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+['C', ['c','C']],
+['C', ['ch','Ch','CH']],
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # eth (icelandic)
+['E', ['e','E'], ['é','É']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'], ['í','Í']],
+ [], # i with circumflex (kurdish, romanian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+['Ll', ['ll','Ll','LL']],
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+['Ñ', ['ñ','Ñ']],
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+['O', ['o','O'], ['ó','Ó']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'], [], ['ú','Ú'], ['ü','Ü']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [] # o with diaeresis (finnish, swedish)
+];
+
+# The next should be pretty easy:
+# It means: 'ß' is a ligature which is sorted like the letter sequence `ss'
+# but in case two words differs only there, the word with 'ß' comes after the
+# one with 'ss' (e.g. Masse, Maße.)
+
+# The same with Ä/ä, only this time with uppercase/lowercase variants.
+# The order of the lines in $ligatures does not matter.
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+[['Ä','ä'], 'before', [['A','e'], ['a','e']]],
+[['Ö','ö'], 'before', [['O','e'], ['o','e']]]
+];
+
+# `special' are those characters which are normally ignored in the sorting
+# process, but e.g. to sort the words "coop" and "co-op" we must also define
+# an order here.
+
+@special = ('?', '!', '.', 'letters', '-', '\'', '\\/');
+
+# first lower or upper case?
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+#@letter_group_names = ('A','B','C','Ch','D','E','F','G','H','I','J','K',
+#'L','Ll','M','N','Ñ','O','P','Q','R','S','T','U','V','W','X','Y','Z');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.am
new file mode 100644
index 00000000000..12469864954
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = latin3.pl latin5.pl utf8.pl.in
+
+CLEANFILES = \
+ latin3.raw \
+ latin3-doc.tex \
+ latin5.raw \
+ latin5-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.in
new file mode 100644
index 00000000000..1fb4e7facf3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/turkish/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/turkish
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = latin3.pl latin5.pl utf8.pl.in
+CLEANFILES = \
+ latin3.raw \
+ latin3-doc.tex \
+ latin5.raw \
+ latin5-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/turkish/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/turkish/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/turkish/latin3.pl b/Build/source/utils/xindy/make-rules/alphabets/turkish/latin3.pl
new file mode 100755
index 00000000000..a8caa256069
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/turkish/latin3.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Turkish";
+$prefix = "tr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+['«', ['»','«']],
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['¹','I']],
+['©', ['i','©']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['ª', ['º','ª']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/turkish/latin5.pl b/Build/source/utils/xindy/make-rules/alphabets/turkish/latin5.pl
new file mode 100755
index 00000000000..5a5920adca8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/turkish/latin5.pl
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Turkish";
+$prefix = "tr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+['Ð', ['ð','Ð']],
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['ý','I']],
+['Ý', ['i','Ý']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Þ', ['þ','Þ']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/turkish/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/turkish/utf8.pl.in
new file mode 100644
index 00000000000..e81b9fc619f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/turkish/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Turkish";
+$prefix = "tr";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['â','Â']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditional)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+['Ç', ['ç','Ç']],
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+ [], # e with caron (lower/upper sorbian)
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+['Äž', ['ÄŸ','Äž']],
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+['I', ['ı','I']],
+['Ä°', ['i','Ä°']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+ [], # o with acute (polish, upper sorbian)
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+['Ö', ['ö','Ö']],
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+['Åž', ['ÅŸ','Åž']],
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian)
+['U', ['u','U'],['û','Û']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+['Ü', ['ü','Ü']],
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.am
new file mode 100644
index 00000000000..f8d99422527
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1251.pl koi8-u.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ koi8-u.raw \
+ koi8-u-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.in
new file mode 100644
index 00000000000..0df9b6d773f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/ukrainian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1251.pl koi8-u.pl utf8.pl.in
+CLEANFILES = \
+ cp1251.raw \
+ cp1251-doc.tex \
+ koi8-u.raw \
+ koi8-u-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/ukrainian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/ukrainian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/ukrainian/cp1251.pl b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/cp1251.pl
new file mode 100755
index 00000000000..1d86ae253a4
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/cp1251.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Ukrainian";
+$prefix = "uk";
+$script = "cyrillic";
+
+$alphabet = [
+['À', ['à','À']],
+['Á', ['á','Á']],
+['Â', ['â','Â']],
+['Ã', ['ã','Ã']],
+['¥', ['´','¥']],
+['Ä', ['ä','Ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Å', ['å','Å'],['¸','¨']],
+ [], # io (mongolian)
+['ª', ['º','ª']],
+['Æ', ['æ','Æ']],
+['Ç', ['ç','Ç']],
+ [], # dze (macedonian)
+['È', ['è','È']],
+['²', ['³','²']],
+['¯', ['¿','¯']],
+['É', ['é','É']],
+ [], # je (macedonian, serbian)
+['Ê', ['ê','Ê']],
+['Ë', ['ë','Ë']],
+ [], # lje (macedonian, serbian)
+['Ì', ['ì','Ì']],
+['Í', ['í','Í']],
+ [], # nje (macedonian, serbian)
+['Î', ['î','Î']],
+ [], # barred o (mongolian)
+['Ï', ['ï','Ï']],
+['Ð', ['ð','Ð']],
+['Ñ', ['ñ','Ñ']],
+['Ò', ['ò','Ò']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['Ó', ['ó','Ó']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ô', ['ô','Ô']],
+['Õ', ['õ','Õ']],
+['Ö', ['ö','Ö']],
+['×', ['÷','×']],
+ [], # dzhe (macedonian, serbian)
+['Ø', ['ø','Ø']],
+['Ù', ['ù','Ù']],
+['Ú', ['ú','Ú']],
+['Û', ['û','Û']],
+ [], # soft sign (many)
+ [],
+['Ý', ['ý','Ý']],
+['Þ', ['þ','Þ']],
+['ß', ['ÿ','ß']],
+['Ü', ['ü','Ü']],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/ukrainian/koi8-u.pl b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/koi8-u.pl
new file mode 100755
index 00000000000..b176a3be1fb
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/koi8-u.pl
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Ukrainian";
+$prefix = "uk";
+$script = "cyrillic";
+
+$alphabet = [
+['á', ['Á','á']],
+['â', ['Â','â']],
+['÷', ['×','÷']],
+['ç', ['Ç','ç']],
+['½', ['­','½']],
+['ä', ['Ä','ä']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['å', ['Å','å'],['£','³']],
+ [], # io (mongolian)
+['´', ['¤','´']],
+['ö', ['Ö','ö']],
+['ú', ['Ú','ú']],
+ [], # dze (macedonian)
+['é', ['É','é']],
+['¶', ['¦','¶']],
+['·', ['§','·']],
+['ê', ['Ê','ê']],
+ [], # je (macedonian, serbian)
+['ë', ['Ë','ë']],
+['ì', ['Ì','ì']],
+ [], # lje (macedonian, serbian)
+['í', ['Í','í']],
+['î', ['Î','î']],
+ [], # nje (macedonian, serbian)
+['ï', ['Ï','ï']],
+ [], # barred o (mongolian)
+['ð', ['Ð','ð']],
+['ò', ['Ò','ò']],
+['ó', ['Ó','ó']],
+['ô', ['Ô','ô']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['õ', ['Õ','õ']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['æ', ['Æ','æ']],
+['è', ['È','è']],
+['ã', ['Ã','ã']],
+['þ', ['Þ','þ']],
+ [], # dzhe (macedonian, serbian)
+['û', ['Û','û']],
+['ý', ['Ý','ý']],
+['ÿ', ['ß','ÿ']],
+['ù', ['Ù','ù']],
+ [], # soft sign (many)
+ [],
+['ü', ['Ü','ü']],
+['à', ['À','à']],
+['ñ', ['Ñ','ñ']],
+['ø', ['Ø','ø']],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/ukrainian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/utf8.pl.in
new file mode 100644
index 00000000000..2fbb2cf0c12
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/ukrainian/utf8.pl.in
@@ -0,0 +1,72 @@
+#!/usr/bin/perl
+
+$language = "Ukrainian";
+$prefix = "uk";
+$script = "cyrillic";
+
+$alphabet = [
+['Ð', ['а','Ð']],
+['Б', ['б','Б']],
+['В', ['в','В']],
+['Г', ['г','Г']],
+['Ò', ['Ò‘','Ò']],
+['Д', ['д','Д']],
+ [], # dje (serbian)
+ [], # gje (macedonian)
+['Е', ['е','Е'],['Ñ‘','Ð']],
+ [], # io (mongolian)
+['Є', ['є','Є']],
+['Ж', ['ж','Ж']],
+['З', ['з','З']],
+ [], # dze (macedonian)
+['И', ['и','И']],
+['І', ['і','І']],
+['Ї', ['ї','Ї']],
+['Й', ['й','Й']],
+ [], # je (macedonian, serbian)
+['К', ['к','К']],
+['Л', ['л','Л']],
+ [], # lje (macedonian, serbian)
+['М', ['м','М']],
+['Ð', ['н','Ð']],
+ [], # nje (macedonian, serbian)
+['О', ['о','О']],
+ [], # barred o (mongolian)
+['П', ['п','П']],
+['Р', ['р','Р']],
+['С', ['Ñ','С']],
+['Т', ['т','Т']],
+ [], # tshe (serbian)
+ [], # kje (macedonian)
+['У', ['у','У']],
+ [], # short u (belarusian)
+ [], # straight u (mongolian)
+['Ф', ['ф','Ф']],
+['Ð¥', ['Ñ…','Ð¥']],
+['Ц', ['ц','Ц']],
+['Ч', ['ч','Ч']],
+ [], # dzhe (macedonian, serbian)
+['Ш', ['ш','Ш']],
+['Щ', ['щ','Щ']],
+['Ъ', ['ъ','Ъ']],
+['Ы', ['ы','Ы']],
+ [], # soft sign (many)
+ [],
+['Э', ['Ñ','Э']],
+['Ю', ['ю','Ю']],
+['Я', ['Ñ','Я']],
+['Ь', ['ь','Ь']],
+ [],
+ [],
+ []
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.am
new file mode 100644
index 00000000000..b8338cda68a
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.in
new file mode 100644
index 00000000000..37f14ba78e2
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/Makefile.in
@@ -0,0 +1,283 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/upper-sorbian
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = cp1250.pl latin2.pl utf8.pl.in
+CLEANFILES = \
+ cp1250.raw \
+ cp1250-doc.tex \
+ latin2.raw \
+ latin2-doc.tex \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/upper-sorbian/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/upper-sorbian/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl
new file mode 100755
index 00000000000..2fcc96646f6
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/cp1250.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Upper Sorbian";
+$prefix = "s2";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+['DŸ', ['dŸ','DŸ','D']],
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Ì', ['ì','Ì']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['£', ['³','£']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Š', ['š','Š']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+['Æ', ['æ','Æ']],
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/latin2.pl b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/latin2.pl
new file mode 100755
index 00000000000..902c3f4b3eb
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/latin2.pl
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Upper Sorbian";
+$prefix = "s2";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['È', ['è','È']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+['D¼', ['d¼','D¼','D¬']],
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Ì', ['ì','Ì']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['£', ['³','£']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ñ', ['ñ','Ñ']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ø', ['ø','Ø']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['©', ['¹','©']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+['Æ', ['æ','Æ']],
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['®', ['¾','®']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/utf8.pl.in
new file mode 100644
index 00000000000..a080b27b6f8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/upper-sorbian/utf8.pl.in
@@ -0,0 +1,145 @@
+#!/usr/bin/perl
+
+$language = "Upper Sorbian";
+$prefix = "s2";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A']],
+ [], # a with breve (romanian)
+ [], # a with circumflex (romanian)
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (many)
+ [], # cs (hungarian)
+['ÄŒ', ['Ä','ÄŒ']],
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+['Dź', ['dź','Dź','DŹ']],
+ [], # d with caron (slovak/large)
+ [], # d with stroke (croatian)
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E']],
+['Äš', ['Ä›','Äš']],
+ [], # e with circumflex (kurdish)
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+['Ch', ['ch','Ch','CH']],
+ [], # dotless i (turkish)
+['I', ['i','I']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+['Å', ['Å‚','Å']],
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditional)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+['Ń', ['ń','Ń']],
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O']],
+['Ó', ['ó','Ó']],
+ [], # o with circumflex (vietnamese)
+ [], # o with horn (vietnamese)
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+['Ř', ['ř','Ř']],
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+['Å ', ['Å¡','Å ']],
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+['Ć', ['ć','Ć']],
+['U', ['u','U']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+ [], # u with horn (vietnamese)
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+['Ž', ['ž','Ž']],
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$ligatures = [
+[['ß'], 'after', [['s','s']]],
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+$sortcase = "Aa";
+#$sortcase = "aA";
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/alphabets/utf8-to-tex.sed b/Build/source/utils/xindy/make-rules/alphabets/utf8-to-tex.sed
new file mode 100644
index 00000000000..a4f12463d9f
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/utf8-to-tex.sed
@@ -0,0 +1,105 @@
+# $Id: utf8-to-tex.sed,v 1.8 2001/04/01 18:03:18 thenlich Exp $
+# translate UTF-8 to something that TeX understands
+# for russian transliteration:
+s/Ä/\\v c/g;
+s/Č/\\v C/g;
+s/Ä—/\\.e/g;
+s/Ä–/\\.E/g;
+s/è/\\`e/g;
+s/È/\\`E/g;
+s/ë/\\"e/g;
+s/Ë/\\"E/g;
+s/ï/\\"i/g;
+s/Ã/\\"I/g;
+s/Å¡/\\v s/g;
+s/Å /\\v S/g;
+s/ž/\\v z/g;
+s/Ž/\\v Z/g;
+s/″/$\\\'\\\'$/g;
+s/′/$\\\'$/g;
+s/Å/\\^s/g;
+s/Ŝ/\\^S/g;
+s/û/\\^u/g;
+s/Û/\\^U/g;
+s/â/\\^a/g;
+s/Â/\\^A/g;
+# greek:
+s/Ä“/\\=e/g;
+s/Ä’/\\=E/g;
+s/Å/\\=o/g;
+s/Ō/\\=O/g;
+# turkish:
+s/ç/\\c c/g;
+s/Ç/\\c C/g;
+s/ÄŸ/\\u g/g;
+s/Äž/\\u G/g;
+s/ı/\\i/g;
+s/Ä°/\\.I/g;
+s/ö/\\"o/g;
+s/Ö/\\"O/g;
+s/ÅŸ/\\c s/g;
+s/Åž/\\c S/g;
+s/ü/\\"u/g;
+s/Ü/\\"U/g;
+# esperanto:
+s/ĉ/\\^c/g;
+s/Ĉ/\\^C/g;
+s/Ä/\\^g/g;
+s/Ĝ/\\^G/g;
+s/Ä¥/\\^h/g;
+s/Ĥ/\\^H/g;
+s/ĵ/\\^\\j/g;
+s/Ä´/\\^J/g;
+s/Å­/\\u u/g;
+s/Ŭ/\\u U/g;
+# german:
+s/ä/\\"a/g;
+s/Ä/\\"A/g;
+s/ß/\\ss{}/g;
+# romanian:
+s/È™/\\ooalign{s\\crcr\\hidewidth\\raise-.3ex\\hbox{\\scriptsize,}\\hidewidth}/g;
+s/Ș/\\ooalign{S\\crcr\\hidewidth\\raise-.3ex\\hbox{\\scriptsize,}\\hidewidth}/g;
+s/È›/\\ooalign{t\\crcr\\hidewidth\\raise-.25ex\\hbox{\\scriptsize,}\\hidewidth}/g;
+s/Èš/\\ooalign{T\\crcr\\hidewidth\\raise-.25ex\\hbox{\\scriptsize,}\\hidewidth}/g;
+s/ă/\\u a/g;
+s/Ä‚/\\u A/g;
+s/î/\\^\\i/g;
+s/ÃŽ/\\^I/g;
+# dutch:
+s/é/\\\\\\\'e/g;
+s/É/\\\\\\\'E/g;
+s/ij/ij/g;
+s/IJ/IJ/g;
+# croatian:
+s/ć/\\\\\\\'c/g;
+s/Ć/\\\\\\\'C/g;
+s/Ä‘/\\dj{}/g;
+s/Ä/\\DJ{}/g;
+s/dž/d\\v z/g;
+s/Ç…/D\\v z/g;
+s/Ç„/D\\v Z/g;
+s/lj/lj/g;
+s/Lj/Lj/g;
+s/LJ/LJ/g;
+s/nj/nj/g;
+s/Ç‹/Nj/g;
+s/ÇŠ/NJ/g;
+s/dz/dz/g;
+s/Dz/Dz/g;
+s/DZ/DZ/g;
+# kurdish:
+s/ê/\\^e/g;
+s/Ê/\\^E/g;
+# lithuanian:
+s/Ä…/\\k a/g;
+s/Ä„/\\k A/g;
+s/Ä™/\\k e/g;
+s/Ę/\\k E/g;
+s/Ä—/\\.e/g;
+s/Ä–/\\.E/g;
+s/į/\\k i/g;
+s/Ä®/\\k I/g;
+s/ų/\\k u/g;
+s/Ų/\\k U/g;
+s/Å«/\\=u/g;
+s/Ū/\\=U/g;
diff --git a/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.am b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.am
new file mode 100644
index 00000000000..335df3f4f71
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+EXTRA_DIST = utf8.pl.in
+
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+
+
+
diff --git a/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.in b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.in
new file mode 100644
index 00000000000..86656abcc8c
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/Makefile.in
@@ -0,0 +1,279 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/alphabets/vietnamese
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+EXTRA_DIST = utf8.pl.in
+CLEANFILES = \
+ utf8.raw \
+ utf8-doc.tex
+
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/alphabets/vietnamese/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/alphabets/vietnamese/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/alphabets/vietnamese/utf8.pl.in b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/utf8.pl.in
new file mode 100644
index 00000000000..db7c6569c5e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/alphabets/vietnamese/utf8.pl.in
@@ -0,0 +1,144 @@
+#!/usr/bin/perl
+
+$language = "Vietnamese";
+$prefix = "vi";
+$script = "latin";
+
+$alphabet = [
+['A', ['a','A'],['à','À'],['á','Ã'],['ạ','Ạ'],['ả','Ả'],['ã','Ã']],
+['Ă', ['ă','Ă'],['ằ','Ằ'],['ắ','Ắ'],['ặ','Ặ'],['ẳ','Ẳ'],['ẵ','Ẵ']],
+['Â', ['â','Â'],['ầ','Ầ'],['ấ','Ấ'],['ậ','Ậ'],['ẩ','Ẩ'],['ẫ','Ẫ']],
+ [], # a with ogonek (polish)
+['B', ['b','B']],
+ [], # b with hook (hausa)
+['C', ['c','C']],
+ [], # ch (spanish/traditonal)
+ [], # cs (hungarian)
+ [], # c with caron (many)
+ [], # c with acute (croatian, lower sorbian, polish)
+ [], # c with circumflex (esperanto)
+ [], # c with cedilla (albanian, kurdish, turkish)
+['D', ['d','D']],
+ [], # dh (albanian)
+ [], # dz (hungarian)
+ [], # dzs (hungarian)
+ [], # d+z with caron (croatian)
+ [], # d+z with acute (upper sorbian)
+ [], # d with caron (slovak/large)
+['Ä', ['Ä‘','Ä']],
+ [], # d with hook (hausa)
+ [], # eth (icelandic)
+['E', ['e','E'],['è','È'],['é','É'],['ẹ','Ẹ'],['ẻ','Ẻ'],['ẽ','Ẽ']],
+ [], # e with caron (lower/upper sorbian)
+['Ê', ['ê','Ê'],['á»','Ề'],['ế','Ế'],['ệ','Ệ'],['ể','Ể'],['á»…','Ễ']],
+ [], # e with diaeresis (albanian)
+ [], # e with ogonek (polish)
+['F', ['f','F']],
+['G', ['g','G']],
+ [], # gj (albanian)
+ [], # gy (hungarian)
+ [], # g with circumflex (esperanto)
+ [], # g with breve (turkish)
+ [], # g with cedilla/comma (latvian)
+ [], # postpalatal fricative (gypsy/northrussian)
+['H', ['h','H']],
+ [], # h with circumflex (esperanto)
+ [], # ch (many)
+ [], # dotless i (turkish)
+['I', ['i','I'],['ì','ÃŒ'],['í','Ã'],['ị','Ị'],['ỉ','Ỉ'],['Ä©','Ĩ']],
+ [], # i with inverted breve below (gypsy/northrussian)
+ [], # i with circumflex (kurdish, romanian)
+ [], # i with diaeresis (gypsy/northrussian)
+['J', ['j','J']],
+ [], # j with circumflex (esperanto)
+['K', ['k','K']],
+ [], # kh (gypsy/northrussian)
+ [], # k with cedilla/comma (latvian)
+ [], # k with hook (hausa)
+ [], # x (gypsy/northrussian)
+ [], # l with stroke (lower/upper sorbian)
+['L', ['l','L']],
+ [], # lj (croatian)
+ [], # ll (albanian, spanish/traditonal)
+ [], # ly (hungarian)
+ [], # l with cedilla/comma (latvian)
+ [], # l with stroke (polish)
+ [], # l with caron (slovak/large)
+['M', ['m','M']],
+['N', ['n','N']],
+ [], # nj (albanian, croatian)
+ [], # ny (hungarian)
+ [], # n with caron (slovak/large)
+ [], # n with acute (lower/upper sorbian, polish)
+ [], # n with tilde (spanish/modern, spanish/traditional)
+ [], # n with cedilla/comma (latvian)
+['O', ['o','O'],['ò','Ã’'],['ó','Ó'],['á»','Ọ'],['á»','Ỏ'],['õ','Õ']],
+ [], # o with acute (polish, upper sorbian)
+['Ô', ['ô','Ô'],['ồ','á»’'],['ố','á»'],['á»™','Ộ'],['ổ','á»”'],['á»—','á»–']],
+['Æ ', ['Æ¡','Æ '],['á»','Ờ'],['á»›','Ớ'],['ợ','Ợ'],['ở','Ở'],['ỡ','á» ']],
+ [], # o with diaeresis (hungarian, turkish)
+['P', ['p','P']],
+ [], # ph (gypsy/northrussian)
+['Q', ['q','Q']],
+['R', ['r','R']],
+ [], # rr (albanian)
+ [], # r with caron (czech, slovak/large, upper sorbian)
+ [], # r with acute (lower sorbian)
+ [], # r with cedilla/comma (latvian)
+['S', ['s','S']],
+ [], # sh (albanian)
+ [], # sz (hungarian)
+ [], # s with caron (many)
+ [], # s with acute (lower sorbian, polish)
+ [], # s with circumflex (esperanto)
+ [], # s with comma below (romanian)
+ [], # s with cedilla (kurdish, turkish)
+ [], # z (estonian)
+ [], # z with caron (estonian)
+['T', ['t','T']],
+ [], # th (albanian)
+ [], # ty (hungarian)
+ [], # t with caron (slovak/large)
+ [], # t with comma below (romanian)
+ [], # c with acute (upper sorbian) @@
+['U', ['u','U'],['ù','Ù'],['ú','Ú'],['ụ','Ụ'],['ủ','Ủ'],['ũ','Ũ']],
+ [], # u with breve (esperanto)
+ [], # u with circumflex (kurdish)
+['Ư', ['ư','Ư'],['ừ','Ừ'],['ứ','Ứ'],['ự','Ự'],['ử','Ử'],['ữ','Ữ']],
+ [], # u with diaeresis (hungarian, turkish)
+['V', ['v','V']],
+['W', ['w','W']],
+ [], # o with tilde (estonian)
+ [], # a with diaeresis (estonian)
+ [], # o with diaeresis (estonian)
+ [], # u with diaeresis (estonian)
+['X', ['x','X']],
+ [], # xh (albanian)
+['Y', ['y','Y'],['ỳ','Ỳ'],['ý','Ã'],['ỵ','á»´'],['á»·','Ỷ'],['ỹ','Ỹ']],
+ [], # y preceded by apostrophe (hausa)
+ [], # yogh (english)
+['Z', ['z','Z']],
+ [], # zh (albanian)
+ [], # zs (hungarian)
+ [], # z with caron (many)
+ [], # z with acute (lower sorbian, polish)
+ [], # z with dot above (polish)
+ [], # thorn (icelandic)
+ [], # wynn (english)
+ [], # ligature ae (danish, icelandic, norwegian)
+ [], # o with stroke (danish, norwegian)
+ [], # a with ring above (danish, norwegian, swedish)
+ [], # a with diaeresis (finnish, swedish)
+ [], # o with diaeresis (finnish, swedish)
+ [], # a with ring above (icelandic)
+];
+
+$sortcase = 'Aa';
+#$sortcase = 'aA';
+
+$ligatures = [
+];
+
+@special = ('?', '!', '.', 'letters', '-', '\'');
+
+do 'make-rules.pl';
diff --git a/Build/source/utils/xindy/make-rules/inputenc/Makefile.am b/Build/source/utils/xindy/make-rules/inputenc/Makefile.am
new file mode 100644
index 00000000000..89ad78ebb03
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/inputenc/Makefile.am
@@ -0,0 +1,142 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+inputencdir = $(modulesdir)/tex/inputenc
+
+INPUTENCS = \
+ cp1250.xdy \
+ cp1251.xdy \
+ cp1252.xdy \
+ cp437.xdy \
+ cp850.xdy \
+ cp855.xdy \
+ cp866.xdy \
+ iso88595.xdy \
+ isoir111.xdy \
+ koi8-r.xdy \
+ koi8-u.xdy \
+ latin.xdy \
+ latin1.xdy \
+ latin2.xdy \
+ latin3.xdy
+
+latin.xdy : latin1.xdy latin2.xdy latin3.xdy
+ echo ';; Generated at' `date` 'from latin?.xdy' >latin.xdy
+ echo >>latin.xdy
+ sort -u latin?.xdy | grep -v '^;' >>latin.xdy
+
+%.xdy %.idx :
+ perl ./make-testidx.pl TS1,T2A,T1 $* >$*.tex
+ latex $*.tex
+ perl ./make-inp-rules.pl <$*.idx >$*.xdy
+
+PERLSCRIPTS = \
+ make-inp-rules.pl \
+ make-testidx.pl
+
+
+AUXS = \
+ cp1250.aux \
+ cp1251.aux \
+ cp1252.aux \
+ cp437.aux \
+ cp850.aux \
+ cp855.aux \
+ cp866.aux \
+ iso88595.aux \
+ isoir111.aux \
+ koi8-r.aux \
+ koi8-u.aux \
+ latin1.aux \
+ latin2.aux \
+ latin3.aux
+
+DVIS = \
+ cp1250.dvi \
+ cp1251.dvi \
+ cp1252.dvi \
+ cp437.dvi \
+ cp850.dvi \
+ cp855.dvi \
+ cp866.dvi \
+ iso88595.dvi \
+ isoir111.dvi \
+ koi8-r.dvi \
+ koi8-u.dvi \
+ latin1.dvi \
+ latin2.dvi \
+ latin3.dvi
+
+IDXS = \
+ cp1250.idx \
+ cp1251.idx \
+ cp1252.idx \
+ cp437.idx \
+ cp850.idx \
+ cp855.idx \
+ cp866.idx \
+ iso88595.idx \
+ isoir111.idx \
+ koi8-r.idx \
+ koi8-u.idx \
+ latin1.idx \
+ latin2.idx \
+ latin3.idx
+
+LOGS = \
+ cp1250.log \
+ cp1251.log \
+ cp1252.log \
+ cp437.log \
+ cp850.log \
+ cp855.log \
+ cp866.log \
+ iso88595.log \
+ isoir111.log \
+ koi8-r.log \
+ koi8-u.log \
+ latin1.log \
+ latin2.log \
+ latin3.log
+
+TEXS = \
+ cp1250.tex \
+ cp1251.tex \
+ cp1252.tex \
+ cp437.tex \
+ cp850.tex \
+ cp855.tex \
+ cp866.tex \
+ iso88595.tex \
+ isoir111.tex \
+ koi8-r.tex \
+ koi8-u.tex \
+ latin1.tex \
+ latin2.tex \
+ latin3.tex
+
+EXTRA_DIST = $(PERLSCRIPTS)
+
+CLEANFILES = $(AUXS) $(DVIS) $(IDXS) $(INPUTENCS) $(LOGS) $(TEXS)
+
+nodist_inputenc_DATA = $(INPUTENCS)
diff --git a/Build/source/utils/xindy/make-rules/inputenc/Makefile.in b/Build/source/utils/xindy/make-rules/inputenc/Makefile.in
new file mode 100644
index 00000000000..c544ee147e8
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/inputenc/Makefile.in
@@ -0,0 +1,421 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/inputenc
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(inputencdir)"
+nodist_inputencDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(nodist_inputenc_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+inputencdir = $(modulesdir)/tex/inputenc
+INPUTENCS = \
+ cp1250.xdy \
+ cp1251.xdy \
+ cp1252.xdy \
+ cp437.xdy \
+ cp850.xdy \
+ cp855.xdy \
+ cp866.xdy \
+ iso88595.xdy \
+ isoir111.xdy \
+ koi8-r.xdy \
+ koi8-u.xdy \
+ latin.xdy \
+ latin1.xdy \
+ latin2.xdy \
+ latin3.xdy
+
+PERLSCRIPTS = \
+ make-inp-rules.pl \
+ make-testidx.pl
+
+AUXS = \
+ cp1250.aux \
+ cp1251.aux \
+ cp1252.aux \
+ cp437.aux \
+ cp850.aux \
+ cp855.aux \
+ cp866.aux \
+ iso88595.aux \
+ isoir111.aux \
+ koi8-r.aux \
+ koi8-u.aux \
+ latin1.aux \
+ latin2.aux \
+ latin3.aux
+
+DVIS = \
+ cp1250.dvi \
+ cp1251.dvi \
+ cp1252.dvi \
+ cp437.dvi \
+ cp850.dvi \
+ cp855.dvi \
+ cp866.dvi \
+ iso88595.dvi \
+ isoir111.dvi \
+ koi8-r.dvi \
+ koi8-u.dvi \
+ latin1.dvi \
+ latin2.dvi \
+ latin3.dvi
+
+IDXS = \
+ cp1250.idx \
+ cp1251.idx \
+ cp1252.idx \
+ cp437.idx \
+ cp850.idx \
+ cp855.idx \
+ cp866.idx \
+ iso88595.idx \
+ isoir111.idx \
+ koi8-r.idx \
+ koi8-u.idx \
+ latin1.idx \
+ latin2.idx \
+ latin3.idx
+
+LOGS = \
+ cp1250.log \
+ cp1251.log \
+ cp1252.log \
+ cp437.log \
+ cp850.log \
+ cp855.log \
+ cp866.log \
+ iso88595.log \
+ isoir111.log \
+ koi8-r.log \
+ koi8-u.log \
+ latin1.log \
+ latin2.log \
+ latin3.log
+
+TEXS = \
+ cp1250.tex \
+ cp1251.tex \
+ cp1252.tex \
+ cp437.tex \
+ cp850.tex \
+ cp855.tex \
+ cp866.tex \
+ iso88595.tex \
+ isoir111.tex \
+ koi8-r.tex \
+ koi8-u.tex \
+ latin1.tex \
+ latin2.tex \
+ latin3.tex
+
+EXTRA_DIST = $(PERLSCRIPTS)
+CLEANFILES = $(AUXS) $(DVIS) $(IDXS) $(INPUTENCS) $(LOGS) $(TEXS)
+nodist_inputenc_DATA = $(INPUTENCS)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/inputenc/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/inputenc/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-nodist_inputencDATA: $(nodist_inputenc_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(inputencdir)" || $(mkdir_p) "$(DESTDIR)$(inputencdir)"
+ @list='$(nodist_inputenc_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(nodist_inputencDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(inputencdir)/$$f'"; \
+ $(nodist_inputencDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(inputencdir)/$$f"; \
+ done
+
+uninstall-nodist_inputencDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(nodist_inputenc_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(inputencdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(inputencdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(inputencdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-nodist_inputencDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-nodist_inputencDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-nodist_inputencDATA install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-info-am \
+ uninstall-nodist_inputencDATA
+
+
+latin.xdy : latin1.xdy latin2.xdy latin3.xdy
+ echo ';; Generated at' `date` 'from latin?.xdy' >latin.xdy
+ echo >>latin.xdy
+ sort -u latin?.xdy | grep -v '^;' >>latin.xdy
+
+%.xdy %.idx :
+ perl ./make-testidx.pl TS1,T2A,T1 $* >$*.tex
+ latex $*.tex
+ perl ./make-inp-rules.pl <$*.idx >$*.xdy
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/inputenc/make-inp-rules.pl b/Build/source/utils/xindy/make-rules/inputenc/make-inp-rules.pl
new file mode 100755
index 00000000000..af418797b38
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/inputenc/make-inp-rules.pl
@@ -0,0 +1,31 @@
+#!/usr/bin/perl
+
+print <<"EOF";
+;; this file was generated by make-inp-rules.pl
+;; these rules map inputenc generated macros (back) to 8-bit characters
+
+EOF
+
+
+while (<STDIN>) {
+ if (/\\indexentry{(.+)--([8-9a-f][0-9a-f])\}\{1\}/) {
+ if (!($1 =~ /inputenc Error/)) {
+ $i = hex($2);
+ $macro = $1;
+ $macro =~ s/\~/~~/g;
+ $macro =~ s/\"/~\"/g;
+ printf("(merge-rule \"%s\" \"%c\" :string)\n",
+ $macro, $i);
+ if (@ARGV[0] eq "cyracc" &&
+ $macro =~ /(cyra |cyre |cyri |cyro |cyru |cyrerev |cyryu |cyrya )/i) {
+ printf("(merge-rule \"\\'{%s}\" \"\\'%c\" :string)\n",
+ $macro, $i);
+ }
+ }
+ }
+}
+
+print <<"EOF";
+
+;; end of style file.
+EOF
diff --git a/Build/source/utils/xindy/make-rules/inputenc/make-testidx.pl b/Build/source/utils/xindy/make-rules/inputenc/make-testidx.pl
new file mode 100755
index 00000000000..5faf3beed9e
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/inputenc/make-testidx.pl
@@ -0,0 +1,20 @@
+#!/usr/bin/perl
+
+print <<"EOF";
+\\documentclass{article}
+% this file was generated by make-testidx.pl
+\\usepackage[@ARGV[0]]{fontenc}
+\\usepackage[@ARGV[1]]{inputenc}
+\\makeindex
+\\begin{document}
+% test of index writing with inputenc
+.
+EOF
+
+for ($i = 128; $i < 256; $i++) {
+ printf("\\index{%c--%2x}\n", $i, $i);
+}
+
+print <<"EOF";
+\\end{document}
+EOF
diff --git a/Build/source/utils/xindy/make-rules/makeindex.sh b/Build/source/utils/xindy/make-rules/makeindex.sh
new file mode 100755
index 00000000000..4891f08f445
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/makeindex.sh
@@ -0,0 +1,354 @@
+#!/bin/sh
+#
+# This script is at the same time the documentation for the
+# localization architecture used in Xindy/make-rules.
+# (c) 2001 Martin Vermeer
+#
+# Print out help text:
+#
+if [ "$1" = "" ] ; then
+ echo ""
+ echo "Syntax:"
+ echo " ./makeindex.sh [[-v <var>] [-e <enc>] -m <lang>]* [-d <dp>] [-s <style>] <myindex>"
+ echo ""
+ echo " where <myindex> is the index file name *without* extension."
+ echo ""
+ echo "Multiple -m options allowed; -m always after corresponding -v, -e."
+ echo ""
+ echo "Languages <lang>:"
+ echo " albanian"
+ echo " belarusian finnish swedish"
+ echo " bulgarian french hungarian"
+ echo " icelandic norwegian latin"
+ echo " croatian general polish"
+ echo " portuguese romanian slovenian"
+ echo " czech german russian"
+ echo " danish greek serbian"
+ echo " english slovak ukrainian"
+ echo " esperanto macedonian spanish"
+ echo " turkish kurdish georgian"
+ echo " estonian latvian lithuanian"
+ echo " gypsy hausa hebrew"
+ echo " gypsy hausa hebrew"
+ echo " upper-sorbian lower-sorbian klingon"
+ echo " mongolian vietnamese"
+ echo ""
+ echo "Variants <var>:"
+ echo " german: duden, din5007"
+ echo " spanish: traditional, modern"
+ echo " slovak: large, small"
+ echo " gypsy: northrussian"
+ echo " kurdish: turkish-i, bedirxan"
+ echo " mongolian: cyrillic"
+ echo ""
+ echo "Docprocessors <dp>:"
+ echo " -t : -d tex"
+ echo " -n : -d nroff"
+ echo ""
+ echo "Styles <style>:"
+ echo " -s <style>"
+ echo " -s makeindex (default)"
+ exit 0
+fi
+
+LOC=""
+ENC=""
+VAR=""
+
+TEMP=`mktemp /tmp/xindy.XXXXXX` || exit 1
+
+echo "" >$TEMP.xdy
+
+# Default document processor and index style
+#
+DP="tex"
+STYLE="makeindex"
+
+while getopts "m:v:d:e:tnls:" OPT
+do
+ case "$OPT" in
+ "m")
+ LOC="$OPTARG"
+ # Language two-letter codes following ISO-639-1
+ case $LOC in
+ "english")
+ ENC_="ascii"
+ PRE="en"
+ ;;
+ "finnish")
+ ENC_="cp1252"
+ PRE="fi"
+ ;;
+ "german")
+ ENC_="latin1"
+ PRE="de"
+ VAR_="din5007-"
+ ;;
+ "belarusian")
+ ENC_="iso88595"
+ PRE="be"
+ ;;
+ "danish")
+ ENC_="latin1"
+ PRE="dk"
+ ;;
+ "french")
+ ENC_="latin9"
+ PRE="fr"
+ ;;
+ "bulgarian")
+ ENC_="iso88595"
+ PRE="bg"
+ ;;
+ "croatian")
+ ENC_="latin2"
+ PRE="hr"
+ ;;
+ "czech")
+ ENC_="latin2"
+ PRE="cs"
+ ;;
+ "esperanto")
+ ENC_="latin3"
+ PRE="eo"
+ ;;
+ "greek")
+ ENC_="iso88597"
+ PRE="el"
+ ;;
+ "macedonian")
+ ENC_="latin2"
+ PRE="mk"
+ ;;
+ "norwegian")
+ ENC_="latin1"
+ PRE="no"
+ ;;
+ "polish")
+ ENC_="latin2"
+ PRE="pl"
+ ;;
+ "russian")
+ ENC_="koi8-r"
+ PRE="ru"
+ ;;
+ "serbian")
+ ENC_="iso88595"
+ PRE="sr"
+ ;;
+ "slovak")
+ ENC_="latin2"
+ PRE="sk"
+ VAR_="small-"
+ ;;
+ "spanish")
+ ENC_="latin1"
+ PRE="es"
+ VAR_="traditional-"
+ ;;
+ "swedish")
+ ENC_="latin1"
+ PRE="se"
+ ;;
+ "ukrainian")
+ ENC_="koi8-u"
+ PRE="uk"
+ ;;
+ "albanian")
+ ENC_="latin1"
+ PRE="sq"
+ ;;
+ "hungarian")
+ ENC_="latin2"
+ PRE="hu"
+ ;;
+ "icelandic")
+ ENC_="latin1"
+ PRE="is"
+ ;;
+ "lower-sorbian")
+ ENC_="latin2"
+ PRE="s1"
+ ;;
+ "upper-sorbian")
+ ENC_="latin2"
+ PRE="s2"
+ ;;
+ "portuguese")
+ ENC_="latin1"
+ PRE="pt"
+ ;;
+ "romanian")
+ ENC_="latin2"
+ PRE="ro"
+ ;;
+ "slovenian")
+ ENC_="latin2"
+ PRE="sl"
+ ;;
+ "turkish")
+ ENC_="latin5"
+ PRE="tr"
+ ;;
+ "dutch")
+ ENC_="latin1"
+ PRE="nl"
+ ;;
+ "estonian")
+ ENC_="latin1"
+ PRE="et"
+ ;;
+ "georgian")
+ ENC_="georgian"
+ PRE="ka"
+ ;;
+ "gypsy")
+ ENC_="utf8"
+ PRE="g1"
+ VAR="northrussian-"
+ ;;
+ "hausa")
+ ENC_="utf8"
+ PRE="ha"
+ ;;
+ "hebrew")
+ ENC_="iso88598"
+ PRE="iw"
+ ;;
+ "italian")
+ ENC_="latin1"
+ PRE="it"
+ ;;
+ "klingon")
+ ENC_="utf8"
+ PRE="kl"
+ ;;
+ "kurdish")
+ ENC_="latin5"
+ PRE="kl"
+ VAR="turkish-i-"
+ ;;
+ "latin")
+ ENC_="utf8"
+ PRE="la"
+ ;;
+ "latvian")
+ ENC_="latin4"
+ PRE="lv"
+ ;;
+ "lithuanian")
+ ENC_="latin4"
+ PRE="lt"
+ ;;
+ "mongolian")
+ ENC_="utf8"
+ PRE="mn"
+ VAR="cyrillic-"
+ ;;
+ "vietnamese")
+ ENC_="utf8"
+ PRE="vi"
+ ;;
+ esac
+ IGNORESPECIAL="$IGNORESPECIAL \"$PRE-ignore-special\""
+ ALPHABETIZE="$ALPHABETIZE \"$PRE-alphabetize\""
+ RESOLVEDIACRITICS="$RESOLVEDIACRITICS \"$PRE-resolve-diacritics\""
+ RESOLVECASE="$RESOLVECASE \"$PRE-resolve-case\""
+ RESOLVESPECIAL="$RESOLVESPECIAL \"$PRE-resolve-special\""
+ if [ "$ENC" = "" ] ; then
+ ENC=$ENC_
+ fi
+ if [ "$VAR" = "" ] ; then
+ VAR=$VAR_
+ fi
+
+ #
+ # ** Create file(s) containing locale-related req's: **
+ #
+ # This file contains:
+ # - the document processor specific stuff that was not
+ # generated (correctly) automatically;
+ # - a call to inputenc/<encoding>.xdy, which was generated
+ # automatically by make-enc-rules.pl.
+ # This file is *created by hand for every language*
+ # (and doc processor, variant and encoding)
+ #
+ echo "(require \"lang/$LOC/$DP-$VAR$ENC.xdy\")" >>$TEMP.xdy
+ #
+ # This file will contain the language and encoding and variant
+ # specific stuff. Nothing document specific here. Generated
+ # automatically by make-rules.pl.
+ #
+ echo "(require \"lang/$LOC/$VAR$ENC.xdy\")" >>$TEMP.xdy
+
+ ENC=""
+ VAR=""
+ ;;
+ "v")
+ VAR="$OPTARG-"
+ ;;
+ "d")
+ DP="$OPTARG"
+ ;;
+ "e")
+ ENC="$OPTARG"
+ ;;
+ "t")
+ DP="tex"
+ ;;
+ "n")
+ DP="nroff"
+ ;;
+ "l")
+ DP="lout"
+ ;;
+ "s")
+ STYLE="$OPTARG"
+ ;;
+ esac
+done
+
+#
+# Default language:
+#
+if [ "$LOC" = "" ] ; then
+ LOC="english"
+ ENC="ascii"
+ PRE="en"
+ IGNORESPECIAL="\"en-ignore-special\""
+ ALPHABETIZE="\"en-alphabetize\""
+ RESOLVEDIACRITICS="\"en-resolve-diacritics\""
+ RESOLVECASE="\"en-resolve-case\""
+ RESOLVESPECIAL="\"en-resolve-special\""
+ # Do this in the absence of -m options:
+ echo "(require \"lang/$LOC/$DP-$VAR$ENC.xdy\")" >>$TEMP.xdy
+ echo "(require \"lang/$LOC/$VAR$ENC.xdy\")" >>$TEMP.xdy
+
+fi
+
+shift $[$#-1]
+DATA=$1
+
+tex2xindy <$DATA.idx >$DATA.raw
+
+#
+# Language/variant sorting rules, possibly multi:
+#
+echo "(define-sort-rule-orientations (forward backward forward forward))" \
+ >>$TEMP.xdy
+echo "(use-rule-set :run 0 :rule-set \
+ ($ALPHABETIZE $IGNORESPECIAL))" >>$TEMP.xdy
+echo "(use-rule-set :run 1 :rule-set \
+ ($RESOLVEDIACRITICS $IGNORESPECIAL))" >>$TEMP.xdy
+echo "(use-rule-set :run 2 :rule-set \
+ ($RESOLVECASE $IGNORESPECIAL))" >>$TEMP.xdy
+echo "(use-rule-set :run 3 :rule-set \
+ ($RESOLVESPECIAL))" >>$TEMP.xdy
+
+#
+# The index style chosen:
+#
+echo "(require \"styles/$STYLE.xdy\")" >>$TEMP.xdy
+
+xindy $TEMP.xdy $DATA.raw
+
diff --git a/Build/source/utils/xindy/make-rules/styles/Makefile.am b/Build/source/utils/xindy/make-rules/styles/Makefile.am
new file mode 100644
index 00000000000..19694da2b84
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/styles/Makefile.am
@@ -0,0 +1,35 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+stylesdir = $(modulesdir)/styles
+
+STYLES = \
+ example.xdy \
+ makeindex.xdy \
+ vermeer.xdy
+
+EXTRA_DIST = $(STYLES)
+
+styles_DATA = $(STYLES)
+
+
diff --git a/Build/source/utils/xindy/make-rules/styles/Makefile.in b/Build/source/utils/xindy/make-rules/styles/Makefile.in
new file mode 100644
index 00000000000..18981ee0794
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/styles/Makefile.in
@@ -0,0 +1,312 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = make-rules/styles
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(stylesdir)"
+stylesDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(styles_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+stylesdir = $(modulesdir)/styles
+STYLES = \
+ example.xdy \
+ makeindex.xdy \
+ vermeer.xdy
+
+EXTRA_DIST = $(STYLES)
+styles_DATA = $(STYLES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign make-rules/styles/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign make-rules/styles/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-stylesDATA: $(styles_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(stylesdir)" || $(mkdir_p) "$(DESTDIR)$(stylesdir)"
+ @list='$(styles_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(stylesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(stylesdir)/$$f'"; \
+ $(stylesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(stylesdir)/$$f"; \
+ done
+
+uninstall-stylesDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(styles_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(stylesdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(stylesdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(stylesdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-stylesDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-stylesDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip install-stylesDATA installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-info-am uninstall-stylesDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/make-rules/styles/example.xdy b/Build/source/utils/xindy/make-rules/styles/example.xdy
new file mode 100644
index 00000000000..24d9e0fea89
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/styles/example.xdy
@@ -0,0 +1,101 @@
+;; read inputenc rules
+(require "tex/inputenc/latin1.xdy")
+
+;; read language-specific (and encoding-specific) rule-sets
+(require "lang/spanish/traditional-latin1.xdy")
+
+;; apply rules left-to-right or right-to-left?
+;; run 0 run 1 run 2 run 3
+(define-sort-rule-orientations (forward backward forward forward))
+
+;; define order of sorting runs
+(use-rule-set :run 0
+ :rule-set ("es-alphabetize" "es-ignore-special"))
+(use-rule-set :run 1
+ :rule-set ("es-resolve-diacritics" "es-ignore-special"))
+(use-rule-set :run 2
+ :rule-set ("es-resolve-case" "es-ignore-special"))
+(use-rule-set :run 3
+ :rule-set ("es-resolve-special"))
+
+;; define other stuff
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Build/source/utils/xindy/make-rules/styles/makeindex.xdy b/Build/source/utils/xindy/make-rules/styles/makeindex.xdy
new file mode 100644
index 00000000000..0e625a627f3
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/styles/makeindex.xdy
@@ -0,0 +1,89 @@
+
+;; This file defines the index style 'makeindex', the default.
+;; Here should ONLY be definitions that determine what a generated
+;; index should look like, NOT the locale or sorting order or
+;; document processor used.
+
+
+;; define other stuff
+(define-attributes ("default" "hyperpage"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+(markup-locref :open "\hyperpage{" :close "}{}" :attr "hyperpage")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n % ")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Build/source/utils/xindy/make-rules/styles/vermeer.xdy b/Build/source/utils/xindy/make-rules/styles/vermeer.xdy
new file mode 100644
index 00000000000..cd447ced72d
--- /dev/null
+++ b/Build/source/utils/xindy/make-rules/styles/vermeer.xdy
@@ -0,0 +1,89 @@
+
+;; This file defines the index style 'makeindex', the default.
+;; Here should ONLY be definitions that determine what a generated
+;; index should look like, NOT the locale or sorting order or
+;; document processor used.
+
+
+;; define other stuff
+(define-attributes ("default" "hyperpage"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+(markup-locref :open "\hyperpage{" :close "}{}" :attr "hyperpage")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; even though we comment out (%) the letter-group heading,
+;; the following is useful if you want to check the .ind-file
+(markup-letter-group :open-head "~n \textbf{[ " :close-head " ]}")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Build/source/utils/xindy/missing b/Build/source/utils/xindy/missing
new file mode 100755
index 00000000000..894e786e16c
--- /dev/null
+++ b/Build/source/utils/xindy/missing
@@ -0,0 +1,360 @@
+#! /bin/sh
+# Common stub for a few missing GNU programs while installing.
+
+scriptversion=2005-06-08.21
+
+# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005
+# Free Software Foundation, Inc.
+# Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2, or (at your option)
+# any later version.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
+# 02110-1301, USA.
+
+# As a special exception to the GNU General Public License, if you
+# distribute this file as part of a program that contains a
+# configuration script generated by Autoconf, you may include it under
+# the same distribution terms that you use for the rest of that program.
+
+if test $# -eq 0; then
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+fi
+
+run=:
+
+# In the cases where this matters, `missing' is being run in the
+# srcdir already.
+if test -f configure.ac; then
+ configure_ac=configure.ac
+else
+ configure_ac=configure.in
+fi
+
+msg="missing on your system"
+
+case "$1" in
+--run)
+ # Try to run requested program, and just exit if it succeeds.
+ run=
+ shift
+ "$@" && exit 0
+ # Exit code 63 means version mismatch. This often happens
+ # when the user try to use an ancient version of a tool on
+ # a file that requires a minimum version. In this case we
+ # we should proceed has if the program had been absent, or
+ # if --run hadn't been passed.
+ if test $? = 63; then
+ run=:
+ msg="probably too old"
+ fi
+ ;;
+
+ -h|--h|--he|--hel|--help)
+ echo "\
+$0 [OPTION]... PROGRAM [ARGUMENT]...
+
+Handle \`PROGRAM [ARGUMENT]...' for when PROGRAM is missing, or return an
+error status if there is no known handling for PROGRAM.
+
+Options:
+ -h, --help display this help and exit
+ -v, --version output version information and exit
+ --run try to run the given command, and emulate it if it fails
+
+Supported PROGRAM values:
+ aclocal touch file \`aclocal.m4'
+ autoconf touch file \`configure'
+ autoheader touch file \`config.h.in'
+ automake touch all \`Makefile.in' files
+ bison create \`y.tab.[ch]', if possible, from existing .[ch]
+ flex create \`lex.yy.c', if possible, from existing .c
+ help2man touch the output file
+ lex create \`lex.yy.c', if possible, from existing .c
+ makeinfo touch the output file
+ tar try tar, gnutar, gtar, then tar without non-portable flags
+ yacc create \`y.tab.[ch]', if possible, from existing .[ch]
+
+Send bug reports to <bug-automake@gnu.org>."
+ exit $?
+ ;;
+
+ -v|--v|--ve|--ver|--vers|--versi|--versio|--version)
+ echo "missing $scriptversion (GNU Automake)"
+ exit $?
+ ;;
+
+ -*)
+ echo 1>&2 "$0: Unknown \`$1' option"
+ echo 1>&2 "Try \`$0 --help' for more information"
+ exit 1
+ ;;
+
+esac
+
+# Now exit if we have it, but it failed. Also exit now if we
+# don't have it and --version was passed (most likely to detect
+# the program).
+case "$1" in
+ lex|yacc)
+ # Not GNU programs, they don't have --version.
+ ;;
+
+ tar)
+ if test -n "$run"; then
+ echo 1>&2 "ERROR: \`tar' requires --run"
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ exit 1
+ fi
+ ;;
+
+ *)
+ if test -z "$run" && ($1 --version) > /dev/null 2>&1; then
+ # We have it, but it failed.
+ exit 1
+ elif test "x$2" = "x--version" || test "x$2" = "x--help"; then
+ # Could not run --version or --help. This is probably someone
+ # running `$TOOL --version' or `$TOOL --help' to check whether
+ # $TOOL exists and not knowing $TOOL uses missing.
+ exit 1
+ fi
+ ;;
+esac
+
+# If it does not exist, or fails to run (possibly an outdated version),
+# try to emulate it.
+case "$1" in
+ aclocal*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acinclude.m4' or \`${configure_ac}'. You might want
+ to install the \`Automake' and \`Perl' packages. Grab them from
+ any GNU archive site."
+ touch aclocal.m4
+ ;;
+
+ autoconf)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`${configure_ac}'. You might want to install the
+ \`Autoconf' and \`GNU m4' packages. Grab them from any GNU
+ archive site."
+ touch configure
+ ;;
+
+ autoheader)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`acconfig.h' or \`${configure_ac}'. You might want
+ to install the \`Autoconf' and \`GNU m4' packages. Grab them
+ from any GNU archive site."
+ files=`sed -n 's/^[ ]*A[CM]_CONFIG_HEADER(\([^)]*\)).*/\1/p' ${configure_ac}`
+ test -z "$files" && files="config.h"
+ touch_files=
+ for f in $files; do
+ case "$f" in
+ *:*) touch_files="$touch_files "`echo "$f" |
+ sed -e 's/^[^:]*://' -e 's/:.*//'`;;
+ *) touch_files="$touch_files $f.in";;
+ esac
+ done
+ touch $touch_files
+ ;;
+
+ automake*)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified \`Makefile.am', \`acinclude.m4' or \`${configure_ac}'.
+ You might want to install the \`Automake' and \`Perl' packages.
+ Grab them from any GNU archive site."
+ find . -type f -name Makefile.am -print |
+ sed 's/\.am$/.in/' |
+ while read f; do touch "$f"; done
+ ;;
+
+ autom4te)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, but is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them.
+ You can get \`$1' as part of \`Autoconf' from any GNU
+ archive site."
+
+ file=`echo "$*" | sed -n 's/.*--output[ =]*\([^ ]*\).*/\1/p'`
+ test -z "$file" && file=`echo "$*" | sed -n 's/.*-o[ ]*\([^ ]*\).*/\1/p'`
+ if test -f "$file"; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo "#! /bin/sh"
+ echo "# Created by GNU Automake missing as a replacement of"
+ echo "# $ $@"
+ echo "exit 0"
+ chmod +x $file
+ exit 1
+ fi
+ ;;
+
+ bison|yacc)
+ echo 1>&2 "\
+WARNING: \`$1' $msg. You should only need it if
+ you modified a \`.y' file. You may need the \`Bison' package
+ in order for those modifications to take effect. You can get
+ \`Bison' from any GNU archive site."
+ rm -f y.tab.c y.tab.h
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.y)
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.c
+ fi
+ SRCFILE=`echo "$LASTARG" | sed 's/y$/h/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" y.tab.h
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f y.tab.h ]; then
+ echo >y.tab.h
+ fi
+ if [ ! -f y.tab.c ]; then
+ echo 'main() { return 0; }' >y.tab.c
+ fi
+ ;;
+
+ lex|flex)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.l' file. You may need the \`Flex' package
+ in order for those modifications to take effect. You can get
+ \`Flex' from any GNU archive site."
+ rm -f lex.yy.c
+ if [ $# -ne 1 ]; then
+ eval LASTARG="\${$#}"
+ case "$LASTARG" in
+ *.l)
+ SRCFILE=`echo "$LASTARG" | sed 's/l$/c/'`
+ if [ -f "$SRCFILE" ]; then
+ cp "$SRCFILE" lex.yy.c
+ fi
+ ;;
+ esac
+ fi
+ if [ ! -f lex.yy.c ]; then
+ echo 'main() { return 0; }' >lex.yy.c
+ fi
+ ;;
+
+ help2man)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a dependency of a manual page. You may need the
+ \`Help2man' package in order for those modifications to take
+ effect. You can get \`Help2man' from any GNU archive site."
+
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ file=`echo "$*" | sed -n 's/.*--output=\([^ ]*\).*/\1/p'`
+ fi
+ if [ -f "$file" ]; then
+ touch $file
+ else
+ test -z "$file" || exec >$file
+ echo ".ab help2man is required to generate this page"
+ exit 1
+ fi
+ ;;
+
+ makeinfo)
+ echo 1>&2 "\
+WARNING: \`$1' is $msg. You should only need it if
+ you modified a \`.texi' or \`.texinfo' file, or any other file
+ indirectly affecting the aspect of the manual. The spurious
+ call might also be the consequence of using a buggy \`make' (AIX,
+ DU, IRIX). You might want to install the \`Texinfo' package or
+ the \`GNU make' package. Grab either from any GNU archive site."
+ # The file to touch is that specified with -o ...
+ file=`echo "$*" | sed -n 's/.*-o \([^ ]*\).*/\1/p'`
+ if test -z "$file"; then
+ # ... or it is the one specified with @setfilename ...
+ infile=`echo "$*" | sed 's/.* \([^ ]*\) *$/\1/'`
+ file=`sed -n '/^@setfilename/ { s/.* \([^ ]*\) *$/\1/; p; q; }' $infile`
+ # ... or it is derived from the source name (dir/f.texi becomes f.info)
+ test -z "$file" && file=`echo "$infile" | sed 's,.*/,,;s,.[^.]*$,,'`.info
+ fi
+ # If the file does not exist, the user really needs makeinfo;
+ # let's fail without touching anything.
+ test -f $file || exit 1
+ touch $file
+ ;;
+
+ tar)
+ shift
+
+ # We have already tried tar in the generic part.
+ # Look for gnutar/gtar before invocation to avoid ugly error
+ # messages.
+ if (gnutar --version > /dev/null 2>&1); then
+ gnutar "$@" && exit 0
+ fi
+ if (gtar --version > /dev/null 2>&1); then
+ gtar "$@" && exit 0
+ fi
+ firstarg="$1"
+ if shift; then
+ case "$firstarg" in
+ *o*)
+ firstarg=`echo "$firstarg" | sed s/o//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ case "$firstarg" in
+ *h*)
+ firstarg=`echo "$firstarg" | sed s/h//`
+ tar "$firstarg" "$@" && exit 0
+ ;;
+ esac
+ fi
+
+ echo 1>&2 "\
+WARNING: I can't seem to be able to run \`tar' with the given arguments.
+ You may want to install GNU tar or Free paxutils, or check the
+ command line arguments."
+ exit 1
+ ;;
+
+ *)
+ echo 1>&2 "\
+WARNING: \`$1' is needed, and is $msg.
+ You might have modified some files without having the
+ proper tools for further handling them. Check the \`README' file,
+ it often tells you about the needed prerequisites for installing
+ this package. You may also peek at any GNU archive site, in case
+ some other package would contain this missing \`$1' program."
+ exit 1
+ ;;
+esac
+
+exit 0
+
+# Local variables:
+# eval: (add-hook 'write-file-hooks 'time-stamp)
+# time-stamp-start: "scriptversion="
+# time-stamp-format: "%:y-%02m-%02d.%02H"
+# time-stamp-end: "$"
+# End:
diff --git a/Build/source/utils/xindy/modules/Makefile.am b/Build/source/utils/xindy/modules/Makefile.am
new file mode 100644
index 00000000000..82ccb522fd9
--- /dev/null
+++ b/Build/source/utils/xindy/modules/Makefile.am
@@ -0,0 +1,22 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+SUBDIRS = base class lang ord rules styles
diff --git a/Build/source/utils/xindy/modules/Makefile.in b/Build/source/utils/xindy/modules/Makefile.in
new file mode 100644
index 00000000000..c60b3cfe21b
--- /dev/null
+++ b/Build/source/utils/xindy/modules/Makefile.in
@@ -0,0 +1,415 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = base class lang ord rules styles
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+ clean clean-generic clean-recursive ctags ctags-recursive \
+ distclean distclean-generic distclean-recursive distclean-tags \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/base/Makefile.am b/Build/source/utils/xindy/modules/base/Makefile.am
new file mode 100644
index 00000000000..d49e9ea1f95
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/Makefile.am
@@ -0,0 +1,48 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+basedir = $(modulesdir)/base
+
+RULES = \
+ book-order.xdy \
+ ff-ranges-only.xdy \
+ ff-ranges.xdy \
+ german-sty.xdy \
+ ignore-hyphen.xdy \
+ ignore-punctuation.xdy \
+ keep-blanks.xdy \
+ latex-loc-fmts.xdy \
+ latex.xdy \
+ latin-lettergroups.xdy \
+ letter-order.xdy \
+ makeindex.xdy \
+ numeric-sort.xdy \
+ page-ranges.xdy \
+ texindy.xdy \
+ tex.xdy \
+ word-order.xdy
+
+EXTRA_DIST = $(RULES)
+
+base_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/base/Makefile.in b/Build/source/utils/xindy/modules/base/Makefile.in
new file mode 100644
index 00000000000..3a79a1a2665
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/Makefile.in
@@ -0,0 +1,326 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/base
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(basedir)"
+baseDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(base_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+basedir = $(modulesdir)/base
+RULES = \
+ book-order.xdy \
+ ff-ranges-only.xdy \
+ ff-ranges.xdy \
+ german-sty.xdy \
+ ignore-hyphen.xdy \
+ ignore-punctuation.xdy \
+ keep-blanks.xdy \
+ latex-loc-fmts.xdy \
+ latex.xdy \
+ latin-lettergroups.xdy \
+ letter-order.xdy \
+ makeindex.xdy \
+ numeric-sort.xdy \
+ page-ranges.xdy \
+ texindy.xdy \
+ tex.xdy \
+ word-order.xdy
+
+EXTRA_DIST = $(RULES)
+base_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/base/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/base/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-baseDATA: $(base_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(basedir)" || $(mkdir_p) "$(DESTDIR)$(basedir)"
+ @list='$(base_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(baseDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(basedir)/$$f'"; \
+ $(baseDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(basedir)/$$f"; \
+ done
+
+uninstall-baseDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(base_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(basedir)/$$f'"; \
+ rm -f "$(DESTDIR)$(basedir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(basedir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-baseDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-baseDATA uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-baseDATA install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-baseDATA uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/base/book-order.xdy b/Build/source/utils/xindy/modules/base/book-order.xdy
new file mode 100644
index 00000000000..aa5d078987b
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/book-order.xdy
@@ -0,0 +1,24 @@
+;; $Id: book-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; book order scheme
+;;;
+
+;; NOTE: Assumes that makeindex.xdy has been loaded.
+
+(define-location-class-order ("roman-page-numbers"
+ "Roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Alpha-page-numbers"
+ "see"
+ "seealso"))
+
+
+;;======================================================================
+;;
+;; $Log: book-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/ff-ranges-only.xdy b/Build/source/utils/xindy/modules/base/ff-ranges-only.xdy
new file mode 100644
index 00000000000..451ae9ac472
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/ff-ranges-only.xdy
@@ -0,0 +1,25 @@
+;; $Id: ff-ranges-only.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ff ranges only
+;;;
+;;; Use "f" for two pages, "ff" notation for ranges of three and more pages
+;;;
+
+;; FIXME: This will output a warning about a redefinition if latex.xdy
+;; is already loaded. Which it is, most of the time. I don't want that
+;; message, and we should get rid of it.
+(define-location-class "arabic-page-numbers"
+ ("arabic-numbers") :min-range-length 1)
+
+(markup-range :sep "f" :length 1 :ignore-end :class "arabic-page-numbers")
+(markup-range :sep "ff" :ignore-end :class "arabic-page-numbers")
+
+
+;;======================================================================
+;;
+;; $Log: ff-ranges-only.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/ff-ranges.xdy b/Build/source/utils/xindy/modules/base/ff-ranges.xdy
new file mode 100644
index 00000000000..f38b55765a7
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/ff-ranges.xdy
@@ -0,0 +1,27 @@
+;; $Id: ff-ranges.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ff ranges
+;;;
+;;; Use "f" for two pages, "ff" notation for ranges of three pages,
+;;; and explicit ranges thereafter: 2f, 2ff, 2--6.
+;;;
+
+;; FIXME: This will output a warning about a redefinition if latex.xdy
+;; is already loaded. Which it is, most of the time. I don't want that
+;; message, and we should get rid of it.
+(define-location-class "arabic-page-numbers"
+ ("arabic-numbers") :min-range-length 1)
+
+(markup-range :sep "f" :length 1 :ignore-end)
+(markup-range :sep "ff" :length 2 :ignore-end)
+(markup-range :sep "--")
+
+
+;;======================================================================
+;;
+;; $Log: ff-ranges.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/german-sty.xdy b/Build/source/utils/xindy/modules/base/german-sty.xdy
new file mode 100644
index 00000000000..d0f4d367f18
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/german-sty.xdy
@@ -0,0 +1,24 @@
+;; $Id: german-sty.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; german sty
+;;;
+;;; Map special German TeX letters (german.sty) to 8-bit characters.
+;;;
+
+(merge-rule "~"A" "Ä" :again :string)
+(merge-rule "~"O" "Ö" :again :string)
+(merge-rule "~"U" "Ü" :again :string)
+(merge-rule "~"a" "ä" :again :string)
+(merge-rule "~"o" "ö" :again :string)
+(merge-rule "~"u" "ü" :again :string)
+(merge-rule "~"s" "ß" :again :string)
+
+
+;;======================================================================
+;;
+;; $Log: german-sty.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/ignore-hyphen.xdy b/Build/source/utils/xindy/modules/base/ignore-hyphen.xdy
new file mode 100644
index 00000000000..44d3743a48f
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/ignore-hyphen.xdy
@@ -0,0 +1,18 @@
+;; $Id: ignore-hyphen.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ignore hyphen scheme
+;;;
+;;; hyphens are ignored, "ad-hoc" is sorted as "adhoc".
+;;;
+
+(sort-rule "-" "")
+
+
+;;======================================================================
+;;
+;; $Log: ignore-hyphen.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/ignore-punctuation.xdy b/Build/source/utils/xindy/modules/base/ignore-punctuation.xdy
new file mode 100644
index 00000000000..051f2d63bc6
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/ignore-punctuation.xdy
@@ -0,0 +1,42 @@
+;; $Id: ignore-punctuation.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; ignore punctuation scheme
+;;;
+;;; all kind of punctuations are ignored during sorting
+;;;
+
+;; accents and other special characters (plus, etc) are not considered
+;; punctuations.
+
+(sort-rule "!" "")
+(sort-rule "\"" "")
+(sort-rule "/" "")
+(sort-rule "(" "")
+(sort-rule ")" "")
+(sort-rule "{" "")
+(sort-rule "}" "")
+(sort-rule "[" "")
+(sort-rule "]" "")
+(sort-rule "<" "")
+(sort-rule ">" "")
+(sort-rule "=" "")
+(sort-rule "?" "")
+(sort-rule "\\" "")
+(sort-rule "'" "")
+(sort-rule "|" "")
+(sort-rule "," "")
+(sort-rule ";" "")
+(sort-rule "." "")
+(sort-rule ":" "")
+(sort-rule "-" "")
+(sort-rule "_" "")
+
+
+;;======================================================================
+;;
+;; $Log: ignore-punctuation.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/keep-blanks.xdy b/Build/source/utils/xindy/modules/base/keep-blanks.xdy
new file mode 100644
index 00000000000..892b5d70468
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/keep-blanks.xdy
@@ -0,0 +1,40 @@
+;; $Id: keep-blanks.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; keep blanks
+;;;
+;;; Don't trim white space at start or end, and don't collapse white
+;;; space in an index key.
+;;;
+
+;; This does not work currently. White space compression is
+;; implemented by merge rules in tex.xdy; and we would need to undo
+;; these rules. An implementation possibility is the postponing of
+;; these merge rules and our ability to stop their activation. But
+;; this is not implemented yet. Either we need a method to delete a
+;; merge rule, or we need a hook in the kernel.
+
+;; FIXME: I must coerce the error string to a simple-string because we
+;; use a special reader syntax in index styles. This reader syntax
+;; parses C-like strings and creates character arrays, but not simple
+;; strings. Frankly, I don't know how I may code this more easily,
+;; perhaps by a reader macro?
+
+(base:oops (coerce "
+
+Module keep-blanks does not work currently, due to a missing
+functionality in the xindy kernel. Please contact the xindy mailing
+list for more information.
+
+" 'simple-string))
+
+(base:error-exit)
+
+
+;;======================================================================
+;;
+;; $Log: keep-blanks.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/latex-loc-fmts.xdy b/Build/source/utils/xindy/modules/base/latex-loc-fmts.xdy
new file mode 100644
index 00000000000..3a39a5c922b
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/latex-loc-fmts.xdy
@@ -0,0 +1,25 @@
+;; $Id: latex-loc-fmts.xdy,v 1.2 2006/08/31 00:10:59 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; Define default location attributes, and their markup.
+;;;
+
+;; Default attributes are all merged into one location group.
+(define-attributes (("default" "textbf" "textit" "hyperpage")))
+
+(markup-locref :open "\textbf{" :close "}" :attr "textbf")
+(markup-locref :open "\textit{" :close "}" :attr "textit")
+(markup-locref :open "\hyperpage{" :close "}" :attr "hyperpage")
+
+
+
+;;======================================================================
+;;
+;; $Log: latex-loc-fmts.xdy,v $
+;; Revision 1.2 2006/08/31 00:10:59 jschrod
+;; Ticket 1549661: Default attributes should be in the same location group.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/latex.xdy b/Build/source/utils/xindy/modules/base/latex.xdy
new file mode 100644
index 00000000000..e45dc67049d
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/latex.xdy
@@ -0,0 +1,83 @@
+;; $Id: latex.xdy,v 1.4 2008/01/09 15:13:29 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; LaTeX conventions
+;;;
+;;; both in raw index entries and output markup
+;;;
+
+
+;; We need to define merge rules for known macros first, as tex.xdy
+;; has a merge-rule that will discard all macros.
+
+(merge-rule "\\LaTeXe *" "LaTeX2e" :eregexp :again)
+(merge-rule "\\BibTeX *" "BibTeX" :eregexp :again)
+(merge-rule "\\AmSTeX *" "AmSTeX" :eregexp :again)
+(merge-rule "\\AmSLaTeX *" "AmSLaTeX" :eregexp :again)
+(merge-rule "\\XeT *" "XeT" :eregexp :again)
+
+
+;; LaTeX has the same conventions as TeX
+
+(require "tex.xdy")
+
+
+;; We do not define attributes, this is done in latex-loc-fmts.
+
+
+;; Standard location classes: arabic and roman numbers, and alphabets.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+
+;;;
+;;; Output Markup
+;;;
+
+(markup-index :open
+"\begin{theindex}
+ \providecommand*\lettergroupDefault[1]{}
+ \providecommand*\lettergroup[1]{%
+ \par\textbf{#1}\par
+ \nopagebreak
+ }
+"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+(markup-letter-group :open-head "~n % ")
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+(markup-locclass-list :open ", " :sep ", ")
+(markup-locref-list :sep ", ")
+
+
+
+
+;;======================================================================
+;;
+;; $Log: latex.xdy,v $
+;; Revision 1.4 2008/01/09 15:13:29 jschrod
+;; Configurable section headline for the Default letter group.
+;;
+;; Revision 1.3 2006/11/07 01:16:50 jschrod
+;; Prevent page break after letter group heading.
+;; Introduce a \lettergroup tag for that, which can be redefined
+;; by the user in an own theindex environment. (Ticket 1255990)
+;;
+;; Revision 1.2 2005/05/09 20:21:11 jschrod
+;; Support handling of some common macros for logos; ignore all other
+;; TeX commands.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/latin-lettergroups.xdy b/Build/source/utils/xindy/modules/base/latin-lettergroups.xdy
new file mode 100644
index 00000000000..5a48b871600
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/latin-lettergroups.xdy
@@ -0,0 +1,26 @@
+;; $Id: latin-lettergroups.xdy,v 1.3 2008/01/09 15:13:29 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; latin lettergroups
+;;;
+
+(markup-letter-group :open-head "~n \lettergroupDefault{" :close-head "}"
+ :group "default")
+(markup-letter-group :open-head "~n \lettergroup{" :close-head "}")
+
+
+;;======================================================================
+;;
+;; $Log: latin-lettergroups.xdy,v $
+;; Revision 1.3 2008/01/09 15:13:29 jschrod
+;; Configurable section headline for the Default letter group.
+;;
+;; Revision 1.2 2006/11/07 01:16:50 jschrod
+;; Prevent page break after letter group heading.
+;; Introduce a \lettergroup tag for that, which can be redefined
+;; by the user in an own theindex environment. (Ticket 1255990)
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/letter-order.xdy b/Build/source/utils/xindy/modules/base/letter-order.xdy
new file mode 100644
index 00000000000..810b96d16c0
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/letter-order.xdy
@@ -0,0 +1,18 @@
+;; $Id: letter-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; letter order scheme
+;;;
+;;; spaces are ignored, "index style" is sorted after "indexing".
+;;;
+
+(sort-rule " " "")
+
+
+;;======================================================================
+;;
+;; $Log: letter-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/makeindex.xdy b/Build/source/utils/xindy/modules/base/makeindex.xdy
new file mode 100644
index 00000000000..c859ecac651
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/makeindex.xdy
@@ -0,0 +1,46 @@
+;; $Id: makeindex.xdy,v 1.3 2006/08/30 23:35:43 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; MakeIndex behaviour
+;;;
+
+(define-crossref-class "see")
+;; \see takes two parameters, the second one is for the page number.
+;; We don't emit one in xindy, so we add an empty second argument.
+(markup-crossref-list :class "see" :open "\see{" :sep "; " :close "}{}")
+
+;; FIXME: This does not work properly. This should be for entries that
+;; have both a locref (e.g., the page number) and a cross reference.
+;; Currently, it works as if it's the same as \see, just with another
+;; macro.
+(define-crossref-class "seealso")
+(markup-crossref-list :class "seealso" :open "\seealso{" :sep "; " :close "}{}")
+
+;; Subentries in cross references are seperated by comma for all
+;; crossref classes.
+(markup-crossref-layer-list :sep ", ")
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"
+ "seealso"))
+
+
+
+;;======================================================================
+;;
+;; $Log: makeindex.xdy,v $
+;; Revision 1.3 2006/08/30 23:35:43 jschrod
+;; Ticket 1255983: Markup for multiple cross references and cross
+;; references to sub entries were missing.
+;;
+;; Revision 1.2 2005/05/09 20:19:15 jschrod
+;; Typo in seealso crossref class definition.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/numeric-sort.xdy b/Build/source/utils/xindy/modules/base/numeric-sort.xdy
new file mode 100644
index 00000000000..65c84206628
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/numeric-sort.xdy
@@ -0,0 +1,25 @@
+;; $Id: numeric-sort.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; numerically sorting
+;;;
+;;; "V64" appears before "V128".
+;;;
+
+;; FIXME: Works only for up to 7 digits.
+
+(merge-rule "[0-9][0-9][0-9][0-9][0-9][0-9]" "0&" :eregexp)
+(merge-rule "[0-9][0-9][0-9][0-9][0-9]" "00&" :eregexp)
+(merge-rule "[0-9][0-9][0-9][0-9]" "000&" :eregexp)
+(merge-rule "[0-9][0-9][0-9]" "0000&" :eregexp)
+(merge-rule "[0-9][0-9]" "00000&" :eregexp)
+(merge-rule "[0-9]" "000000&" :eregexp)
+
+
+;;======================================================================
+;;
+;; $Log: numeric-sort.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/page-ranges.xdy b/Build/source/utils/xindy/modules/base/page-ranges.xdy
new file mode 100644
index 00000000000..44ddeaa55b8
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/page-ranges.xdy
@@ -0,0 +1,18 @@
+;; $Id: page-ranges.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; page ranges
+;;;
+;;; More than two consecutive pages are listed as a range.
+;;;
+
+(markup-range :sep "--")
+
+
+;;======================================================================
+;;
+;; $Log: page-ranges.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/tex.xdy b/Build/source/utils/xindy/modules/base/tex.xdy
new file mode 100644
index 00000000000..d3c23cb3e56
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/tex.xdy
@@ -0,0 +1,71 @@
+;; $Id: tex.xdy,v 1.2 2005/05/09 20:21:11 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; TeX conventions
+;;;
+
+;; Discard leading and trailing white space. Collapse multiple white
+;; space characters to blank.
+;;
+;; FIXME: How do I specify tabs in that regexp? [ \t] does *not* work,
+;; it is taken as blank and t.
+;;
+;; FIXME: Definition of these rules should be postponed until we start
+;; with the actual work. Then they should be only issued if module
+;; keep-blanks is not loaded. Module keep-blanks would set a flag, and
+;; this code would check for it. We will need a hook in the kernel, to
+;; achieve that goal.
+;;
+;; FIXME: Regexps with start-anchored matches do not work. They match
+;; everywhere. We think it's better to not handle leading blanks than
+;; to make all blanks disappear, therefore the first rule is not
+;; activated.
+
+;(merge-rule "^ +" "" :eregexp)
+(merge-rule " +$" "" :eregexp)
+(merge-rule " +" " " :eregexp)
+
+
+;;
+;; Handle TeX markup
+;;
+
+
+;; First, some markup that produces output and that we want to keep.
+;; If this module is required, similar merge-rules for other markup
+;; that shall be kept must be defined first. Otherwise it will be
+;; discarded, by the default rule below.
+
+(merge-rule "\\([{}$%&#])" "\1" :eregexp)
+(merge-rule "~~" " ")
+(merge-rule "---?" "-")
+(merge-rule "\\TeX *" "TeX" :eregexp :again)
+(merge-rule "\\LaTeX *" "LaTeX" :eregexp :again)
+(merge-rule "\\MF *" "METAFONT" :eregexp :again)
+(merge-rule "\\MP *" "METAPOST" :eregexp :again)
+
+;; Ignore TeX commands by default. Some macros are known to be written
+;; to index files where the arguments must be ignored as well. Our
+;; argument parsing code is optimistic -- it will be possible to break
+;; it. Let's wait for an error report and repair it then... ;-)
+
+(merge-rule "\\discretionary *\{[^}]*\}\{[^}]*\}" "" :eregexp)
+(merge-rule "\\kern *[-\.0-9a-z]* ?" "" :eregexp)
+
+(merge-rule "\\[a-zA-Z@]+ *" "" :eregexp)
+(merge-rule "\\[^a-zA-Z@]" "" :eregexp)
+(merge-rule "^[{}$]" "" :eregexp)
+
+
+
+;;======================================================================
+;;
+;; $Log: tex.xdy,v $
+;; Revision 1.2 2005/05/09 20:21:11 jschrod
+;; Support handling of some common macros for logos; ignore all other
+;; TeX commands.
+;;
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/texindy.xdy b/Build/source/utils/xindy/modules/base/texindy.xdy
new file mode 100644
index 00000000000..a7e5ee8fbb2
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/texindy.xdy
@@ -0,0 +1,20 @@
+;; $Id: texindy.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; all auto modules of texindy.
+;;;
+
+(require "numeric-sort.xdy")
+(require "latex.xdy")
+(require "latex-loc-fmts.xdy")
+(require "makeindex.xdy")
+(require "latin-lettergroups.xdy")
+
+
+;;======================================================================
+;;
+;; $Log: texindy.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/base/word-order.xdy b/Build/source/utils/xindy/modules/base/word-order.xdy
new file mode 100644
index 00000000000..9741e2bd10e
--- /dev/null
+++ b/Build/source/utils/xindy/modules/base/word-order.xdy
@@ -0,0 +1,20 @@
+;; $Id: word-order.xdy,v 1.1 2004/05/24 21:53:27 jschrod Exp $
+;;------------------------------------------------------------
+
+;;;
+;;; word order scheme
+;;;
+;;; a space comes before any letter in the alphabet: "index style" is
+;;; listed before "indexing".
+
+; This is the default, we don't need any code for this behaviour.
+; In fact, this module just exists to satisfy the Companion
+; description... ;-)
+
+
+;;======================================================================
+;;
+;; $Log: word-order.xdy,v $
+;; Revision 1.1 2004/05/24 21:53:27 jschrod
+;; Standard modules, introduced in "LaTeX Companion Release".
+;;
diff --git a/Build/source/utils/xindy/modules/class/Makefile.am b/Build/source/utils/xindy/modules/class/Makefile.am
new file mode 100644
index 00000000000..e0483de723e
--- /dev/null
+++ b/Build/source/utils/xindy/modules/class/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+classdir = $(modulesdir)/class
+
+RULES = \
+ pagenums.xdy
+
+EXTRA_DIST = $(RULES)
+
+class_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/class/Makefile.in b/Build/source/utils/xindy/modules/class/Makefile.in
new file mode 100644
index 00000000000..6e50c9370a5
--- /dev/null
+++ b/Build/source/utils/xindy/modules/class/Makefile.in
@@ -0,0 +1,310 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/class
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(classdir)"
+classDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(class_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+classdir = $(modulesdir)/class
+RULES = \
+ pagenums.xdy
+
+EXTRA_DIST = $(RULES)
+class_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/class/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/class/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-classDATA: $(class_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(classdir)" || $(mkdir_p) "$(DESTDIR)$(classdir)"
+ @list='$(class_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(classDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(classdir)/$$f'"; \
+ $(classDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(classdir)/$$f"; \
+ done
+
+uninstall-classDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(class_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(classdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(classdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(classdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-classDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-classDATA uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-classDATA install-data install-data-am \
+ install-exec install-exec-am install-info install-info-am \
+ install-man install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-classDATA uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/class/pagenums.xdy b/Build/source/utils/xindy/modules/class/pagenums.xdy
new file mode 100644
index 00000000000..92f6b685da5
--- /dev/null
+++ b/Build/source/utils/xindy/modules/class/pagenums.xdy
@@ -0,0 +1,7 @@
+;; $Id: pagenums.xdy,v 1.1 1996/07/03 18:44:40 kehr Exp $
+;;
+;; This module defines the location-class "page-numbers"
+
+(define-location-class "page-numbers" ("arabic-numbers"))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/lang/Makefile.am b/Build/source/utils/xindy/modules/lang/Makefile.am
new file mode 100644
index 00000000000..62cf1b6f862
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/Makefile.am
@@ -0,0 +1,22 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+SUBDIRS = german latin
diff --git a/Build/source/utils/xindy/modules/lang/Makefile.in b/Build/source/utils/xindy/modules/lang/Makefile.in
new file mode 100644
index 00000000000..c03469108e3
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/Makefile.in
@@ -0,0 +1,415 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/lang
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \
+ html-recursive info-recursive install-data-recursive \
+ install-exec-recursive install-info-recursive \
+ install-recursive installcheck-recursive installdirs-recursive \
+ pdf-recursive ps-recursive uninstall-info-recursive \
+ uninstall-recursive
+ETAGS = etags
+CTAGS = ctags
+DIST_SUBDIRS = $(SUBDIRS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+SUBDIRS = german latin
+all: all-recursive
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/lang/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/lang/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+
+# This directory's subdirectories are mostly independent; you can cd
+# into them and run `make' without going through this Makefile.
+# To change the values of `make' variables: instead of editing Makefiles,
+# (1) if the variable is set in `config.status', edit `config.status'
+# (which will cause the Makefiles to be regenerated when you run `make');
+# (2) otherwise, pass the desired values on the `make' command line.
+$(RECURSIVE_TARGETS):
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ target=`echo $@ | sed s/-recursive//`; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ dot_seen=yes; \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done; \
+ if test "$$dot_seen" = "no"; then \
+ $(MAKE) $(AM_MAKEFLAGS) "$$target-am" || exit 1; \
+ fi; test -z "$$fail"
+
+mostlyclean-recursive clean-recursive distclean-recursive \
+maintainer-clean-recursive:
+ @failcom='exit 1'; \
+ for f in x $$MAKEFLAGS; do \
+ case $$f in \
+ *=* | --[!k]*);; \
+ *k*) failcom='fail=yes';; \
+ esac; \
+ done; \
+ dot_seen=no; \
+ case "$@" in \
+ distclean-* | maintainer-clean-*) list='$(DIST_SUBDIRS)' ;; \
+ *) list='$(SUBDIRS)' ;; \
+ esac; \
+ rev=''; for subdir in $$list; do \
+ if test "$$subdir" = "."; then :; else \
+ rev="$$subdir $$rev"; \
+ fi; \
+ done; \
+ rev="$$rev ."; \
+ target=`echo $@ | sed s/-recursive//`; \
+ for subdir in $$rev; do \
+ echo "Making $$target in $$subdir"; \
+ if test "$$subdir" = "."; then \
+ local_target="$$target-am"; \
+ else \
+ local_target="$$target"; \
+ fi; \
+ (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) $$local_target) \
+ || eval $$failcom; \
+ done && test -z "$$fail"
+tags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) tags); \
+ done
+ctags-recursive:
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ test "$$subdir" = . || (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) ctags); \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: tags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ if ($(ETAGS) --etags-include --version) >/dev/null 2>&1; then \
+ include_option=--etags-include; \
+ empty_fix=.; \
+ else \
+ include_option=--include; \
+ empty_fix=; \
+ fi; \
+ list='$(SUBDIRS)'; for subdir in $$list; do \
+ if test "$$subdir" = .; then :; else \
+ test ! -f $$subdir/TAGS || \
+ tags="$$tags $$include_option=$$here/$$subdir/TAGS"; \
+ fi; \
+ done; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: ctags-recursive $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-recursive
+all-am: Makefile
+installdirs: installdirs-recursive
+installdirs-am:
+install: install-recursive
+install-exec: install-exec-recursive
+install-data: install-data-recursive
+uninstall: uninstall-recursive
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-recursive
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-recursive
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-recursive
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-tags
+
+dvi: dvi-recursive
+
+dvi-am:
+
+html: html-recursive
+
+info: info-recursive
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-recursive
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-recursive
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-recursive
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-recursive
+
+pdf-am:
+
+ps: ps-recursive
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+uninstall-info: uninstall-info-recursive
+
+.PHONY: $(RECURSIVE_TARGETS) CTAGS GTAGS all all-am check check-am \
+ clean clean-generic clean-recursive ctags ctags-recursive \
+ distclean distclean-generic distclean-recursive distclean-tags \
+ dvi dvi-am html html-am info info-am install install-am \
+ install-data install-data-am install-exec install-exec-am \
+ install-info install-info-am install-man install-strip \
+ installcheck installcheck-am installdirs installdirs-am \
+ maintainer-clean maintainer-clean-generic \
+ maintainer-clean-recursive mostlyclean mostlyclean-generic \
+ mostlyclean-recursive pdf pdf-am ps ps-am tags tags-recursive \
+ uninstall uninstall-am uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/lang/german/Makefile.am b/Build/source/utils/xindy/modules/lang/german/Makefile.am
new file mode 100644
index 00000000000..99720f5c617
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/german/Makefile.am
@@ -0,0 +1,34 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+langdir = $(pkglibdir)/modules/lang
+
+germandir = $(langdir)/german
+
+RULES = \
+ din5007.xdy \
+ duden.xdy \
+ tex.xdy
+
+EXTRA_DIST = $(RULES)
+
+german_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/lang/german/Makefile.in b/Build/source/utils/xindy/modules/lang/german/Makefile.in
new file mode 100644
index 00000000000..d12b0aae5d2
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/german/Makefile.in
@@ -0,0 +1,313 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/lang/german
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(germandir)"
+germanDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(german_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+langdir = $(pkglibdir)/modules/lang
+germandir = $(langdir)/german
+RULES = \
+ din5007.xdy \
+ duden.xdy \
+ tex.xdy
+
+EXTRA_DIST = $(RULES)
+german_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/lang/german/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/lang/german/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-germanDATA: $(german_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(germandir)" || $(mkdir_p) "$(DESTDIR)$(germandir)"
+ @list='$(german_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(germanDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(germandir)/$$f'"; \
+ $(germanDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(germandir)/$$f"; \
+ done
+
+uninstall-germanDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(german_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(germandir)/$$f'"; \
+ rm -f "$(DESTDIR)$(germandir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(germandir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-germanDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-germanDATA uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-germanDATA install-info \
+ install-info-am install-man install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-germanDATA \
+ uninstall-info-am
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/lang/german/din5007.xdy b/Build/source/utils/xindy/modules/lang/german/din5007.xdy
new file mode 100644
index 00000000000..74d58ac7b5e
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/german/din5007.xdy
@@ -0,0 +1,20 @@
+;; $Id: din5007.xdy,v 1.1 1996/07/03 18:44:46 kehr Exp $
+;;
+;; This file contains the basic sort-rules that are necessary to sort
+;; a german index.
+
+;; Die folgenden Regeln entsprechen der DIN 5007.
+
+(sort-rule "ä" "ae")
+(sort-rule "ö" "oe")
+(sort-rule "ü" "ue")
+
+(sort-rule "Ä" "ae")
+(sort-rule "Ö" "oe")
+(sort-rule "Ü" "ue")
+
+(sort-rule "ß" "ss")
+
+(require "lang/latin/caseisrt.xdy")
+
+;; End
diff --git a/Build/source/utils/xindy/modules/lang/german/duden.xdy b/Build/source/utils/xindy/modules/lang/german/duden.xdy
new file mode 100644
index 00000000000..0ec6e895080
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/german/duden.xdy
@@ -0,0 +1,37 @@
+;; $Id: duden.xdy,v 1.1 1996/07/03 18:44:46 kehr Exp $
+;;
+;; This file contains the basic sort-rules that are necessary to sort
+;; a german index.
+
+;; Dieses Modul definiert die Regeln zum Sortieren eines Wörterbuchs.
+;; Die folgenden Regeln wurden dem Duden entnommen und bilden die
+;; Sortierregeln des Dudens selbst.
+;;
+;; (1) ä wird wie a, ö wie o, ü wie u und äu wie au einsortiert.
+
+(sort-rule "ä" "a")
+(sort-rule "ö" "o")
+(sort-rule "ü" "u")
+
+;; (2) Die Schreibungen ae, oe und ue (in Namen) werden nach ad usw.
+;; eingeordnet. [Dies k"onnen wir nicht leisten, da das Programm
+;; nicht weiß, was ein Name ist.]
+;; (3) Der Buchstabe ß (es-zett) wird wie ss (i), bei gleichnamigen
+;; Wörtern vor ss (ii) eigeordnet. Punkt (ii) ist ebenfalls
+;; nicht spezifizierbar, daher hier nur Regel (3i).
+
+(sort-rule "ß" "ss")
+
+;; Da beim Index die Groß- und Kleinschreibung ohne Bedeutung ist,
+;; bilden wir beim Sort-Mapping die Großbuchstaben auf die
+;; Kleinbuchstaben ab.
+
+(require "lang/latin/caseisrt.xdy")
+
+;; Analog bilden wir noch die Großbuchtaben-Umlaute ab.
+
+(sort-rule "Ä" "a")
+(sort-rule "Ö" "o")
+(sort-rule "Ü" "u")
+
+;; End
diff --git a/Build/source/utils/xindy/modules/lang/german/tex.xdy b/Build/source/utils/xindy/modules/lang/german/tex.xdy
new file mode 100644
index 00000000000..59b1332b370
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/german/tex.xdy
@@ -0,0 +1,21 @@
+;; $Id: tex.xdy,v 1.2 1996/07/18 16:03:55 kehr Exp $
+;;
+;; This file contains some rules to process TeX-letters with xindy.
+;;
+;; It should be used in conjunction with the `din5007' or the `duden'
+;; modules.
+;;
+
+;; We first map them to the ISO-Latin counterpart and then use the
+;; mappings in on of the two other modules to map them to the actual
+;; postition.
+
+(sort-rule "\\\"a" "ä" :again)
+(sort-rule "\\\"o" "ö" :again)
+(sort-rule "\\\"u" "ü" :again)
+(sort-rule "\\\"A" "Ä" :again)
+(sort-rule "\\\"O" "Ö" :again)
+(sort-rule "\\\"U" "Ü" :again)
+(sort-rule "\\ss({})?" "ß" :again)
+
+;; End
diff --git a/Build/source/utils/xindy/modules/lang/latin/Makefile.am b/Build/source/utils/xindy/modules/lang/latin/Makefile.am
new file mode 100644
index 00000000000..6aaf456054f
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/latin/Makefile.am
@@ -0,0 +1,33 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+langdir = $(pkglibdir)/modules/lang
+
+latindir = $(langdir)/latin
+
+RULES = \
+ caseisrt.xdy \
+ letgroup.xdy
+
+EXTRA_DIST = $(RULES)
+
+latin_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/lang/latin/Makefile.in b/Build/source/utils/xindy/modules/lang/latin/Makefile.in
new file mode 100644
index 00000000000..d3260a55e62
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/latin/Makefile.in
@@ -0,0 +1,311 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/lang/latin
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(latindir)"
+latinDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(latin_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+langdir = $(pkglibdir)/modules/lang
+latindir = $(langdir)/latin
+RULES = \
+ caseisrt.xdy \
+ letgroup.xdy
+
+EXTRA_DIST = $(RULES)
+latin_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/lang/latin/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/lang/latin/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-latinDATA: $(latin_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(latindir)" || $(mkdir_p) "$(DESTDIR)$(latindir)"
+ @list='$(latin_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(latinDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(latindir)/$$f'"; \
+ $(latinDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(latindir)/$$f"; \
+ done
+
+uninstall-latinDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(latin_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(latindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(latindir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(latindir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-latinDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-latinDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-latinDATA \
+ install-man install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-info-am uninstall-latinDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/lang/latin/caseisrt.xdy b/Build/source/utils/xindy/modules/lang/latin/caseisrt.xdy
new file mode 100644
index 00000000000..8b17010338e
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/latin/caseisrt.xdy
@@ -0,0 +1,34 @@
+;; $Id: caseisrt.xdy,v 1.1 1996/07/03 18:44:47 kehr Exp $
+;;
+;; These are the sort-rules for a latin-based alphabet. Usually in an
+;; index lower- and uppercase letters appear intermixed. Therefore, we
+;; map all uppercase-letters to their lowercase counterpart.
+
+(sort-rule "A" "a")
+(sort-rule "B" "b")
+(sort-rule "C" "c")
+(sort-rule "D" "d")
+(sort-rule "E" "e")
+(sort-rule "F" "f")
+(sort-rule "G" "g")
+(sort-rule "H" "h")
+(sort-rule "I" "i")
+(sort-rule "J" "j")
+(sort-rule "K" "k")
+(sort-rule "L" "l")
+(sort-rule "M" "m")
+(sort-rule "N" "n")
+(sort-rule "O" "o")
+(sort-rule "P" "p")
+(sort-rule "Q" "q")
+(sort-rule "R" "r")
+(sort-rule "S" "s")
+(sort-rule "T" "t")
+(sort-rule "U" "u")
+(sort-rule "V" "v")
+(sort-rule "W" "w")
+(sort-rule "X" "x")
+(sort-rule "Y" "y")
+(sort-rule "Z" "z")
+
+;; End
diff --git a/Build/source/utils/xindy/modules/lang/latin/letgroup.xdy b/Build/source/utils/xindy/modules/lang/latin/letgroup.xdy
new file mode 100644
index 00000000000..f02680bd9e3
--- /dev/null
+++ b/Build/source/utils/xindy/modules/lang/latin/letgroup.xdy
@@ -0,0 +1,10 @@
+;; $Id: letgroup.xdy,v 1.3 1996/07/18 16:04:18 kehr Exp $
+;;
+;; This file contains the standard letter groups used in latin-based
+;; languages.
+
+(define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/ord/Makefile.am b/Build/source/utils/xindy/modules/ord/Makefile.am
new file mode 100644
index 00000000000..a903f63bdce
--- /dev/null
+++ b/Build/source/utils/xindy/modules/ord/Makefile.am
@@ -0,0 +1,32 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+orddir = $(modulesdir)/ord
+
+RULES = \
+ letorder.xdy
+
+EXTRA_DIST = $(RULES)
+
+ord_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/ord/Makefile.in b/Build/source/utils/xindy/modules/ord/Makefile.in
new file mode 100644
index 00000000000..632cf28505b
--- /dev/null
+++ b/Build/source/utils/xindy/modules/ord/Makefile.in
@@ -0,0 +1,310 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/ord
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(orddir)"
+ordDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(ord_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+orddir = $(modulesdir)/ord
+RULES = \
+ letorder.xdy
+
+EXTRA_DIST = $(RULES)
+ord_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/ord/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/ord/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-ordDATA: $(ord_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(orddir)" || $(mkdir_p) "$(DESTDIR)$(orddir)"
+ @list='$(ord_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(ordDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(orddir)/$$f'"; \
+ $(ordDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(orddir)/$$f"; \
+ done
+
+uninstall-ordDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(ord_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(orddir)/$$f'"; \
+ rm -f "$(DESTDIR)$(orddir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(orddir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-ordDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-ordDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-ordDATA install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-info-am uninstall-ordDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/ord/letorder.xdy b/Build/source/utils/xindy/modules/ord/letorder.xdy
new file mode 100644
index 00000000000..24d566d52b6
--- /dev/null
+++ b/Build/source/utils/xindy/modules/ord/letorder.xdy
@@ -0,0 +1,8 @@
+;; $Id$
+;;
+;; This module defined the letter ordering scheme.
+;;
+
+(sort-rule " " "")
+
+;; End
diff --git a/Build/source/utils/xindy/modules/rules/Makefile.am b/Build/source/utils/xindy/modules/rules/Makefile.am
new file mode 100644
index 00000000000..8848621f8ac
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/Makefile.am
@@ -0,0 +1,35 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+rulesdir = $(modulesdir)/rules
+
+RULES = \
+ isolatin1-exchange.xdy \
+ latin-exchange.xdy \
+ isolatin1-tolower.xdy \
+ latin-tolower.xdy
+
+EXTRA_DIST = $(RULES)
+
+rules_DATA = $(RULES)
+
diff --git a/Build/source/utils/xindy/modules/rules/Makefile.in b/Build/source/utils/xindy/modules/rules/Makefile.in
new file mode 100644
index 00000000000..b561829b053
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/Makefile.in
@@ -0,0 +1,313 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/rules
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(rulesdir)"
+rulesDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(rules_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+rulesdir = $(modulesdir)/rules
+RULES = \
+ isolatin1-exchange.xdy \
+ latin-exchange.xdy \
+ isolatin1-tolower.xdy \
+ latin-tolower.xdy
+
+EXTRA_DIST = $(RULES)
+rules_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/rules/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/rules/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-rulesDATA: $(rules_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(rulesdir)" || $(mkdir_p) "$(DESTDIR)$(rulesdir)"
+ @list='$(rules_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(rulesDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(rulesdir)/$$f'"; \
+ $(rulesDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(rulesdir)/$$f"; \
+ done
+
+uninstall-rulesDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(rules_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(rulesdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(rulesdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(rulesdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-rulesDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-rulesDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-rulesDATA install-strip installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-info-am uninstall-rulesDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/rules/isolatin1-exchange.xdy b/Build/source/utils/xindy/modules/rules/isolatin1-exchange.xdy
new file mode 100644
index 00000000000..f85c2b2cb1e
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/isolatin1-exchange.xdy
@@ -0,0 +1,88 @@
+;; isolatin1-exchange.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+
+;; This style maps swap uppercase with lowercase letters of the ISO
+;; Latin1 alphabet in the range 160-255. These rules do not :again to
+;; prevent looping.
+
+(define-rule-set "isolatin1-exchange"
+
+ :rules (("À" "à" :string)
+ ("Á" "á" :string)
+ ("Â" "â" :string)
+ ("Ã" "ã" :string)
+ ("Ä" "ä" :string)
+ ("Å" "å" :string)
+ ("Æ" "æ" :string)
+
+ ("Ç" "ç" :string)
+
+ ("È" "è" :string)
+ ("É" "é" :string)
+ ("Ê" "ê" :string)
+ ("Ë" "ë" :string)
+
+ ("Ì" "ì" :string)
+ ("Í" "í" :string)
+ ("Î" "î" :string)
+ ("Ï" "ï" :string)
+
+ ("Ð" "ð" :string)
+ ("Ñ" "ñ" :string)
+
+ ("Ò" "ò" :string)
+ ("Ó" "ó" :string)
+ ("Ô" "ô" :string)
+ ("Õ" "õ" :string)
+ ("Ö" "ö" :string)
+ ("Ø" "ø" :string)
+
+ ("Ù" "ù" :string)
+ ("Ú" "ú" :string)
+ ("Û" "û" :string)
+ ("Ü" "ü" :string)
+
+ ("Ý" "ý" :string)
+ ("Þ" "þ" :string)
+
+
+ ("à" "À" :string)
+ ("á" "Á" :string)
+ ("â" "Â" :string)
+ ("ã" "Ã" :string)
+ ("ä" "Ä" :string)
+ ("å" "Å" :string)
+ ("æ" "Æ" :string)
+
+ ("ç" "Ç" :string)
+
+ ("è" "È" :string)
+ ("é" "É" :string)
+ ("ê" "Ê" :string)
+ ("ë" "Ë" :string)
+
+ ("ì" "Ì" :string)
+ ("í" "Í" :string)
+ ("î" "Î" :string)
+ ("ï" "Ï" :string)
+
+ ("ð" "Ð" :string)
+ ("ñ" "Ñ" :string)
+
+ ("ò" "Ò" :string)
+ ("ó" "Ó" :string)
+ ("ô" "Ô" :string)
+ ("õ" "Õ" :string)
+ ("ö" "Ö" :string)
+ ("ø" "Ø" :string)
+
+ ("ù" "Ù" :string)
+ ("ú" "Ú" :string)
+ ("û" "Û" :string)
+ ("ü" "Ü" :string)
+
+ ("ý" "Ý" :string)
+ ("þ" "Þ" :string)
+ ))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/rules/isolatin1-tolower.xdy b/Build/source/utils/xindy/modules/rules/isolatin1-tolower.xdy
new file mode 100644
index 00000000000..e481a86651a
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/isolatin1-tolower.xdy
@@ -0,0 +1,52 @@
+;; isolatin1-tolower Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+
+;; This style maps all uppercase letters of the ISO Latin1 alphabet
+;; in the range 160-255 to their lowercase counterparts.
+
+(require "rules/latin-tolower.xdy")
+
+(define-rule-set "isolatin1-tolower"
+
+ :inherit-from ("latin-tolower")
+
+ :rules (("À" "à" :string :again)
+ ("Á" "á" :string :again)
+ ("Â" "â" :string :again)
+ ("Ã" "ã" :string :again)
+ ("Ä" "ä" :string :again)
+ ("Å" "å" :string :again)
+ ("Æ" "æ" :string :again)
+
+ ("Ç" "ç" :string :again)
+
+ ("È" "è" :string :again)
+ ("É" "é" :string :again)
+ ("Ê" "ê" :string :again)
+ ("Ë" "ë" :string :again)
+
+ ("Ì" "ì" :string :again)
+ ("Í" "í" :string :again)
+ ("Î" "î" :string :again)
+ ("Ï" "ï" :string :again)
+
+ ("Ð" "ð" :string :again)
+ ("Ñ" "ñ" :string :again)
+
+ ("Ò" "ò" :string :again)
+ ("Ó" "ó" :string :again)
+ ("Ô" "ô" :string :again)
+ ("Õ" "õ" :string :again)
+ ("Ö" "ö" :string :again)
+ ("Ø" "ø" :string :again)
+
+ ("Ù" "ù" :string :again)
+ ("Ú" "ú" :string :again)
+ ("Û" "û" :string :again)
+ ("Ü" "ü" :string :again)
+
+ ("Ý" "ý" :string :again)
+ ("Þ" "þ" :string :again)
+ ))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/rules/latin-exchange.xdy b/Build/source/utils/xindy/modules/rules/latin-exchange.xdy
new file mode 100644
index 00000000000..5275f3b85aa
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/latin-exchange.xdy
@@ -0,0 +1,64 @@
+;; latin-exchange.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+;;
+;; Exchanges lower and uppercase letters.
+;;
+
+(define-rule-set "latin-exchange"
+
+ :rules (("A" "a" :string)
+ ("B" "b" :string)
+ ("C" "c" :string)
+ ("D" "d" :string)
+ ("E" "e" :string)
+ ("F" "f" :string)
+ ("G" "g" :string)
+ ("H" "h" :string)
+ ("I" "i" :string)
+ ("J" "j" :string)
+ ("K" "k" :string)
+ ("L" "l" :string)
+ ("M" "m" :string)
+ ("N" "n" :string)
+ ("O" "o" :string)
+ ("P" "p" :string)
+ ("Q" "q" :string)
+ ("R" "r" :string)
+ ("S" "s" :string)
+ ("T" "t" :string)
+ ("U" "u" :string)
+ ("V" "v" :string)
+ ("W" "w" :string)
+ ("X" "x" :string)
+ ("Y" "y" :string)
+ ("Z" "z" :string)
+
+ ("a" "A" :string)
+ ("b" "B" :string)
+ ("c" "C" :string)
+ ("d" "D" :string)
+ ("e" "E" :string)
+ ("f" "F" :string)
+ ("g" "G" :string)
+ ("h" "H" :string)
+ ("i" "I" :string)
+ ("j" "J" :string)
+ ("k" "K" :string)
+ ("l" "L" :string)
+ ("m" "M" :string)
+ ("n" "N" :string)
+ ("o" "O" :string)
+ ("p" "P" :string)
+ ("q" "Q" :string)
+ ("r" "R" :string)
+ ("s" "S" :string)
+ ("t" "T" :string)
+ ("u" "U" :string)
+ ("v" "V" :string)
+ ("w" "W" :string)
+ ("x" "X" :string)
+ ("y" "Y" :string)
+ ("z" "Z" :string)
+ ))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/rules/latin-tolower.xdy b/Build/source/utils/xindy/modules/rules/latin-tolower.xdy
new file mode 100644
index 00000000000..b6559da4336
--- /dev/null
+++ b/Build/source/utils/xindy/modules/rules/latin-tolower.xdy
@@ -0,0 +1,37 @@
+;; latin-tolower.xdy Roger Kehr 14 Jan 98
+;;----------------------------------------------------------------------
+;;
+;; Maps all latin letters to their lowercase counterpart
+;;
+
+(define-rule-set "latin-tolower"
+
+ :rules (("A" "a" :string :again)
+ ("B" "b" :string :again)
+ ("C" "c" :string :again)
+ ("D" "d" :string :again)
+ ("E" "e" :string :again)
+ ("F" "f" :string :again)
+ ("G" "g" :string :again)
+ ("H" "h" :string :again)
+ ("I" "i" :string :again)
+ ("J" "j" :string :again)
+ ("K" "k" :string :again)
+ ("L" "l" :string :again)
+ ("M" "m" :string :again)
+ ("N" "n" :string :again)
+ ("O" "o" :string :again)
+ ("P" "p" :string :again)
+ ("Q" "q" :string :again)
+ ("R" "r" :string :again)
+ ("S" "s" :string :again)
+ ("T" "t" :string :again)
+ ("U" "u" :string :again)
+ ("V" "v" :string :again)
+ ("W" "w" :string :again)
+ ("X" "x" :string :again)
+ ("Y" "y" :string :again)
+ ("Z" "z" :string :again)
+ ))
+
+;; End
diff --git a/Build/source/utils/xindy/modules/styles/Makefile.am b/Build/source/utils/xindy/modules/styles/Makefile.am
new file mode 100644
index 00000000000..0de306f9928
--- /dev/null
+++ b/Build/source/utils/xindy/modules/styles/Makefile.am
@@ -0,0 +1,30 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+modulesdir = $(pkglibdir)/modules
+
+texdir = $(modulesdir)/styles
+
+RULES = basic.xdy makeidx.xdy
+
+EXTRA_DIST = $(RULES)
+
+tex_DATA = $(RULES)
diff --git a/Build/source/utils/xindy/modules/styles/Makefile.in b/Build/source/utils/xindy/modules/styles/Makefile.in
new file mode 100644
index 00000000000..8942131cadd
--- /dev/null
+++ b/Build/source/utils/xindy/modules/styles/Makefile.in
@@ -0,0 +1,308 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ../..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = modules/styles
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = `echo $$p | sed -e 's|^.*/||'`;
+am__installdirs = "$(DESTDIR)$(texdir)"
+texDATA_INSTALL = $(INSTALL_DATA)
+DATA = $(tex_DATA)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+modulesdir = $(pkglibdir)/modules
+texdir = $(modulesdir)/styles
+RULES = basic.xdy makeidx.xdy
+EXTRA_DIST = $(RULES)
+tex_DATA = $(RULES)
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign modules/styles/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign modules/styles/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+install-texDATA: $(tex_DATA)
+ @$(NORMAL_INSTALL)
+ test -z "$(texdir)" || $(mkdir_p) "$(DESTDIR)$(texdir)"
+ @list='$(tex_DATA)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ f=$(am__strip_dir) \
+ echo " $(texDATA_INSTALL) '$$d$$p' '$(DESTDIR)$(texdir)/$$f'"; \
+ $(texDATA_INSTALL) "$$d$$p" "$(DESTDIR)$(texdir)/$$f"; \
+ done
+
+uninstall-texDATA:
+ @$(NORMAL_UNINSTALL)
+ @list='$(tex_DATA)'; for p in $$list; do \
+ f=$(am__strip_dir) \
+ echo " rm -f '$(DESTDIR)$(texdir)/$$f'"; \
+ rm -f "$(DESTDIR)$(texdir)/$$f"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(DATA)
+installdirs:
+ for dir in "$(DESTDIR)$(texdir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-texDATA
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am uninstall-texDATA
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-data install-data-am install-exec \
+ install-exec-am install-info install-info-am install-man \
+ install-strip install-texDATA installcheck installcheck-am \
+ installdirs maintainer-clean maintainer-clean-generic \
+ mostlyclean mostlyclean-generic pdf pdf-am ps ps-am uninstall \
+ uninstall-am uninstall-info-am uninstall-texDATA
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/modules/styles/basic.xdy b/Build/source/utils/xindy/modules/styles/basic.xdy
new file mode 100644
index 00000000000..08df4bc66dc
--- /dev/null
+++ b/Build/source/utils/xindy/modules/styles/basic.xdy
@@ -0,0 +1,36 @@
+;; $Id: basic.xdy,v 1.2 2008/01/09 15:13:54 jschrod Exp $ -*- Lisp -*-
+;; ------------------------------------------------------------
+;; (history at end)
+;; Licensed under GPL, see README and LICENSE.
+
+
+;;;
+;;; Very basic xindy style, to get some TeX-like output at all.
+;;; Useful for testing without the whole texindy framework.
+;;; It assumes the alphabets to be handled elsewhere, by language modules.
+;;;
+
+(define-location-class "page-numbers" ("arabic-numbers"))
+(define-attributes ("default"))
+
+(markup-letter-group :open-head "~n~n \textbf{" :close-head "}~n"
+ :capitalize)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+(markup-locclass-list :open "\quad ")
+(markup-locref-list :sep ", ")
+(markup-range :sep "--")
+
+
+;======================================================================
+;;
+;; $Log: basic.xdy,v $
+;; Revision 1.2 2008/01/09 15:13:54 jschrod
+;; Add another newline in front of letter groups.
+;;
+;; Revision 1.1 2006/08/05 15:58:11 jschrod
+;; Initial revision.
+;;
diff --git a/Build/source/utils/xindy/modules/styles/makeidx.xdy b/Build/source/utils/xindy/modules/styles/makeidx.xdy
new file mode 100644
index 00000000000..3b2492dd871
--- /dev/null
+++ b/Build/source/utils/xindy/modules/styles/makeidx.xdy
@@ -0,0 +1,148 @@
+;; $Id: makeidx.xdy,v 1.1 1997/02/07 14:17:31 kehr Exp $
+;;
+;; This file implements the Output Style Specifiers for plain
+;; makeindex (see manpage of makeindex 2.x) in conjuction with
+;; TeX/LaTeX.
+;;
+;; The Input Style Specifiers of makeindex cannot de defined in a
+;; `xindy' style file. Use an appropriate version of the program
+;; `tex2xindy' which should be included with this distribution.
+;;
+;; Since `xindy' uses a different specification language than
+;; makeindex and some of the command-line options of makeindex are now
+;; only available as style-file commands, this file can only serve as
+;; a template that produces the default-markup of makeindex. However,
+;; it may be used as a starting point for further modification and
+;; specialization.
+;;
+;; The following values are taken from the source of the makeindex
+;; distribution (see file scanst.h and the manpage) for further
+;; details.
+;;
+
+;; Define all attributes appearing in your document. Your attributes
+;; are all encapsulators you use in your \index commands following the
+;; vertical bar sign `|'. For example `foo' is the attribute in the
+;; command \index{...|foo}. Here you specify the set of attributes
+;; that appear in your document, the order in which they appear in the
+;; index and which one superdes the other.
+;;
+;; Example: a) (define-attibutes (("default") ("bf") ("it")))
+;; b) (define-attibutes (("bf" "default")))
+;;
+;; The initial command is (change it accordingly):
+
+(define-attributes ("default"))
+
+;; The description of the location-classes.
+;; Add more location classes as needed.
+
+(define-location-class "arabic-page-numbers" ("arabic-numbers"))
+(define-location-class "roman-page-numbers" ("roman-numbers-lowercase"))
+(define-location-class "Roman-page-numbers" ("roman-numbers-uppercase"))
+(define-location-class "alpha-page-numbers" ("alpha"))
+(define-location-class "Alpha-page-numbers" ("ALPHA"))
+
+;; The most frequently used cross reference class "see". Add more, if
+;; necessary.
+
+(define-crossref-class "see")
+(markup-crossref-list :open "\see{" :close "}{}" :class "see")
+
+;; In makeindex: page_precedence <string> "rnaRA"
+;; List all location classes appearing in your document.
+
+(define-location-class-order ("roman-page-numbers"
+ "arabic-page-numbers"
+ "alpha-page-numbers"
+ "Roman-page-numbers"
+ "Alpha-page-numbers"
+ "see"))
+
+
+;; preamble <string> "\\begin{theindex}\n"
+;; postamble <string> "\n\n\\end{theindex}\n"
+
+(markup-index :open "\begin{theindex}~n"
+ :close "~n~n\end{theindex}~n"
+ :tree)
+
+;; These specifiers are not directly supported via a command-line
+;; switch as in makeindex. Add the appropriate markup-commands into
+;; the preamble.
+
+;; setpage_prefix <string> "~n \setcounter{page}{"
+;; setpage_suffix <string> "}~n"
+
+;; group_skip <string> "~n~n \indexspace~n"
+
+(markup-letter-group-list :sep "~n~n \indexspace~n")
+
+;; The indexentries (item_<..> specifiers)
+
+(markup-indexentry :open "~n \item " :depth 0)
+(markup-indexentry :open "~n \subitem " :depth 1)
+(markup-indexentry :open "~n \subsubitem " :depth 2)
+
+;; Location-references
+
+;; delim_0 <string> ", "
+;; delim_1 <string> ", "
+;; delim_2 <string> ", "
+
+(markup-locclass-list :open ", " :sep ", ")
+
+;; delim_n <string> ", "
+
+(markup-locref-list :sep ", ")
+
+;; delim_r <string> "--"
+
+(markup-range :sep "--")
+
+;; Here follow all letter-groups. The short-cut notation is used here.
+
+(define-letter-groups
+ ("a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m"
+ "n" "o" "p" "q" "r" "s" "t" "u" "v" "w" "x" "y" "z"))
+
+;;
+;; The sort-rules map all letters to their lowercase counterpart.
+;;
+
+(sort-rule "A" "a")
+(sort-rule "B" "b")
+(sort-rule "C" "c")
+(sort-rule "D" "d")
+(sort-rule "E" "e")
+(sort-rule "F" "f")
+(sort-rule "G" "g")
+(sort-rule "H" "h")
+(sort-rule "I" "i")
+(sort-rule "J" "j")
+(sort-rule "K" "k")
+(sort-rule "L" "l")
+(sort-rule "M" "m")
+(sort-rule "N" "n")
+(sort-rule "O" "o")
+(sort-rule "P" "p")
+(sort-rule "Q" "q")
+(sort-rule "R" "r")
+(sort-rule "S" "s")
+(sort-rule "T" "t")
+(sort-rule "U" "u")
+(sort-rule "V" "v")
+(sort-rule "W" "w")
+(sort-rule "X" "x")
+(sort-rule "Y" "y")
+(sort-rule "Z" "z")
+
+
+;; That's all ;-)
+
+
+;; End
+
+;; Local Variables:
+;; mode: lisp
+;; End:
diff --git a/Build/source/utils/xindy/rte/Makefile.am b/Build/source/utils/xindy/rte/Makefile.am
new file mode 100644
index 00000000000..1e0957ec8dd
--- /dev/null
+++ b/Build/source/utils/xindy/rte/Makefile.am
@@ -0,0 +1,99 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+## Copyright (C) 2006-2007 by Jörg Sommer.
+## Copyright (C) 2008 by Joachim Schrod.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+clisp_src = clisp-2.43
+
+clisp_builddir = $(shell pwd)/clisp-build-dir
+
+if EXT_CLISP
+ export CLISP_DIR = @CLISP_DIR@
+ export CLISP_PATH = @CLISP_PATH@
+ CLISP_PREREQ =
+else
+ export CLISP_DIR = $(clisp_builddir)
+ export CLISP_PATH = $(CLISP_DIR)/clisp
+ CLISP_PREREQ = $(clisp_link) $(fulldir)
+endif
+
+export CLISP_LINKKIT = $(CLISP_DIR)/linkkit
+fulldir = $(CLISP_DIR)/full
+clisp_link = $(CLISP_DIR)/clisp-link
+
+binariesdir = ../binaries
+
+#clisp_modules=--with-export-syscalls --with-dynamic-ffi --ignore-absence-of-libsigsegv
+clisp_modules := --with-dynamic-ffi --ignore-absence-of-libsigsegv
+
+# testing for MacOS X platform to circumvent faulty 'readline'
+# provided by Maarten Sneep <maarten.sneep@xs4all.nl>
+# FIXME: GNU make ifeq/endif clauses do not work in Automake files.
+# Either determine that case during configure or make them work.
+#ifeq ($(shell uname -s), Darwin)
+# clisp_modules += --without-readline
+#endif
+
+all: xindy-build-dir
+
+RM_R = rm -rf
+
+if !EXT_CLISP
+$(clisp_builddir): $(clisp_src)
+ cd $(clisp_src) && ./configure $(clisp_builddir) $(clisp_modules)
+ cd $(clisp_builddir) && ./makemake $(clisp_modules) > Makefile
+
+$(CLISP_PREREQ): $(clisp_builddir)
+ $(MAKE) -C $(clisp_builddir)
+
+# Target names that are easy to type, to build CLISP alone during development.
+clisp-configure: $(clisp_builddir)
+clisp: $(CLISP_PREREQ)
+
+check:
+ $(MAKE) -C $(clisp_builddir) check || $(MAKE) -C $(clisp_builddir) check
+endif
+
+xindy-build-dir: $(CLISP_PREREQ)
+ $(RM_R) xindy-build-dir
+ $(MAKE) -C ordrules ordrulei.c
+ $(clisp_link) add-module-set ordrules $(fulldir) $@
+ cp $@/lisp.run $(binariesdir)/xindy.run
+ cp $@/lispinit.mem $(binariesdir)/base.mem
+
+clean-local:
+ $(RM_R) xindy-build-dir
+ $(MAKE) -C ordrules clean
+if !EXT_CLISP
+ if [ -e $(clisp_builddir) ]; then $(MAKE) -C $(clisp_builddir) clean; fi
+endif
+
+# remove some extra files to match pristine clisp source
+distclean-local: clean
+ $(MAKE) -C ordrules distclean
+if !EXT_CLISP
+ $(RM_R) $(clisp_builddir)
+endif
+
+# dist rules for clisp are handled via 'darcs dist', so here we include
+# only the rest of the 'rte' package + modified clisp's configure script!!
+
+EXTRA_DIST = NEWS README configure ordrules $(clisp_src)/configure
diff --git a/Build/source/utils/xindy/rte/Makefile.in b/Build/source/utils/xindy/rte/Makefile.in
new file mode 100644
index 00000000000..7e147fb97ff
--- /dev/null
+++ b/Build/source/utils/xindy/rte/Makefile.in
@@ -0,0 +1,336 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = rte
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+SOURCES =
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+clisp_src = clisp-2.43
+clisp_builddir = $(shell pwd)/clisp-build-dir
+@EXT_CLISP_FALSE@CLISP_PREREQ = $(clisp_link) $(fulldir)
+@EXT_CLISP_TRUE@CLISP_PREREQ =
+fulldir = $(CLISP_DIR)/full
+clisp_link = $(CLISP_DIR)/clisp-link
+binariesdir = ../binaries
+
+#clisp_modules=--with-export-syscalls --with-dynamic-ffi --ignore-absence-of-libsigsegv
+clisp_modules := --with-dynamic-ffi --ignore-absence-of-libsigsegv
+RM_R = rm -rf
+
+# dist rules for clisp are handled via 'darcs dist', so here we include
+# only the rest of the 'rte' package + modified clisp's configure script!!
+EXTRA_DIST = NEWS README configure ordrules $(clisp_src)/configure
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign rte/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign rte/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+uninstall-info-am:
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile
+installdirs:
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic clean-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic distclean-local
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am:
+
+install-exec-am:
+
+install-info: install-info-am
+
+install-man:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-info-am
+
+.PHONY: all all-am check check-am clean clean-generic clean-local \
+ distclean distclean-generic distclean-local dvi dvi-am html \
+ html-am info info-am install install-am install-data \
+ install-data-am install-exec install-exec-am install-info \
+ install-info-am install-man install-strip installcheck \
+ installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-generic pdf \
+ pdf-am ps ps-am uninstall uninstall-am uninstall-info-am
+
+
+@EXT_CLISP_TRUE@ export CLISP_DIR = @CLISP_DIR@
+@EXT_CLISP_TRUE@ export CLISP_PATH = @CLISP_PATH@
+@EXT_CLISP_FALSE@ export CLISP_DIR = $(clisp_builddir)
+@EXT_CLISP_FALSE@ export CLISP_PATH = $(CLISP_DIR)/clisp
+
+export CLISP_LINKKIT = $(CLISP_DIR)/linkkit
+
+# testing for MacOS X platform to circumvent faulty 'readline'
+# provided by Maarten Sneep <maarten.sneep@xs4all.nl>
+# FIXME: GNU make ifeq/endif clauses do not work in Automake files.
+# Either determine that case during configure or make them work.
+#ifeq ($(shell uname -s), Darwin)
+# clisp_modules += --without-readline
+#endif
+
+all: xindy-build-dir
+
+@EXT_CLISP_FALSE@$(clisp_builddir): $(clisp_src)
+@EXT_CLISP_FALSE@ cd $(clisp_src) && ./configure $(clisp_builddir) $(clisp_modules)
+@EXT_CLISP_FALSE@ cd $(clisp_builddir) && ./makemake $(clisp_modules) > Makefile
+
+@EXT_CLISP_FALSE@$(CLISP_PREREQ): $(clisp_builddir)
+@EXT_CLISP_FALSE@ $(MAKE) -C $(clisp_builddir)
+
+# Target names that are easy to type, to build CLISP alone during development.
+@EXT_CLISP_FALSE@clisp-configure: $(clisp_builddir)
+@EXT_CLISP_FALSE@clisp: $(CLISP_PREREQ)
+
+@EXT_CLISP_FALSE@check:
+@EXT_CLISP_FALSE@ $(MAKE) -C $(clisp_builddir) check || $(MAKE) -C $(clisp_builddir) check
+
+xindy-build-dir: $(CLISP_PREREQ)
+ $(RM_R) xindy-build-dir
+ $(MAKE) -C ordrules ordrulei.c
+ $(clisp_link) add-module-set ordrules $(fulldir) $@
+ cp $@/lisp.run $(binariesdir)/xindy.run
+ cp $@/lispinit.mem $(binariesdir)/base.mem
+
+clean-local:
+ $(RM_R) xindy-build-dir
+ $(MAKE) -C ordrules clean
+@EXT_CLISP_FALSE@ if [ -e $(clisp_builddir) ]; then $(MAKE) -C $(clisp_builddir) clean; fi
+
+# remove some extra files to match pristine clisp source
+distclean-local: clean
+ $(MAKE) -C ordrules distclean
+@EXT_CLISP_FALSE@ $(RM_R) $(clisp_builddir)
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/rte/NEWS b/Build/source/utils/xindy/rte/NEWS
new file mode 100644
index 00000000000..d5ab36e69ca
--- /dev/null
+++ b/Build/source/utils/xindy/rte/NEWS
@@ -0,0 +1,16 @@
+# $Id: NEWS,v 1.3 2008/01/09 11:35:06 jschrod Exp $
+#------------------------------------------------------------
+
+
+XINDY RUN TIME ENVIRONMENT RELEASE NOTES
+========================================
+
+
+Version Date Remarks
+
+2.3 2008-01-09 Release 2.3
+ Updated to CLISP 2.43; this can be compiled with gcc 4.
+
+2.2 2005-06-14 Release 2.2, `LaTeX Companion Release'.
+ ordrules module ported to current CLISP.
+ Created "configure ; make ; make install" installation.
diff --git a/Build/source/utils/xindy/rte/README b/Build/source/utils/xindy/rte/README
new file mode 100644
index 00000000000..32c827cb2de
--- /dev/null
+++ b/Build/source/utils/xindy/rte/README
@@ -0,0 +1,31 @@
+
+This is the source distribution of the xindy run time environment.
+It consists of CLISP (see http://clisp.cons.org/) and the
+xindy-specific CLISP module ordrules.
+
+Release notes are available in the file NEWS, in this directory.
+
+
+LEGALESE
+--------
+
+This package is freely distributable software; you can redistribute it
+and/or modify it under the terms of the GNU General Public License
+(GPL) as published by the Free Software Foundation.
+
+This package contains CLISP which is released under GPL, version 2
+(only). Please refer to clisp-<version>/COPYRIGHT for the formal
+statement.
+
+The xindy-specific parts of this package, i.e., everything outside the
+clisp-<version>/ directory, are release under GPL version 2 or any
+later version.
+
+This software is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License in
+the file COPYING along with this package; if not, write to the Free
+Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
diff --git a/Build/source/utils/xindy/rte/ordrules/Makefile.in b/Build/source/utils/xindy/rte/ordrules/Makefile.in
new file mode 100644
index 00000000000..fa329f6ed85
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/Makefile.in
@@ -0,0 +1,38 @@
+# $Id: Makefile.in,v 1.2 2005/06/14 01:41:56 jschrod Exp $
+#------------------------------------------------------------
+
+#
+# Makefile for CLISP module ordrules
+#
+# copied from CLISP module regex
+
+CC = @CC@
+CPPFLAGS = @CPPFLAGS@
+CFLAGS = @CFLAGS@
+INCLUDES=
+
+CLISP = $(CLISP_PATH) -q -norc
+
+all : ordrulei.o ordrules.o rxsub.o
+
+ordrulei.c : ordrulei.lsp
+ $(CLISP) -c ordrulei.lsp
+
+ordrulei.o : ordrulei.c
+ $(CC) $(CFLAGS) -I$(INCLUDES) -c ordrulei.c
+
+ordrules.o : ordrules.c ordrules.h rxsub.h debug.h mkind.h
+ $(CC) $(CFLAGS) -funsigned-char -I. -c ordrules.c
+
+rxsub.o : rxsub.c rxsub.h mkind.h
+ $(CC) $(CFLAGS) -I. -c rxsub.c
+
+# Make a module
+clisp-module : all
+
+clean:
+ rm -f core ordrulei.c *.o *.a
+ rm -f *.fas *.lib
+
+distclean: clean
+ rm -f version.lisp Makefile
diff --git a/Build/source/utils/xindy/rte/ordrules/debug.h b/Build/source/utils/xindy/rte/ordrules/debug.h
new file mode 100644
index 00000000000..6c59927d61a
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/debug.h
@@ -0,0 +1,166 @@
+/* $Id: debug.h,v 1.3 2005/05/02 21:39:53 jschrod Exp $
+ *------------------------------------------------------------
+ *
+ * AU: Makros zur Unterstuetzung von Debug-Ausgaben
+ * with friendly permission by U. Graef
+ *
+ * ST: Um die Macros zu definieren:
+ * #define debug
+ * #include "debug.h"
+ * Im Hauptprogramm bzw. Tester mu"s dann noch debug.o dazugebunden
+ * werden, um die externe Variable Debug_Output_Indent zur Verf"ugung
+ * zu stellen.
+ * Um im Modul die Macros zu deaktivieren:
+ * #undef debug
+ * #include "debug.h"
+ *
+ * PO: HPUX, Linux, AIX
+ */
+
+
+#ifndef _debug_h
+#define _debug_h
+
+/*
+ * Beim ersten include werden folgende Deklarationen defininert:
+ *
+ * Die globale Variable f"ur die Einr"uckung wird definiert.
+ */
+extern
+int Debug_Output_Indent;
+
+#ifdef debug_special
+/*
+ * Die Funktion f"ur den Memory-Print wird definiert
+ */
+extern
+void debug_printmem_asc( char* desc, char* str, char* lenname, int len );
+#endif /* debug_special */
+
+#define Debug_Output_Indent_Step 4
+
+#endif /* _debug_h */
+
+
+/*
+ * Falls die Macros bereits definiert waren, dann werden sie jetzt
+ * zuerst wegdefiniert. Damit kann man "debug.h" benutzen um die Macros
+ * zu (de-)aktivieren.
+ */
+
+#ifdef dispstart
+
+#undef dispstart
+#undef dispend
+#undef displong
+#undef dispint
+#undef dispuint
+#undef dispdouble
+#undef dispchar
+#undef dispstr
+#undef dispmem
+#undef dispmsg
+
+#endif
+
+/*
+ * Hier werden die Macros wieder definert bzw. erstmals definiert
+ */
+#ifdef debug
+
+/* Start und Ende von Prozeduren */
+
+#define dispstart(p) \
+ { \
+ fprintf( stderr, "\n%*s%s: Start -----\n", \
+ Debug_Output_Indent, "", #p ); \
+ Debug_Output_Indent += Debug_Output_Indent_Step; \
+ }
+
+#define dispend(p) \
+ { \
+ Debug_Output_Indent -= Debug_Output_Indent_Step; \
+ fprintf( stderr, "%*s%s: End -----\n\n", \
+ Debug_Output_Indent, "", #p ); \
+ }
+
+
+/* Ausgabe von Werten verschiedenen Typs */
+/* (mit Ausgabe der Variablen bzw. des Ausdrucks) */
+
+
+#define displong(l) \
+ fprintf( stderr, "%*s%s = %ld = 0x%lX \n",\
+ Debug_Output_Indent, "", #l, (long) l, (long) l );
+
+
+#define dispint(i) \
+ fprintf( stderr, "%*s%s = %d = 0x%X \n", \
+ Debug_Output_Indent, "", #i, (int) i, (int) i );
+
+#define dispuint(i) \
+ fprintf( stderr, "%*s%s = %d = 0x%X \n", \
+ Debug_Output_Indent, "", #i, (unsigned int) i, (unsigned int) i );
+
+#define dispdouble(d) \
+ fprintf( stderr, "%*s%s = %20.10g \n",\
+ Debug_Output_Indent, "", #d, (double) d );
+
+#define dispchar(c) \
+ fprintf( stderr, "%*s%s = %d = 0x%X = '%c' \n", \
+ Debug_Output_Indent, "", #c, (char) c, \
+ (char) c, (char) c );
+
+#define dispstr(s) \
+ fprintf( stderr, "%*s%s = \"%s\"\n", \
+ Debug_Output_Indent, "", #s, (char*) s );
+
+#ifdef debug_special
+#define dispmem(str,len) \
+ debug_printmem_asc( (char*)#str, (char*)str, (char*)#len, (int) len );
+#endif /* debug_special */
+
+#define dispmsg(p) \
+ { \
+ fprintf( stderr, "%*s%s:\n", Debug_Output_Indent, "", #p ); \
+ }
+
+#else /* debug */
+
+/*
+ * Falls kein weiteres Debugging erw"unscht, dann definiere die
+ * Macros auf leer.
+ */
+#define dispstart(p)
+#define dispend(p)
+#define displong(l)
+#define dispint(i)
+#define dispuint(i)
+#define dispdouble(d)
+#define dispchar(c)
+#define dispstr(s)
+#define dispmem(str,len)
+#define dispmsg(p)
+
+#endif /* debug */
+
+
+/*======================================================================
+ *
+ * $Log: debug.h,v $
+ * Revision 1.3 2005/05/02 21:39:53 jschrod
+ * xindy run time engine 3.0; as used for CLISP 2.33.2.
+ *
+ * Revision 1.2 1996/07/18 15:56:38 kehr
+ * Checkin after all changes that resulted from the define-letter-group
+ * modification were finished. Additionally I found an ugly bug in the
+ * ordrules.c file that was discovered when running the system under
+ * Solaris (which seems to have signed chars..Whee!). This is fixed now
+ * and the Imakefiles and that stuff was improved, too.
+ *
+ * Revision 1.1 1996/03/27 20:29:03 kehr
+ * It works. Today I had my first success in getting the FFI running with
+ * the ordrules-library. The interface is defined in `ordrulei.lsp' and
+ * allows direct access to the functions in `ordrules.c'.
+ *
+ */
diff --git a/Build/source/utils/xindy/rte/ordrules/link.sh b/Build/source/utils/xindy/rte/ordrules/link.sh
new file mode 100755
index 00000000000..acc843285a0
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/link.sh
@@ -0,0 +1,11 @@
+file_list=''
+mod_list=''
+if test -r ordrulei.c; then
+ file_list="$file_list"' ordrulei.o'
+ mod_list="$mod_list"' ordrulei'
+fi
+make clisp-module CC="${CC}" CFLAGS="${CFLAGS}" INCLUDES="$absolute_linkkitdir"
+NEW_FILES="$file_list ordrules.o rxsub.o"
+NEW_LIBS="$file_list ordrules.o rxsub.o"
+NEW_MODULES="$mod_list"
+TO_LOAD='ordrulei version'
diff --git a/Build/source/utils/xindy/rte/ordrules/mkind.h b/Build/source/utils/xindy/rte/ordrules/mkind.h
new file mode 100644
index 00000000000..2defd7077fa
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/mkind.h
@@ -0,0 +1,67 @@
+/*
+ $Id: mkind.h,v 1.2 1999/07/30 08:35:38 kehr Exp $
+
+ This is the minimum excerpt form the original `mkind.h' of the
+ makeindex-3 system making the modified version of ordrules compile.
+
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+
+#ifndef _MKIND_H
+#define _MKIND_H
+
+#ifndef PROTO
+#define PROTO( x ) x
+#endif
+
+#if ANSI_PROTOTYPES
+#define ARGS(arg_list) arg_list
+#define VOIDP void*
+#else
+#define ARGS(arg_list) ()
+#define const
+#define VOIDP char*
+#endif
+
+#define SIZE_T unsigned
+
+#undef TRUE
+#define TRUE 1
+
+#undef FALSE
+#define FALSE 0
+
+#ifndef STRING_MAX
+/* T. Henlich reported a bug that was caused by the 128Byte limit
+ here, which was too small for his applications. Stupid thing,
+ really took me 1.5 hours to find it ;-(
+*/
+
+#define STRING_MAX 1024 /* 128 */
+#endif
+
+#define BSH '\\'
+
+#undef NUL
+#define NUL '\0'
+
+extern VOIDP fmalloc ARGS((SIZE_T size));
+
+#endif /* _MKIND_H */
+
+
+/*
+ $Log: mkind.h,v $
+ Revision 1.2 1999/07/30 08:35:38 kehr
+ Lifted length of STRING_MAX to 4096. Caused bugs in Linux as reported
+ by T. Henlich.
+
+ Revision 1.1 1996/03/27 20:29:05 kehr
+ It works. Today I had my first success in getting the FFI running with
+ the ordrules-library. The interface is defined in `ordrulei.lsp' and
+ allows direct access to the functions in `ordrules.c'.
+
+
+ */
diff --git a/Build/source/utils/xindy/rte/ordrules/ordrulei.lsp b/Build/source/utils/xindy/rte/ordrules/ordrulei.lsp
new file mode 100644
index 00000000000..c18294c2670
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/ordrulei.lsp
@@ -0,0 +1,111 @@
+;; $Id: ordrulei.lsp,v 1.5 2005/05/02 21:39:53 jschrod Exp $
+;; ------------------------------------------------------------
+
+;;;
+;;; Interface definition of the ordrules module
+;;;
+
+(defpackage :ordrules
+ (:use :cl :ffi)
+ (:export :initialize
+ :add-keyword-sort-rule :add-keyword-merge-rule
+ :gen-keyword-sortkey :gen-keyword-mergekey))
+
+(in-package :ordrules)
+
+(c-lines "#include \"ordrules.h\"~%")
+
+; Common OS definitions:
+(def-c-type size_t uint)
+
+(def-c-var *string-buffer*
+ (:name "ordrules_string_buffer")
+ (:type (c-array char 1024))
+ (:alloc :NONE))
+
+(def-c-var *string-buffer-used-bytes*
+ (:name "ordrules_string_buffer_used_bytes")
+ (:type int)
+ (:alloc :NONE))
+
+(def-c-var *string-buffer-used-bytes*
+ (:name "ordrules_string_buffer_used_bytes")
+ (:type int)
+ (:alloc :NONE))
+
+(def-c-var *message-logging*
+ (:name "ordrules_msg_logging")
+ (:type int)
+ (:alloc :NONE))
+
+(def-c-var *message-buffer*
+ (:name "ordrules_msg_buffer")
+ (:type c-string)
+ (:alloc :NONE))
+
+(def-c-var *message-buffer-ptr*
+ (:name "ordrules_msg_buffer_ptr")
+ (:type int)
+ (:alloc :NONE))
+
+(def-call-out initialize
+ (:language :stdc)
+ (:name "initialize")
+ (:arguments (num-sort-tables int))
+ (:return-type int))
+
+(def-call-out add-keyword-sort-rule
+ (:language :stdc)
+ (:name "add_sort_rule")
+ (:arguments (run int)
+ (left c-string)
+ (right c-string)
+ (isreject int)
+ (ruletype int))
+ (:return-type int))
+
+(def-call-out add-keyword-merge-rule
+ (:language :stdc)
+ (:name "add_merge_rule")
+ (:arguments (left c-string)
+ (right c-string)
+ (isreject int)
+ (ruletype int))
+ (:return-type int))
+
+(def-call-out gen-keyword-sortkey
+ (:language :stdc)
+ (:name "gen_sortkey")
+ (:arguments (key c-string)
+ (run int))
+ (:return-type c-string :malloc-free))
+
+(def-call-out gen-keyword-mergekey
+ (:language :stdc)
+ (:name "gen_mergekey")
+ (:arguments (key c-string))
+ (:return-type c-string :malloc-free))
+
+#|
+
+ $Log: ordrulei.lsp,v $
+ Revision 1.5 2005/05/02 21:39:53 jschrod
+ xindy run time engine 3.0; as used for CLISP 2.33.2.
+
+ Revision 1.4 1997/10/20 11:23:12 kehr
+ New version of sorting rules. Sorting of more complex indexes (i.e.
+ French) is now possible.
+
+ Revision 1.3 1997/01/17 16:43:38 kehr
+ Several changes for new version 1.1.
+
+ Revision 1.2 1996/04/30 15:56:38 kehr
+ Renamed some of the functions to avoid conflicts with other functions
+ in other packages (only for the sake of convenience).
+
+ Revision 1.1 1996/03/27 20:29:07 kehr
+ It works. Today I had my first success in getting the FFI running with
+ the ordrules-library. The interface is defined in `ordrulei.lsp' and
+ allows direct access to the functions in `ordrules.c'.
+
+|#
diff --git a/Build/source/utils/xindy/rte/ordrules/ordrules.c b/Build/source/utils/xindy/rte/ordrules/ordrules.c
new file mode 100644
index 00000000000..6e9b6fa08fe
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/ordrules.c
@@ -0,0 +1,733 @@
+/* $Id: ordrules.c,v 1.9 2008/01/09 11:33:44 jschrod Exp $
+ *----------------------------------------------------------------------
+ *
+ * Ordering Rules for Strings
+ *
+ * [history at end]
+ */
+
+#include "ordrules.h"
+#include "rxsub.h"
+
+#include <string.h>
+
+/* switch on debugging by excluding the undef directive. */
+#define debug
+#undef debug /* */
+#include "debug.h"
+
+#ifdef debug
+#define DEBUG
+#endif
+
+RULE_TABLE* SortRules; /* rules for generating sortkeys */
+
+RULE_TABLE MergeRules; /* rules for generating mergekeys */
+GROUP_LIST GroupList; /* list of character groups */
+GROUP_LIST HeadingList; /* list of group headings */
+
+/* The following rule-types can be set by the user: */
+#define RT_AUTOMATIC 0
+#define RT_STRING 1
+#define RT_REGEXP_BASIC 2
+#define RT_REGEXP_EXTENDED 3
+#define RT_CHAR 4
+
+static RULE_TYPE get_ruletype PROTO(( char *lside, char *rside ));
+static int is_regexp PROTO(( char *s ));
+static int is_CHR_RULE PROTO(( char *s, char *r ));
+
+char ordrules_string_buffer [BUFLEN];
+int ordrules_string_buffer_used_bytes = 0;
+
+ int ordrules_msg_logging = 0;
+ char* ordrules_msg_buffer = 0;
+ int ordrules_msg_buffer_ptr = 0;
+static size_t ordrules_msg_buffer_len = BUFLEN;
+static size_t ordrules_msg_buffer_avail = 0;
+static int ordrules_sort_rule_tables = 0;
+
+#define DEFAULT_SORT_RULE_TABLES 8
+
+#define DBG( expr ) if (ordrules_msg_logging!=0) { expr; }
+
+
+void
+logs( msg )
+char* msg;
+{
+ size_t msglen = strlen( msg );
+
+ if (NULL == ordrules_msg_buffer) {
+ ordrules_msg_buffer = (char*) malloc (ordrules_msg_buffer_len);
+ ordrules_msg_buffer_avail = ordrules_msg_buffer_len - 1;
+ ordrules_msg_buffer_ptr = 0;
+ }
+ if (msglen > ordrules_msg_buffer_avail) {
+ ordrules_msg_buffer_len *= 2;
+ ordrules_msg_buffer = (char*) realloc (ordrules_msg_buffer,
+ ordrules_msg_buffer_len);
+ ordrules_msg_buffer_avail = ordrules_msg_buffer_len -
+ ordrules_msg_buffer_ptr - 1;
+ }
+ strcpy(&ordrules_msg_buffer[ordrules_msg_buffer_ptr], msg );
+ ordrules_msg_buffer_ptr += msglen;
+ ordrules_msg_buffer_avail -= msglen;
+ ordrules_msg_buffer[ordrules_msg_buffer_ptr] = '\0';
+}
+
+void
+logc( c )
+char c;
+{
+ char msg[2];
+ msg[0] = c;
+ msg[1] = '\0';
+ logs(msg);
+}
+
+void
+logi( n )
+int n;
+{
+ char msg[16];
+ sprintf(msg, "%d", n);
+ logs(msg);
+}
+
+/*
+ * This function initializes the memory for the SortRules. Since the
+ * number of tables is defined dynamically, we allow the repeated
+ * definition of tables. In this case the old table is discarded.
+ */
+
+int
+initialize (num_sort_tables)
+int num_sort_tables;
+{
+ size_t fullsize = num_sort_tables * sizeof(RULE_TABLE);
+ if (SortRules != NULL) {
+ logs("ORDRULES: Removing old Sort-Tables!\n");
+ free( SortRules );
+ }
+ ordrules_sort_rule_tables = num_sort_tables;
+ SortRules = (RULE_TABLE*) malloc (fullsize);
+ if (SortRules == NULL) {
+ fprintf(stderr,"ordrules: malloc() of %d SortTables failed!\n",
+ num_sort_tables);
+ exit(1);
+ }
+ logs("ORDRULES: Initializing "); logi(num_sort_tables);
+ logs(" Sort Tables.\n");
+ memset(SortRules, 0, fullsize);
+ return(num_sort_tables);
+}
+
+int
+add_sort_rule (run, left, right, isreject, ruletype)
+int run;
+char *left;
+char *right;
+int isreject;
+int ruletype;
+{
+ if (SortRules == NULL) { /* No malloc() done yet */
+ if (ordrules_sort_rule_tables == 0) { /* No specification yet. */
+ ordrules_sort_rule_tables = DEFAULT_SORT_RULE_TABLES; /* use default */
+ }
+ logs("ORDRULES: Performing implicit initialization.\n");
+ initialize( ordrules_sort_rule_tables ); /* ...then initialize */
+ }
+ if (0 <= run && run < ordrules_sort_rule_tables) {
+ return( add_rule( SortRules[run], left, right, isreject, ruletype, run ));
+ } else {
+ logs("ORDRULES: add_sort_rule(): run is out of range.\n");
+ return -1;
+ }
+}
+
+int
+add_merge_rule (left, right, isreject, ruletype)
+char *left;
+char *right;
+int isreject;
+int ruletype;
+{
+ return( add_rule( MergeRules, left, right, isreject, ruletype, -1));
+}
+
+/* insert rule 'left --> right' into ruletable 'table' */
+int
+add_rule( table, left, right, isreject, ruletype, run)
+RULE_TABLE table;
+char *left;
+char *right;
+int isreject;
+int ruletype;
+int run;
+{
+ RULE *r;
+ RULE_LIST *list;
+ char buffer[STRING_MAX];
+ char *bptr = buffer;
+ unsigned int pos = 0;
+
+ /* new stuff */
+ int errcode;
+ char errmsg[STRING_MAX];
+
+ /* Use extended regular expression syntax as default. */
+ int cflag = REG_EXTENDED;
+
+ dispstart( add_rule );
+ dispstr( left );
+ dispstr( right );
+
+ r = (RULE *) malloc( sizeof(RULE) );
+
+ switch ( ruletype ) {
+ case RT_AUTOMATIC:
+ r->type = get_ruletype( left, right ); break;
+ case RT_STRING:
+ r->type = STR_RULE; break;
+ case RT_CHAR:
+ r->type = CHR_RULE; break;
+ case RT_REGEXP_BASIC:
+ case RT_REGEXP_EXTENDED:
+ r->type = REG_RULE; break;
+ }
+
+ switch (r->type) {
+
+ case REG_RULE:
+
+ if (ruletype == RT_REGEXP_BASIC) {
+ /* Use the basic regular expressions as specified. */
+ cflag = 0;
+ }
+ dispstart( REG_RULE );
+ dispmsg( bptr copy );
+ /* insert '^' in regular expression to match string prefix only */
+ *bptr++ = '^'; strcpy( bptr, left );
+ r->r.reg.lstr = (char *) malloc( strlen(buffer) + 1);
+ r->r.reg.type = cflag;
+ strcpy( r->r.reg.lstr, buffer );
+ dispmsg( malloc );
+ r->r.reg.lside = (regex_t*) malloc (sizeof(regex_t));
+ displong( r->r.reg.lside );
+ dispstart( regcomp );
+ if ( 0 != (errcode = regcomp( r->r.reg.lside, buffer, REG_EXTENDED ))) {
+ regerror( errcode, r->r.reg.lside, errmsg, STRING_MAX );
+ DBG(logs("Regular Expression Error: "); logs(errmsg); logs("\n");)
+ return( errcode );
+ }
+ dispend( regcomp );
+ r->r.reg.rside = (char *) malloc( strlen(right) + 1);
+ strcpy( r->r.reg.rside, right );
+ dispstr( r->r.reg.rside );
+ displong( r->type );
+
+ /*
+ * calculate table index as the first character of 'left'
+ * or FORALL_POS if the rule does not start with a fixed charater.
+ * A rule starts with a fixed character if this char is escaped.
+ * Otherwise the first character might be variable (ie, a character
+ * class) or it might be optional.
+ */
+
+ if ( left[0] == BSH ) pos = (unsigned char)(left[1]); /* quoted */
+ else
+ if ( strchr(".([",left[0])==NULL || strchr("*?",left[1])==NULL )
+ pos = FORALL_POS; /* character class or optional */
+ else
+ pos = (unsigned char)(left[0]); /* fixed */
+
+ dispend( REG_RULE );
+ break;
+
+ case CHR_RULE:
+ dispstart( CHR_RULE );
+ r->r.chr = *right;
+ pos = (unsigned char)(*left);
+ dispend( CHR_RULE );
+ break;
+
+ case STR_RULE:
+ dispstart( STR_RULE );
+ r->r.str.llen = strlen(left);
+ r->r.str.lside = (char *) malloc( (size_t)(r->r.str.llen + 1) );
+ strcpy(r->r.str.lside,left);
+ r->r.str.rlen = strlen(right);
+ r->r.str.rside = (char *) malloc( (size_t)(r->r.str.rlen + 1) );
+ strcpy(r->r.str.rside,right);
+ pos = (unsigned char)(*left);
+ dispend( STR_RULE );
+ break;
+ }
+
+ if (isreject) r->type |= REJECT;
+
+ /* insert new rule into table */
+ dispstart(inserting into table);
+ dispuint(pos);
+ displong(&table[0]);
+ list = &table[pos];
+ displong(list);
+ displong(NULL);
+ displong(list->first);
+ displong(r);
+ if (list->first == NULL) {
+ list->first = r;
+ } else {
+ displong(list->last);
+ displong(list->last->next);
+ list->last->next = r;
+ }
+ displong(list->last);
+ list->last = r;
+ displong(r->next);
+ r->next = NULL;
+ dispend(inserting into table);
+
+ DBG(
+ logs("Mappings: add (");
+ if (table == MergeRules) logs("merge"); else logs("sort");
+ logs("-rule ");
+ switch ( r->type & ~REJECT ) {
+ case CHR_RULE:
+ logs("`");logc(*left);logs("' `");logc(r->r.chr);logs("' :char");
+ break;
+ case STR_RULE:
+ logs("`");;logs(r->r.str.lside); logs("' `");
+ logs(r->r.str.rside);logs("' :string");
+ break;
+ case REG_RULE:
+ logs("`");logs(buffer);logs("' `");
+ logs(r->r.reg.rside);logs("' :");
+ logc( (r->r.reg.type == REG_EXTENDED) ? 'e' : 'b' );
+ logs("regexp");
+ break;
+ }
+ if (run != -1) {
+ logs(" :run ");
+ logi(run);
+ }
+ if (r->type&REJECT) logs(" :again");
+ logs(").\n");
+ )
+ dispend( add_rule );
+ return( 0 );
+}
+
+/* get the type of the rule 'lside --> rside' */
+static
+RULE_TYPE get_ruletype( lside, rside )
+char *lside;
+char *rside;
+{
+ if ( is_regexp( lside ) || is_regexp( rside ) ) return REG_RULE;
+
+ if ( lside[0] != NUL && lside[1] == NUL &&
+ rside[0] != NUL && rside[1] == NUL ) return CHR_RULE;
+
+ return STR_RULE;
+}
+
+static
+int is_CHR_RULE ( lside, rside )
+char *lside;
+char *rside;
+{
+ if ( lside[0] != NUL && lside[1] == NUL &&
+ rside[0] != NUL && rside[1] == NUL ) return CHR_RULE;
+
+ return STR_RULE;
+}
+
+/* return TRUE, if 's' is a regular expression. */
+static
+int is_regexp( s )
+char *s;
+{
+ for (;*s ; s++ )
+ if (*s == BSH) {
+ s++;
+ if ('0' <= *s && *s <= '9') return TRUE;
+ }
+ else if (strchr("[]().*+$^?&",*s)) return TRUE;
+ return FALSE;
+}
+
+#ifdef UNESCAPE
+/* not necessary anymore */
+
+/* replace all '\x' sequences with the character they represent */
+static void
+unescape( s )
+register char *s;
+{
+ register char *d;
+ for (d = s; *d = *s; d++)
+ if (*s++ == BSH) *d = *s++;
+}
+#endif
+
+/* apply the rules from 'table' to 'source' and place the substituted result
+ in 'dest' */
+void apply_rules( table, source, dest, buflen )
+RULE_TABLE table;
+register char *source;
+register char *dest;
+register size_t buflen;
+{
+ register RULE *r;
+ register RULE_TYPE rtype;
+ register char *newdest = 0;
+ char newsource[STRING_MAX];
+
+ /* new stuff */
+#define NMATCH 10
+ regmatch_t regmatch [NMATCH];
+ int eflags = 0;
+
+#ifdef DEBUG
+ char *in = source, *out = dest;
+#endif
+
+ dispstart( apply_rules );
+ dispstr( source );
+ dispstr( dest );
+ dispint( buflen );
+
+ while ( *source ) {
+
+ /* first check the rules beginning with character '*source' */
+ dispint( (unsigned) *source );
+ dispint( (unsigned)(*source) );
+ dispint( (unsigned char)(*source) );
+ dispint( (unsigned int)(*source) );
+ for ( r = table[(unsigned char) *source].first; r; r = r->next ) {
+
+ displong( r );
+ rtype = (r->type & ~REJECT);
+
+ if ( rtype == CHR_RULE ) {
+ dispstart( CHR_RULE );
+ if ((r->type & REJECT))
+ newdest = dest;
+ DBG(
+ logs("Mappings: (compare `");logs(source);logs("' :char `");
+ logc(*source); logs("') match!\n");
+ )
+ *dest++ = r->r.chr;
+ source++;
+ dispend( CHR_RULE );
+ break;
+ }
+
+ else if ( rtype == STR_RULE &&
+ !strncmp(source, r->r.str.lside, (size_t)r->r.str.llen)) {
+ DBG(
+ logs("Mappings: (compare `");logs(source);logs("' :string `");
+ logs(r->r.str.lside); logs("') match!\n");
+ )
+ dispstart( STR_RULE );
+ displong( dest );
+ strcpy(dest, r->r.str.rside);
+ if ((r->type & REJECT)) newdest = dest;
+ displong( newdest );
+ dest += r->r.str.rlen;
+ displong( dest );
+ source += r->r.str.llen;
+ displong( source );
+ dispend( STR_RULE );
+ break;
+ }
+
+ else {
+ if ( rtype == REG_RULE ) {
+ dispstart( REG_RULE );
+ DBG(
+ logs("Mappings: (compare `");logs(source);logs("' :");
+ logc( (r->r.reg.type == REG_EXTENDED) ? 'e' : 'b' );
+ logs("regexp `");
+ logs(r->r.reg.lstr); logs("')");
+ )
+ if ( 0 == regexec( r->r.reg.lside, source,
+ NMATCH, regmatch, eflags ) ) {
+ DBG( logs(" match!\n"); )
+ nrxsub( r->r.reg.rside, regmatch, source, dest, buflen );
+ if ((r->type & REJECT))
+ newdest = dest;
+ dest = strchr(dest,0);
+ source += regmatch[0].rm_eo;
+ dispend( REG_RULE );
+ break;
+ }
+ DBG( logs("\n"); )
+ dispend( REG_RULE );
+ }
+ }
+
+ }
+
+ displong( r );
+ if ( r == NULL ) {
+
+ dispmsg( r == NULL );
+ /* check regular expression rules, that could match all prefixes */
+ for ( r = table[FORALL_POS].first; r; r = r->next ) {
+ dispstart( for-loop regexps );
+ dispstr( r->r.reg.lstr );
+ dispstr( r->r.reg.rside );
+ displong( r->type );
+ dispstr( source );
+ DBG(
+ logs("Mappings: (compare `");logs(source);logs("' :");
+ logc( (r->r.reg.type == REG_EXTENDED) ? 'e' : 'b' );
+ logs("regexp `");
+ logs(r->r.reg.lstr); logs("')");
+ )
+ if ( 0 == regexec( r->r.reg.lside, source,
+ NMATCH, regmatch, eflags ) ) {
+ DBG( logs(" match!\n"); )
+ dispstart( regexec match! );
+ nrxsub( r->r.reg.rside, regmatch, source, dest, buflen );
+ if ((r->type & REJECT)) newdest = dest;
+ displong( dest );
+ displong( newdest );
+ source += regmatch[0].rm_eo;
+ displong( source );
+ dest = strchr(dest,0);
+ displong( dest );
+ dispend( regexec match! );
+ dispend( for-loop regexps );
+ break;
+ }
+ DBG( logs("\n"); )
+ dispend( for-loop regexps );
+ }
+ /* no rule matched, copy character */
+ if ( r == NULL ){
+ dispstart( no rule matched! );
+ displong( dest );
+ displong( source );
+ *dest++ = *source++;
+ displong( dest );
+ displong( source );
+ dispend( no rule matched! );
+ }
+ }
+
+ displong( r );
+ /* should we reject? */
+ if ( r != NULL && (r->type & REJECT)) {
+ dispstart( REJECT );
+ strcpy(dest,source);
+ strcpy(newsource,newdest);
+#ifdef DEBUG
+ fprintf(stderr,"\nordrules: reject in '%s': '%s'.",in,newsource);
+#endif
+ apply_rules( table, newsource, newdest, STRING_MAX );
+ dispend( REJECT );
+ dispend( apply_rules );
+ return;
+ }
+ }
+
+ dispstart( last part );
+ displong( dest );
+ *dest = 0;
+ ordrules_string_buffer_used_bytes = strlen( ordrules_string_buffer );
+#ifdef DEBUG
+#ifdef debug
+ dispstr( out );
+#endif
+#endif
+
+#ifdef DEBUG
+ /* if ( strcmp(in,out) ) */
+ fprintf(stderr,"\nordrules: %s '%s' generated for '%s'.", table == MergeRules ? "mergekey" : "sortkey", out, in );
+#endif
+
+ dispend( last part );
+ dispend( apply_rules );
+}
+
+char *gen_sortkey ( key, run )
+char *key;
+int run;
+{
+ char *sortkey;
+ dispstart( gen_sortkey );
+ dispstr( key );
+
+ /* If no initialization has been done yet, then do a fallback to the
+ default tables. This should not happen usually. */
+ if (SortRules == NULL) {
+ logs("ORDRULES: Performing implicit initialization.\n");
+ initialize( DEFAULT_SORT_RULE_TABLES );
+ }
+
+ if (0 <= run && run < ordrules_sort_rule_tables) {
+ apply_rules( SortRules[run], key, ordrules_string_buffer, BUFLEN );
+ }
+
+ sortkey = (char*) malloc (strlen( ordrules_string_buffer ) +1);
+ strcpy( sortkey, ordrules_string_buffer );
+ DBG(
+ logs("Mappings: (sort-mapping `"); logs(key);
+ logs("' :run "); logi(run); logs(") -> `");
+ logs(sortkey); logs("'.\n\n");
+ )
+ dispend( gen_sortkey );
+ return( sortkey );
+}
+
+
+char *gen_mergekey ( key )
+char *key;
+{
+ char *mergekey;
+ apply_rules( MergeRules, key, ordrules_string_buffer, BUFLEN );
+ mergekey = (char*) malloc (strlen( ordrules_string_buffer ) +1);
+ strcpy( mergekey, ordrules_string_buffer );
+ DBG(
+ logs("Mappings: (merge-mapping `"); logs(key); logs("') -> `");
+ logs(mergekey); logs("'.\n\n");
+ )
+ return( mergekey );
+}
+
+
+/* insert a new group entry ('group','letter') into 'list' */
+#if 0
+void
+add_group( list, group, letter )
+GROUP_LIST *list;
+int group;
+char *letter;
+{
+ GROUP_RULE *new;
+ new = (GROUP_RULE *) malloc(sizeof(GROUP_RULE));
+ new->id = (group >= 0 ? group + USORTGROUP : group - USORTGROUP);
+ new->len = strlen(letter);
+ new->let = (char *) malloc(new->len + 1);
+ strcpy(new->let,letter);
+
+ /* insert rule into list */
+ if (list->first == NULL) list->first = new;
+ else list->last->next = new;
+ list->last = new;
+ new->next = NULL;
+
+#ifdef DEBUG
+ fprintf(stderr,"\nordrules: added group into list '%s' '%s' -> group: %d.",list == &GroupList ? "GroupList" : "HeadingList", new->let,new->id);
+#endif
+}
+
+/* find the user defined group id for 'sortkey' */
+int get_group( sortkey )
+char *sortkey;
+{
+ register GROUP_RULE *r;
+ for (r = GroupList.first; r && strncmp(sortkey,r->let,r->len); r = r->next);
+#ifdef DEBUG
+ if (r != NULL)
+ fprintf(stderr,"\nordrules: sortkey '%s' is in group: %d.",sortkey,r->id);
+#endif
+ return ( r ? r->id : *sortkey );
+}
+
+/* find the user defined group heading for id 'group' */
+char *get_heading( group )
+int group;
+{
+ register GROUP_RULE *r;
+ for ( r = HeadingList.first; r && r->id != group; r = r->next);
+#ifdef DEBUG
+ if (r != NULL)
+ fprintf(stderr,"\nordrules: group: %d has heading '%s'.",r->id,r->let);
+#endif
+ return ( r ? r->let : NULL );
+}
+#endif
+
+
+/*======================================================================
+ *
+ * $Log: ordrules.c,v $
+ * Revision 1.9 2008/01/09 11:33:44 jschrod
+ * Update to CLISP 2.43.
+ *
+ * Revision 1.8 2005/05/02 21:39:53 jschrod
+ * xindy run time engine 3.0; as used for CLISP 2.33.2.
+ *
+ * Revision 1.7 1999/07/30 08:34:32 kehr
+ * Checked in some debug stuff that was integrated for better testing.
+ *
+ * Revision 1.6 1997/10/20 11:23:13 kehr
+ * New version of sorting rules. Sorting of more complex indexes (i.e.
+ * French) is now possible.
+ *
+ * Revision 1.5 1997/01/17 16:43:40 kehr
+ * Several changes for new version 1.1.
+ *
+ * Revision 1.4 1996/07/18 15:56:40 kehr
+ * Checkin after all changes that resulted from the define-letter-group
+ * modification were finished. Additionally I found an ugly bug in the
+ * ordrules.c file that was discovered when running the system under
+ * Solaris (which seems to have signed chars..Whee!). This is fixed now
+ * and the Imakefiles and that stuff was improved, too.
+ *
+ * Revision 1.3 1996/07/03 18:48:48 kehr
+ * Changed ordrules.c. The unescape() mechanism was removed so that not too
+ * much quoting is necessary anymore. This feature was olnly for the use in
+ * the old makeindex-3 systems.
+ *
+ * Revision 1.2 1996/03/27 20:29:10 kehr
+ * It works. Today I had my first success in getting the FFI running with
+ * the ordrules-library. The interface is defined in `ordrulei.lsp' and
+ * allows direct access to the functions in `ordrules.c'.
+ *
+ * Revision 1.1 1996/03/26 17:30:58 kehr
+ * First check-in of the rx-support for clisp.
+ *
+ * Revision 1.9 1992/01/03 13:22:10 schrod
+ * "unsigned" is not a type. Computation of table index was wrong.
+ *
+ * Revision 1.8 1991/12/16 14:44:54 schrod
+ * fmalloc() statt allocate()
+ *
+ * Revision 1.7 1991/12/10 20:25:50 schrod
+ * Changed all function declarations to ANSI prototypes using ARGS().
+ *
+ * Revision 1.6 1991/12/10 20:09:58 schrod
+ * Reject-rules (*merge_rule and *sort_rule) implemented.
+ *
+ * Revision 1.5 1991/12/10 19:59:53 schrod
+ * Fixed bug in ordrules. Inserting a new group rule at the beginning of
+ * a rule list works not with groups, that have the same prefix:
+ *
+ * group_rule "ae" 1
+ * group_rule "a" 2
+ *
+ * would put 'aexxx' in group 2.
+ *
+ * Revision 1.4 1991/12/10 19:49:59 schrod
+ * Optimized group-rule handling.
+ *
+ * Revision 1.3 1991/12/10 19:43:38 schrod
+ * Optimized module 'ordrules':
+ * - all three types of rules (chr,str,regexp) now allowed for both sort
+ * and merge keys
+ *
+ * Revision 1.2 1991/12/10 19:20:31 schrod
+ * Changed the group merging algorithm to create the group-id of an index key
+ * using user defined rules (specified in the style file with commands:
+ * `sort_group' and `group_head') instead of the sortkey's first character.
+ *
+ * Revision 1.1 1991/12/10 17:15:54 schrod
+ * Initial revision
+ *
+ */
diff --git a/Build/source/utils/xindy/rte/ordrules/ordrules.h b/Build/source/utils/xindy/rte/ordrules/ordrules.h
new file mode 100644
index 00000000000..6b5f1b48a77
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/ordrules.h
@@ -0,0 +1,208 @@
+/* $Id: ordrules.h,v 1.9 2008/01/09 11:33:44 jschrod Exp $
+ *----------------------------------------------------------------------
+ *
+ * Ordering Rules for Strings
+ *
+ * [history at end]
+ */
+
+#ifndef _ORDRULES_H
+#define _ORDRULES_H
+
+#include <stdio.h>
+#include "mkind.h"
+#undef debug
+#include "debug.h"
+#include "regex.h"
+
+#define BEGIN 1 /* representation of '\b' */
+#define END 255 /* representation of '\e' */
+
+/* values for RULE_TYPE */
+#define CHR_RULE 0001
+#define STR_RULE 0002
+#define REG_RULE 0004
+#define REJECT 0200
+
+#define RULE_TYPE unsigned char
+
+/* structure representing a substitution rule */
+typedef struct rule {
+
+ RULE_TYPE type; /* rule descriptor */
+
+ union {
+
+ char chr; /* character transformation: 'chr1' --> 'chr2' */
+
+ struct { /* string substitution: 'str1' --> 'str2' */
+ char *lside;
+ int llen;
+ char *rside;
+ int rlen;
+ } str;
+
+ struct { /* regular expression rule: 'rexp' --> 'str' */
+ regex_t *lside;
+ char *lstr;
+ char *rside;
+ char type;
+ } reg;
+
+ } r;
+
+ struct rule *next; /* link to next rule */
+
+} RULE;
+
+/* RULE_LIST is a linked list of RULE's with a pointer to the last entry,
+ which allows efficient appending of new rules. */
+typedef struct {
+ RULE *first;
+ RULE *last;
+} RULE_LIST;
+
+/* RULE_TABLE is a table of RULE_LIST's, where at position 'c' it contains
+ rules that could match strings beginning with character 'c'. The
+ last position (FORALL_POS) in this table has a special meaning. It stands for
+ regular expression rules that begin with a character class and
+ therefore they should be matched against all strings.
+
+ RULE_TABLE[c] rules in this list: 'cxxxxx' --> 'foo'
+ RULE_TABLE[FORALL_POS] rules in this list: '[y-z]xxxx' --> 'foo'
+
+*/
+
+#define MAX_RULE_TABLE 257 /* # entries in a rule table */
+#define FORALL_POS 256 /* position of regexp rules, that must be applied to all strings */
+
+typedef RULE_LIST RULE_TABLE[MAX_RULE_TABLE];
+
+extern RULE_TABLE* SortRules; /* rules for generating sortkeys */
+extern RULE_TABLE MergeRules; /* rules for generating mergekeys */
+
+typedef struct grouprule {
+ short id; /* group id */
+ char *let; /* sortkey prefix */
+ int len; /* len(let) */
+ struct grouprule *next; /* link to next rule */
+} GROUP_RULE;
+
+typedef struct {
+ GROUP_RULE *first;
+ GROUP_RULE *last;
+} GROUP_LIST;
+
+extern GROUP_LIST GroupList; /* list of character groups */
+extern GROUP_LIST HeadingList; /* list of group headings */
+
+/* These variables are used in ordrulei.lsp. The generated code, in
+ ordrulei.c uses sizeof() on them, thus the buffer size must be
+ defined. */
+#define BUFLEN ((size_t)1024)
+extern char ordrules_string_buffer[BUFLEN];
+extern int ordrules_string_buffer_used_bytes;
+extern int ordrules_msg_logging;
+extern char* ordrules_msg_buffer;
+extern int ordrules_msg_buffer_ptr;
+
+
+#define add_group_rule(letter, group) \
+ add_group( &GroupList, group, letter )
+
+#define add_heading(group, head) \
+ add_group( &HeadingList, group, head )
+
+int initialize PROTO(( int num_sort_tables ));
+int open_debug_file PROTO(( char* filename ));
+int close_debug_file PROTO(( ));
+
+int get_group PROTO(( char *sortkey ));
+char *get_heading PROTO(( int group ));
+
+int add_rule PROTO(( RULE_TABLE table, char *left, char *right,
+ int isreject, int ruletype, int run ));
+void apply_rules PROTO(( RULE_TABLE table, char *source, char *dest, size_t buflen ));
+void add_group PROTO(( GROUP_LIST *list, int group, char *letter ));
+
+int add_sort_rule PROTO((int run, char *left, char *right, int isreject, int ruletype));
+int add_merge_rule PROTO((char *left, char *right, int isreject, int ruletype));
+
+char* gen_sortkey PROTO((char *key, int run));
+char* gen_mergekey PROTO((char *key));
+
+#endif /* _ORDRULES_H */
+
+
+/*======================================================================
+ *
+ * $Log: ordrules.h,v $
+ * Revision 1.9 2008/01/09 11:33:44 jschrod
+ * Update to CLISP 2.43.
+ *
+ * Revision 1.8 2005/06/14 11:22:04 jschrod
+ * ordrulei.lisp is now ordrulei.lsp in distribution, as it is in CVS.
+ *
+ * Revision 1.7 2005/05/02 21:39:53 jschrod
+ * xindy run time engine 3.0; as used for CLISP 2.33.2.
+ *
+ * Revision 1.6 1999/07/30 08:37:38 kehr
+ * Intermediate checkin.
+ *
+ * Revision 1.5 1997/10/20 11:23:14 kehr
+ * New version of sorting rules. Sorting of more complex indexes (i.e.
+ * French) is now possible.
+ *
+ * Revision 1.4 1997/01/17 16:43:42 kehr
+ * Several changes for new version 1.1.
+ *
+ * Revision 1.3 1996/07/18 15:56:42 kehr
+ * Checkin after all changes that resulted from the define-letter-group
+ * modification were finished. Additionally I found an ugly bug in the
+ * ordrules.c file that was discovered when running the system under
+ * Solaris (which seems to have signed chars..Whee!). This is fixed now
+ * and the Imakefiles and that stuff was improved, too.
+ *
+ * Revision 1.2 1996/03/27 20:29:11 kehr
+ * It works. Today I had my first success in getting the FFI running with
+ * the ordrules-library. The interface is defined in `ordrulei.lsp' and
+ * allows direct access to the functions in `ordrules.c'.
+ *
+ * Revision 1.1 1996/03/26 17:31:00 kehr
+ * First check-in of the rx-support for clisp.
+ *
+ * Revision 1.8 1991/12/16 14:47:04 schrod
+ * updated documentation
+ *
+ * Revision 1.7 1991/12/10 20:25:53 schrod
+ * Changed all function declarations to ANSI prototypes using ARGS().
+ *
+ * Revision 1.6 1991/12/10 20:10:02 schrod
+ * Reject-rules (*merge_rule and *sort_rule) implemented.
+ *
+ * Revision 1.5 1991/12/10 19:59:57 schrod
+ * Fixed bug in ordrules. Inserting a new group rule at the beginning of
+ * a rule list works not with groups, that have the same prefix:
+ *
+ * group_rule "ae" 1
+ * group_rule "a" 2
+ *
+ * would put 'aexxx' in group 2.
+ *
+ * Revision 1.4 1991/12/10 19:50:03 schrod
+ * Optimized group-rule handling.
+ *
+ * Revision 1.3 1991/12/10 19:43:42 schrod
+ * Optimized module 'ordrules':
+ * - all three types of rules (chr,str,regexp) now allowed for both sort
+ * and merge keys
+ *
+ * Revision 1.2 1991/12/10 19:20:35 schrod
+ * Changed the group merging algorithm to create the group-id of an index key
+ * using user defined rules (specified in the style file with commands:
+ * `sort_group' and `group_head') instead of the sortkey's first character.
+ *
+ * Revision 1.1 1991/12/10 17:15:58 schrod
+ * Initial revision
+ *
+ */
diff --git a/Build/source/utils/xindy/rte/ordrules/rxsub.c b/Build/source/utils/xindy/rte/ordrules/rxsub.c
new file mode 100644
index 00000000000..904b9613c72
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/rxsub.c
@@ -0,0 +1,173 @@
+/* $Id: rxsub.c,v 1.4 2005/05/02 21:39:53 jschrod Exp $
+ *------------------------------------------------------------
+
+ This piece of code was inspired from the regsub implementation of
+ Henry Spencer. I modified it to make it compatible with the GNU Rx
+ library.
+
+ */
+
+#include "rxsub.h"
+
+#include <string.h>
+
+/*
+ nrxsub - perform substitutions after a regexp match
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+ source : the string that was used in the regexec call yielding `pmatch'
+ dest : where to store the result
+ nsize : buffer length
+
+ Returns one of the error codes.
+ */
+
+#define chkbuf( x ) if ( x ) return RXSUB_ESPACE;
+
+rxsub_errcode_t
+nrxsub (char *substpat,
+ regmatch_t pmatch[],
+ char *source,
+ char *dest,
+ size_t nsize)
+{
+ register char *sub;
+ register char *dst;
+ register char c;
+ register int no;
+ register size_t len;
+ register char* bufend;
+
+ if ( pmatch == NULL || source == NULL ||
+ dest == NULL || substpat == NULL ||
+ nsize <= 0 ) {
+ return RXSUB_INVAL;
+ }
+
+ sub = substpat;
+ dst = dest;
+
+ bufend = dst + nsize; /* compute pointer to bufend */
+
+ while ((c = *sub++) != '\0') {
+ if (c == '&')
+ no = 0;
+ else if (c == '\\' && '0' <= *sub && *sub <= '9')
+ no = *sub++ - '0';
+ else
+ no = -1;
+
+ if (no < 0) { /* Ordinary character. */
+ if (c == '\\' && (*sub == '\\' || *sub == '&'))
+ c = *sub++;
+ chkbuf( dst >= bufend );
+ *dst++ = c;
+ } else { /* we found a subexpr specifier */
+ if ( pmatch[no].rm_so >= 0 && pmatch[no].rm_eo >= 0 ) {
+ len = pmatch[no].rm_eo - pmatch[no].rm_so;
+ chkbuf(dst + len >= bufend);
+ (void) strncpy( dst, source + pmatch[no].rm_so, len );
+ dst += len;
+ if (len != 0 && *(dst-1) == '\0') { /* strncpy hit NULL */
+ return RXSUB_DAMAGE;
+ }
+ }
+ }
+ }
+ chkbuf( dst >= bufend );
+ *dst++ = '\0';
+ return RXSUB_NOERROR;
+}
+
+
+/*
+ rxsub - perform substitutions after a regexp match
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+ source : the string that was used in the regexec call yielding `pmatch'
+ dest : pointer to a char*, which is used to store the pointer of the
+ result string
+
+ Returns one of the error codes.
+ */
+
+rxsub_errcode_t
+rxsub (char *substpat,
+ regmatch_t pmatch[],
+ char *source,
+ char **dest)
+{
+ register size_t len;
+
+ if ( pmatch == NULL || source == NULL ||
+ dest == NULL || substpat == NULL ) {
+ return RXSUB_INVAL;
+ }
+
+ *dest = (char*)malloc( len = rxsub_len( substpat, pmatch ));
+
+ return nrxsub( substpat, pmatch, source, *dest, len );
+}
+
+
+
+/*
+ rxsub_len - calculate the neccessary space to hold the result of the
+ rxsub-call.
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+
+ Returns the length of the string neccessary to hold the substituted
+ result with the final '\0' character included, or 0 of a fatal error occured.
+ */
+
+extern size_t
+rxsub_len (char *substpat,
+ regmatch_t pmatch[])
+{
+ register char *sub;
+ register char c;
+ register int no;
+ register size_t len;
+ register size_t totlen = 0;
+
+ if ( substpat == NULL || pmatch == NULL )
+ return 0;
+
+ sub = substpat;
+
+ while ((c = *sub++) != '\0') {
+ if (c == '&')
+ no = 0;
+ else if (c == '\\' && '0' <= *sub && *sub <= '9')
+ no = *sub++ - '0';
+ else
+ no = -1;
+
+ if (no < 0) { /* Ordinary character. */
+ if (c == '\\' && (*sub == '\\' || *sub == '&'))
+ c = *sub++;
+ totlen++;
+ } else { /* we found a subexpr specifier */
+ if ( pmatch[no].rm_so >= 0 && pmatch[no].rm_eo >= 0 ) {
+ len = pmatch[no].rm_eo - pmatch[no].rm_so;
+ totlen += len;
+ }
+ }
+ }
+ return ++totlen;
+}
+
+/*======================================================================
+
+ $Log: rxsub.c,v $
+ Revision 1.4 2005/05/02 21:39:53 jschrod
+ xindy run time engine 3.0; as used for CLISP 2.33.2.
+
+*/
diff --git a/Build/source/utils/xindy/rte/ordrules/rxsub.h b/Build/source/utils/xindy/rte/ordrules/rxsub.h
new file mode 100644
index 00000000000..03c22edfb7c
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/rxsub.h
@@ -0,0 +1,102 @@
+/* $Id: rxsub.h,v 1.3 2005/05/02 21:39:53 jschrod Exp $
+ *------------------------------------------------------------
+
+ This piece of code was inspired from the regsub implementation of
+ Henry Spencer. I modified it to make it compatible with the GNU Rx
+ library.
+
+ I added a more flexible interface that also allows dynamic
+ allocation of the string buffer and a function that computes the
+ length of the resulting string.
+
+*/
+
+#ifndef RXSUB_H
+#define RXSUB_H
+
+#include "mkind.h"
+#include "regex.h"
+
+/* The error codes used by the rxsub-library */
+
+typedef enum
+{
+ RXSUB_NOERROR = 0, /* Success. */
+ RXSUB_INVAL, /* Invalid arguments */
+ RXSUB_ESPACE, /* The given buffer is too small */
+ RXSUB_DAMAGE /* Damaged source string */
+} rxsub_errcode_t;
+
+/*
+ nrxsub - perform substitutions after a regexp match
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+ source : the string that was used in the regexec call yielding `pmatch'
+ dest : where to store the result
+ nsize : buffer length
+
+ Returns one of the error codes.
+ */
+
+
+extern rxsub_errcode_t nrxsub
+PROTO( (char *substpat,
+ regmatch_t pmatch[],
+ char *source,
+ char *dest,
+ size_t nsize) );
+
+/*
+ rxsub - perform substitutions after a regexp match
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+ source : the string that was used in the regexec call yielding `pmatch'
+ dest : pointer to a char*, which is used to store the pointer of the
+ result string. The neccessary space for the result is allocated
+ dynamically.
+
+ Returns one of the error codes.
+ */
+
+rxsub_errcode_t rxsub
+PROTO( (char *substpat,
+ regmatch_t pmatch[],
+ char *source,
+ char **dest) );
+
+/*
+ rxsub_len - calculate the neccessary space to hold the result of the
+ rxsub-call.
+
+ substpat : a string consisting of ordinary characters and subexpression
+ specifiers like `&' and `\0'..`\9'.
+ pmatch[] : the vector of subexpression specifiers into `source'
+
+ Returns the length of the string neccessary to hold the substituted
+ result with the final '\0' character included, or 0 of a fatal error occured.
+ */
+
+extern size_t rxsub_len
+PROTO( (char *substpat,
+ regmatch_t pmatch[]) );
+
+#endif /* RXSUB_H */
+
+
+/*======================================================================
+
+ $Log: rxsub.h,v $
+ Revision 1.3 2005/05/02 21:39:53 jschrod
+ xindy run time engine 3.0; as used for CLISP 2.33.2.
+
+ Revision 1.2 1999/07/30 08:37:09 kehr
+ Intermediate checkin.
+
+ Revision 1.1 1996/03/26 17:31:04 kehr
+ First check-in of the rx-support for clisp.
+
+*/
diff --git a/Build/source/utils/xindy/rte/ordrules/version.lisp.in b/Build/source/utils/xindy/rte/ordrules/version.lisp.in
new file mode 100644
index 00000000000..d2e580157d0
--- /dev/null
+++ b/Build/source/utils/xindy/rte/ordrules/version.lisp.in
@@ -0,0 +1,13 @@
+;; $Id: version.lisp.in,v 1.1 2005/06/14 01:41:58 jschrod Exp $ -*- Lisp -*-
+;;------------------------------------------------------------
+
+;;;
+;;; xindy run time engine version number
+;;;
+
+(defpackage :xindy-version
+ (:export "*XINDY-RTE-VERSION*" "*XINDY-PLATFORM*"))
+(in-package :xindy-version)
+
+(defparameter *xindy-rte-version* "2.2")
+(defparameter *xindy-platform* "@host_cpu@-@host_os@")
diff --git a/Build/source/utils/xindy/setup.sh b/Build/source/utils/xindy/setup.sh
new file mode 100755
index 00000000000..85b16969355
--- /dev/null
+++ b/Build/source/utils/xindy/setup.sh
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+target=$PWD
+
+cp $target/bin/xindy $target/bin/xindy.org
+
+sed -e "s:\$lib_dir = \"\(.*\):\$lib_dir = \"$target\/lib/xindy\";:" \
+$target/bin/xindy.org > $target/bin/xindy
+
+# remove wrapper script
+rm -f $target/setup.sh $target/bin/xindy.org
+
+
+
diff --git a/Build/source/utils/xindy/src/base.lsp b/Build/source/utils/xindy/src/base.lsp
new file mode 100644
index 00000000000..657ced84c7a
--- /dev/null
+++ b/Build/source/utils/xindy/src/base.lsp
@@ -0,0 +1,237 @@
+;; line 30 "base.nw"
+(lisp:defpackage "BASE")
+(lisp:in-package "BASE")
+(lisp:provide "base")
+
+#+:CMU17 (defpackage "CLOS")
+
+(eval-when (compile load eval)
+ (lisp:use-package "CLOS")
+ (lisp:use-package "COMMON-LISP")
+ #+CLISP (lisp:use-package "EXT")
+ )
+
+(eval-when (eval load compile)
+ #+CLISP (when (find-package "XP")
+ (pushnew :XP *features*))
+ #+(or ALLEGRO :CMU17) (pushnew :XP *features*)
+ )
+
+(setq *print-pretty* t)
+(setq *print-escape* t)
+
+(defparameter *mappings-trace* nil)
+(defparameter *locref-trace* nil)
+(eval-when (compile load eval)
+ (export '(*mappings-trace* *locref-trace*)))
+
+;; line 104 "base.nw"
+#-CLISP
+(defmacro simple-condition-format-string (&rest args)
+ `(simple-condition-format-control ,@args))
+#-CLISP
+(eval-when (compile load eval)
+ (export '(simple-condition-format-string)))
+;; line 133 "base.nw"
+(defmacro info (&rest msg)
+ `(APPLY #'FORMAT *ERROR-OUTPUT* (LIST ,@msg)))
+;; line 138 "base.nw"
+(defparameter *nraw-error-message* "~&WARNING: ")
+
+(defmacro nraw (&rest msg)
+ `(PROGN
+ (FORMAT *ERROR-OUTPUT* BASE::*NRAW-ERROR-MESSAGE*)
+ (APPLY #'FORMAT *ERROR-OUTPUT* (LIST ,@msg))))
+;; line 147 "base.nw"
+(defparameter *oops-error-message* "~&ERROR: ")
+
+(defmacro oops (&rest msg)
+ `(LET ((MSG (LIST ,@msg)))
+ (FORMAT *ERROR-OUTPUT* BASE::*OOPS-ERROR-MESSAGE*)
+ (APPLY #'FORMAT *ERROR-OUTPUT* MSG)
+ (WHEN *LOGGING-ON*
+ (FORMAT *LOGGING-STREAM* BASE::*OOPS-ERROR-MESSAGE*)
+ (APPLY #'FORMAT *LOGGING-STREAM* MSG))))
+;; line 162 "base.nw"
+(defmacro oops* (fmt args)
+ `(LET ((FMT ,fmt)
+ (ARGS ,args))
+ (FORMAT *ERROR-OUTPUT* BASE::*OOPS-ERROR-MESSAGE*)
+ (APPLY #'FORMAT *ERROR-OUTPUT* FMT ARGS)
+ (WHEN *LOGGING-ON*
+ (FORMAT *LOGGING-STREAM* BASE::*OOPS-ERROR-MESSAGE*)
+ (APPLY #'FORMAT *LOGGING-STREAM* FMT ARGS))))
+;; line 183 "base.nw"
+(defparameter *logging-stream* nil)
+(defparameter *logging-on* nil)
+
+(defmacro gol (flag &rest msg)
+ `(WHEN (AND ,flag *LOGGING-ON*)
+ (APPLY #'FORMAT *LOGGING-STREAM* (list ,@msg))))
+;; line 74 "base.nw"
+(defmacro ifnot (expr then-body else-body)
+ `(IF (NOT ,expr) ,then-body ,else-body))
+;; line 82 "base.nw"
+(defun error-exit ()
+ #+CLISP (exit 1)
+ #+ALLEGRO (excl:exit 1)
+ #+CMU17 (unix:unix-exit 1)
+ )
+
+(defun exit-normally ()
+ #+CLISP (exit 0)
+ #+ALLEGRO (excl:exit 0)
+ #+CMU17 (unix:unix-exit 0)
+ )
+;; line 201 "base.nw"
+(defmacro assert! (cond &optional msg)
+ `(UNLESS ,cond
+ (FORMAT *ERROR-OUTPUT* "Internal error! Assertion ~A failed!" ',cond)
+ ,(if msg
+ `(ERROR "~S" ,msg)
+ `(ERROR "Entering debugger!"))))
+
+(pushnew :ASSERT! *features*)
+;; line 218 "base.nw"
+(defmacro define-slot-accessors (accessors)
+ `(eval-when (compile load eval)
+ ,@(apply #'nconc
+ (mapcar
+ #'(lambda (acc)
+ (let ((getnam (intern (concatenate 'string "GET-"
+ (symbol-name acc))))
+ (setnam (intern (concatenate 'string "SET-"
+ (symbol-name acc))))
+ )
+ `((defmacro ,getnam (obj)
+ (list 'slot-value obj '',acc))
+ (defmacro ,setnam (val obj)
+ (list 'setf (list 'slot-value obj '',acc) val))
+ (export '(,getnam ,setnam ,acc)))))
+ accessors))))
+
+(define-slot-accessors (
+ attribute
+ base-alphabet
+ basetype
+ catattr
+ catattr-grp-ordnum
+ entries
+ entry-list
+ entry-table
+ first
+ group-definition
+ hierdepth
+ idxclass
+ inner
+ join-length
+ last
+ last-in-group
+ layers
+ length
+ letters
+ locclass
+ locref-cache
+ locref-string
+ locrefs
+ members
+ merge-key
+ sort-key
+ print-key
+ main-key
+ name
+ order
+ ordnum
+ ordnums
+ origin
+ processing-ordnum
+ props
+ rangeattr
+ separator
+ sort-ordnum
+ state
+ subentries
+ subrefs
+ symbols
+ target
+ type
+ ))
+;; line 297 "base.nw"
+(defun split-list (split-function list &key sortfunc headfunc)
+ #+:ASSERT! (assert (not (and sortfunc headfunc))
+ ()
+ "split-list")
+ (let ((list-len (length list)))
+ (if (= 1 list-len)
+ (list list)
+ (let ((split-table (make-hash-table :test #'equal
+ :size (round (* 1.2 list-len))))
+ (key-list '()))
+ (mapc #'(lambda (elt)
+ (let ((key (funcall split-function elt)))
+ (setf (gethash key split-table)
+ (cons elt (gethash key split-table)))))
+ list)
+ (maphash #'(lambda (key element)
+ (declare (ignore element))
+ (push key key-list))
+ split-table)
+ (maplist #'(lambda (rest-list)
+ (let ((entries (gethash (car rest-list) split-table)))
+ (if headfunc
+ (let ((head (find-if headfunc entries)))
+ (rplaca rest-list
+ (if head
+ (cons head (delete head entries))
+ entries)))
+ (rplaca rest-list entries))))
+ (if sortfunc (sort key-list sortfunc) key-list))
+ key-list))))
+
+#|
+This version seems to be a little bit slower than the above one,
+despite the fact that we use a temporary array with a fill-pointer.
+
+(defun split-list (split-function sort-function list)
+ (let ((list-len (length list)))
+ (if (= 1 list-len)
+ (list list)
+ (let ((split-table (make-hash-table :test #'equal
+ :size (round (* 1.5 list-len)))))
+ (mapc #'(lambda (elt)
+ (let ((key (funcall split-function elt)))
+ (setf (gethash key split-table)
+ (cons elt (gethash key split-table)))))
+ list)
+ (let ((sort-array (make-array (hash-table-count split-table)
+ :fill-pointer 0)))
+ (maphash #'(lambda (key element)
+ (declare (ignore element))
+ (vector-push key sort-array))
+ split-table)
+ (map 'list
+ #'(lambda (key)
+ (gethash key split-table))
+ (sort sort-array sort-function)))))))
+|#
+
+;; line 60 "base.nw"
+(defvar *RCS-Identifier* '(
+;; line 68 "base.nw"
+("base" . "$Id: base.nw,v 1.20 1997/03/26 16:17:58 kehr Exp $")
+;; line 60 "base.nw"
+ ))
+
+(eval-when (compile load eval)
+
+;; line 96 "base.nw"
+(export '(ifnot error-exit exit-normally))
+;; line 192 "base.nw"
+(export '(oops oops* nraw info gol
+ *logging-stream* *logging-on*))
+;; line 212 "base.nw"
+(export 'assert!)
+;; line 357 "base.nw"
+(export '(split-list))
+;; line 64 "base.nw"
+ )
diff --git a/Build/source/utils/xindy/src/dump-xindy.lsp b/Build/source/utils/xindy/src/dump-xindy.lsp
new file mode 100644
index 00000000000..4e48ab50efa
--- /dev/null
+++ b/Build/source/utils/xindy/src/dump-xindy.lsp
@@ -0,0 +1,32 @@
+;; $Id: dump-xindy.xdy,v 1.2 1996/08/02 17:41:07 kehr Exp $
+;; ----------------------------------------------------------------------
+;;
+;; This file is necessary to dump xindy.
+;;
+
+#+CLISP (setq custom:*suppress-check-redefinition* t)
+
+(load 'base)
+(load 'locref)
+(load 'idxstyle)
+(load 'index)
+(load 'version)
+(load 'markup)
+
+(load "defaults.xdy")
+
+(setq *load-verbose* nil)
+
+(shadow 'require)
+(lisp:shadowing-import idxstyle:*idxstyle-user-interface-definitions*)
+(lisp:import markup:*markup-user-interface-definitions*)
+(lisp:import index:*raw-index-interface-definitions*)
+
+;; Install the break-driver if its feature exists.
+#+:BREAK-DRIVER
+(setq *break-driver* #'xindy:*break-driver*)
+
+(gc)
+
+(saveinitmem "xindy.mem" :quiet t)
+(exit)
diff --git a/Build/source/utils/xindy/src/idxstyle.lsp b/Build/source/utils/xindy/src/idxstyle.lsp
new file mode 100644
index 00000000000..299d513aad9
--- /dev/null
+++ b/Build/source/utils/xindy/src/idxstyle.lsp
@@ -0,0 +1,2131 @@
+;; line 289 "idxstyle.nw"
+;; $Id: idxstyle.nw,v 1.19 1997/03/26 16:18:23 kehr Exp $
+;;
+
+(lisp:defpackage "IDXSTYLE")
+(lisp:in-package "IDXSTYLE")
+(lisp:provide "idxstyle")
+
+#+CLISP (lisp:require "base")
+#+CLISP (lisp:require "locref")
+
+(eval-when (compile load eval)
+ (lisp:use-package "CLOS")
+ (lisp:use-package "COMMON-LISP")
+ #+CLISP (lisp:use-package "EXT")
+ #+(and :XP CLISP) (lisp:use-package "XP")
+ #-CLISP (lisp:require "base")
+ #-CLISP (lisp:require "locref")
+ (lisp:use-package "BASE")
+ (lisp:use-package "LOCREF")
+
+;; line 472 "intface.nw"
+(eval-when (eval load compile)
+ (when (find-package "ORDRULES")
+ (pushnew :ORDRULES *features*)))
+;; line 306 "idxstyle.nw"
+ ;; see submodule intface
+ )
+
+;; line 78 "idxstyle.nw"
+(defparameter *indexstyle* nil)
+(defparameter *indexstyle-readtable* (copy-readtable))
+(defparameter *included-files* '())
+(defvar *load-paths* "")
+(defparameter *default-load-paths* *load-paths*)
+
+(defparameter *default-minimum-range-length* 2)
+(defparameter *default-locref-hierdepth* 0)
+
+;; line 1151 "intface.nw"
+;; $Id: intface.nw,v 1.30 1997/10/20 11:25:09 kehr Exp $
+
+;; line 1016 "intface.nw"
+;;; $Id: intface.nw,v 1.30 1997/10/20 11:25:09 kehr Exp $
+;;;----------------------------------------------------------------------
+
+;;;
+;;; util-lib LISP Utitlity Library
+;;;
+;;; (history at end)
+
+
+;(provide 'util-lib)
+;(in-package 'util-lib)
+
+(defvar whole)
+(eval-when (compile load eval)
+ (export '(destructuring-switch-bind &switch whole)))
+
+(defmacro destructuring-switch-bind (lambdalist expr . body)
+ "Similar to 'destructuring-bind' but also allows switch options at the
+end of LAMBDALIST with the following syntax:
+
+ &switch { var | (var key [defval]) | (var ({ key }*) [defval]) }*
+
+In all cases VAR will be accessible in BODY as a variable.
+
+If only VAR is specified, it is bound to the keyword with the same
+name, if that keyword occured in EXPR. Otherwise it is bound to NIL.
+
+If both a VAR and KEY were specified, VAR will be bound to KEY, if KEY
+occured in EXPR and to NIL otherwise.
+
+If VAR and a list of KEYs were specified, VAR will be bound to the
+first KEY, which occured in EXPR. If none of the KEYS occured within
+EXPR, VAR will be bound to NIL.
+
+If DEFVAL was specified, variable will be bound to DEFVAL instead of
+NIL in cases where no switch keyword was found in EXPR.
+"
+
+ (let* ((switchlist (member '&switch lambdalist))
+
+ ;; 'remove' switches from lambdalist
+ (lambdalist (ldiff lambdalist switchlist))
+
+ ;; drop &switch keyword
+ (switches (when switchlist (cdr switchlist)))
+
+ ;; construct bindings for each switch and collect valid
+ ;; keywords in 'switchkeys'
+ (switchkeys '())
+ (bindings
+ (mapcar
+ #'(lambda (spec)
+ (cond
+
+ ;; spec simply consists of VAR
+ ((symbolp spec)
+ (let ((key (intern (symbol-name spec) 'keyword)))
+ (push key switchkeys)
+ `(,spec (FIND ,key <DESTRUCTURING-SWITCH-FORM>))
+ ))
+
+ ;; spec is (VAR form)
+ ((and (listp spec) (>= (list-length spec) 2))
+ (let ((var (first spec))
+ (keyspec (second spec))
+ (defval (when (cddr spec) (third spec))))
+ (cond
+ ;; spec is (VAR (KEY1 KEY2 ...))
+ ((listp keyspec)
+ `(,var
+ (COND
+ ,@(mapcar
+ #'(lambda (key)
+ (push key switchkeys)
+ `((FIND ,key <DESTRUCTURING-SWITCH-FORM>)
+ ,key))
+ keyspec)
+ (T ,defval))))
+
+ ;; spec is (VAR KEY)
+ (t
+ (push keyspec switchkeys)
+ ` (,var (OR
+ (FIND ,keyspec <DESTRUCTURING-SWITCH-FORM>)
+ ,defval)))
+ )))
+
+ ;; illegal spec
+ (t (error "~A is not a valid switch specifier." spec))
+ ))
+ switches))
+ )
+
+ ;; construct the expansion form
+ ` (LET ((<DESTRUCTURING-SWITCH-FORM> ,expr))
+ (LET ,bindings
+ (HANDLER-CASE
+ (DESTRUCTURING-BIND ,lambdalist
+ (SET-DIFFERENCE-KEEP-ORIGINAL-ORDER
+ <DESTRUCTURING-SWITCH-FORM>
+ ',switchkeys)
+ ,@body)
+ (ERROR (COND)
+ (DECLARE (IGNORE COND))
+ (ERROR "~&Syntax Error in ~S." WHOLE)
+ )
+ )
+ )
+ )
+ ))
+
+(defun set-difference-keep-original-order (set1 set2)
+ (mapcan #'(lambda (elt)
+ (unless (member elt set2)
+ (list elt)))
+ set1))
+
+#|
+(destructuring-switch-bind (name &rest args &key foo bar
+ &switch
+ on ; simple form
+ (started :start)
+ (speed (:fast :slow))
+ (off :turn-off :turn-on) ; with switch key
+ (choose (:one :two :three) :three))
+ '(width :foo 5 :bar 7 :on :turn-off :one)
+ (list name foo bar args on started speed off choose))
+|#
+;; line 111 "intface.nw"
+(eval-when (compile load eval)
+ (defun stringify (name)
+ (declare (inline))
+ (etypecase name
+ (symbol (symbol-name name))
+ (string name)
+ (number (write-to-string name)))))
+
+(defun list-of-strings-p (x)
+ (cond ((not (listp x)) nil)
+ ((every #'(lambda (elt)
+ (or (stringp elt) (symbolp elt) (numberp elt)))
+ x))))
+;; line 136 "intface.nw"
+(defun make-well-formed-list (attr-list)
+ (mapcar #'(lambda (x)
+ (cond ((null x)
+ (error "empty lists are not allowed !"))
+ ((or (symbolp x) (stringp x) (numberp x))
+ (list (stringify x)))
+ ((listp x)
+ (map-to-strings x))))
+ attr-list))
+
+(defun map-to-strings (slist)
+ (mapcar #'(lambda (x)
+ (cond ((null x)
+ (error "empty lists are not allowed !"))
+ ((or (symbolp x) (stringp x) (numberp x))
+ (stringify x))
+ ((listp x)
+ (error "nesting level too deep !"))
+ (t (error "~S is not a string !" x))))
+ slist))
+;; line 185 "intface.nw"
+(defun c-string-reader (stream char)
+ (declare (ignore char))
+ (let ((ch nil)
+ (str (make-array 32
+ :element-type
+ #+CLISP 'string-char
+ #-CLISP 'base-char
+ :adjustable t
+ :fill-pointer 0)))
+ (loop
+ (setq ch (read-char stream t #\Newline t))
+ (case ch
+ (#\" (let ((nextch (read-char-no-hang stream t #\Newline t)))
+ (when nextch
+ (unread-char nextch stream)
+ (case nextch
+ (#\Newline)
+ (#\t)
+ (#\Space)
+ (#\))
+ (t (nraw "~&Possible read-error due to ill-formed string \"~A\" ~S"
+ str *))))
+ (return str)))
+ (#\~ (setq ch (read-char stream t #\Newline t))
+ (case ch
+ (#\n (vector-push-extend #\Newline str))
+ (#\t (vector-push-extend #\Tab str))
+ (#\b (vector-push-extend (character 1) str))
+ (#\e (vector-push-extend (character 255) str))
+ (t (vector-push-extend ch str))))
+ (t (vector-push-extend ch str))))))
+
+(set-macro-character #\" #'c-string-reader nil *indexstyle-readtable*)
+
+#|
+(let ((x #\Null))
+ (loop for i from 1 to 255
+ do (progn (print (character i))
+ (when (char>= x (character i))
+ (print "Whee!"))
+ (setq x (character i)))))
+|#
+;; line 254 "intface.nw"
+(defmacro define-alphabet (&whole whole &optional name string-list)
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 256 "intface.nw"
+ ((not (listp string-list))
+ (error "missing argument <string-list> !"))
+ ((not (list-of-strings-p string-list))
+ (error "~S is not a list of strings" string-list))
+ (t `(LET ((NAME (STRINGIFY ',name)))
+ (WHEN (LOOKUP-BASETYPE *indexstyle* NAME)
+ (NRAW "redefining alphabet `~S'" NAME))
+ (ADD *indexstyle* (MAKE-ALPHABET NAME ',string-list))))))
+
+(defmacro define-alphabet* (&whole whole &optional name string-list)
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 267 "intface.nw"
+ ((not (listp string-list))
+ (error "missing argument <string-list> !"))
+ (t (let ((scar (car string-list)))
+ (if (and (symbolp scar) (fboundp scar))
+ `(LET ((NAME (STRINGIFY ',name))
+ (STRING-LIST ,string-list)) #| evaluates string-list |#
+ (UNLESS (LIST-OF-STRINGS-P STRING-LIST)
+ (ERROR "~S is not a list of strings" STRING-LIST))
+ (WHEN (LOOKUP-BASETYPE *indexstyle* NAME)
+ (NRAW "redefining alphabet `~S'" NAME))
+ (ADD *indexstyle* (MAKE-ALPHABET NAME STRING-LIST))))))))
+;; line 284 "intface.nw"
+(defmacro define-enumeration (&whole
+ whole
+ &optional
+ name prefix-match-func base-alphabet)
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 289 "intface.nw"
+ ((null prefix-match-func)
+ (error "missing argument <prefix-match-function> !"))
+ (t (let* ((name (stringify name))
+ (symbol (make-symbol
+ (concatenate 'string "ENUMERATION-" name))))
+ `(LET () #| PROGN instead of LET () yields a runtime error !? |#
+ (IF (LOOKUP-BASETYPE *indexstyle* ,name)
+ (NRAW "redefining alphabet `~S'" ,name)
+ (PROGN
+ (DEFCLASS ,symbol (ENUMERATION) ())
+ (ADD *indexstyle*
+ (MAKE-ENUMERATION ',symbol ,name ,base-alphabet))))
+ (DEFMETHOD PREFIX-MATCH ((STR STRING) (ENUM ,symbol))
+ (FUNCALL ,prefix-match-func STR)))))))
+;; line 312 "intface.nw"
+(defmacro define-location-class (&whole whole &rest args)
+ (destructuring-switch-bind (name
+ layer-list
+ &key
+ (min-range-length *default-minimum-range-length*)
+ (hierdepth 0) ;no hierarchies are to be formed
+ &switch
+ (var :var))
+ args
+ (cond
+ ((null name)
+ (error "missing argument <name> in~%~S" whole))
+ ((null layer-list)
+ (error "missing argument <layer-list> in~%~S" whole))
+ ;;((not (list-of-strings-p layer-list))
+ ;; (error "~S is not a list of strings in~%~S" layer-list whole))
+ ((not (numberp hierdepth))
+ (error "~S is not a number! in~%~S" hierdepth whole))
+ ((not (or (numberp min-range-length)
+ (eql 'none min-range-length)))
+ (error "~S must be a number or the keyword `none' in~%~S"
+ min-range-length whole))
+ (t (when (eql 'none min-range-length)
+ (setq min-range-length 0))
+ `(LET ((NAME (STRINGIFY ',name))
+ (LAYERS (BUILD-LOCCLASS-LAYERS ',layer-list ',whole)))
+ ;;(GOL T "~&define-location-class: ~S" LAYERS)
+ (COND ((LOOKUP-CROSSREF-CLASS *indexstyle* NAME)
+ (OOPS "replacing cross-reference-class `~S' is not allowed !"
+ NAME))
+ (t (WHEN (LOOKUP-LOCATION-CLASS *indexstyle* NAME)
+ (NRAW "redefining location-reference-class `~S' !" NAME))
+ (ADD *indexstyle*
+ ,(if var
+ `(CHECKED-MAKE-VAR-LOCATION-CLASS NAME LAYERS
+ ,hierdepth)
+ `(CHECKED-MAKE-STANDARD-LOCATION-CLASS NAME LAYERS
+ ,min-range-length ,hierdepth))))
+ ))))))
+;; line 354 "intface.nw"
+(defun build-locclass-layers (layers whole)
+ (let ((res-list '()))
+ (loop
+ ;;(gol t "~&build-locclass-layers: ~S" layers)
+ (when (endp layers) (return (nreverse res-list)))
+ (cond ((eql :sep (car layers))
+ (setq layers (cdr layers))
+ (if (endp layers)
+ (error "Reached end of list in~%~S" whole)
+ (push (make-loccls-separator (stringify (car layers)))
+ res-list)))
+ (t (let* ((layer (stringify (car layers)))
+ (basetype (lookup-basetype *indexstyle* layer)))
+ (if basetype
+ (push (make-loccls-layer basetype) res-list)
+ (error "Unknown basetype ~S in~%~S" layer whole)))))
+ (setq layers (cdr layers)))))
+;; line 377 "intface.nw"
+(defmacro define-crossref-class (&whole whole &rest args)
+ (destructuring-switch-bind (name
+ &switch (verified :unverified))
+ args
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 382 "intface.nw"
+ (t `(LET ((NAME (STRINGIFY ',name)))
+ (cond ((LOOKUP-LOCATION-CLASS *indexstyle* NAME)
+ (OOPS "replacing location-reference-class `~S' is not allowed !"
+ NAME))
+ (t (WHEN (LOOKUP-CROSSREF-CLASS *indexstyle* NAME)
+ (NRAW "redefining crossref-location-class `~S'" NAME))
+ (ADD *indexstyle*
+ ,(if verified
+ `(MAKE-UNVERIFIED-CROSSREF-LOCATION-CLASS NAME)
+ `(MAKE-VERIFIED-CROSSREF-LOCATION-CLASS NAME))))))))))
+;; line 398 "intface.nw"
+(defmacro define-location-class-order (olist)
+ (cond ((not (listp olist))
+ (error "missing argument <list> !"))
+ ((not (list-of-strings-p olist))
+ (error "~S is not a list of strings" olist))
+ (t `(LET ((CTR 1))
+ (MAPC #'(LAMBDA (NAME)
+ (LET* ((NEW-NAME (STRINGIFY NAME))
+ (LOCCLS
+ (CDR (LOOKUP-LOCATION-CLASS *indexstyle*
+ NEW-NAME))))
+ (INCF CTR)
+ (COND (LOCCLS (SET-ORDNUM CTR LOCCLS))
+ (t (OOPS "unknown location-class `~S'"
+ NEW-NAME)))))
+ ',olist)))))
+;; line 423 "intface.nw"
+(defmacro define-attributes (&whole whole &optional attr-list)
+ (cond ((null attr-list)
+ (error "missing argument <attribute-list> in~&~S" whole))
+ (t (let* ((wf-attr-list (make-well-formed-list attr-list))
+ (plain-list (apply #'concatenate 'list wf-attr-list))
+ )
+ `(PROGN
+ (MAPCAR
+ #'(LAMBDA (CATATTR)
+ (IF (LOOKUP-CATATTR *indexstyle* CATATTR)
+ (NRAW "ignoring redefinition of attribute ~S in~&~S"
+ CATATTR ',whole)
+ (ADD *indexstyle*
+ (MAKE-CATEGORY-ATTRIBUTE CATATTR))))
+ ',plain-list)
+ (INITIALIZE-CATEGORY-ATTRIBUTES ',wf-attr-list *indexstyle*))
+ ))))
+;; line 488 "intface.nw"
+#+:ORDRULES
+(defmacro merge-rule (&whole whole &rest args)
+ (destructuring-switch-bind (pattern
+ replacement
+ &switch
+ (again :again)
+ (string :string)
+ (extended-regexp :eregexp)
+ (basic-regexp :bregexp))
+ args
+ (cond ((null pattern)
+ (error "missing argument <pattern> !"))
+ ((or (and string extended-regexp) (and string basic-regexp)
+ (and extended-regexp basic-regexp))
+ (error "~&Only one of (:string :bregexp :eregexp) allowed in:~&~S !"
+ whole))
+ ((null replacement)
+ (error "~&Missing argument <replacement> in:~&~S!" whole))
+ (t `(PROGN
+ (UNLESS
+ (ZEROP
+ (ORDRULES:ADD-KEYWORD-MERGE-RULE ,pattern ,replacement
+ ,(if again 1 0)
+ ,(cond (string 1)
+ (basic-regexp 2)
+ (extended-regexp 3)
+ (t 0))))
+ (OOPS "~&Wrong regular expression ~S in:~%~S." ',pattern ',whole))
+ (FLUSH-ORDRULES-MESSAGE-BUFFER))))))
+
+#-:ORDRULES
+(defmacro merge-rule (&rest args)
+ (declare (ignore args))
+ (oops "merge-rule not supported! ignoring definition"))
+;; line 525 "intface.nw"
+#+:ORDRULES
+(defparameter *sort-rule-orientations*
+ '(forward forward forward forward
+ forward forward forward forward))
+
+#+:ORDRULES
+(defmacro define-sort-rule-orientations (&whole whole &rest args)
+ (destructuring-switch-bind (&optional
+ (orientations *sort-rule-orientations*))
+ args
+ (unless (every #'(lambda (run)
+ (member run '(forward backward)))
+ orientations)
+ (error "~&Elements of ~S must be one of {forward,backward}!"
+ orientations))
+ `(PROGN
+ (SETQ *SORT-RULE-ORIENTATIONS* ',orientations)
+ (ORDRULES:INITIALIZE (LENGTH *SORT-RULE-ORIENTATIONS*))
+ (FLUSH-ORDRULES-MESSAGE-BUFFER))))
+
+#+:ORDRULES
+(defmacro define-rule-set (&whole whole &rest args)
+ (destructuring-bind (&optional
+ name
+ &key
+ inherit-from
+ rules)
+ args
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 554 "intface.nw"
+ ((not (listp rules))
+ (error "missing argument <rules-list> !"))
+ (t `(LET ((RS (MAKE-RULE-SET ',name ',inherit-from ',rules)))
+ (MAPC #'(LAMBDA (INH-NAME)
+ (INHERIT-RULE-SET RS (LOOKUP-RULE-SET *INDEXSTYLE*
+ INH-NAME)))
+ ',inherit-from)
+ (ADD-RULE-SET *INDEXSTYLE* RS))))))
+
+#-:ORDRULES
+(defmacro define-rule-set (&rest args)
+ (declare (ignore args))
+ (oops "define-rule-sets not supported! ignoring definition"))
+
+#+:ORDRULES
+(defmacro use-rule-set (&whole whole &rest args)
+ ;; FIXME: if we use destructuring-switch-bind-here an error occurs
+ (destructuring-bind (&key
+ run
+ rule-set)
+ args
+ (cond ((not (integerp run))
+ (error "incorrect argument <run> !"))
+ ((not rule-set)
+ (error "missing argument <rule-set> !"))
+ ((not (or (listp rule-set)
+ (stringp rule-set)))
+ (error "wrong argument to <rule-set> !"))
+ (t `(INSTANTIATE-RULE-SET ,run ,rule-set)))))
+
+#-:ORDRULES
+(defmacro use-rule-set (&rest args)
+ (declare (ignore args))
+ (oops "use-rule-sets not supported! ignoring definition"))
+
+#+:ORDRULES
+(defmacro sort-rule (&whole whole &rest args)
+ (destructuring-switch-bind (pattern
+ replacement
+ &key
+ (run 0)
+ &switch
+ (again :again)
+ (string :string)
+ (extended-regexp :eregexp)
+ (basic-regexp :bregexp))
+ args
+ (cond ((null pattern)
+ (error "missing argument <pattern> !"))
+ ((or (< run 0) (>= run (length *sort-rule-orientations*)))
+ (error "~&Argument of :run must be in the interval [0..~A]!"
+ (length *sort-rule-orientations*)))
+ ((or (and string extended-regexp) (and string basic-regexp)
+ (and extended-regexp basic-regexp))
+ (error "~&Only one of (:string :bregexp :eregexp) allowed in:~&~S !"
+ whole))
+ ((null replacement)
+ (error "missing argument <replacement> !"))
+ (t `(PROGN
+ (UNLESS
+ (ZEROP
+ (ORDRULES:ADD-KEYWORD-SORT-RULE ,run ,pattern ,replacement
+ ,(if again 1 0)
+ ,(cond (string 1)
+ (basic-regexp 2)
+ (extended-regexp 3)
+ (t 0))))
+ (OOPS "~&Wrong regular expression ~S in:~%~S." ',pattern ',whole))
+ (FLUSH-ORDRULES-MESSAGE-BUFFER))))))
+
+#-:ORDRULES
+(defmacro define-sort-rule-orientations (&rest args)
+ (declare (ignore args))
+ (oops "define-sort-rule-orientations not supported! ignoring definition"))
+
+#-:ORDRULES
+(defmacro sort-rule (&rest args)
+ (declare (ignore args))
+ (oops "sort-rule not supported! ignoring definition"))
+
+(defun flush-ordrules-message-buffer ()
+ #+:ORDRULES
+ (when (and *mappings-trace* ordrules::*message-logging*)
+ (gol t "~A" ordrules::*message-buffer*)
+ (setq ordrules::*message-buffer-ptr* 0)))
+;; line 696 "intface.nw"
+(defmacro define-letter-group
+ (&whole whole name &key prefixes before after)
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 699 "intface.nw"
+ ((and before
+ (not (lookup-letter-group-definition *indexstyle* before)))
+ (error "~S does not name a letter group in~%~S" before whole))
+ ((and after
+ (not (lookup-letter-group-definition *indexstyle* after)))
+ (error "~S does not name a letter group in~%~S" after whole))
+ ((not (list-of-strings-p prefixes))
+ (error "argument <prefixes> is not a list of strings in~%~S"
+ whole))
+ (t `(LET ()
+ (ADD-LETTER-GROUPS *INDEXSTYLE*
+ ,name ',(or prefixes (list name))
+ :BEFORE ,before :AFTER ,after)))))
+;; line 718 "intface.nw"
+(defmacro define-letter-groups (&whole whole &optional letter-groups)
+ (cond ((not (list-of-strings-p letter-groups))
+ (error "~S is not a list of strings in~%~S" letter-groups whole))
+ (t `(LET ()
+ (ADD-LETTER-GROUPS *INDEXSTYLE*
+ ,(car letter-groups) ',(list (car letter-groups)))
+ ,@(let ((last (car letter-groups)))
+ (mapcar #'(lambda (letter-group)
+ (prog1
+ `(ADD-LETTER-GROUPS *INDEXSTYLE*
+ ,letter-group ',(list letter-group)
+ :AFTER ,last)
+ (setq last letter-group)))
+ (cdr letter-groups)))))))
+;; line 650 "intface.nw"
+(defmacro merge-to (&whole whole &rest args)
+ (destructuring-switch-bind (from to &switch drop)
+ args
+ (let ((from-attr (lookup-catattr *indexstyle* from))
+ (to-attr (lookup-catattr *indexstyle* to)))
+ (cond ((not from-attr)
+ (nraw "`~S' is not a known attribute in:~&~A" from whole))
+ ((not to-attr)
+ (nraw "`~S' is not a known attribute in:~&~A" to whole))
+ (t (if drop
+ `(ADD-DROP-IF-MERGED-RULE *INDEXSTYLE*
+ ',from-attr ',to-attr)
+ `(ADD-MERGE-RULE *INDEXSTYLE*
+ ',from-attr ',to-attr)))))))
+;; line 740 "intface.nw"
+;;; we remove the inherited symbol and establish a new one
+(eval-when (compile load eval)
+ (shadow 'require))
+
+(defmacro require (&rest args)
+ (cond ((null args)
+ (error "missing argument <filename> !"))
+ ((not (stringp (car args)))
+ (error "(require ~S): expected <filename> !" (car args)))
+ (t `(LET ((FILENAME (STRINGIFY ',(car args))))
+ (DO-REQUIRE FILENAME)))))
+
+(defun do-require (filename)
+ (let ((file (find-file filename)))
+ (unless (member file *included-files* :test #'equalp)
+ (push file *included-files*)
+ (info "~&Loading module ~S..." filename)
+ (watched-load file :echo t)
+ (info "~&Finished loading module ~S.~%" filename))))
+
+#|
+(defun do-require (filename)
+ (let ((file (find-file filename)))
+ (unless (member file *included-files* :test #'equalp)
+ (push file *included-files*)
+ (info "~&Loading module ~S..." filename)
+ (let ((*standard-output* (make-string-output-stream)))
+ (handler-case
+ (load file :verbose nil :echo t)
+; (stream-error (cond)
+; (step
+; (progn
+; (oops*
+; (simple-condition-format-string cond)
+; (simple-condition-format-arguments cond))
+; (exit))
+; )
+; )
+ (error (condition)
+ (info "~&~%~A~%" ";;;;;;;;;;;;;;;;;;;;;;;;")
+ (info "~A~%" ";; ERROR SECTION START")
+ (info "~%~A~%" (get-output-stream-string *standard-output*))
+ (info "~%~A~%" ";; ERROR SECTION END")
+ (info "~A~%~%" ";;;;;;;;;;;;;;;;;;;;;;;;")
+ (oops* (simple-condition-format-string condition)
+ (simple-condition-format-arguments condition))
+ (error-exit))
+ )
+ )
+ (info "~&Finished loading module ~S.~%" filename))))
+|#
+;; line 802 "intface.nw"
+(defun find-file (filename)
+ (let ((file (parse-namestring filename)))
+ (when (equal (file-namestring file) "")
+ (error "~S is not a valid filename !" filename))
+ (let ((found (some #'(lambda (path)
+ (and (probe-file (append-pathnames path file))))
+ *load-paths*)))
+ (or found (error "Could not find file ~S !" filename)))))
+;; line 813 "intface.nw"
+(defvar *wl-fmt* "~&~%Error in line ~S:~%~A~%")
+(defun watched-load (filename
+ &key
+ (print *load-print*)
+ (if-does-not-exist t)
+ echo)
+ (let ((stream (open (setq filename (pathname filename))
+ :direction
+ #+CLISP :input-immutable
+ #-CLISP :input
+ :element-type
+ #+CLISP 'string-char
+ #-CLISP 'base-char
+ :if-does-not-exist nil))
+ (lineno 1))
+ (if stream
+ (let* ((load-stream (make-string-output-stream))
+ (input-stream (if echo
+ (make-echo-stream stream load-stream)
+ stream
+ ))
+ (*load-pathname* (if (pathnamep filename) filename nil))
+ (*load-truename* (if (pathnamep filename) (truename filename) nil))
+ (*package* *package*) ; *PACKAGE* binden
+ (*readtable* *readtable*) ; *READTABLE* binden
+ (end-of-file "EOF")) ; einmaliges Objekt
+ ;;(setq sys::*load-input-stream* input-stream)
+ (block nil
+ (unwind-protect
+ (tagbody weiter
+ (let* ((obj
+ (handler-case (read input-stream nil end-of-file)
+ (error (cond)
+ (when echo
+ (let* ((str (get-output-stream-string load-stream))
+ (cnt (count #\Newline str)))
+ (info *wl-fmt* (+ cnt lineno) str)
+ (oops* (simple-condition-format-string cond)
+ (simple-condition-format-arguments cond))
+ (error-exit))))))
+ (str (get-output-stream-string load-stream))
+ (cnt (count #\Newline str)))
+ (incf lineno cnt)
+ (when (eql obj end-of-file)
+ (return-from nil))
+ (setq obj
+ (multiple-value-list
+ (cond ((compiled-function-p obj) (funcall obj))
+ ;;(compiling (funcall (compile-form obj nil nil nil nil nil)))
+ (t (handler-case (eval obj)
+ (error (cond)
+ (info *wl-fmt* lineno str)
+ (oops* (simple-condition-format-string cond)
+ (simple-condition-format-arguments cond))
+ (error-exit)))
+ (get-output-stream-string load-stream)
+ ))))
+ (when print (when obj (print (first obj))))
+ )
+ (go weiter)
+ )
+ (close stream) (close input-stream)
+ ) )
+ t)
+ (if if-does-not-exist
+ (error "A file with name ~A does not exist" filename)
+ nil)
+ ) ))
+;; line 891 "intface.nw"
+(defmacro searchpath (&rest args)
+ (cond ((null args)
+ (error "missing argument <pathlist> !"))
+ ((stringp (car args))
+ `(SET-SEARCHPATH-BY-STRING ,(car args)))
+ ((listp args)
+ `(SET-SEARCHPATH ',(car args)))))
+
+(defun set-searchpath-by-string (searchpath-str)
+ (set-searchpath (string-to-searchlist searchpath-str)))
+;; line 913 "intface.nw"
+(defun string-to-searchlist (str)
+ (let ((paths '())
+ pos)
+ (nreverse
+ (loop (when (equalp str "")
+ (return (push :default paths)))
+ (setq pos (position #+UNIX #\:
+ #+OS/2 #\;
+ str))
+ (if pos
+ (progn
+ (push (subseq str 0 pos) paths)
+ (setq str (subseq str (1+ pos))))
+ (return (push str paths)))))))
+
+(defun set-searchpath (path-list)
+ (setq *load-paths*
+ (apply #'nconc
+ (mapcar
+ #'(lambda (elt)
+ (cond ((stringp elt)
+ (list (make-real-pathname elt)))
+ ((eq elt :default)
+ *default-load-paths*)
+ ((eq elt :last)
+ *load-paths*)
+ (t (oops "~&searchpath: invalid argument ~S in~%~S"
+ elt path-list))))
+ path-list))))
+;; line 954 "intface.nw"
+#+CLISP
+(defun make-real-pathname (pathname-str)
+ (let* ((pn (pathname pathname-str))
+ (fname (file-namestring pn)))
+ (if (string/= fname "")
+ (make-pathname :device (pathname-device pn)
+ :directory (append (or (pathname-directory pn)
+ '(:relative))
+ (list fname)))
+ pn)))
+;; line 966 "intface.nw"
+#-CLISP
+(defun make-real-pathname (pathname-str)
+ (let ((pn (parse-namestring
+ (if (eql (elt pathname-str (1- (length pathname-str))) #\/)
+ pathname-str
+ (concatenate 'string pathname-str "/")))))
+ (if (pathname-directory pn)
+ pn
+ (make-pathname :directory (list :relative (pathname-name pn))))))
+;; line 986 "intface.nw"
+(defun append-pathnames (pn-dir pn-sub)
+ (let ((dir-dir (pathname-directory pn-dir))
+ (dir-sub (pathname-directory pn-sub)))
+ (cond ((eq :absolute (car dir-sub)) pn-sub)
+ (t (make-pathname :device (pathname-device pn-dir)
+ :directory (append dir-dir (cdr dir-sub))
+ :name (pathname-name pn-sub)
+ :type (pathname-type pn-sub))))))
+
+;; line 62 "intface.nw"
+(defparameter *idxstyle-user-interface-definitions*
+ '(
+ *default-minimum-range-length*
+ *included-files*
+ *indexstyle-readtable*
+ define-alphabet
+ define-alphabet*
+ define-attributes
+ define-crossref-class
+ define-enumeration
+ define-letter-group
+ define-letter-groups
+ define-location-class
+ define-location-class-order
+ define-rule-set
+ define-sort-rule-orientations
+ forward backward
+ info
+ merge-rule
+ merge-to
+ require
+ searchpath
+ sort-rule
+ use-rule-set
+ *indexstyle*
+ ))
+
+;; line 1168 "intface.nw"
+(eval-when (compile load eval)
+
+;; line 91 "intface.nw"
+(export '(*indexstyle*
+ *indexstyle-readtable*
+ do-require
+ set-searchpath-by-string
+ *sort-rule-orientations*
+ forward backward
+ *idxstyle-user-interface-definitions*
+ ))
+;; line 159 "intface.nw"
+(export '(stringify list-of-strings-p
+ make-well-formed-list map-to-strings))
+;; line 642 "intface.nw"
+(export 'flush-ordrules-message-buffer)
+;; line 1170 "intface.nw"
+ )
+;; line 557 "idxrule.nw"
+;; $Id: idxrule.nw,v 1.10 1997/03/26 16:18:19 kehr Exp $
+
+;; line 323 "idxrule.nw"
+(defclass relation ()
+ ((rel-sets :accessor get-rel-sets
+ :initform '() )
+ (rel-hash :accessor get-rel-hash
+ :initform (make-hash-table :test #'equal))))
+
+(defun make-relation ()
+ (make-instance 'relation))
+;; line 344 "idxrule.nw"
+(defmethod rel-insert ((rel relation) x y)
+ (let* ((rel-sets (get-rel-sets rel))
+ (x-node (assoc x rel-sets))
+ (y-node (assoc y rel-sets)))
+ (cond ((null x-node) (setf (get-rel-sets rel) (cons (list x y) rel-sets)))
+ ((member y (cdr x-node)))
+ (t (rplacd x-node (cons y (cdr x-node)))))
+ (when (and (null y-node) (not (eql x y)))
+ (setf (get-rel-sets rel) (cons (list y) (get-rel-sets rel)))))
+ rel)
+
+(defmethod rel-simple-insert ((rel relation) x)
+ (let* ((rel-sets (get-rel-sets rel))
+ (x-node (assoc x rel-sets)))
+ (unless x-node (setf (get-rel-sets rel) (cons (list x) rel-sets))))
+ rel)
+;; line 366 "idxrule.nw"
+(defmethod rel-merge ((rel-1 relation) x)
+ (declare (ignore x))
+ rel-1)
+
+(defmethod rel-merge ((rel-1 relation) (rel-2 relation))
+ (mapc #'(lambda (r-2)
+ (let ((r-1 (assoc (car r-2) (get-rel-sets rel-1))))
+ (cond ((null r-1)
+ (setf (get-rel-sets rel-1)
+ (cons r-2 (get-rel-sets rel-1))))
+ (t (rplacd r-1 (union (cdr r-1) (cdr r-2)))))))
+ (get-rel-sets rel-2))
+ rel-1)
+;; line 387 "idxrule.nw"
+(defmacro relation-set (rel x)
+ `(CDR (ASSOC ,x (SLOT-VALUE ,rel 'REL-SETS))))
+;; line 408 "idxrule.nw"
+(defmethod make-ready ((rel relation))
+ (let ((ht (get-rel-hash rel)))
+ (mapc #'(lambda (node)
+ (mapc #'(lambda (succ-node)
+ (setf (gethash (cons (car node) succ-node) ht)
+ t))
+ (cdr node)))
+ (get-rel-sets rel)))
+ rel)
+;; line 423 "idxrule.nw"
+(defmacro relation-p (rel x y)
+ `(GETHASH (CONS ,x ,y) (SLOT-VALUE ,rel 'REL-HASH)))
+;; line 439 "idxrule.nw"
+(defun print-relation (rel-sets stream printfunc
+ &key open close headsep listsep)
+ (mapc #'(lambda (from)
+ (when open (format stream open))
+ (write (funcall printfunc (car from)) :stream stream)
+ (when headsep (format stream headsep))
+ (mapc #'(lambda (to)
+ (write (funcall printfunc to) :stream stream)
+ (when listsep (format stream listsep)))
+ (cdr from))
+ (when close (format stream close)))
+ rel-sets))
+;; line 467 "idxrule.nw"
+(defmethod topsort ((rel relation))
+ (let ((rel-set (copy-tree (get-rel-sets rel)))
+ (topsort-list '()))
+ (loop
+ (let ((zero-indeg (find-if #'(lambda (x) (null (cdr x))) rel-set)))
+ (when (null zero-indeg) (return))
+ (let ((zero-indeg-elt (car zero-indeg)))
+ (setq topsort-list (cons zero-indeg-elt topsort-list))
+ (setq rel-set (delete zero-indeg rel-set :test #'equal))
+ (mapc #'(lambda (x)
+ (rplacd x (delete zero-indeg-elt (cdr x) :test #'equal)))
+ rel-set)))
+ )
+ (if (null rel-set)
+ (values topsort-list t)
+ (values nil rel-set))))
+;; line 494 "idxrule.nw"
+(defmethod transform-relation ((rel relation) transform-func)
+ (let ((new-rel (make-relation)))
+ (mapc #'(lambda (x)
+ (let ((transformed-x (funcall transform-func (car x))))
+ (mapc #'(lambda (y)
+ (rel-insert new-rel
+ transformed-x
+ (funcall transform-func y)))
+ (cdr x))))
+ (get-rel-sets rel))
+ new-rel))
+;; line 511 "idxrule.nw"
+(defmethod remove-reflexivity ((rel relation))
+ (mapc #'(lambda (x)
+ (rplacd x (delete (car x) (cdr x) :test #'equal)))
+ (get-rel-sets rel))
+ rel)
+;; line 529 "idxrule.nw"
+(defmethod transitive-hull ((rel relation))
+ (setf (get-rel-sets rel)
+ (let ((rel-sets (get-rel-sets rel)))
+ (mapc #'(lambda (j)
+ (mapc #'(lambda (i)
+ (when (member (car j) (cdr i))
+ (mapc #'(lambda (k)
+ (when (and
+ (member (car k) (cdr j))
+ (not (member (car k)
+ (cdr i))))
+ (rplacd (last i)
+ (list (car k)))))
+ rel-sets)))
+ rel-sets))
+ rel-sets)))
+ rel)
+;; line 61 "idxrule.nw"
+(defclass index-rule ()
+ ())
+
+(defclass relation-rule (index-rule relation)
+ ())
+;; line 88 "idxrule.nw"
+(defclass merge-rule (relation-rule)
+ ())
+
+(defun make-merge-rule ()
+ (make-instance 'merge-rule))
+;; line 117 "idxrule.nw"
+(defclass drop-if-merged-rule (relation-rule)
+ ())
+
+(defun make-drop-if-merged-rule ()
+ (make-instance 'drop-if-merged-rule))
+;; line 278 "idxrule.nw"
+(defclass substitution-rule (relation-rule)
+ ())
+
+(defun make-substitution-rule ()
+ (make-instance 'substitution-rule))
+;; line 164 "idxrule.nw"
+(defclass catattr-groups (index-rule)
+ ((attribute-list :reader get-attribute-list
+ :writer set-attribute-list
+ :initform nil)
+ (attribute-table :reader get-attribute-table
+ :initform (make-hash-table :test #'equal
+ :size 16))))
+
+(defun make-catattr-groups ()
+ (make-instance 'catattr-groups))
+
+(defmethod add ((catattr-grp catattr-groups)
+ (catattr category-attribute))
+ (setf (gethash (get-name catattr) (get-attribute-table catattr-grp))
+ catattr))
+
+(defmacro lookup-catattr-name (catattr-grp catattr-name)
+ `(GETHASH ,catattr-name (SLOT-VALUE ,catattr-grp 'ATTRIBUTE-TABLE)))
+;; line 217 "idxrule.nw"
+(defun initialize-category-attributes (attribute-list idxcls)
+ (let ((catattr-grps (get-cat-attrs idxcls))
+ (impl-subst-rule (get-implicit-subst-rules idxcls)))
+ (set-attribute-list attribute-list catattr-grps)
+ (let ((catattr-grp-counter 0)
+ (sort-ordnum-counter 0))
+ (mapc
+ #'(lambda (sublist)
+ (incf catattr-grp-counter)
+ (let ((last-in-group (lookup-catattr-name catattr-grps
+ (car (last sublist))))
+ (prev-catattr nil))
+ (mapc
+ #'(lambda (catattr)
+ (cond ((stringp catattr)
+ (let ((ca (lookup-catattr-name catattr-grps
+ catattr)))
+ (incf sort-ordnum-counter)
+ (set-sort-ordnum sort-ordnum-counter ca)
+ (set-catattr-grp-ordnum catattr-grp-counter ca)
+ (set-last-in-group last-in-group ca)
+ (when prev-catattr
+ (rel-insert impl-subst-rule
+ (lookup-catattr-name catattr-grps
+ prev-catattr)
+ (lookup-catattr-name catattr-grps
+ catattr)))
+ (setq prev-catattr catattr)))
+ (t (error "~A is not a string" catattr))))
+ sublist)))
+ attribute-list))
+ catattr-grps))
+
+;; line 566 "idxrule.nw"
+(eval-when (compile load eval)
+
+;; line 69 "idxrule.nw"
+(export '(index-rule relation-rule))
+;; line 96 "idxrule.nw"
+(export '(merge-rule make-merge-rule))
+;; line 125 "idxrule.nw"
+(export '(drop-if-merged-rule make-drop-if-merged-rule))
+;; line 185 "idxrule.nw"
+(export '(catattr-groups make-catattr-groups lookup-catattr-name))
+;; line 252 "idxrule.nw"
+(export '(initialize-category-attributes catattr-single catattr-mixed))
+;; line 286 "idxrule.nw"
+(export '(substitution-rule make-substitution-rule))
+;; line 428 "idxrule.nw"
+(export '(relation make-relation get-rel-sets
+ rel-insert rel-merge make-ready
+ relation-set relation-p))
+;; line 549 "idxrule.nw"
+(export '(topsort transform-relation remove-reflexivity transitive-hull))
+;; line 568 "idxrule.nw"
+ )
+;; line 873 "idxclass.nw"
+;; $Id: idxclass.nw,v 1.20 1997/03/26 16:18:16 kehr Exp $
+;;
+
+;; line 129 "idxclass.nw"
+(defparameter *locref-cache-size* 1000)
+(defparameter *locref-cache-rehash-size* 2)
+(defparameter *locref-cache-hits* 0)
+(defparameter *locref-cache-misses* 0)
+;; line 80 "idxclass.nw"
+(defclass indexclass ()
+ ((name :initarg :name :type string)
+ (basetypes :accessor get-basetypes
+ :initform (make-hash-table :test #'equal :size 10))
+ (cat-attrs :accessor get-cat-attrs
+ :initform (make-catattr-groups))
+ (locref-classes :accessor get-locref-classes
+ :initform '() :type list)
+ (xref-classes :accessor get-xref-classes
+ :initform '() :type list)
+ (letter-groups :reader get-letter-groups
+ :initform (make-letter-group-manager))
+ (partial-order-dict :reader get-partial-order-dict
+ :initform (make-partial-order-dict))
+ (letter-dict :reader get-letter-dict
+ :initform (make-letter-dict))
+ (rule-sets :reader get-rule-sets
+ :initform (make-hash-table :test #'equal :size 20))
+
+;; line 136 "idxclass.nw"
+ (locref-cache :initform (initialize-locref-cache))
+;; line 99 "idxclass.nw"
+ ;; (succ-table :accessor get-succ-table
+ ;; :initform (make-hash-table))
+
+;; line 219 "idxclass.nw"
+ (merge-rules :reader get-merge-rules
+ :initform (make-merge-rule))
+ (drop-if-merged-rules :reader get-drop-if-merged-rules
+ :initform (make-drop-if-merged-rule))
+;; (merge-rule-topsort :reader get-merge-rule-topsort
+;; :writer set-merge-rule-topsort
+;; :initform '())
+
+
+;; line 724 "idxclass.nw"
+ (merge-drop-hook :reader get-merge-drop-hook
+ :writer set-merge-drop-hook
+ :initform #'set-state-deleted)
+
+;; line 229 "idxclass.nw"
+ (implicit-subst-rules :reader get-implicit-subst-rules
+ :initform (make-substitution-rule))
+ (explicit-subst-rules :reader get-explicit-subst-rules
+ :writer set-explicit-subst-rules
+ :initform (make-substitution-rule))
+
+;; line 776 "idxclass.nw"
+ (implicit-subst-hook :reader get-implicit-subst-hook
+ :writer set-implicit-subst-hook
+ :initform #'transitive-hull)
+ (explicit-subst-hook :reader get-explicit-subst-hook
+ :writer set-explicit-subst-hook
+ :initform #'identity)
+ (global-subst-hook :reader get-global-subst-hook
+ :writer set-global-subst-hook
+ :initform #'identity)
+ (substitution-subst-hook :reader get-substitution-subst-hook
+ :writer set-substitution-subst-hook
+ :initform #'null)
+;; line 102 "idxclass.nw"
+ ))
+
+(defun make-indexclass (name)
+ (make-instance 'indexclass :name name))
+;; line 253 "idxclass.nw"
+(defparameter *default-letter-group-definition* "default")
+
+(defclass letter-group-definition ()
+ ((name :initarg :name :type string)
+ (ordnum :initarg :ordnum :type number)))
+
+(defun make-letter-group-definition (name)
+ (make-instance 'letter-group-definition :name name :ordnum 0))
+
+(defclass letter-group-manager ()
+ ((prefixes :accessor get-prefixes
+ :initform (make-hash-table :test #'equal))
+ (letter-groups :accessor get-letter-groups
+ :initform (make-hash-table :test #'equal))
+ (sort-relation :accessor get-sort-relation
+ :initform (make-relation))
+ (lookup-list :accessor get-lookup-list :initform '())))
+
+(defun make-letter-group-manager ()
+ (let* ((lgm (make-instance 'letter-group-manager))
+ (letter-groups (get-letter-groups lgm))
+ (default-group (make-letter-group-definition
+ *default-letter-group-definition*)))
+ (setf (gethash *default-letter-group-definition* letter-groups)
+ default-group)
+ (rel-simple-insert (get-sort-relation lgm) default-group)
+ lgm))
+;; line 295 "idxclass.nw"
+(defun make-lookup-list (lgm)
+ (setf (get-lookup-list lgm)
+ (let ((lookup-list '()))
+ (maphash #'(lambda (key elt)
+ (push (cons key elt) lookup-list))
+ (get-prefixes lgm))
+ (sort lookup-list #'prefix<))))
+
+(defun prefix< (x y)
+ (let ((cx (car x))
+ (cy (car y)))
+ (let ((same-prefix (string/= cx cy)))
+ (cond ((null same-prefix))
+ ((> same-prefix 0)
+ (and (= same-prefix (length (car y)))))
+ (t (string< cx cy))))))
+;; line 326 "idxclass.nw"
+(defun add-letter-group-to-manager (lgm name prefix &key before after)
+ (let* ((prefixes (get-prefixes lgm))
+ (letter-groups (get-letter-groups lgm))
+ (letter-group (gethash name letter-groups)))
+ (unless letter-group;; this letter group is unknown -- create one!
+ (setq letter-group (make-letter-group-definition name))
+ (setf (gethash name letter-groups) letter-group)
+ (rel-simple-insert (get-sort-relation lgm) letter-group))
+ (let ((current-binding (gethash prefix prefixes)))
+ (and current-binding
+ (not (equal name (get-name current-binding)))
+ (warn "define-letter-group: prefix ~S now maps to letter group ~S"
+ prefix name)))
+ (setf (gethash prefix prefixes) letter-group)
+ (when before
+ (rel-insert (get-sort-relation lgm)
+ letter-group
+ (lookup-letter-group-definition *indexstyle* before)))
+ (when after
+ (rel-insert (get-sort-relation lgm)
+ (lookup-letter-group-definition *indexstyle* after)
+ letter-group)))
+ lgm)
+
+(defmethod lookup-letter-group-definition ((idxcls indexclass) (letter string))
+ (gethash letter (get-letter-groups (get-letter-groups idxcls))))
+;; line 360 "idxclass.nw"
+(defmethod make-ready ((lgm letter-group-manager))
+ (make-lookup-list lgm)
+ (let ((sort-relation (get-sort-relation lgm)))
+ (multiple-value-bind (topsorted-list remaining-relation)
+ (topsort sort-relation)
+ (if topsorted-list
+ (let ((ctr 0))
+ (mapc #'(lambda (grp-def)
+ (setf (get-ordnum grp-def) (incf ctr)))
+ topsorted-list))
+ (error
+ (concatenate 'string
+ "The user-defined relations for the letter-groups contains cycles!~%The part of the relation containing cycles is"
+ (with-output-to-string (s)
+ (print-relation remaining-relation s
+ #'(lambda (lgdef)
+ (get-name lgdef))
+ :open "~%" :headsep " before "
+ :listsep " "))))))))
+;; line 388 "idxclass.nw"
+(defmethod match-letter-group ((idxcls indexclass) (letter string))
+ (let* ((lgm (get-letter-groups idxcls))
+ (lookup-list (get-lookup-list lgm))
+ (match (find-if #'(lambda (prefix-cons)
+ (let* ((prefix (car prefix-cons))
+ (match-len (string/= prefix letter)))
+ (or (not match-len) #| full match |#
+ (= match-len #| full match with lg |#
+ (length prefix)))))
+ lookup-list))
+ (letter-group-definition
+ (if match
+ (cdr match);; the corresponding letter-grp-def
+ (lookup-letter-group-definition
+ *indexstyle* *default-letter-group-definition*))))
+ (gol t "~&Letter-group: ~S -> ~S"
+ letter (get-name letter-group-definition))
+ letter-group-definition))
+;; line 549 "idxclass.nw"
+(defclass rule-set ()
+ ((name :initarg :name)
+ (rules-list :accessor rules-list :initarg :rules-list)
+ (rules-hash :reader rules-hash
+ :initform (make-hash-table :test #'equal :size 32))
+ ))
+
+(defun make-rule-set (name inherit rules)
+ (unless (every #'(lambda (rule)
+ (and (stringp (car rule));; pattern
+ (stringp (cadr rule)));; replacement
+ )
+ rules)
+ (error "not a valid rule-set definition!"))
+ (let ((rs (make-instance 'rule-set :name name :rules-list rules)))
+ (let ((rh (rules-hash rs)))
+ (mapc #'(lambda (rule)
+ (setf (gethash (car rule) rh) rule))
+ rules)
+ (mapc #'(lambda (inh-name)
+ (let ((inh-rs (lookup-rule-set *indexstyle* inh-name)))
+ (when inh-rs
+ (inherit-rule-set rs inh-rs))))
+ inherit)
+ rs)))
+
+#|
+(add-rule-set *indexstyle*
+ (make-rule-set "foo" '() '(("foo" "bar" :again)
+ ("baz" "bam" :string)
+ ("1" "3"))))
+
+(add-rule-set *indexstyle*
+ (make-rule-set "bar" '() '(("1" "bar" :again)
+ ("2" "bam" :string))))
+|#
+
+(defmacro instantiate-rule-set (run rule-set-names)
+ (let ((rs (make-rule-set "temporary rule-set" rule-set-names '())))
+ (when rs
+ (cons 'progn
+ (mapcar #'(lambda (rule)
+ `(SORT-RULE ,@rule :RUN ,RUN))
+ (rules-list rs))))))
+
+
+
+(defun inherit-rule-set (rs parent)
+ (let ((rs-hash (rules-hash rs)))
+ (mapc #'(lambda (rule)
+ (let ((pattern (car rule)))
+ (unless (gethash pattern rs-hash)
+ (setf (gethash pattern rs-hash) rule)
+ (setf (rules-list rs)
+ (append (rules-list rs) (list rule))))))
+ (rules-list parent))
+ rs))
+;; line 140 "idxclass.nw"
+(defun initialize-locref-cache ()
+ (setq *locref-cache-hits* 0)
+ (setq *locref-cache-misses* 0)
+ (make-hash-table :test #'equal
+ :size *locref-cache-size*
+ :rehash-size *locref-cache-rehash-size*))
+
+(defmethod clear-locref-cache ((idxclass indexclass))
+ (setf (get-locref-cache idxclass)
+ (initialize-locref-cache)))
+
+(defun set-locref-cache-parameters (&key (size 1000) (rehash-size 3))
+ (when (< size 100) (setq size 100))
+ (when (< rehash-size 1.5) (setq rehash-size 1.5))
+ (setq *locref-cache-size* size)
+ (setq *locref-cache-rehash-size* rehash-size))
+;; line 165 "idxclass.nw"
+(defmacro lookup-locref-cache (idxcls locref-string)
+ `(LET ((LOCREF-LOOKUP (GETHASH ,locref-string
+ (SLOT-VALUE ,idxcls 'LOCREF-CACHE))))
+ (IF LOCREF-LOOKUP
+ (PROGN
+ (INCF *LOCREF-CACHE-HITS*)
+ (VALUES (CAR LOCREF-LOOKUP) (CDR LOCREF-LOOKUP)))
+ (PROGN
+ (INCF *LOCREF-CACHE-MISSES*)
+ (VALUES NIL NIL)))))
+
+(defmethod add-locref-cache ((idxcls indexclass)
+ (locref-string string)
+ (num number)
+ ;; the next one is typeless, since we
+ ;; also want to store the value NIL into
+ ;; it, to denote a mismatch
+ locref)
+ (setf (gethash locref-string (get-locref-cache idxcls))
+ (cons num locref))
+ (values num locref))
+
+(defmethod locref-statistics ((idxcls indexclass))
+ (let ((ht (get-locref-cache idxcls)))
+ (with-output-to-string (s)
+ (format
+ s "Statistics for locref-cache of indexclass ~S:~%" (get-name idxcls))
+ (format
+ s
+ "Hash-table: size=~A, count=~A, cache-hits=~A, cache-misses=~A, hits=~4,1,,'*F%~%"
+ (hash-table-size ht) (hash-table-count ht)
+ *locref-cache-hits* *locref-cache-misses*
+ (if (> *locref-cache-misses* 0)
+ (* 100 (/ *locref-cache-hits* (+ *locref-cache-hits*
+ *locref-cache-misses*)))
+ 100.0 #| produces an invalid value |#)))))
+;; line 430 "idxclass.nw"
+(defmethod add ((idxcls indexclass) (basetype basetype))
+ (setf (gethash (get-name basetype) (get-basetypes idxcls))
+ basetype)
+ idxcls)
+
+(defmethod add-alias ((idxcls indexclass) basetype alias-name)
+ (let ((new-basetype (make-copy (lookup-basetype idxcls basetype)
+ alias-name)))
+ (add idxcls new-basetype)))
+
+(defmethod add ((idxcls indexclass) (catattr category-attribute))
+ (add (get-cat-attrs idxcls) catattr)
+ idxcls)
+;; line 446 "idxclass.nw"
+(defun add-letter-groups (idxcls name prefixes &key before after)
+ (let ((lgm (get-letter-groups idxcls)))
+ (mapc #'(lambda (prefix)
+ (add-letter-group-to-manager lgm name prefix
+ :before before
+ :after after))
+ prefixes)))
+;; line 462 "idxclass.nw"
+(defmethod add ((idxcls indexclass) (loccls layered-location-class))
+ (let* ((loccls-name (get-name loccls))
+ (old-loccls (cdr (lookup-locref-class idxcls loccls-name))))
+ (when old-loccls
+ (remove-location-class idxcls old-loccls))
+ (if (get-locref-classes idxcls) #| if it is empty, we can't rplacd |#
+ (rplacd (last (get-locref-classes idxcls))
+ (acons loccls-name loccls nil))
+ (setf (get-locref-classes idxcls)
+ (acons loccls-name loccls nil))))
+ idxcls)
+
+(defmethod remove-location-class ((idxcls indexclass)
+ (loccls layered-location-class))
+ (setf (get-locref-classes idxcls)
+ (delete-if #'(lambda (elt)
+ (eq (cdr elt) loccls))
+ (get-locref-classes idxcls)))
+ idxcls)
+;; line 484 "idxclass.nw"
+(defmethod add ((idxcls indexclass) (xrefcls crossref-location-class))
+ (let ((xrefcls-name (get-name xrefcls)))
+ (setf (get-xref-classes idxcls)
+ (acons xrefcls-name xrefcls (get-xref-classes idxcls)))
+ idxcls))
+;; line 495 "idxclass.nw"
+(defmethod add-merge-rule ((idxcls indexclass)
+ (catattr-1 category-attribute)
+ (catattr-2 category-attribute))
+ (rel-insert (get-merge-rules idxcls) catattr-1 catattr-2)
+ idxcls)
+
+(defmethod add-drop-if-merged-rule ((idxcls indexclass)
+ (catattr-1 category-attribute)
+ (catattr-2 category-attribute))
+ (rel-insert (get-merge-rules idxcls) catattr-1 catattr-2)
+ (rel-insert (get-drop-if-merged-rules idxcls) catattr-1 catattr-2)
+ idxcls)
+;; line 512 "idxclass.nw"
+(defmethod add-implicit-substitution-rule (
+ (idxcls indexclass)
+ (catattr-1 category-attribute)
+ (catattr-2 category-attribute))
+ (rel-insert (get-implicit-subst-rules idxcls) catattr-1 catattr-2)
+ idxcls)
+
+
+(defmethod add-explicit-substitution-rule (
+ (idxcls indexclass)
+ (catattr-1 category-attribute)
+ (catattr-2 category-attribute))
+ (rel-insert (get-explicit-subst-rules idxcls) catattr-1 catattr-2)
+ idxcls)
+;; line 609 "idxclass.nw"
+(defmethod add-rule-set ((idxcls indexclass) (rs rule-set))
+ (let ((rule-sets (get-rule-sets idxcls))
+ (rs-name (get-name rs)))
+ (setf (gethash rs-name rule-sets) rs)))
+;; line 635 "idxclass.nw"
+(defmethod lookup-basetype ((idxcls indexclass) (basetype-name string))
+ (gethash basetype-name (get-basetypes idxcls)))
+
+(defmethod lookup-catattr ((idxcls indexclass) (catattr-name string))
+ (lookup-catattr-name (slot-value idxcls 'cat-attrs) catattr-name))
+
+(defmethod lookup-location-class ((idxcls indexclass) (loccls-name string))
+ (or (lookup-crossref-class idxcls loccls-name)
+ (lookup-locref-class idxcls loccls-name)))
+
+(defmethod lookup-crossref-class ((idxcls indexclass) (xref-name string))
+ (assoc xref-name (slot-value idxcls 'xref-classes) :test #'equal))
+
+(defmethod lookup-locref-class ((idxcls indexclass) (loccls-name string))
+ (assoc loccls-name (slot-value idxcls 'locref-classes) :test #'equal))
+
+(defmethod lookup-rule-set ((idxcls indexclass) (rule-set-name string))
+ (gethash rule-set-name (get-rule-sets idxcls)))
+;; line 685 "idxclass.nw"
+(defmacro map-location-classes (idxcls apply-func &rest arguments)
+ `(LET ()
+ (APPLY #'NCONC
+ (MAPCAR
+ #'(LAMBDA (ELT)
+ (LET ((RES
+ (FUNCALL ,apply-func
+ ,idxcls
+ (CDR ELT) #|ELT is ("name".<LOCATION-CLASS>))|#
+ ,@arguments)))
+ (WHEN RES (LIST RES))))
+ (GET-LOCREF-CLASSES ,idxcls)))))
+
+;; line 800 "idxclass.nw"
+(defmethod apply-substitution-hooks ((idxcls indexclass))
+ (let ((impl (get-implicit-subst-rules idxcls))
+ (expl (get-explicit-subst-rules idxcls)))
+ (funcall (get-implicit-subst-hook idxcls) impl)
+ (funcall (get-explicit-subst-hook idxcls) expl)
+ (rel-merge impl expl)
+ (set-explicit-subst-rules nil idxcls)
+ (funcall (get-global-subst-hook idxcls) impl)
+ (make-ready impl)
+ ))
+;; line 838 "idxclass.nw"
+(defmethod make-ready ((idxcls indexclass))
+ (apply-substitution-hooks idxcls)
+ (make-ready (get-merge-rules idxcls))
+ (make-ready (get-drop-if-merged-rules idxcls))
+ (make-ready (get-letter-groups idxcls))
+
+
+;; (set-merge-rule-topsort (topsort
+;; (remove-reflexivity
+;; (transform-relation
+;; (get-drop-if-merged-rules idxcls)
+;; #'(lambda (attr)
+;; (get-ordnum attr)))))
+;; *indexstyle*)
+
+ ;;(pprint (get-drop-if-merged-rules idxcls))
+ ;;(pprint (topsort (get-drop-if-merged-rules idxcls)))
+
+ (let ((counter 0))
+ (mapc #'(lambda (catattr)
+ (set-processing-ordnum (incf counter) catattr))
+ (reverse (topsort (get-drop-if-merged-rules idxcls)))))
+
+ idxcls)
+
+;; line 888 "idxclass.nw"
+(eval-when (compile load eval)
+
+;; line 109 "idxclass.nw"
+(export '(indexclass make-indexclass
+ get-name get-basetypes
+ get-cat-attrs get-xref-classes
+ get-succ-table get-locref-classes
+ get-rule-sets
+
+;; line 241 "idxclass.nw"
+ get-merge-rules
+ get-drop-if-merged-rules
+; get-merge-rule-topsort set-merge-rule-topsort
+ get-implicit-subst-rules set-implicit-subst-rules
+ get-explicit-subst-rules set-explicit-subst-rules
+;; line 115 "idxclass.nw"
+ ))
+;; line 204 "idxclass.nw"
+(export '(locref-cache-size* *locref-cache-rehash-size*
+ initialize-locref-cache clear-locref-cache
+ lookup-locref-cache add-locref-cache
+ locref-statistics))
+;; line 409 "idxclass.nw"
+(export '(letter-group-definition match-letter-group))
+;; line 530 "idxclass.nw"
+(export '(add set
+ add-letter-groups
+ add-merge-rule
+ add-drop-if-merged-rule
+ add-implict-substitution-rule
+ add-explicit-substitution-rule))
+;; line 616 "idxclass.nw"
+(export '(rule-set
+ make-rule-set
+ add-rule-set
+ instantiate-rule-set
+ inherit-rule-set))
+;; line 656 "idxclass.nw"
+(export '(lookup-basetype
+ lookup-catattr
+ lookup-letter-group-definition
+ lookup-location-class
+ lookup-crossref-class
+ lookup-locref-class
+ lookup-rule-set))
+;; line 700 "idxclass.nw"
+(export 'map-location-classes)
+;; line 730 "idxclass.nw"
+(export '(get-merge-drop-hook set-merge-drop-hook))
+;; line 791 "idxclass.nw"
+(export '(get-implicit-subst-hook set-implicit-subst-hook
+ get-explicit-subst-hook set-explicit-subst-hook
+ get-global-subst-hook set-global-subst-hook
+ get-substitution-subst-hook set-substitution-subst-hook))
+;; line 823 "idxclass.nw"
+(export '(apply-substitution-hooks))
+;; line 865 "idxclass.nw"
+(export '(make-ready))
+;; line 890 "idxclass.nw"
+ )
+;; line 54 "idxstyle.nw"
+(defun create-indexclass (idxcls-name)
+ (setq *indexstyle* (make-indexclass idxcls-name)))
+;; line 259 "letters.nw"
+;; $Id$
+
+;; line 37 "letters.nw"
+(defclass letter ()
+ ((name :initarg :name :type string)
+ (props :initarg :props :type list)))
+
+(defun make-letter (name properties inherits-from)
+ (make-instance 'letter
+ :name name
+ :props (if inherits-from
+ (append properties (get-props inherits-from))
+ properties)))
+
+(defun find-prop (letter prop)
+ (assoc prop (get-props letter)))
+;; line 53 "letters.nw"
+(defclass letter-dictionary ()
+ ((letters :initform (make-hash-table :test #'equal))))
+
+(defun make-letter-dict ()
+ (make-instance 'letter-dictionary))
+
+(defun find-letter* (dict-ht letter)
+ (gethash letter dict-ht))
+
+(defun find-letter (dict letter)
+ (gethash letter (get-letters dict)))
+
+(defun add-letter-to-dict (letter-dict
+ po-dict
+ name props
+ &optional
+ inherits)
+ (let ((dict-ht (get-letters letter-dict)))
+ (when (gethash name dict-ht)
+ (nraw "Letter `~S' redefined!" name))
+ (setf (gethash name dict-ht)
+ (make-letter name
+ (pre-calculate-props props po-dict)
+ (when inherits
+ (find-letter* dict-ht name))))))
+;; line 85 "letters.nw"
+(defun pre-calculate-props (props po-dict)
+ (mapc #'(lambda (po-spec)
+ (let ((po-name (car po-spec))
+ (po-val (cadr po-spec)))
+ (setf (cdr (last po-spec))
+ (list (find-prop-weight
+ (find-partial-order po-dict po-name)
+ po-val)))))
+ props)
+ props)
+;; line 98 "letters.nw"
+(defmacro define-letter (&whole whole &rest rest)
+ (destructuring-switch-bind (name &rest proplist)
+ rest
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 102 "letters.nw"
+ ((not (listp proplist))
+ (error "~S is not a property list in ~S." proplist whole))
+ (t `(LET ((NAME (STRINGIFY ',name)))
+ (ADD-LETTER-TO-DICT
+ (GET-LETTER-DICT *INDEXSTYLE*)
+ (GET-PARTIAL-ORDER-DICT *INDEXSTYLE*)
+ ,name ',proplist))))))
+;; line 119 "letters.nw"
+(defclass partial-order ()
+ ((name :initarg :name :type string)
+ (order :initform (make-hash-table :test #'equal))
+ (direct :initarg :direct :type symbol)))
+
+(defun make-partial-order (name order &optional (direct :from-start))
+ (let* ((po (make-instance 'partial-order :name name :direct direct))
+ (po-ht (get-order po))
+ (ctr 0))
+ (mapc #'(lambda (elt)
+ (when (gethash elt po-ht)
+ (error "Element ~S doubly defined in partial order ~S."
+ elt name))
+ (setf (gethash elt po-ht) (incf ctr)))
+ order)
+ po))
+;; line 140 "letters.nw"
+(defclass partial-order-dictionary ()
+ ((order :initform (make-hash-table :test #'equal))))
+
+(defun make-partial-order-dict ()
+ (make-instance 'partial-order-dictionary))
+
+(defun find-partial-order (dict po-name)
+ (gethash po-name (get-order dict)))
+
+(defun find-prop-weight (po po-name)
+ (gethash po-name (get-order po)))
+
+(defun add-partial-order-to-dict (dict po-name po-order po-direct)
+ (let ((dict-ht (get-order dict)))
+ (when (gethash po-name dict-ht)
+ (nraw "Partial order ~S redefined!" po-name))
+ (setf (gethash po-name dict-ht)
+ (make-partial-order po-name po-order po-direct))))
+;; line 161 "letters.nw"
+(defmacro define-partial-order (&whole whole &rest rest)
+ (destructuring-switch-bind (name
+ ordlist
+ &switch
+ from-start
+ from-end)
+ rest
+ (cond
+;; line 239 "intface.nw"
+((null name)
+ (error "missing argument <name> in `~S' !" whole))
+((not (or (symbolp name) (stringp name)))
+ (error "~S is not a symbol or a string in `~S' !" name whole))
+;; line 169 "letters.nw"
+ ((not (listp ordlist))
+ (error "~S is not a partial order list in ~S." ordlist whole))
+ ((and from-start from-end)
+ (error "Only one of :from-start or :from-end is allowed in ~S."
+ whole))
+ (t `(LET ((NAME (STRINGIFY ',name)))
+ (ADD-PARTIAL-ORDER-TO-DICT
+ (GET-PARTIAL-ORDER-DICT *INDEXSTYLE*)
+ ,name ',ordlist
+ ,(if (or from-start (not from-end))
+ :from-start :from-end)))))))
+;; line 194 "letters.nw"
+(defun word-cmp (word1 word2 po)
+ (let ((po-name (get-name po))
+ let1 let2 weight1 weight2)
+ (loop
+ (cond
+ ((and (endp word1) (endp word2)) (return :equal))
+ ((endp word1) (return :less))
+ ((endp word2) (return :greater))
+ (t (setq let1 (car word1))
+ (setq word1 (cdr word1))
+ (setq let2 (car word2))
+ (setq word2 (cdr word2))
+ (setq weight1 (lookup-letter-weight let1 po-name))
+ (setq weight2 (lookup-letter-weight let2 po-name))
+ (when (< weight1 weight2) (return :less))
+ (when (> weight1 weight2) (return :greater)))))))
+
+(defun calc-list-of-weights (word po)
+ (let ((po-name (get-name po)))
+ (mapcar #'(lambda (letter)
+ (lookup-letter-weight letter po-name))
+ word)))
+;; line 227 "letters.nw"
+(defun lookup-letter-weight (letter po-name)
+ (let ((prop (find-prop letter po-name)))
+ (if prop
+ (car (last prop))
+ (find-prop-weight
+ (find-partial-order (get-partial-order-dict *indexstyle*) po-name)
+ 'others))))
+;; line 237 "letters.nw"
+(defun make-word (letter-list)
+ (let ((dict (get-letter-dict *indexstyle*)))
+ (mapcar #'(lambda (str)
+ (find-letter dict str))
+ letter-list)))
+
+(defun sort-words (word-list po)
+ (split-list #'(lambda (word)
+ (calc-list-of-weights word po))
+ word-list))
+
+
+
+;; line 99 "idxstyle.nw"
+(create-indexclass "default")
+;; line 107 "idxstyle.nw"
+(defmacro string-expand (str)
+ (let ((str-expansion
+ (map 'list
+ #'(lambda (c)
+ (make-string 1 :initial-element c))
+ str)))
+ `(QUOTE ,str-expansion)))
+
+(define-alphabet* "ALPHA" (string-expand "ABCDEFGHIJKLMNOPQRSTUVWXYZ"))
+(define-alphabet* "alpha" (string-expand "abcdefghijklmnopqrstuvwxyz"))
+(define-alphabet* "digits" (string-expand "0123456789"))
+;; line 128 "idxstyle.nw"
+(defun prefix-match-for-radix-numbers (str radix)
+ (let* ((n nil)
+ (strlen (length str))
+ (len-match (do ((i 0 (1+ i)))
+ ((or (>= i strlen)
+ (not (digit-char-p (char str i) radix)))
+ i)
+ (setq n (+ (* (if n n 0) radix)
+ (digit-char-p (char str i) radix))))))
+ (values (subseq str 0 len-match)
+ (subseq str len-match)
+ n)))
+;; line 155 "idxstyle.nw"
+(define-enumeration "arabic-numbers"
+ #'(lambda (str)
+ (prefix-match-for-radix-numbers str 10))
+ "0123456789")
+;; line 178 "idxstyle.nw"
+(defparameter *lowercase-roman-numbers-lookup-table*
+ '((#\i ("ix" . 9) ("iv" . 4) ("iiii" . 4) ("iii". 3) ("ii" . 2) ("i" . 1))
+ (#\v ("viiii" . 9) ("viii" . 8) ("vii" . 7) ("vi" . 6) ("v" . 5))
+ (#\x ("xc" . 90) ("xl" . 40) ("x" . 10))
+ (#\m ("m" . 1000))
+ (#\c ("cm" . 900) ("cd" . 400) ("c" . 100))
+ (#\l ("lxxxx" . 90) ("lxxx" . 80) ("lxx" . 70) ("lx" . 60) ("l" . 50))
+ (#\d ("dcccc" . 900) ("dccc" . 800) ("dcc" . 700) ("dc" . 600) ("d" . 500))
+ ))
+
+(defparameter *uppercase-roman-numbers-lookup-table*
+ '((#\I ("IX" . 9) ("IV" . 4) ("IIII" . 4) ("III". 3) ("II" . 2) ("I" . 1))
+ (#\V ("VIIII" . 9) ("VIII" . 8) ("VII" . 7) ("VI" . 6) ("V" . 5))
+ (#\X ("XC" . 90) ("XL" . 40) ("X" . 10))
+ (#\M ("M" . 1000))
+ (#\C ("CM" . 900) ("CD" . 400) ("C" . 100))
+ (#\L ("LXXXX" . 90) ("LXXX" . 80) ("LXX" . 70) ("LX" . 60) ("L" . 50))
+ (#\D ("DCCCC" . 900) ("DCCC" . 800) ("DCC" . 700) ("DC" . 600) ("D" . 500))
+ ))
+;; line 206 "idxstyle.nw"
+(defun roman-number-prefix-match (roman-number-string *table*)
+ (let ((result 0)
+ (str roman-number-string)
+ (last-val 100000) #| hope that's enough |#
+ (str-len (length roman-number-string))
+ ch table match-cons curr-val
+ )
+ (loop (when (= 0 (length str))
+ (return (values roman-number-string "" result)))
+ (setq ch (aref str 0))
+ (setq table (cdr (assoc ch *table*)))
+ (setq match-cons
+ (find-if #'(lambda (cons)
+ (let* ((prefix (car cons))
+ (match-len (string/= prefix str)))
+ (or (not match-len)
+ (= match-len (length prefix)))))
+ table))
+ (unless match-cons
+ (return (if (= 0 result)
+ (values nil nil nil)
+ (values (subseq roman-number-string
+ 0 (- str-len (length str)))
+ str result))))
+ (setq curr-val (cdr match-cons))
+ (when (> curr-val last-val)
+ (return (values (subseq roman-number-string
+ 0 (- str-len (length str)))
+ str result)))
+ (incf result curr-val)
+ (setq last-val curr-val)
+ (setq str (subseq str (length (car match-cons)))))))
+;; line 241 "idxstyle.nw"
+(define-enumeration "roman-numbers-uppercase"
+ #'(lambda (str)
+ (roman-number-prefix-match
+ str
+ *uppercase-roman-numbers-lookup-table*))
+ "IVXLCDM")
+
+(add-alias *indexstyle* "roman-numbers-uppercase" "ROMAN")
+(add-alias *indexstyle* "roman-numbers-uppercase" "roman-numerals-uppercase")
+
+(define-enumeration "roman-numbers-lowercase"
+ #'(lambda (str)
+ (roman-number-prefix-match
+ str
+ *lowercase-roman-numbers-lookup-table*))
+ "ivxlcdm")
+
+(add-alias *indexstyle* "roman-numbers-lowercase" "roman")
+(add-alias *indexstyle* "roman-numbers-lowercase" "roman-numerals-lowercase")
+
+
+;; line 902 "idxclass.nw"
+#+:XP
+(defmacro pprint-slot-block (slot-name body)
+ `(progn
+ (pprint-logical-block (s nil :suffix " }")
+ (pprint-indent :block 2 s)
+ (write-string ,slot-name s)
+ (pprint-newline :mandatory s)
+ ,body)
+ (pprint-newline :mandatory s)))
+
+#+:XP
+(defmacro pprint-slot-block-line (slot-name body)
+ `(progn
+ (pprint-logical-block (s nil :suffix " }")
+ (pprint-indent :block 2 s)
+ (write-string ,slot-name s)
+ (pprint-newline :linear s)
+ ,body)
+ (pprint-newline :mandatory s)))
+;; line 924 "idxclass.nw"
+#+:XP
+(set-pprint-dispatch 'indexclass
+ #'(lambda (s idxcls)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "indexclass " s)
+ (write (get-name idxcls) :stream s)
+ (write-string " {" s)
+ (pprint-newline :mandatory s)
+ (pprint-slot-block
+ "basetypes {"
+ (maphash #'(lambda (key bt)
+ (declare (ignore key))
+ (write (get-name bt) :stream s)
+ (write-string " " s)
+ (pprint-newline :linear s))
+ (get-basetypes idxcls)))
+ (pprint-slot-block
+ "cat-attrs {"
+ (write (get-cat-attrs idxcls) :stream s))
+ (pprint-slot-block
+ "locclasses {"
+ (mapc #'(lambda (lc)
+ (write (get-name (cdr lc)) :stream s)
+ (write-string " [" s)
+ (write (get-ordnum (cdr lc)) :stream s)
+ (write-string "] " s)
+ (pprint-newline :linear s))
+ (get-locref-classes idxcls)))
+ (pprint-slot-block
+ "xrefclasses {"
+ (mapc #'(lambda (lc)
+ (write (get-name (cdr lc)) :stream s)
+ (write-string " [" s)
+ (write (get-ordnum (cdr lc)) :stream s)
+ (write-string "] " s)
+ (pprint-newline :linear s))
+ (get-xref-classes idxcls)))
+
+ (write (get-letter-dict idxcls) :stream s)
+ (pprint-newline :mandatory s)
+ (write (get-partial-order-dict idxcls) :stream s)
+ (pprint-newline :mandatory s)
+
+ (pprint-slot-block
+ "merge-rules {"
+ (write (get-merge-rules idxcls) :stream s))
+ (pprint-slot-block
+ "drop-if-merged-rules {"
+ (write (get-drop-if-merged-rules idxcls) :stream s))
+ ;; (pprint-slot-block-line
+ ;; "merge-rule-topsort { "
+ ;; (write (get-merge-rule-topsort idxcls) :stream s))
+ (pprint-slot-block
+ "implicit-subst-rules {"
+ (write (get-implicit-subst-rules idxcls) :stream s))
+ (pprint-slot-block
+ "explicit-subst-rules {"
+ (write (get-explicit-subst-rules idxcls) :stream s))
+
+ (pprint-slot-block-line
+ "implicit-subst-hook {"
+ (write (get-implicit-subst-hook idxcls) :stream s))
+ (pprint-slot-block-line
+ "explicit-subst-hook {"
+ (write (get-explicit-subst-hook idxcls) :stream s))
+ (pprint-slot-block-line
+ "global-subst-hook {"
+ (write (get-global-subst-hook idxcls) :stream s))
+ (pprint-slot-block-line
+ "substitution-subst-hook {"
+ (write (get-substitution-subst-hook idxcls) :stream s))
+ (pprint-slot-block-line
+ "merge-drop-hook {"
+ (write (get-merge-drop-hook idxcls) :stream s))
+
+ ; (pprint-slot-block
+ ; "keyword-markup {"
+ ; (write (get-keyword-markup idxcls) :stream s))
+ )))
+;; line 580 "idxrule.nw"
+#+:XP
+(defun pprint-relation (s rel)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "Relation { " s)
+ (pprint-logical-block (s nil)
+ (pprint-indent :block 2)
+ (mapc #'(lambda (x)
+ (when x
+ (write (car x) :stream s)
+ (write-string " ->" s)
+ (mapc #'(lambda (y)
+ (write-string " " s)
+ (write y :stream s))
+ (cdr x))
+ (pprint-newline :mandatory s)))
+ (get-rel-sets rel)))))
+
+#+:XP
+(set-pprint-dispatch 'relation-rule #'pprint-relation)
+#+:XP
+(set-pprint-dispatch 'relation #'pprint-relation)
+;; line 606 "idxrule.nw"
+#+:XP
+(set-pprint-dispatch
+ 'catattr-groups
+ #'(lambda (s catgrp)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "Category-attribute-group { " s)
+ (pprint-newline :mandatory s)
+ (write (get-attribute-list catgrp) :stream s)
+ (pprint-newline :mandatory s)
+ (write (get-attribute-table catgrp) :stream s))))
+;; line 277 "letters.nw"
+#+:XP
+(set-pprint-dispatch 'letter
+ #'(lambda (s lt)
+ (pprint-logical-block
+ (s nil :suffix ">")
+ (pprint-indent :block 2 s)
+ (write-string "<" s)
+ (write (get-name lt) :stream s)
+ (write-string " " s)
+ (pprint-newline :linear s)
+ (write (get-props lt) :stream s))))
+
+#+:XP
+(set-pprint-dispatch 'letter-dictionary
+ #'(lambda (s dict)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "letters {" s)
+ (maphash #'(lambda (key lt)
+ (declare (ignore key))
+ (write lt :stream s)
+ (write-string " " s)
+ (pprint-newline :linear s))
+ (get-letters dict)))))
+
+#+:XP
+(set-pprint-dispatch 'partial-order
+ #'(lambda (s po)
+ (pprint-logical-block
+ (s nil :suffix ">")
+ (pprint-indent :block 2 s)
+ (write-string "<" s)
+ (write (get-name po) :stream s)
+ (pprint-newline :linear s)
+ (maphash #'(lambda (key po)
+ (write-string " [" s)
+ (write key :stream s)
+ (write-string " " s)
+ (write po :stream s)
+ (write-string "]" s)
+ (pprint-newline :linear s))
+ (get-order po)))))
+
+
+#+:XP
+(set-pprint-dispatch 'partial-order-dictionary
+ #'(lambda (s dict)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "partial-orders {" s)
+ (maphash #'(lambda (key po)
+ (declare (ignore key))
+ (write po :stream s)
+ (write-string " " s)
+ (pprint-newline :linear s))
+ (get-order dict)))))
+
+;; line 321 "idxstyle.nw"
+(defvar *RCS-Identifier* '(
+;; line 894 "idxclass.nw"
+("idxclass" . "$Id: idxclass.nw,v 1.20 1997/03/26 16:18:16 kehr Exp $")
+;; line 572 "idxrule.nw"
+("idxrule" . "$Id: idxrule.nw,v 1.10 1997/03/26 16:18:19 kehr Exp $")
+;; line 335 "idxstyle.nw"
+("idxstyle" . "$Id: idxstyle.nw,v 1.19 1997/03/26 16:18:23 kehr Exp $")
+;; line 1174 "intface.nw"
+("intface" . "$Id: intface.nw,v 1.30 1997/10/20 11:25:09 kehr Exp $")
+;; line 269 "letters.nw"
+("letters" . "$Id$")
+;; line 321 "idxstyle.nw"
+ ))
+
+(eval-when (compile load eval)
+
+;; line 59 "idxstyle.nw"
+(export 'create-indexclass)
+;; line 89 "idxstyle.nw"
+(export '*load-paths*)
+;; line 325 "idxstyle.nw"
+ )
diff --git a/Build/source/utils/xindy/src/index.lsp b/Build/source/utils/xindy/src/index.lsp
new file mode 100644
index 00000000000..82a02b6a7b0
--- /dev/null
+++ b/Build/source/utils/xindy/src/index.lsp
@@ -0,0 +1,1332 @@
+;; line 835 "index.nw"
+;; $Id: index.nw,v 1.31 1997/03/26 16:18:37 kehr Exp $
+
+(lisp:defpackage "INDEX")
+(lisp:in-package "INDEX")
+(lisp:provide "index")
+
+#+CLISP (lisp:require "base")
+#+CLISP (lisp:require "locref")
+#+CLISP (lisp:require "idxstyle")
+
+(eval-when (compile load eval)
+ (lisp:use-package "CLOS")
+ #+(and :XP CLISP) (lisp:use-package "XP")
+ #-CLISP (lisp:require "base")
+ #-CLISP (lisp:require "locref")
+ #-CLISP (lisp:require "idxstyle")
+ (lisp:use-package "BASE")
+ (lisp:use-package "LOCREF")
+ (lisp:use-package "IDXSTYLE"))
+
+;; The following construct must be separated since the definition of
+;; the *feature* :ORDRULES was added via loading the package
+;; "idxstyle" but is only active *after* reading the whole SEXP.
+
+(eval-when (compile load eval)
+ #+:ORDRULES (use-package "ORDRULES"))
+
+;; line 986 "idxentry.nw"
+;; $Id: idxentry.nw,v 1.29 1997/03/27 17:17:25 kehr Exp $
+
+;; line 1002 "idxentry.nw"
+(defvar *number-of-indexentries*)
+(defvar *current-number*)
+;; line 1007 "idxentry.nw"
+(defvar *percentage-list*)
+(defvar *processing-percentage-list*)
+
+(defun print-rest-of-percentages (plist)
+ (dolist (percent plist)
+ (when (<= (cdr percent) 100)
+ (print-percent percent))))
+
+(defun print-percent (percent-cons)
+ (info " [~A%]" (cdr percent-cons)))
+;; line 85 "idxentry.nw"
+(defclass index-entry ()
+ ((main-key :initarg :main-key)
+ (merge-key :initarg :merge-key)
+ (sort-key :initarg :sort-key)
+ (print-key :initarg :print-key)
+ (locrefs :initarg :locrefs)
+ (idxclass :initarg :idxclass)
+ (subentries :initform '())))
+
+(defun make-index-entry (&key (main-key '()) (merge-key '())
+ (sort-key '()) (print-key '())
+ (locrefs '()) (idxclass nil)
+ &allow-other-keys)
+ (make-instance 'index-entry
+ :main-key main-key :merge-key merge-key
+ :sort-key sort-key :print-key print-key
+ :locrefs locrefs :idxclass idxclass))
+;; line 108 "idxentry.nw"
+(defvar *currently-processed-indexentry*)
+;; line 116 "idxentry.nw"
+(defmacro add-location-reference-to-indexentry (idxent locref)
+ `(PROGN
+ (UNLESS (SOME #'(LAMBDA (LREF)
+ (LOCREF= ,locref LREF))
+ (GET-LOCREFS ,idxent))
+ (SET-LOCREFS (CONS ,locref (GET-LOCREFS ,idxent))
+ ,idxent))
+ ,idxent))
+;; line 249 "idxentry.nw"
+(defun convert-sublists-to-group-objects (list-of-sublists
+ object-type
+ &key (initializer-func nil))
+ (mapcar #'(lambda (sublist)
+ (let ((locref-grp (make-locref-group object-type sublist)))
+ (if initializer-func
+ (funcall initializer-func locref-grp)
+ locref-grp)))
+ list-of-sublists))
+;; line 267 "idxentry.nw"
+(defun convert-sublists-to-specialized-groups (list-of-sublists
+ convert-func
+ &optional
+ initializer-func)
+ (mapcar #'(lambda (sublist)
+ (let ((locref-grp
+ (make-locref-group (funcall convert-func sublist)
+ sublist)))
+ (if initializer-func
+ (funcall initializer-func locref-grp)
+ locref-grp)))
+ list-of-sublists))
+;; line 292 "idxentry.nw"
+(defclass locref-group ()
+ ((members :initarg :members)))
+
+(defun make-locref-group (group-class members)
+ (make-instance group-class :members members))
+
+(defgeneric process-group (group-object indexclass))
+;; line 322 "idxentry.nw"
+(defclass locref-class-group (locref-group)
+ ((locclass :initform 'nil)))
+;; line 327 "idxentry.nw"
+(defclass crossref-class-group (locref-group)
+ ((locclass :initform 'nil)))
+;; line 333 "idxentry.nw"
+(defun process-indexentry (idxent)
+ (setq *currently-processed-indexentry* idxent)
+ (when (>= (incf *current-number*) (caar *processing-percentage-list*))
+ (print-percent (pop *processing-percentage-list*)))
+ (set-locrefs (convert-sublists-to-specialized-groups
+ (split-list #'(lambda (locref)
+ (get-ordnum (get-locclass locref)))
+ (get-locrefs idxent)
+ :sortfunc #'<)
+ #'(lambda (sublist)
+ (typecase (car sublist)
+ (layered-location-reference 'locref-class-group)
+ (crossref-location-reference 'crossref-class-group)
+ (t (error "internal error in `process-indexentry'"))))
+ #'(lambda (locref-cls-grp)
+ (set-locclass (get-locclass
+ (car (get-members locref-cls-grp)))
+ locref-cls-grp)
+ locref-cls-grp))
+ idxent)
+ (mapc #'(lambda (locref-cls-grp)
+ (process-group locref-cls-grp *indexstyle*))
+ (get-locrefs idxent))
+ idxent)
+;; line 899 "idxentry.nw"
+(defmacro take-first (list)
+ `(AND ,list (LIST (CAR ,list))))
+
+(defun tree-location-references (locref-list
+ max-depth
+ &optional (curr-depth 1))
+ (cond ((or (endp locref-list) #| nothing more to do |#
+ (> curr-depth max-depth)) #| we reached the end |#
+ locref-list)
+ (t (let ((locref-slist
+ (split-list #'(lambda (locref)
+ (car (get-ordnums locref)))
+ locref-list
+ :sortfunc #'<)))
+ (mapcar
+ #'(lambda (sublist)
+ (let* ((locref (car sublist))
+ (ordnums (get-ordnums locref)))
+ (if (= 1 (length ordnums))
+ (progn #| length = 1 |#
+ (set-subrefs
+ (sort-locrefs
+ (tree-location-references (remove-first-layers
+ (cdr sublist))
+ max-depth
+ (1+ curr-depth)))
+ locref)
+ locref)
+ (let #| length > 1 |#
+ ((new-locref
+ (make-layered-location-reference
+ :layers (take-first (get-layers locref))
+ :ordnums (take-first (get-ordnums locref))
+ :locclass (get-locclass locref)
+ :catattr (get-last-in-group
+ (get-catattr locref))
+ )))
+ (set-subrefs
+ (sort-locrefs
+ (tree-location-references (remove-first-layers sublist)
+ max-depth
+ (1+ curr-depth)))
+ new-locref)
+ new-locref))))
+ locref-slist)))))
+;; line 947 "idxentry.nw"
+(defun remove-first-layers (locref-list)
+ (declare (inline))
+ (mapc #'(lambda (locref)
+ (typecase locref
+ (layered-location-reference
+ (set-layers (cdr (get-layers locref)) locref)
+ (set-ordnums (cdr (get-ordnums locref)) locref))
+ (location-range
+ (let ((first (get-first locref))
+ (last (get-last locref)))
+ (set-layers (cdr (get-layers locref)) locref)
+ (set-ordnums (cdr (get-ordnums locref)) locref)
+ (set-layers (cdr (get-layers first)) first)
+ (set-ordnums (cdr (get-ordnums first)) first)
+ (set-layers (cdr (get-layers last)) last)
+ (set-ordnums (cdr (get-ordnums last)) last)
+ ))))
+ locref-list)
+ locref-list)
+;; line 973 "idxentry.nw"
+(defun sort-locrefs (locref-list)
+ #+:ASSERT! (assert! (listp locref-list))
+ (sort locref-list
+ #'(lambda (locref-1 locref-2)
+ (locref-ordnum< (get-ordnums locref-1)
+ (get-ordnums locref-2)))))
+;; line 370 "idxentry.nw"
+(defmethod process-group ((locref-cls-grp locref-class-group)
+ (idxcls indexclass))
+ #+:XP
+ (when *locref-trace* (pprint-locref-group *logging-stream* locref-cls-grp
+ "Inital location-refrence group:"))
+ (apply-substitution-and-merge-rules locref-cls-grp idxcls)
+ #+:XP
+ (when *locref-trace* (pprint-locref-group *logging-stream* locref-cls-grp
+ "After subst- and merge-to-rules:"))
+ (build-ranges-in-locref-class-group locref-cls-grp idxcls)
+ #+:XP
+ (when *locref-trace* (pprint-locref-group *logging-stream* locref-cls-grp
+ "After build-ranges:"))
+ (remove-virtual-locrefs locref-cls-grp)
+ #+:XP
+ (when *locref-trace* (pprint-locref-group *logging-stream* locref-cls-grp
+ "After remove virtuals:"))
+ (separate-into-catattr-groups locref-cls-grp)
+ #+:XP
+ (when *locref-trace* (pprint-locref-group *logging-stream* locref-cls-grp
+ "After separate attr-groups:"))
+ locref-cls-grp)
+
+;; line 531 "idxentry.nw"
+(defmethod apply-substitution-and-merge-rules ((locref-cls-grp locref-class-group)
+ (idxcls indexclass))
+ (let ((locref-same-ordnum-grps
+ (split-same-locrefs (get-members locref-cls-grp))))
+ (set-members
+ (mapcan #'(lambda (locref-same-ordnum-grp)
+ (apply-merge-rules
+ idxcls
+ (apply-substitution-rules idxcls
+ locref-same-ordnum-grp)))
+ locref-same-ordnum-grps)
+ locref-cls-grp))
+ locref-cls-grp)
+
+;; line 553 "idxentry.nw"
+(defun split-same-locrefs (locrefs)
+ #+ASSERT! (assert! (listp locrefs))
+ (split-list #'(lambda (locref)
+ (get-ordnums locref))
+ locrefs
+ :sortfunc #'(lambda (locref-ordnum-1 locref-ordnum-2)
+ (locref-ordnum< locref-ordnum-1 locref-ordnum-2))
+ ))
+;; line 569 "idxentry.nw"
+(defmethod apply-substitution-rules ((idxcls indexclass)
+ (locrefs list))
+ (let ((substitute-locref (get-substitution-subst-hook idxcls)))
+ (delete-if #'null
+ (mapcar #'(lambda (test-locref)
+ (cond ((some #'(lambda (against-locref)
+ (substitutable-p idxcls test-locref
+ against-locref))
+ locrefs)
+ (funcall substitute-locref test-locref))
+ (t test-locref)))
+ locrefs))))
+;; line 590 "idxentry.nw"
+(defmethod substitutable-p ((idxcls indexclass)
+ (test-locref layered-location-reference)
+ (against-locref layered-location-reference))
+ (cond ((eql test-locref against-locref)
+ nil)
+ ((and (state-normal-p against-locref)
+ (relation-p (get-implicit-subst-rules idxcls)
+ (get-catattr against-locref)
+ (get-catattr test-locref))))
+ (t nil)))
+;; line 638 "idxentry.nw"
+(defmethod apply-merge-rules ((idxcls indexclass) (locrefs list))
+ (let ((merge-rules (get-merge-rules idxcls))
+ (drop-if-merged-rules (get-drop-if-merged-rules idxcls)))
+ (nconc locrefs
+ (mapcan #'(lambda (locref)
+ (mapcan #'(lambda (catattr)
+ (let ((new-locref
+ (make-layered-location-reference
+ :virtual t
+ :layers (get-layers locref)
+ :ordnums (get-ordnums locref)
+ :catattr catattr
+ :locclass (get-locclass locref)
+ :attribute (get-attribute locref)
+ :string (get-locref-string locref)
+ )))
+ (when (relation-p drop-if-merged-rules
+ (get-catattr locref)
+ catattr)
+ (set-origin locref new-locref))
+ (list new-locref)))
+ (relation-set merge-rules (get-catattr locref))))
+ locrefs))))
+;; line 721 "idxentry.nw"
+(defun build-ranges-in-locref-class-group (locref-cls-grp idxcls)
+ (let ((locref-same-catattr-grps
+ (split-list #'(lambda (locref) (get-catattr locref))
+ (get-members locref-cls-grp)
+ :sortfunc #'(lambda (x y)
+ (< (get-processing-ordnum x)
+ (get-processing-ordnum y))))))
+ (set-members (mapcan #'(lambda (catattr-sublist)
+ (let ((processed-locrefs
+ (build-ranges catattr-sublist
+ idxcls
+ (get-locclass
+ (car catattr-sublist)))))
+ (when *locref-trace*
+ (let ((*print-pretty* t))
+ (gol t "~&after build-ranges:")
+ (pprint-newline :mandatory *logging-stream*)
+ (pprint-newline :mandatory *logging-stream*)
+ (write processed-locrefs
+ :stream *logging-stream*)))
+ (let ((s2 (mapcar
+ #'(lambda (x)
+ (post-process
+ x
+ #'set-state-deleted))
+ processed-locrefs)))
+ (when *locref-trace*
+ (let ((*print-pretty* t))
+ (gol t "~&after set-state-deleted:")
+ (pprint-newline :mandatory *logging-stream*)
+ (pprint-newline :mandatory *logging-stream*)
+ (write s2 :stream *logging-stream*)))
+ s2)))
+ locref-same-catattr-grps)
+ locref-cls-grp)))
+;; line 396 "idxentry.nw"
+(defmethod process-group ((crossref-cls-grp crossref-class-group)
+ (idxcls indexclass))
+ (let ((cross-references (get-members crossref-cls-grp)))
+ (typecase (get-locclass (car cross-references))
+ (verified-crossref-location-class
+ (mapc #'(lambda (xref)
+ (let* ((target (get-target xref))
+ (merge-key-target
+ #+:ORDRULES (gen-keyword-mergekey-list target)
+ #-:ORDRULES target))
+ (unless (lookup-indexentry merge-key-target)
+ (oops "Cross-reference-target ~S does not exist!"
+ target))))
+ cross-references))
+ (unverified-crossref-location-class)
+ (t (error "INTERNAL ERROR in process-group"))))
+ crossref-cls-grp)
+;; line 422 "idxentry.nw"
+(defun remove-virtual-locrefs (locref-cls-grp)
+ (set-members (delete-if #'(lambda (object)
+ (and (typep object 'location-reference)
+ (state-virtual-p object)))
+ (get-members locref-cls-grp))
+ locref-cls-grp))
+;; line 794 "idxentry.nw"
+(defclass category-attribute-group (locref-group)
+ ((ordnum :initform 'nil)))
+
+(defun separate-into-catattr-groups (locref-cls-grp)
+ (set-members (convert-sublists-to-group-objects
+ (split-list #'(lambda (object)
+ (get-catattr-grp-ordnum (get-catattr object)))
+ (get-members locref-cls-grp)
+ :sortfunc #'<)
+ 'category-attribute-group)
+ locref-cls-grp)
+ (mapc #'(lambda (catattr-grp)
+ (set-ordnum (get-catattr-grp-ordnum
+ (get-catattr (car (get-members catattr-grp))))
+ catattr-grp)
+ (set-members
+ (sort (tree-location-references (get-members catattr-grp)
+ (get-hierdepth
+ (get-locclass locref-cls-grp)))
+ #'(lambda (object-1 object-2)
+ (let ((ordnum-1 (get-ordnums object-1))
+ (ordnum-2 (get-ordnums object-2)))
+ (or (locref-ordnum< ordnum-1 ordnum-2)
+ (and (locref-ordnum= ordnum-1 ordnum-2)
+ (< (get-sort-ordnum (get-catattr object-1))
+ (get-sort-ordnum (get-catattr object-2))))))))
+ catattr-grp))
+ (get-members locref-cls-grp))
+ locref-cls-grp)
+
+#|
+(defun separate-into-catattr-groups-old-version (locref-cls-grp)
+ (set-members (convert-sublists-to-group-objects
+ (split-list #'(lambda (object)
+ (get-catattr-grp-ordnum (get-catattr object)))
+ #'<
+ (get-members locref-cls-grp))
+ 'category-attribute-group)
+ locref-cls-grp)
+ (mapc #'(lambda (catattr-grp)
+ (set-ordnum (get-catattr-grp-ordnum
+ (get-catattr (car (get-members catattr-grp))))
+ catattr-grp)
+ (set-members
+ (sort (get-members catattr-grp)
+ #'(lambda (object-1 object-2)
+ (let ((ordnum-1 (get-ordnums object-1))
+ (ordnum-2 (get-ordnums object-2)))
+ (or (locref-ordnum< ordnum-1 ordnum-2)
+ (and (locref-ordnum= ordnum-1 ordnum-2)
+ (< (get-sort-ordnum (get-catattr object-1))
+ (get-sort-ordnum (get-catattr object-2))))))))
+ catattr-grp))
+ (get-members locref-cls-grp))
+ locref-cls-grp)
+|#
+
+;; line 992 "idxentry.nw"
+(eval-when (compile load eval)
+
+;; line 127 "idxentry.nw"
+(export '(index-entry make-index-entry
+ add-location-reference-to-indexentry))
+;; line 360 "idxentry.nw"
+(export '(locref-group get-members
+ locref-class-group crossref-class-group get-locclass
+ make-locref-group process-group process-indexentry))
+;; line 603 "idxentry.nw"
+(export '(process-group split-same-locrefs
+ apply-substitution-rules substitutable-p))
+;; line 664 "idxentry.nw"
+(export '(apply-merge-rules))
+;; line 853 "idxentry.nw"
+(export '(category-attribute-group))
+;; line 1021 "idxentry.nw"
+(export '(*percentage-list* print-rest-of-percentages print-percent))
+;; line 994 "idxentry.nw"
+ )
+;; line 594 "ranges.nw"
+;; $Id: ranges.nw,v 1.11 1997/03/26 16:18:41 kehr Exp $
+
+;; line 68 "ranges.nw"
+(defclass location-range ()
+ ((length :initarg :length)
+ (first :initarg :first)
+ (last :initarg :last)
+ (layers :initarg :layers)
+ (ordnums :initarg :ordnums)
+ (inner :initarg :inner)
+ (locclass :initarg :locclass)
+ (catattr :initarg :catattr)
+ (subrefs :initform '())))
+
+(defun make-location-range (&key length first last first-ordnum inner locclass)
+ (make-instance 'location-range
+ :length length
+ :first first
+ :last last
+ :inner inner
+ :ordnums first-ordnum
+ :layers (get-layers first)
+ :locclass locclass
+ :catattr (get-catattr first)))
+;; line 581 "ranges.nw"
+(defun ordnum-successor-p (ordnums-1 ordnums-2)
+ (declare (inline))
+ (and ordnums-1 #|is there really something in it, or we are about to start?|#
+ (equal (butlast ordnums-1) (butlast ordnums-2))
+ (equal (1+ (car (last ordnums-1)))
+ (car (last ordnums-2)))))
+;; line 143 "ranges.nw"
+(defmethod build-ranges ((locref-list list)
+ (idxcls indexclass)
+ (loccls var-location-class))
+ locref-list)
+;; line 321 "ranges.nw"
+(defmacro newstat (s)
+ `(setq new-state ,s))
+
+(defmacro pushl ()
+ `(progn
+ (setq curr-ordnum (get-ordnums locref))
+ (unless locref-stack
+ (setq first-ordnum curr-ordnum)
+ (setq first-locref locref))
+ (setq prev-ordnum curr-ordnum)
+ (push locrefs locref-stack)))
+
+(defmacro pushone ()
+ `(progn
+ (setq curr-ordnum (get-ordnums locref))
+ (unless locref-stack
+ (setq first-ordnum curr-ordnum)
+ (setq first-locref locref))
+ (setq prev-ordnum curr-ordnum)
+ (push (list (car locrefs)) locref-stack)))
+
+(defmacro set-open-range ()
+ `(setq last-open-locref locref))
+
+(defmacro keep ()
+ `(setq back-flag t))
+
+(defmacro make-range ()
+ `(setq make-flag t))
+;; line 197 "ranges.nw"
+(defmethod build-ranges ((locref-list list)
+ (idxcls indexclass)
+ (loccls standard-location-class))
+ (let ((valid-list (mapcan #'(lambda (locref)
+ (unless (state-deleted-p locref)
+ (list locref)))
+ locref-list)))
+ (ifnot valid-list
+ '()
+ (ifnot (joining-allowed-p loccls)
+ valid-list
+ (let ((same-ordnum-list (split-same-locrefs valid-list))
+
+;; line 353 "ranges.nw"
+(locref-stack '())
+(result-list '())
+(state :START)
+(join-length (get-join-length loccls))
+new-state
+open-p close-p open+close-p no-typ-p list-end
+make-flag back-flag
+locrefs locref last-open-locref first-locref
+first-ordnum prev-ordnum curr-ordnum
+;; line 209 "ranges.nw"
+ )
+ (loop
+
+;; line 365 "ranges.nw"
+(setq locrefs (car same-ordnum-list))
+(setq list-end (null locrefs))
+(setq locref (car locrefs))
+(setq open-p (find-if #'(lambda (locref)
+ (rangeattr-open-p (get-rangeattr locref)))
+ locrefs))
+(setq close-p (find-if #'(lambda (locref)
+ (rangeattr-close-p (get-rangeattr locref)))
+ locrefs))
+(setq open+close-p (and open-p close-p))
+(setq no-typ-p (not (or open-p close-p)))
+;; line 212 "ranges.nw"
+ (ecase state
+ (:START
+;; line 230 "ranges.nw"
+(cond (list-end (return (apply #'nconc #| see note below for explanation |#
+ (apply #'nconc result-list))))
+ (no-typ-p (newstat :READ) (pushl))
+ (open+close-p (newstat :READ) (pushone))
+ (open-p (newstat :OPEN-RANGE) (pushl) (set-open-range))
+ (close-p (warn-invalid-close locref) (newstat :START))
+ (t (error
+ "INTERNAL-ERROR in build-ranges - :START")))
+;; line 213 "ranges.nw"
+ )
+ (:READ
+;; line 267 "ranges.nw"
+(if list-end
+ (progn (newstat :START) (make-range))
+ (progn
+ (setq curr-ordnum (get-ordnums locref))
+ (let ((succ-p (ordnum-successor-p prev-ordnum curr-ordnum)))
+ (cond ((and succ-p no-typ-p) (pushl))
+ ((and succ-p open+close-p) (pushone))
+ ((or no-typ-p
+ (not (and succ-p
+ open-p))) (newstat :START) (keep) (make-range))
+ (open-p (newstat :OPEN-RANGE)
+ (pushl) (set-open-range))
+ (close-p (warn-invalid-close locref) (newstat :READ))
+ (t (error "INTERNAL-ERROR in build-ranges - :READ"))))))
+;; line 214 "ranges.nw"
+ )
+ (:OPEN-RANGE
+;; line 288 "ranges.nw"
+(cond (list-end
+;; line 297 "ranges.nw"
+(warn
+ (with-output-to-string (s)
+ (format s "Found no :close-range matching an already opened one!~%")
+ (format s "Location-reference is ~A in keyword ~A.~%"
+ (get-locref-string last-open-locref)
+ (get-main-key *currently-processed-indexentry*))
+ (format s "Maybe I lost some of the regular location-references.~%")))
+;; line 288 "ranges.nw"
+ (newstat :START))
+ ((or no-typ-p open+close-p) (pushl))
+ (open-p
+;; line 307 "ranges.nw"
+(warn
+ (with-output-to-string (s)
+ (format s "Found :open-range that was already opened!~%")
+ (format s "Location-references are ~A and ~A in keyword ~A.~%"
+ (get-locref-string last-open-locref)
+ (get-locref-string locref)
+ (get-main-key *currently-processed-indexentry*))
+ (format s "I'll continue and ignore this.~%")))
+;; line 291 "ranges.nw"
+ (newstat :OPEN-RANGE))
+ (close-p (newstat :READ) (pushl))
+ (t (error "INTERNAL-ERROR in build-ranges - :OPEN-RANGE")))
+;; line 215 "ranges.nw"
+ ))
+
+;; line 402 "ranges.nw"
+(when make-flag
+ (let ((range-len (- (car (last prev-ordnum)) (car (last first-ordnum)))))
+ (if (>= range-len join-length)
+ (push (list (list
+ (make-location-range :first-ordnum first-ordnum
+ :locclass loccls
+ :inner locref-stack
+ :first first-locref
+ :last (caar locref-stack)
+ :length range-len)))
+ result-list)
+ (push locref-stack result-list))
+ (setq locref-stack '())
+ (setq make-flag nil)))
+(if back-flag
+ (setq back-flag nil)
+ (setq same-ordnum-list (cdr same-ordnum-list)))
+(setq state new-state)
+;; line 216 "ranges.nw"
+ ))))))
+;; line 241 "ranges.nw"
+(defun warn-invalid-close (locref)
+ (warn
+ (with-output-to-string (s)
+ (format s "Found a :close-range in the index that wasn't opened before!~%")
+ (format s "Location-reference is ~A in keyword ~A~%"
+ (get-locref-string locref)
+ (get-main-key *currently-processed-indexentry*))
+ (format s "I'll continue and ignore this.~%"))))
+;; line 509 "ranges.nw"
+(defmethod post-process ((locrange location-range) (drop-function function))
+ (let ((locref-list (apply #'nconc (get-inner locrange))))
+ (cond ((>= (get-length locrange)
+ (get-join-length (get-locclass locrange)))
+ (mapc #'(lambda (locref)
+ (let ((origin (get-origin locref)))
+ (when origin
+ (funcall drop-function origin))))
+ locref-list)
+ ;;(set-inner '() locrange)
+ locrange)
+ (t locref-list))))
+
+;(defmethod post-process ((locref-list list) x)
+; (declare (ignore x))
+; locref-list)
+
+(defmethod post-process ((locref location-reference) x)
+ (declare (ignore x))
+ locref)
+
+;; line 600 "ranges.nw"
+(eval-when (compile load eval)
+
+;; line 92 "ranges.nw"
+(export '(location-range get-first get-last get-length))
+;; line 602 "ranges.nw"
+ )
+;; line 88 "index.nw"
+(defparameter *index-entry-table* nil) #| faster access to the entry-table |#
+;; line 69 "index.nw"
+(defconstant *all-hierarchy-layers* MOST-POSITIVE-FIXNUM)
+
+(defclass base-index ()
+ ((entry-table :initform (make-hash-table :test #'equal))
+ (entry-list :initform '())
+ (entries :initform '())
+ (idxclass :initarg :idxclass)
+ (hierdepth :initform *all-hierarchy-layers*)))
+
+(defun make-base-index (idxclass)
+ (make-instance 'base-index :idxclass idxclass))
+;; line 542 "index.nw"
+(defclass letter-group ()
+ ((members :initarg :members :type list)
+ (group-definition :initarg :group-definition)))
+;; line 555 "index.nw"
+(defun make-letter-group (members)
+ (make-instance 'letter-group
+ :members members
+ :group-definition (match-letter-group
+ *indexstyle*
+ (car (get-sort-key (car members))))))
+
+;; line 273 "index.nw"
+(defun add-layered-locref-indexentry (&key
+ (entry-table *index-entry-table*)
+ (idxcls *indexstyle*)
+ locref main-key
+ (merge-key '())
+ (print-key '())
+ (open-range nil) (close-range nil)
+ (catattr nil) (attribute nil))
+ #+:ASSERT! (assert! (and main-key locref))
+
+ (if (and open-range close-range)
+
+;; line 320 "index.nw"
+(nraw "specification of both :open-range and :close-range is invalid! (ignored)")
+;; line 285 "index.nw"
+ (progn
+ (when (or (not catattr)
+ (string= catattr ""))
+ (setq catattr "default"))
+ (let ((catattr-obj (lookup-catattr idxcls catattr)))
+ (if (not catattr-obj)
+ (nraw "unknown attribute `~A'! (ignored)" catattr)
+ (multiple-value-bind (num location-reference)
+ (create-location-reference-from-string
+ locref catattr-obj attribute)
+ (when (eql 1 num)
+ #| ;
+ Only one vaild location-reference! Use #'eql and
+ not #'= since we compare num against NIL, too.
+ |#
+
+;; line 359 "index.nw"
+#+:ORDRULES (unless merge-key
+ (setq merge-key (gen-keyword-mergekey-list main-key)))
+#-:ORDRULES (unless merge-key (setq merge-key main-key))
+;; line 301 "index.nw"
+ (cond (open-range (set-rangeattr-open location-reference))
+ (close-range (set-rangeattr-close location-reference)))
+ (let ((old-entry (gethash merge-key entry-table)))
+ (if old-entry
+ (setf (gethash merge-key entry-table)
+ (join-indexentries
+ old-entry;;(gethash merge-key entry-table)
+ main-key print-key
+ location-reference))
+ (setf (gethash merge-key entry-table)
+ (make-index-entry :main-key main-key
+ :merge-key merge-key
+ :print-key print-key
+ :locrefs (list
+ location-reference)
+ :indexclass idxcls)))))))))))
+;; line 324 "index.nw"
+(defun add-crossref-indexentry (&key
+ (entry-table *index-entry-table*)
+ (idxcls *indexstyle*)
+ (merge-key '())
+ (print-key '())
+ main-key
+ xref
+ xref-class-name
+ (attribute nil))
+ #+:ASSERT! (assert! (and main-key xref xref-class-name))
+
+ (unless xref-class-name (setq xref-class-name "default"))
+ (let ((xref-class (cdr (lookup-crossref-class idxcls xref-class-name))))
+ (if (not xref-class)
+ (nraw "unknown cross-reference-class `~A'! (ignored)~%"
+ xref-class-name)
+ (let ((cross-reference (create-cross-reference xref-class
+ xref attribute)))
+ (when cross-reference
+
+;; line 359 "index.nw"
+#+:ORDRULES (unless merge-key
+ (setq merge-key (gen-keyword-mergekey-list main-key)))
+#-:ORDRULES (unless merge-key (setq merge-key main-key))
+;; line 344 "index.nw"
+ (let ((old-entry (gethash merge-key entry-table)))
+ (if old-entry
+ (setf (gethash merge-key entry-table)
+ (join-indexentries old-entry ;;(gethash merge-key entry-table)
+ main-key print-key
+ cross-reference))
+ (setf (gethash merge-key entry-table)
+ (make-index-entry :main-key main-key
+ :merge-key merge-key
+ :print-key print-key
+ :locrefs (list cross-reference)
+ :indexclass idxcls)))))))))
+;; line 367 "index.nw"
+#+:ORDRULES
+(defun gen-keyword-mergekey-list (list-of-strings)
+ #+ASSERT! (assert! (and (not (null list-of-strings))
+ (listp list-of-strings)))
+ (let ((res (mapcar #'(lambda (str)
+ (gen-keyword-mergekey str))
+ list-of-strings)))
+ (flush-ordrules-message-buffer)
+ res))
+
+#+:ORDRULES
+(defun gen-keyword-sortkey-list (list-of-strings run)
+ #+ASSERT! (assert! (and (not (null list-of-strings))
+ (listp list-of-strings)
+ (<= 0 run) (run < 8)))
+ (let ((res (mapcar #'(lambda (str)
+ (gen-keyword-sortkey str run))
+ list-of-strings)))
+ (flush-ordrules-message-buffer)
+ res))
+;; line 398 "index.nw"
+(defun join-indexentries (idxent main-key print-key locref)
+ (let ((old-main-key (get-main-key idxent))
+ (old-print-key (get-print-key idxent)))
+ (unless old-main-key (set-main-key main-key idxent))
+ (set-print-key (mapcar #'(lambda (old curr)
+ (or old curr))
+ old-print-key print-key)
+ idxent)
+ ;; (info "~&(join-indexentries :old-main-key ~S :old-print-key ~S :new-print-key ~S)"
+ ;; old-main-key old-print-key (get-print-key idxent))
+ (add-location-reference-to-indexentry idxent locref)))
+;; line 438 "index.nw"
+(defun create-location-reference-from-string (locref-str catattr attribute)
+ (let* ((idxcls *indexstyle*))
+ (multiple-value-bind (num locref)
+ (lookup-locref-cache idxcls locref-str)
+ (if num #| something was found! |#
+ (case num
+ (0
+;; line 474 "index.nw"
+(nraw "location-reference ~S did not match any location-class! (ignored)"
+ locref-str)
+;; line 445 "index.nw"
+ (values nil nil))
+ (1 (values 1 (copy-locref-from-template locref catattr attribute))
+ #| return its only member |#)
+ (t
+;; line 469 "index.nw"
+(nraw "location-reference ~S did match multiple location-classes! (taking first one)"
+ locref-str)
+;; line 449 "index.nw"
+ (values num (copy-locref-from-template locref catattr attribute))
+ #| return a copy of the stored template |#))
+ (let ((locref-list
+ (map-location-classes
+ idxcls
+ #'(lambda (idxcls loccls)
+ (declare (ignore idxcls))
+ (build-location-reference loccls locref-str
+ catattr attribute)))))
+ (case (length locref-list)
+ (0
+;; line 474 "index.nw"
+(nraw "location-reference ~S did not match any location-class! (ignored)"
+ locref-str)
+;; line 460 "index.nw"
+ (add-locref-cache idxcls locref-str 0 nil))
+ (1 (add-locref-cache idxcls locref-str 1 (car locref-list))
+ #| return its only member |#)
+ (t
+;; line 469 "index.nw"
+(nraw "location-reference ~S did match multiple location-classes! (taking first one)"
+ locref-str)
+;; line 464 "index.nw"
+ (add-locref-cache idxcls locref-str 1 (car locref-list))
+ #| return its first member |#)))))))
+;; line 482 "index.nw"
+(defun copy-locref-from-template (locref catattr attribute)
+ (declare (inline))
+ (make-layered-location-reference :catattr catattr
+ :attribute attribute
+ :string (get-locref-string locref)
+ :locclass (get-locclass locref)
+ :layers (copy-list (get-layers locref))
+ :ordnums (copy-list (get-ordnums locref))))
+;; line 727 "index.nw"
+(defun sort-indexentries (indexentries)
+ #+:ASSERT! (assert! (listp indexentries))
+ (gol t "~&sort-indexentries: ~S" *sort-rule-orientations*)
+ (sort indexentries
+ #'(lambda (idxent-1 idxent-2)
+ (multiple-value-bind (less-equal? equal?)
+ (strlist<= (get-sort-key idxent-1)
+ (get-sort-key idxent-2)
+ (first *sort-rule-orientations*))
+ (if equal?
+ (sort-other-runs (get-merge-key idxent-1)
+ (get-merge-key idxent-2)
+ (rest *sort-rule-orientations*)
+ 1)
+ less-equal?)))))
+;; line 751 "index.nw"
+(defun sort-other-runs (merge-key-1 merge-key-2 orientations run)
+ (gol t "~&sort-other-runs: ~S ~S ~S ~S."
+ merge-key-1 merge-key-2 orientations run)
+ (cond ((endp orientations)
+ (nraw "Sort rules could not define exact order of key ~S."
+ merge-key-1)
+ nil)
+ (t (let ((key-1 (mapcar #'(lambda (key)
+ (gen-keyword-sortkey key run))
+ merge-key-1))
+ (key-2 (mapcar #'(lambda (key)
+ (gen-keyword-sortkey key run))
+ merge-key-2)))
+ (flush-ordrules-message-buffer)
+ (multiple-value-bind (less-equal? equal?)
+ (strlist<= key-1 key-2 (first orientations))
+ (if equal?
+ (sort-other-runs merge-key-1 merge-key-2
+ (rest orientations) (1+ run))
+ less-equal?))))))
+;; line 782 "index.nw"
+(defun oriented-string (string orientation)
+ (declare (inline))
+ (cond ((eql orientation 'forward) string)
+ ((eql orientation 'backward) (reverse string))
+ (t (error "INDEX:ORIENTED-STRING wrong orientation!"))))
+;; line 793 "index.nw"
+(defun strlist<= (slist-1 slist-2 orientation)
+ (declare (inline))
+ (cond ((endp slist-1) (values t (endp slist-2)))
+ ((endp slist-2) (values nil nil))
+ (t (let ((str-1 (oriented-string (first slist-1) orientation))
+ (str-2 (oriented-string (first slist-2) orientation)))
+ (let ((pos (string/= str-1 str-2)))
+ (if pos
+ (let ((lt (string< str-1 str-2)))
+ (if lt
+ (values t nil)
+ (values nil (string= str-1 str-2))))
+ (strlist<= (cdr slist-1) (cdr slist-2) orientation)))))))
+#|
+(strlist<= '("foo") '("foo") 'forward)
+(strlist<= '("fool") '("foo") 'forward)
+(strlist<= '("foo") '("fool") 'forward)
+(strlist<= '("foo") '("fool") 'backward)
+(strlist<= '("foo") '("foo" "bar") 'forward)
+(strlist<= '("foo" "bar") '("foo") 'forward)
+(strlist<= '("foo" "bar") '("foo") 'backward)
+|#
+
+
+#+OLDVER
+(defun strlist< (string-list-1 string-list-2)
+ (declare (inline))
+ (do ((rest-1 string-list-1 (cdr rest-1))
+ (rest-2 string-list-2 (cdr rest-2)))
+ ((or (endp rest-1) (endp rest-2)
+ (string/= (first rest-1) (first rest-2)))
+ (or (endp rest-1)
+ (if (endp rest-2)
+ 'nil
+ (string< (first rest-1) (first rest-2)))))))
+;; line 504 "index.nw"
+(defmethod process-index ((index base-index))
+ (let ((hash-list '()))
+ (maphash #'(lambda (key idxentry)
+ (declare (ignore key))
+ (setq hash-list (cons idxentry hash-list)))
+ (get-entry-table index))
+ (set-entry-list hash-list index)
+ (build-indexentry-tree index)
+
+ (setq *number-of-indexentries* (length (get-entry-list index)))
+ (setq *current-number* 0)
+ (setq *percentage-list*
+ (mapcar #'(lambda (percent)
+ (cons (truncate (* (/ percent 100)
+ *number-of-indexentries*))
+ percent))
+ ;; MOST-POSITIVE-FIXNUM acts as sentinel such that
+ ;; we never run out of elements
+ `(10 20 30 40 50 60 70 80 90 100 ,MOST-POSITIVE-FIXNUM)))
+ (setq *processing-percentage-list* *percentage-list*)
+ (mapc #'process-indexentry (get-entry-list index))
+ (print-rest-of-percentages *processing-percentage-list*)
+ index))
+;; line 568 "index.nw"
+(defmethod build-indexentry-tree ((index base-index))
+ (let ((index-hierdepth (get-hierdepth index)))
+ (gol t "~&~%Building indexentry-tree:~%")
+ (gol t "Hierdepth of index is ~S~%~%"
+ (if (= index-hierdepth most-positive-fixnum)
+ :tree index-hierdepth))
+ (set-entries (build-indexentry-tree-recursive (get-entry-list index)
+ index-hierdepth)
+ index)
+ (gol t "~&~%Forming letter-groups:~%")
+ (let ((letter-groups (split-list #'(lambda (idxent)
+ (get-ordnum
+ (match-letter-group
+ *indexstyle*
+ (car (get-sort-key idxent)))))
+ (get-entries index)
+ :sortfunc #'<)))
+ (set-entries (mapcar #'(lambda (lg-indexentries)
+ (make-letter-group
+ (sort-indexentries lg-indexentries)))
+ letter-groups)
+ index))))
+;; line 622 "index.nw"
+(defun build-indexentry-tree-recursive (idxent-list
+ max-depth
+ &optional (curr-depth 1))
+ (cond ((endp idxent-list) idxent-list) #| nothing more to do |#
+ ((> curr-depth max-depth) #| we reached the end |#
+ (gen-all-sort-keys idxent-list) #| this is the then case |#
+ )
+ (t (let ((idxent-slist
+ (split-list #'(lambda (idxent)
+ (car (get-merge-key idxent)))
+ idxent-list
+ :headfunc
+ #'(lambda (idxent)
+ (= 1 (length (get-merge-key idxent)))))))
+ (mapcar
+ #'(lambda (sublist)
+ (let* ((idxent (car sublist))
+ (merge-key (get-merge-key idxent)))
+ (if (= 1 (length merge-key))
+ (progn #| length = 1 |#
+ (set-sort-key #-:ORDRULES merge-key
+ #+:ORDRULES (gen-keyword-sortkey-list
+ merge-key 0)
+ idxent)
+ (set-subentries
+ (sort-indexentries
+ (build-indexentry-tree-recursive
+ (remove-first-keywords (cdr sublist))
+ max-depth
+ (1+ curr-depth)))
+ idxent)
+ idxent)
+ (let* #| length > 1 |#
+ ((main-key (get-main-key idxent))
+ (new-merge-key (take-first merge-key))
+ (some-print-key (find-print-key sublist))
+ (new-print-key (list (or some-print-key
+ (car main-key))))
+ (new-idxent
+ (make-index-entry
+ :main-key (take-first main-key)
+ :merge-key new-merge-key
+ :print-key new-print-key
+ :sort-key
+ #-:ORDRULES new-merge-key
+ #+:ORDRULES (gen-keyword-sortkey-list
+ new-merge-key 0)
+ :idxclass (get-idxclass idxent))))
+ ;; (info "~&(treeing :main ~S :some-print ~S :new-print ~S)"
+ ;; main-key some-print-key new-print-key)
+ (set-subentries
+ (sort-indexentries
+ (build-indexentry-tree-recursive
+ (remove-first-keywords sublist)
+ max-depth
+ (1+ curr-depth)))
+ new-idxent)
+ new-idxent))))
+ idxent-slist)))))
+
+(defun find-print-key (idxent-list)
+ (some #'(lambda (idxent)
+ (car (get-print-key idxent)))
+ idxent-list))
+;; line 689 "index.nw"
+(defun remove-first-keywords (idxent-list)
+ (declare (inline))
+ (mapc #'(lambda (idxent)
+ (setf (slot-value idxent 'merge-key)
+ (cdr (slot-value idxent 'merge-key)))
+ (setf (slot-value idxent 'main-key)
+ (cdr (slot-value idxent 'main-key)))
+ (setf (slot-value idxent 'print-key)
+ (cdr (slot-value idxent 'print-key)))
+ )
+ idxent-list)
+ idxent-list)
+;; line 713 "index.nw"
+(defun gen-all-sort-keys (idxent-list)
+ (when idxent-list
+ (mapc #'(lambda (idxent)
+ (set-sort-key #-:ORDRULES (get-merge-key idxent)
+ #+:ORDRULES (gen-keyword-sortkey-list
+ (get-merge-key idxent) 0)
+ idxent))
+ idxent-list))
+ idxent-list)
+;; line 94 "index.nw"
+(defparameter *index* nil)
+
+(defun create-index ()
+ (setq *index* (make-base-index *indexstyle*))
+ (setq *index-entry-table* (get-entry-table *index*))
+ *index*)
+
+(create-index)
+;; line 421 "index.nw"
+(defun lookup-indexentry (key &optional (index-entry-table *index-entry-table*))
+ (gethash key index-entry-table))
+
+;; line 258 "index.nw"
+(eval-when (compile load eval)
+ (defparameter *raw-index-interface-definitions*
+ '(indexentry)))
+;; line 165 "index.nw"
+(defmacro indexentry (&whole whole &rest args)
+ (destructuring-switch-bind (&key
+ key print tkey merge attr locref xref
+ &switch
+ (open-range :open-range)
+ (close-range :close-range))
+ args
+ (cond ((not (or key tkey))
+ (error "missing argument :key or :tkey in~%~S."))
+ ((and key tkey)
+ (error "you can't specify :key and :tkey at the same time in~%~S."
+ whole))
+ ((and locref xref)
+;; line 213 "index.nw"
+(error "you can't specify :locref and :xref at the same time in~%~S."
+ whole)
+
+;; line 177 "index.nw"
+ )
+ (t (progn
+ (if tkey
+ (multiple-value-setq (key print)
+ (tkey-to-normal-key tkey whole))
+ (when print;; check for correct key-length
+ (let ((keylen (length key)))
+ (unless (= keylen (length print))
+ (setq print;; take the first keylen elmts of print
+ (mapcar #'(lambda (x y) (declare (ignore y)) x)
+ key
+ (append print (make-list keylen))))))))
+ (cond ((not (listp key))
+ (error ":key ~S is not a list in~%~S." key whole))
+ ((not (listp print))
+ (error ":print ~S is not a list in~%~S." print whole))
+ (locref `(ADD-LAYERED-LOCREF-INDEXENTRY
+ :MAIN-KEY ',key
+ :PRINT-KEY ',print
+ :MERGE-KEY ',merge
+ :CATATTR ',attr
+ :LOCREF ',locref
+ :OPEN-RANGE ',open-range
+ :CLOSE-RANGE ',close-range))
+ (xref (when (or open-range close-range)
+
+;; line 221 "index.nw"
+(error "you can't specify :open-range or :close-range with :xref at the same time in~%~S."
+ whole)
+;; line 202 "index.nw"
+ )
+ (unless attr
+;; line 217 "index.nw"
+(error "missing :attr in combination with :xref in~%~S." whole)
+;; line 203 "index.nw"
+ )
+ `(ADD-CROSSREF-INDEXENTRY
+ :MAIN-KEY ',key
+ :PRINT-KEY ',print
+ :XREF ',xref
+ :XREF-CLASS-NAME ',attr))
+ (t
+;; line 226 "index.nw"
+(error "you must at least specify :locref or :xref in~%~S." whole)
+;; line 209 "index.nw"
+ )))))))
+;; line 238 "index.nw"
+(defun tkey-to-normal-key (tkey whole)
+ (when (not (listp tkey))
+;; line 254 "index.nw"
+(error "INDEXENTRY: invalid structure of :tkey in~%~S." tkey whole)
+;; line 239 "index.nw"
+ )
+ (let ((main-key '())
+ (print-key '()))
+ (mapc #'(lambda (key-elt)
+ (cond ((listp key-elt)
+ (push (car key-elt) main-key)
+ (if (cdr key-elt)
+ (push (cadr key-elt) print-key)
+ (push nil print-key)))
+ (t
+;; line 254 "index.nw"
+(error "INDEXENTRY: invalid structure of :tkey in~%~S." tkey whole)
+;; line 248 "index.nw"
+ )))
+ tkey)
+ (values (nreverse main-key) (nreverse print-key))))
+
+;; line 889 "index.nw"
+(eval-when (compile load eval)
+
+;; line 83 "index.nw"
+(export '(base-index make-base-index get-entries))
+;; line 105 "index.nw"
+(export '(*index* create-index))
+;; line 264 "index.nw"
+(export '*raw-index-interface-definitions*)
+(export *raw-index-interface-definitions*)
+;; line 412 "index.nw"
+(export '(add-locref-indexentry add-crossref-indexentry))
+;; line 530 "index.nw"
+(export '(process-index))
+;; line 564 "index.nw"
+(export '(letter-group get-members get-group-definition))
+;; line 891 "index.nw"
+ )
+
+;; line 1029 "idxentry.nw"
+#+:XP
+(set-pprint-dispatch 'index-entry
+ #'(lambda (s idxent)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (pprint-indent :block 2 s)
+ (write-string "Indexentry {" s)
+ (pprint-newline :mandatory s)
+ (write-string "main-key: " s)
+ (write (get-main-key idxent) :stream s)
+ (pprint-newline :mandatory s)
+ (write-string "merge-key: " s)
+ (write (get-merge-key idxent) :stream s)
+ (pprint-newline :mandatory s)
+ (write-string "sort-key: " s)
+ (write (get-sort-key idxent) :stream s)
+ (pprint-newline :mandatory s)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (write-string "Locrefs {" s)
+ (pprint-indent :block 2)
+ (pprint-newline :mandatory s)
+ (pprint-linear s (get-locrefs idxent)))
+ (pprint-newline :mandatory s)
+ (pprint-logical-block
+ (s nil :suffix "}")
+ (write-string "Subentries {" s)
+ (pprint-indent :block 2)
+ (pprint-newline :mandatory s)
+ (pprint-linear s (get-subentries idxent)))
+ (pprint-newline :mandatory s))
+ ))
+;; line 1071 "idxentry.nw"
+#+:XP
+(defun pprint-locref-group (s grp name)
+ (format s "~%")
+ (pprint-logical-block
+ (s nil :prefix "(" :suffix ")")
+ (write-string name s)
+ (write-string ":" s)
+ (when (typep grp 'category-attribute-group)
+ (write (get-ordnum grp) :stream s))
+ (pprint-indent :block 2 s)
+ (pprint-newline :mandatory s)
+ (pprint-fill s (get-members grp) nil)
+ (pprint-indent :block -1 s)
+ (pprint-newline :mandatory s)))
+
+#+:XP
+(defun set-pprint-locref-group-dispatch (class name &optional (rank 0))
+ (set-pprint-dispatch class
+ #'(lambda (s grp)
+ (pprint-locref-group s grp name))
+ rank))
+;; line 1107 "idxentry.nw"
+#+:XP
+(set-pprint-locref-group-dispatch 'locref-group
+ "LOCREF-GROUP" 0)
+#+:XP
+(set-pprint-locref-group-dispatch 'locref-class-group
+ "LOCREF-CLASS-GROUP" 1)
+#+:XP
+(set-pprint-locref-group-dispatch 'crossref-class-group
+ "CROSSREF-CLASS-GROUP" 2)
+#+:XP
+(set-pprint-locref-group-dispatch 'category-attribute-group
+ "CATEGORY-ATTRIBUTE-GROUP" 3)
+;; line 614 "ranges.nw"
+#+:XP
+(defun pprint-location-range (s range)
+ (pprint-logical-block
+ (s nil :prefix "[" :suffix "]")
+ (format s "range: ~D " (get-length range))
+ (pprint-newline :fill s)
+ (write-string " loccls: " s)
+ (write (get-locclass range) :stream s)
+ (pprint-newline :fill s)
+ (write-string " catattr: " s)
+ (write (get-catattr range) :stream s)
+ (format s "/~D" (get-sort-ordnum (get-catattr range)))
+ (pprint-newline :fill s)
+ (format s " ordnums: ~A " (get-ordnums range))
+ (pprint-newline :fill s)
+ (pprint-logical-block
+ (s nil :prefix "<" :suffix ">")
+ (write-string "first " s)
+ (pprint-newline :miser s)
+ (write (get-first range) :stream s))
+ (pprint-newline :mandatory s)
+ (pprint-logical-block
+ (s nil :prefix "<" :suffix ">")
+ (write-string "inner " s)
+ (pprint-newline :linear s)
+ (write (get-inner range) :stream s))
+ (pprint-newline :mandatory s)
+ (pprint-logical-block
+ (s nil :prefix "<" :suffix ">")
+ (write-string "last " s)
+ (pprint-newline :miser s)
+ (write (get-last range) :stream s))
+ (pprint-newline :mandatory s)))
+
+#+:XP
+(set-pprint-dispatch 'location-range #'pprint-location-range)
+
+;; line 868 "index.nw"
+(defvar *RCS-Identifier* '(
+;; line 998 "idxentry.nw"
+("idxentry" . "$Id: idxentry.nw,v 1.29 1997/03/27 17:17:25 kehr Exp $")
+;; line 895 "index.nw"
+("index" . "$Id: index.nw,v 1.31 1997/03/26 16:18:37 kehr Exp $")
+;; line 606 "ranges.nw"
+("ranges" . "$Id: ranges.nw,v 1.11 1997/03/26 16:18:41 kehr Exp $")
+;; line 868 "index.nw"
+ ))
diff --git a/Build/source/utils/xindy/src/locref.lsp b/Build/source/utils/xindy/src/locref.lsp
new file mode 100644
index 00000000000..428b629e910
--- /dev/null
+++ b/Build/source/utils/xindy/src/locref.lsp
@@ -0,0 +1,556 @@
+;; line 360 "locref.nw"
+;; $Id: locref.nw,v 1.29 1997/03/26 16:18:53 kehr Exp $
+
+(lisp:defpackage "LOCREF")
+(lisp:in-package "LOCREF")
+(lisp:provide "locref")
+
+#+CLISP (lisp:require "base")
+
+(eval-when (compile load eval)
+ #-CLISP (lisp:require "base")
+ (lisp:use-package "BASE")
+ #+(and :XP CLISP) (lisp:use-package "XP")
+ (lisp:use-package "CLOS"))
+
+;; line 251 "basetype.nw"
+;; $Id: basetype.nw,v 1.17 1997/03/26 16:18:47 kehr Exp $
+
+;; line 110 "basetype.nw"
+(defgeneric prefix-match (str object))
+;; line 114 "basetype.nw"
+(defclass basetype ()
+ ((name :initarg :name)
+ (base-alphabet :initarg :base-alphabet)))
+;; line 142 "basetype.nw"
+(defclass alphabet (basetype)
+ ((symbols :initarg :symbols)))
+
+(defun make-alphabet (name symbols)
+ (make-instance 'alphabet :name name :symbols symbols
+ :base-alphabet (calculate-base-alphabet symbols)))
+
+(defmethod make-copy ((alph alphabet) new-name)
+ (make-instance 'alphabet
+ :name new-name
+ :symbols (get-symbols alph)
+ :base-alphabet (get-base-alphabet alph)))
+;; line 163 "basetype.nw"
+(defun calculate-base-alphabet (list-of-strings)
+ (sort (remove-duplicates
+ (apply #'nconc
+ (mapcar #'(lambda (str)
+ (coerce str 'list))
+ list-of-strings)))
+ #'char<))
+;; line 183 "basetype.nw"
+(defmethod prefix-match ((str string) (alph alphabet))
+ (multiple-value-bind (matched-string rest-string order-num)
+ (prefix-match-stringlist str (get-symbols alph))
+ (values matched-string rest-string order-num)))
+
+(defun prefix-match-stringlist (pattern list-of-str)
+ (let* ((matched-string "")
+ (rest-string pattern)
+ (ordnum-of-max-match nil)
+ (len-max-match 0)
+ (strlen (length pattern)))
+ (do ((ordnum 0 (1+ ordnum))
+ (string-list list-of-str (cdr string-list)))
+ ((endp string-list))
+ (let ((len-curr-match (string/= pattern (car string-list))))
+ (when (null len-curr-match) (setq len-curr-match strlen))
+ (when (> len-curr-match len-max-match)
+ (setq ordnum-of-max-match ordnum)
+ (setq len-max-match len-curr-match)
+ (setq rest-string (subseq pattern len-curr-match))
+ (setq matched-string
+ (subseq (car string-list) 0 len-curr-match)))))
+ (values matched-string rest-string ordnum-of-max-match)))
+;; line 227 "basetype.nw"
+(defclass enumeration (basetype)
+ ())
+
+(defun make-enumeration (enum-class name base-alphabet)
+ (make-instance enum-class
+ :name name
+ :base-alphabet base-alphabet))
+
+(defmethod make-copy ((enum enumeration) new-name)
+ (make-instance (class-name (class-of enum))
+ :name new-name
+ :base-alphabet (get-base-alphabet enum)))
+
+;; line 257 "basetype.nw"
+(eval-when (compile load eval)
+
+;; line 120 "basetype.nw"
+(export '(basetype prefix-match get-name get-base-alphabet))
+;; line 157 "basetype.nw"
+(export '(alphabet make-alphabet get-symbols make-copy))
+;; line 242 "basetype.nw"
+(export '(enumeration make-enumeration))
+;; line 259 "basetype.nw"
+ )
+;; line 493 "locclass.nw"
+;; $Id: locclass.nw,v 1.21 1997/03/26 16:18:49 kehr Exp $
+
+;; line 67 "locclass.nw"
+(defclass location-class ()
+ ((name :type string :initarg :name)
+ (ordnum :type number :initform (gen-next-loccls-ordnum))))
+;; line 87 "locclass.nw"
+(defparameter *curr-loccls-ordnum* 0)
+
+(defun gen-next-loccls-ordnum ()
+ (incf *curr-loccls-ordnum*))
+;; line 106 "locclass.nw"
+(defclass layered-location-class (location-class)
+ ((layers :initarg :layers)
+ (hierdepth :initarg :hierdepth)))
+;; line 125 "locclass.nw"
+(defclass standard-location-class (layered-location-class)
+ ((join-length :initarg :join-length)))
+
+(defun make-standard-location-class (name layers join-length hierdepth)
+ (make-instance 'standard-location-class
+ :name name :layers layers
+ :join-length join-length :hierdepth hierdepth))
+;; line 135 "locclass.nw"
+(defmacro joining-allowed-p (loccls)
+ `(SLOT-VALUE ,loccls 'JOIN-LENGTH))
+;; line 144 "locclass.nw"
+(defun checked-make-standard-location-class (name layers join-layers
+ &optional (hierdepth 0))
+ (make-standard-location-class name layers join-layers hierdepth))
+;; line 163 "locclass.nw"
+(defclass var-location-class (layered-location-class)
+ ())
+
+(defun make-var-location-class (name layers hierdepth)
+ (make-instance 'var-location-class
+ :name name :layers layers :hierdepth hierdepth))
+;; line 172 "locclass.nw"
+(defun checked-make-var-location-class (name layers &optional (hierdepth 0))
+ (make-var-location-class name layers hierdepth))
+;; line 189 "locclass.nw"
+(defclass loccls-layer ()
+ ((basetype :initarg :basetype)))
+
+(defun make-loccls-layer (basetype)
+ (make-instance 'loccls-layer :basetype basetype))
+;; line 206 "locclass.nw"
+(defmethod prefix-match ((locstring string)
+ (layer loccls-layer))
+ (prefix-match locstring (get-basetype layer)))
+;; line 220 "locclass.nw"
+(defclass loccls-separator ()
+ ((separator :initarg :separator)))
+
+(defun make-loccls-separator (separator)
+ (make-instance 'loccls-separator :separator separator))
+;; line 246 "locclass.nw"
+(defmethod prefix-match ((locstring string)
+ (separator loccls-separator))
+ (let* ((sepstr (get-separator separator))
+ (seplen (length sepstr))
+ (match-len (string/= sepstr locstring)))
+ (if (or (null match-len) (eql seplen match-len))
+ (values locstring (subseq locstring seplen) t)
+ (values nil nil nil))))
+;; line 273 "locclass.nw"
+(defclass crossref-location-class (location-class)
+ ((target :initarg :target)))
+;; line 299 "locclass.nw"
+(defclass verified-crossref-location-class (crossref-location-class)
+ ())
+
+(defun make-verified-crossref-location-class (name)
+ (make-instance 'verified-crossref-location-class :name name))
+;; line 319 "locclass.nw"
+(defclass unverified-crossref-location-class (crossref-location-class)
+ ())
+
+(defun make-unverified-crossref-location-class (name)
+ (make-instance 'unverified-crossref-location-class :name name))
+
+;; line 374 "locclass.nw"
+(defgeneric perform-match (locstring locclass))
+;; line 402 "locclass.nw"
+(defmethod perform-match ((locstring string)
+ (loccls standard-location-class))
+ (let ((layer-list '())
+ (ordnum-list '())
+ (give-up nil)
+ (matched-string nil)
+ (rest-string nil)
+ (ordnum nil))
+ (do ((layers (get-layers loccls) (cdr layers)))
+ ((or give-up
+ (let ((empty-string (= 0 (length locstring)))
+ (empty-list (endp layers)))
+ (cond ((and empty-string empty-list) t)
+ ((or empty-string empty-list) (setq give-up t))
+ (t nil)))))
+ (let ((curr-layer (car layers)))
+ (multiple-value-setq (matched-string rest-string ordnum)
+ (prefix-match locstring curr-layer))
+ (cond ((eq ordnum nil) (setq give-up t))
+ ((numberp ordnum)
+ (setq locstring rest-string)
+ (setq layer-list
+ (cons matched-string layer-list))
+ (setq ordnum-list (cons ordnum ordnum-list)))
+ (t (setq locstring rest-string)))
+ ))
+ (if (not give-up)
+ (values (nreverse layer-list) (nreverse ordnum-list))
+ (values nil nil))))
+;; line 446 "locclass.nw"
+(defmethod perform-match ((locstring string)
+ (loccls var-location-class))
+ (let ((layer-list '())
+ (ordnum-list '())
+ (give-up nil)
+ (matched-string nil)
+ (rest-string nil)
+ (ordnum nil))
+ (do ((layers (get-layers loccls) (cdr layers)))
+ ((or give-up
+ (let ((empty-string (= 0 (length locstring)))
+ (empty-list (endp layers)))
+ (cond (empty-string t)
+ (empty-list (setq give-up t))
+ (t nil)))))
+ (let ((curr-layer (car layers)))
+ (multiple-value-setq (matched-string rest-string ordnum)
+ (prefix-match locstring curr-layer))
+ (cond ((eq ordnum nil) (setq give-up t))
+ ((numberp ordnum)
+ (setq locstring rest-string)
+ (setq layer-list
+ (cons matched-string layer-list))
+ (setq ordnum-list (cons ordnum ordnum-list)))
+ (t (setq locstring rest-string)))
+ ))
+ (if (not give-up)
+ (values (nreverse layer-list) (nreverse ordnum-list))
+ (values nil nil))))
+;; line 482 "locclass.nw"
+;; FIXME (do we need this)
+;;(defmethod perform-match ((locstring string)
+;; (loccls crossref-location-class))
+;; t)
+
+;; line 507 "locclass.nw"
+(eval-when (compile load eval)
+
+;; line 94 "locclass.nw"
+(export '(location-class perform-match
+ get-name get-ordnum set-ordnum ordnum))
+;; line 112 "locclass.nw"
+(export '(layered-location-class))
+;; line 150 "locclass.nw"
+(export '(standard-location-class checked-make-standard-location-class
+ get-join-length set-join-length
+ joining-allowed-p join-length))
+;; line 177 "locclass.nw"
+(export '(var-location-class checked-make-var-location-class))
+;; line 197 "locclass.nw"
+(export '(loccls-layer make-loccls-layer
+ get-basetype get-markup))
+;; line 228 "locclass.nw"
+(export '(loccls-separator make-loccls-separator
+ get-separator get-markup))
+;; line 278 "locclass.nw"
+(export '(crossref-location-class get-target))
+;; line 307 "locclass.nw"
+(export '(verified-crossref-location-class
+ make-verified-crossref-location-class))
+;; line 327 "locclass.nw"
+(export '(unverified-crossref-location-class
+ make-unverified-crossref-location-class))
+;; line 183 "locref.nw"
+(export '(crossref-location-reference create-cross-reference))
+;; line 215 "locref.nw"
+(export 'build-location-reference)
+;; line 509 "locclass.nw"
+ )
+;; line 56 "locref.nw"
+(defclass location-reference ()
+ ((locclass :initarg :locclass)
+ (attribute :initarg :attribute)))
+;; line 78 "locref.nw"
+(defclass layered-location-reference (location-reference)
+ ((layers :initarg :layers)
+ (locref-string :initarg :string :type string)
+ (ordnums :initarg :ordnums)
+ (catattr :initarg :catattr)
+ (state :initarg :state)
+ (rangeattr :initform 'nil)
+ (origin :initform 'nil)
+ (subrefs :initform '() :type list)))
+
+;; line 95 "locref.nw"
+(defun make-layered-location-reference (&key (string "")
+ (layers '()) (ordnums '())
+ (catattr nil) (locclass nil)
+ (attribute nil) (virtual nil))
+ (make-instance 'layered-location-reference
+ :string string
+ :layers layers
+ :ordnums ordnums
+ :catattr catattr
+ :locclass locclass
+ :attribute attribute
+ :state (if virtual 'locref-state-virtual
+ 'locref-state-normal)))
+;; line 116 "locref.nw"
+(defmacro state-normal-p (locref)
+ `(EQL 'LOCREF-STATE-NORMAL (SLOT-VALUE ,locref 'STATE)))
+
+(defmacro state-virtual-p (locref)
+ `(EQL 'LOCREF-STATE-VIRTUAL (SLOT-VALUE ,locref 'STATE)))
+
+(defmacro state-deleted-p (locref)
+ `(EQL 'LOCREF-STATE-DELETED (SLOT-VALUE ,locref 'STATE)))
+
+(defun set-state-normal (locref)
+ (set-state 'locref-state-normal locref)
+ locref)
+
+(defun set-state-virtual (locref)
+ (set-state 'locref-state-virtual locref)
+ locref)
+
+(defun set-state-deleted (locref)
+ (set-state 'locref-state-deleted locref)
+ locref)
+;; line 139 "locref.nw"
+(defmacro rangeattr-open-p (attr)
+ `(EQL ,attr :RANGEATTR-OPEN))
+
+(defmacro rangeattr-close-p (attr)
+ `(EQL ,attr :RANGEATTR-CLOSE))
+
+(defmacro set-rangeattr-open (locref)
+ `(SETF (SLOT-VALUE ,locref 'RANGEATTR) :RANGEATTR-OPEN))
+
+(defmacro set-rangeattr-close (locref)
+ `(SETF (SLOT-VALUE ,locref 'RANGEATTR) :RANGEATTR-CLOSE))
+;; line 241 "locref.nw"
+(defclass category-attribute ()
+ ((name :initarg :name)
+ (catattr-grp-ordnum :initarg :ordnum)
+ (sort-ordnum :initform 0)
+ (processing-ordnum :initform 0)
+ (last-in-group :initarg :type)))
+
+(defun make-category-attribute (attr-name)
+ (make-instance 'category-attribute :name attr-name))
+;; line 174 "locref.nw"
+(defclass crossref-location-reference (location-reference)
+ ((target :initarg :target)))
+
+(defun create-cross-reference (loccls target attribute)
+ (make-instance 'crossref-location-reference
+ :locclass loccls :target target :attribute attribute))
+;; line 201 "locref.nw"
+(defmethod build-location-reference ((locclass layered-location-class)
+ (locref-str string)
+ (catattr category-attribute)
+ attribute)
+ (multiple-value-bind (layers ordnums)
+ (perform-match locref-str locclass)
+ (and layers ordnums
+ (make-layered-location-reference
+ :locclass locclass :layers layers
+ :ordnums ordnums :catattr catattr
+ :attribute attribute :string locref-str))))
+;; line 288 "locref.nw"
+(defun locref-class< (locref-1 locref-2)
+ (declare (inline))
+ (< (get-ordnum (get-locclass locref-1))
+ (get-ordnum (get-locclass locref-2))))
+
+(defun locref-class= (locref-1 locref-2)
+ (declare (inline))
+ (eql (get-locclass locref-1) (get-locclass locref-2)))
+;; line 301 "locref.nw"
+(defmacro locref-ordnum< (ordnum-list-1 ordnum-list-2)
+ `(COND
+ ((EQUAL ,ordnum-list-1 ,ordnum-list-2) NIL)
+ (T (DO ((REST-1 ,ordnum-list-1 (CDR REST-1))
+ (REST-2 ,ordnum-list-2 (CDR REST-2)))
+ ((OR (ENDP REST-1) (ENDP REST-2)
+ (/= (FIRST REST-1) (FIRST REST-2)))
+ (COND ((ENDP REST-1) T)
+ ((ENDP REST-2) NIL)
+ (T (< (FIRST REST-1) (FIRST REST-2)))))))))
+
+(defmacro locref-ordnum= (ordnum-list-1 ordnum-list-2)
+ `(EQUAL ,ordnum-list-1 ,ordnum-list-2))
+;; line 320 "locref.nw"
+#|
+FIXME
+(defun locref< (locref-1 locref-2)
+ (cond ((locref-class= locref-1 locref-2)
+ (locref-ordnum< locref-1 locref-2))
+ (t (locref-class< locref-1 locref-2))))
+|#
+
+(defmethod locref= ((locref-1 crossref-location-reference)
+ (locref-2 layered-location-reference))
+ nil)
+
+(defmethod locref= ((locref-1 layered-location-reference)
+ (locref-2 crossref-location-reference))
+ nil)
+
+(defmethod locref= ((locref-1 crossref-location-reference)
+ (locref-2 crossref-location-reference))
+ (and (locref-class= locref-1 locref-2)
+ (equal (get-target locref-1) (get-target locref-2))))
+
+(defmethod locref= ((locref-1 layered-location-reference)
+ (locref-2 layered-location-reference))
+ (and (locref-class= locref-1 locref-2)
+ (eql (get-catattr locref-1) (get-catattr locref-2))
+ (locref-ordnum= (get-ordnums locref-1) (get-ordnums locref-2))
+ (eql (get-rangeattr locref-1) (get-rangeattr locref-2))))
+
+;; line 391 "locref.nw"
+(eval-when (compile load eval)
+
+;; line 62 "locref.nw"
+(export 'location-reference)
+;; line 153 "locref.nw"
+(export '(layered-location-reference
+ make-layered-location-reference
+ get-layers set-layers layers
+ get-ordnums set-ordnums ordnums
+ get-subrefs set-subrefs subrefs
+ get-catattr catattr
+ get-rangeattr rangeattr
+ get-locref-string string
+ get-origin set-origin
+ state
+ state-normal-p state-virtual-p state-deleted-p
+ set-state-normal set-state-virtual set-state-deleted
+ set-rangeattr-open set-rangeattr-close
+ rangeattr-open-p rangeattr-close-p))
+;; line 257 "locref.nw"
+(export '(category-attribute make-category-attribute
+ get-name catattr-grp-ordnum
+ get-catattr-grp-ordnum set-catattr-grp-ordnum
+ get-sort-ordnum set-sort-ordnum
+ get-processing-ordnum set-processing-ordnum
+ get-last-in-group set-last-in-group
+ get-type set-type
+ get-markup set-markup))
+;; line 350 "locref.nw"
+(export '(locref-class< locref-class=
+ locref-ordnum< locref-ordnum=
+ locref=))
+;; line 393 "locref.nw"
+ )
+
+;; line 521 "locclass.nw"
+#+:XP
+(set-pprint-dispatch 'location-class
+ #'(lambda (s loccls)
+ (pprint-logical-block
+ (s nil :prefix "{" :suffix "}")
+ (write (get-name loccls) :stream s)
+ (write-string ":" s)
+ (write (get-ordnum loccls) :stream s))))
+
+#+:XP
+(set-pprint-dispatch 'layered-location-class
+ #'(lambda (s loccls)
+ (pprint-logical-block
+ (s nil :prefix "{" :suffix "}")
+ (write (get-name loccls) :stream s)
+ (write-string ":" s)
+ (write (get-ordnum loccls) :stream s)
+ (mapc #'(lambda (x)
+ (write-string " " s)
+ (pprint x s))
+ (get-layers loccls)))))
+
+#+:XP
+(set-pprint-dispatch 'loccls-layer
+ #'(lambda (s layer)
+ (pprint-logical-block
+ (s nil :prefix "<" :suffix ">")
+ (pprint (get-basetype layer) s))))
+
+#+:XP
+(set-pprint-dispatch 'loccls-separator
+ #'(lambda (s sep)
+ (pprint-logical-block
+ (s nil :prefix "<" :suffix ">")
+ (write (get-separator sep) :stream s))))
+;; line 406 "locref.nw"
+#+:XP
+(defun pprint-layered-location-reference (s locref)
+ (pprint-logical-block
+ (s nil :prefix "[" :suffix "]")
+ (cond ((state-normal-p locref) (write-string "Nor:" s))
+ ((state-virtual-p locref) (write-string "Vir:" s))
+ (t (write-string "Del:" s)))
+ (cond ((rangeattr-open-p (get-rangeattr locref)) (write-string "OPEN:" s))
+ ((rangeattr-close-p (get-rangeattr locref)) (write-string "CLOSE:" s)))
+ (write-string "\"" s)
+ (write-string (get-locref-string locref) s)
+ (write-string "\"=" s)
+ (write (get-layers locref) :stream s)
+ (write-string "=" s)
+ (write (get-ordnums locref) :stream s)
+ (write-string ";" s)
+ (pprint-newline :fill s)
+ (write (get-locclass locref) :stream s)
+ (write-string ";" s)
+ (pprint-newline :fill s)
+ (write (get-catattr locref) :stream s)
+ (when (get-origin locref)
+ (write-string "<-" s)
+ (write (get-catattr (get-origin locref)) :stream s))
+ (pprint-newline :fill s)
+ (write (get-subrefs locref) :stream s)
+ ))
+
+#+:XP
+(set-pprint-dispatch 'layered-location-reference
+ #'pprint-layered-location-reference)
+;; line 440 "locref.nw"
+#+:XP
+(defun pprint-crossref-location-reference (s xref)
+ (pprint-logical-block
+ (s nil :prefix "[" :suffix "]")
+ (write (get-locclass xref) :stream s)
+ (write-string "->" s)
+ (write (get-target xref) :stream s)
+ ))
+
+#+:XP
+(set-pprint-dispatch 'crossref-location-reference
+ #'pprint-crossref-location-reference)
+;; line 455 "locref.nw"
+#+:XP
+(set-pprint-dispatch 'category-attribute
+ #'(lambda (s catattr)
+ (write-string "`" s)
+ (write-string (get-name catattr) s)
+ (write-string "'" s)))
+
+;; line 380 "locref.nw"
+(defvar *RCS-Identifier* '(
+;; line 263 "basetype.nw"
+("basetype" . "$Id: basetype.nw,v 1.17 1997/03/26 16:18:47 kehr Exp $")
+;; line 513 "locclass.nw"
+("locclass" . "$Id: locclass.nw,v 1.21 1997/03/26 16:18:49 kehr Exp $")
+;; line 397 "locref.nw"
+("locref" . "$Id: locref.nw,v 1.29 1997/03/26 16:18:53 kehr Exp $")
+;; line 380 "locref.nw"
+ ))
diff --git a/Build/source/utils/xindy/src/markup.lsp b/Build/source/utils/xindy/src/markup.lsp
new file mode 100644
index 00000000000..4cb73feb508
--- /dev/null
+++ b/Build/source/utils/xindy/src/markup.lsp
@@ -0,0 +1,1291 @@
+;; line 1154 "markup.nw"
+;; $Id: markup.nw,v 1.24 1997/03/26 16:18:58 kehr Exp $
+
+(lisp:defpackage "MARKUP")
+(lisp:in-package "MARKUP")
+(lisp:provide "markup")
+#+CLISP (lisp:require "base")
+#+CLISP (lisp:require "locref")
+#+CLISP (lisp:require "idxstyle")
+#+CLISP (lisp:require "index")
+
+(eval-when (compile load eval)
+ (lisp:use-package "CLOS")
+ #+(and :XP CLISP) (lisp:use-package "XP")
+ #+CLISP (setq custom:*suppress-check-redefinition* t)
+ #-CLISP (lisp:require "base")
+ #-CLISP (lisp:require "locref")
+ #-CLISP (lisp:require "idxstyle")
+ #-CLISP (lisp:require "index")
+ (lisp:require "version")
+ (lisp:use-package "BASE")
+ (lisp:use-package "LOCREF")
+ (lisp:use-package "IDXSTYLE")
+ (lisp:use-package "INDEX"))
+
+;; line 1222 "markup.nw"
+;; $Id: markup.nw,v 1.24 1997/03/26 16:18:58 kehr Exp $
+
+;; line 71 "markup.nw"
+(defparameter *markup-output-stream* *standard-output*)
+(defparameter *markup-verbose-mode* nil)
+(defparameter *markup-verbose-open* "<")
+(defparameter *markup-verbose-close* ">")
+(defparameter *markup-indentation* 2)
+(defparameter *markup-indent-level* 0)
+(defparameter *empty-markup* "")
+
+(defvar *markup-percentage-list*)
+(defvar *current-number*)
+
+(defun do-markup-indent ()
+ (incf *markup-indent-level* *markup-indentation*))
+(defun do-markup-outdent ()
+ (decf *markup-indent-level* *markup-indentation*))
+;; line 102 "markup.nw"
+(defun do-markup-string (str)
+ (declare (inline))
+ (write-string str *markup-output-stream*))
+;; line 111 "markup.nw"
+(defun do-markup-default (str &optional arg1 arg2 arg3)
+ (when *markup-verbose-mode*
+ (loop for x from 1 to *markup-indent-level*
+ do (write-string " " *markup-output-stream*))
+ (do-markup-string *markup-verbose-open*)
+ (do-markup-string str)
+ (when arg1
+ (format *markup-output-stream* " [~S]" arg1)
+ (when arg2
+ (format *markup-output-stream* " [~S]" arg2)
+ (when arg3
+ (format *markup-output-stream* " [~S]" arg3)
+ )))
+ (do-markup-string *markup-verbose-close*)
+ (terpri *markup-output-stream*)
+ ))
+;; line 138 "markup.nw"
+(defmacro do-markup-list (some-list
+ &key
+ identifier counter
+ elt-body sep-body
+ open-body close-body)
+ `(PROGN
+ ,(when open-body `,open-body)
+ (LET ,(if counter
+ `((LIST-END (CAR (LAST ,some-list)))
+ (COUNTER ,counter))
+ `((LIST-END (CAR (LAST ,some-list)))))
+ (DO ((SLIST ,some-list (CDR SLIST)))
+ ((ENDP SLIST))
+ (LET ((,identifier (CAR SLIST)))
+ ,elt-body
+ ,(if sep-body
+ `(UNLESS (EQL ,identifier LIST-END)
+ ,sep-body)))))
+ ,(when close-body close-body)))
+;; line 162 "markup.nw"
+#|
+(macroexpand '(markup-list '(1 2 3) :identifier FOO
+ :open-body (print "open")
+ :close-body (print "close")
+ :elt-body (print FOO)
+ :sep-body (print ",")))
+
+expands to
+
+(PROGN (PRINT "open")
+ (LET ((LIST-END (CAR (LAST '(1 2 3)))))
+ (DO ((SLIST '(1 2 3) (CDR SLIST))) ((ENDP SLIST))
+ (LET ((FOO (CAR SLIST))) (PRINT FOO)
+ (UNLESS (EQL FOO LIST-END) (PRINT ","))
+ ) ) )
+ (PRINT "close")
+) ;
+T
+|#
+;; line 193 "markup.nw"
+(defmacro define-list-environment-methods (name
+ signature
+ &key open close sep declare body)
+ (let ((name (stringify name)))
+ `(EVAL-WHEN (COMPILE LOAD EVAL)
+ (HANDLER-BIND ((WARNING #'MUFFLE-WARNING))
+ (CL:DEFMETHOD
+ ,(intern (string-upcase (concatenate 'string name "-open"))
+ 'markup)
+ ,signature ,@declare ,@open ,@body)
+ (CL:DEFMETHOD
+ ,(intern (string-upcase (concatenate 'string name "-close"))
+ 'markup)
+ ,signature ,@declare ,@close ,@body)
+ (CL:DEFMETHOD
+ ,(intern (string-upcase (concatenate 'string name "-sep"))
+ 'markup)
+ ,signature ,@declare ,@sep ,@body)))))
+;; line 214 "markup.nw"
+(defmacro define-environment-methods (name
+ signature
+ &key open close declare body)
+ (let ((name (stringify name)))
+ `(EVAL-WHEN (COMPILE LOAD EVAL)
+ (HANDLER-BIND ((WARNING #'MUFFLE-WARNING))
+ (CL:DEFMETHOD
+ ,(intern (string-upcase (concatenate 'string name "-open"))
+ 'markup)
+ ,signature ,@declare ,@open ,@body)
+ (CL:DEFMETHOD
+ ,(intern (string-upcase (concatenate 'string name "-close"))
+ 'markup)
+ ,signature ,@declare ,@close ,@body)))))
+
+(defmacro define-method (name
+ signature
+ &key declare body)
+ (let ((name (stringify name)))
+ `(EVAL-WHEN (COMPILE LOAD EVAL)
+ (HANDLER-BIND ((WARNING #'MUFFLE-WARNING))
+ (CL:DEFMETHOD
+ ,(intern (string-upcase name) 'markup)
+ ,signature ,@declare ,@body)))))
+;; line 326 "markup.nw"
+(defmethod do-markup-index ((idx base-index))
+ (setq *current-number* 0)
+ (setq *markup-percentage-list* index:*percentage-list*)
+ (do-markup-index-open idx)
+ (do-markup-list (get-entries idx)
+ :identifier LETTER-GRP
+ :open-body (do-markup-letter-group-list-open)
+ :elt-body (do-markup-letter-group LETTER-GRP)
+ :sep-body (do-markup-letter-group-list-sep)
+ :close-body (do-markup-letter-group-list-close))
+ (index:print-rest-of-percentages *markup-percentage-list*)
+ (do-markup-index-close idx))
+
+(define-environment-methods do-markup-index ((idx base-index))
+ :open ((do-markup-default "INDEX:OPEN")
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "INDEX:CLOSE")))
+;; line 351 "markup.nw"
+(defmacro markup-index (&whole whole &rest args)
+ (destructuring-switch-bind (&key
+ open close hierdepth
+ &switch
+ tree flat)
+ args
+ (let (hierdepth-cmd)
+ (when (or hierdepth tree flat)
+ (cond
+ ((and tree flat)
+ (error "you can't specify :tree and :flat simultaneously in ~%~S~%"
+ whole))
+ ((and hierdepth (or tree flat))
+ (error "you can't specify :hierdepth with :tree or :flat simultaneously in ~%~S~%"
+ whole))
+ (flat (setq hierdepth-cmd
+ `(SET-HIERDEPTH 0 *INDEX*)));; no tree-structure
+ ;; MOST-POSITIVE-FIXNUM means make all trees
+ (tree (setq hierdepth-cmd
+ `(SET-HIERDEPTH MOST-POSITIVE-FIXNUM *INDEX*)))
+ (hierdepth
+ (when (not (numberp hierdepth))
+ (error "~S is not a number in ~S~%" whole))
+ (setq hierdepth-cmd
+ `(SET-HIERDEPTH ,hierdepth *INDEX*))))
+ `(LET ()
+ (markup::define-environment-methods
+ DO-MARKUP-INDEX ((idx index:base-index))
+ :declare ((declare (ignore idx)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close))))
+ ,hierdepth-cmd)))))
+;; line 390 "markup.nw"
+(define-list-environment-methods do-markup-letter-group-list ()
+ :open ((do-markup-default "LETTER-GROUP-LIST:OPEN")
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LETTER-GROUP-LIST:CLOSE"))
+ :sep ((do-markup-default "LETTER-GROUP-LIST:SEP")))
+;; line 409 "markup.nw"
+(defmethod do-markup-letter-group ((letter-grp letter-group))
+ (let ((group-definition (get-group-definition letter-grp)))
+ (do-markup-letter-group-open group-definition)
+ (do-markup-letter-group-head-open group-definition)
+ (do-markup-letter-group-head group-definition)
+ (do-markup-letter-group-head-close group-definition)
+ (do-markup-list (get-members letter-grp)
+ :identifier IDXENT #| the identifier to use in the expansion |#
+ :open-body (do-markup-indexentry-list-open 0
+ #|initial depth:=0|#)
+ :elt-body (do-markup-indexentry IDXENT 0)
+ :sep-body (do-markup-indexentry-list-sep 0)
+ :close-body (do-markup-indexentry-list-close 0))
+ (do-markup-letter-group-close group-definition)))
+
+(define-environment-methods do-markup-letter-group
+ ((group letter-group-definition))
+ :open ((do-markup-default "LETTER-GROUP:OPEN" (get-name group))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LETTER-GROUP:CLOSE" (get-name group))))
+
+(define-environment-methods do-markup-letter-group-head
+ ((group letter-group-definition))
+ :open ((do-markup-default "LETTER-GROUP-HEAD:OPEN" (get-name group))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LETTER-GROUP-HEAD:CLOSE" (get-name group))))
+
+(define-method do-markup-letter-group-head ((group letter-group-definition))
+ :body ((do-markup-default "LETTER-GROUP-HEAD" (get-name group))))
+;; line 503 "markup.nw"
+(define-list-environment-methods do-markup-indexentry-list ((depth number))
+ :open ((do-markup-default "INDEXENTRY-LIST:OPEN" depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "INDEXENTRY-LIST:CLOSE" depth))
+ :sep ((do-markup-default "INDEXENTRY-LIST:SEP" depth)))
+;; line 525 "markup.nw"
+(defmethod do-markup-indexentry ((idxent index-entry)
+ (depth number))
+ (when (>= (incf *current-number*) (caar *markup-percentage-list*))
+ (index:print-percent (pop *markup-percentage-list*)))
+
+ (do-markup-indexentry-open depth)
+
+ (let ((print-key (get-print-key idxent)))
+ (do-markup-list (merge-print-and-main-key print-key (get-main-key idxent))
+ :identifier KEYWORD
+ :open-body (do-markup-keyword-list-open depth)
+ :elt-body (do-markup-keyword KEYWORD depth)
+ :sep-body (do-markup-keyword-list-sep depth)
+ :close-body (do-markup-keyword-list-close depth)))
+
+ (let ((locrefs (get-locrefs idxent)))
+ (unless (endp locrefs)
+ (do-markup-list locrefs
+ :identifier LOCCLS-GRP
+ :open-body (do-markup-locclass-list-open)
+ :elt-body (do-markup-locclass LOCCLS-GRP)
+ :sep-body (do-markup-locclass-list-sep)
+ :close-body (do-markup-locclass-list-close))))
+
+ (let ((subentries (get-subentries idxent)))
+ (unless (endp subentries)
+ (let ((new-depth (1+ depth)))
+ (do-markup-list subentries
+ :identifier IDXENT
+ :open-body (do-markup-indexentry-list-open new-depth)
+ :elt-body (do-markup-indexentry IDXENT new-depth)
+ :sep-body (do-markup-indexentry-list-sep new-depth)
+ :close-body (do-markup-indexentry-list-close new-depth)))))
+
+ (do-markup-indexentry-close depth))
+
+(defun merge-print-and-main-key (print-key main-key)
+ ;;(info "~&(merge-print-and-main-key ~S ~S)" print-key main-key)
+ (if print-key
+ (mapcar #'(lambda (print main)
+ (or print main))
+ print-key main-key)
+ main-key))
+;; line 571 "markup.nw"
+(define-environment-methods do-markup-indexentry ((depth number))
+ :open ((do-markup-default "INDEXENTRY:OPEN" depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "INDEXENTRY:CLOSE" depth)))
+;; line 595 "markup.nw"
+(define-list-environment-methods do-markup-keyword-list ((depth number))
+ :open ((do-markup-default "KEYWORD-LIST:OPEN" depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "KEYWORD-LIST:CLOSE" depth))
+ :sep ((do-markup-default "KEYWORD-LIST:SEP" depth)))
+;; line 617 "markup.nw"
+(defmethod do-markup-keyword (keyword (depth number))
+ (do-markup-keyword-open depth)
+ (do-markup-string keyword)
+ (do-markup-keyword-close depth))
+;; line 624 "markup.nw"
+(define-environment-methods do-markup-keyword ((depth number))
+ :open ((do-markup-default "KEYWORD:OPEN" depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "KEYWORD:CLOSE" depth)))
+;; line 654 "markup.nw"
+(define-list-environment-methods do-markup-locclass-list ()
+ :open ((do-markup-default "LOCCLASS-LIST:OPEN")
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCCLASS-LIST:CLOSE"))
+ :sep ((do-markup-default "LOCCLASS-LIST:SEP")))
+;; line 677 "markup.nw"
+(defmethod do-markup-locclass ((locref-cls-grp locref-class-group))
+ (let ((locclass (get-locclass locref-cls-grp)))
+ (do-markup-locref-class-open locclass)
+
+ (do-markup-list (get-members locref-cls-grp)
+ :identifier ATTRIBUTE-GRP
+ :open-body (do-markup-attribute-group-list-open)
+ :elt-body (do-markup-attribute-group ATTRIBUTE-GRP locclass)
+ :sep-body (do-markup-attribute-group-list-sep)
+ :close-body (do-markup-attribute-group-list-close))
+
+ (do-markup-locref-class-close locclass)))
+
+(define-environment-methods do-markup-locref-class
+ ((locrefcls layered-location-class))
+ :open ((do-markup-default "LOCREF-CLASS:OPEN" (get-name locrefcls))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCREF-CLASS:CLOSE" (get-name locrefcls))))
+;; line 1044 "markup.nw"
+(defmethod do-markup-locclass ((xref-cls-grp crossref-class-group))
+ (let ((xrefclass (get-locclass xref-cls-grp)))
+
+ (do-markup-list (get-members xref-cls-grp)
+ :identifier XREF
+ :open-body (do-markup-crossref-list-open xrefclass)
+ :elt-body (do-markup-crossref XREF)
+ :sep-body (do-markup-crossref-list-sep xrefclass)
+ :close-body (do-markup-crossref-list-close xrefclass))))
+
+(define-list-environment-methods do-markup-crossref-list
+ ((xrefclass crossref-location-class))
+ :open ((do-markup-default "CROSSREF-LIST:OPEN" (get-name xrefclass))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "CROSSREF-LIST:CLOSE" (get-name xrefclass)))
+ :sep ((do-markup-default "CROSSREF-LIST:SEP" (get-name xrefclass))))
+;; line 1080 "markup.nw"
+(defmethod do-markup-crossref ((xref crossref-location-reference))
+ (let ((xrefclass (get-locclass xref)))
+
+ (do-markup-list (get-target xref)
+ :identifier XREF-LAYER
+ :open-body (do-markup-crossref-layer-list-open xrefclass)
+ :elt-body (do-markup-crossref-layer XREF-LAYER xrefclass)
+ :sep-body (do-markup-crossref-layer-list-sep xrefclass)
+ :close-body (do-markup-crossref-layer-list-close xrefclass))))
+
+(define-list-environment-methods do-markup-crossref-layer-list
+ ((xref-class crossref-location-class))
+ :open ((do-markup-default "CROSSREF-LAYER-LIST:OPEN"
+ (get-name xref-class))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "CROSSREF-LAYER-LIST:CLOSE"
+ (get-name xref-class)))
+ :sep ((do-markup-default "CROSSREF-LAYER-LIST:SEP"
+ (get-name xref-class))))
+;; line 1119 "markup.nw"
+(defmethod do-markup-crossref-layer (xref-layer
+ (xref-class crossref-location-class))
+ (do-markup-crossref-layer-open xref-class)
+ (do-markup-string xref-layer)
+ (do-markup-crossref-layer-close xref-class))
+
+(define-environment-methods do-markup-crossref-layer
+ ((xref-class crossref-location-class))
+ :open ((do-markup-default "CROSSREF-LAYER:OPEN" (get-name xref-class))
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "CROSSREF-LAYER:CLOSE" (get-name xref-class))))
+;; line 718 "markup.nw"
+(define-list-environment-methods do-markup-attribute-group-list ()
+ :open ((do-markup-default "ATTRIBUTE-GROUP-LIST:OPEN")
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "ATTRIBUTE-GROUP-LIST:CLOSE"))
+ :sep ((do-markup-default "ATTRIBUTE-GROUP-LIST:SEP")))
+;; line 737 "markup.nw"
+(defmethod do-markup-attribute-group ((attribute-group category-attribute-group)
+ (loccls layered-location-class))
+ (let ((ordnum (get-ordnum attribute-group)))
+ (do-markup-attribute-group-open ordnum)
+
+ (do-markup-list (get-members attribute-group)
+ :identifier LOCREF
+ :open-body (do-markup-locref-list-open loccls 0)
+ :elt-body (do-markup-locref LOCREF loccls 0)
+ :sep-body (do-markup-locref-list-sep loccls 0)
+ :close-body (do-markup-locref-list-close loccls 0))
+
+ (do-markup-attribute-group-close ordnum)))
+
+(define-environment-methods do-markup-attribute-group ((ordnum number))
+ :open ((do-markup-default "ATTRIBUTE-GROUP:OPEN" ordnum)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "ATTRIBUTE-GROUP:CLOSE" ordnum)))
+;; line 776 "markup.nw"
+(define-list-environment-methods do-markup-locref-list
+ ((loccls layered-location-class) (depth number))
+ :open ((do-markup-default "LOCREF-LIST:OPEN" (get-name loccls) depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCREF-LIST:CLOSE" (get-name loccls) depth))
+ :sep ((do-markup-default "LOCREF-LIST:SEP" (get-name loccls) depth)))
+;; line 808 "markup.nw"
+(defmethod do-markup-locref ((locref location-reference)
+ (loccls layered-location-class)
+ (depth number))
+ #+ASSERT! (assert! (and (typep locref 'layered-location-reference)
+ (typep depth 'number)))
+ (let ((attr (get-catattr locref))
+ (subrefs (get-subrefs locref))
+ (new-depth (1+ depth)))
+
+ (do-markup-locref-open attr loccls depth)
+
+ (cond
+ (subrefs
+ (let ((layer 0))
+ (do-markup-list (get-layers locref)
+ :identifier LOCREF-LAYER
+ :open-body (do-markup-locref-layer-list-open loccls depth)
+ :elt-body (do-markup-locref-layer LOCREF-LAYER loccls depth
+ (prog1 layer
+ (incf layer)))
+ :sep-body (do-markup-locref-layer-list-sep loccls depth)
+ :close-body (do-markup-locref-layer-list-close loccls depth)))
+
+ (do-markup-list subrefs
+ :identifier LOCREF
+ :open-body (do-markup-locref-list-open loccls new-depth)
+ :elt-body (do-markup-locref LOCREF loccls new-depth)
+ :sep-body (do-markup-locref-list-sep loccls new-depth)
+ :close-body (do-markup-locref-list-close loccls new-depth)))
+
+ ((= 0 depth)
+ (do-markup-string (get-locref-string locref)))
+
+ (t (let ((layer 0))
+ (do-markup-list (get-layers locref)
+ :identifier LOCREF-LAYER
+ :open-body (do-markup-locref-layer-list-open loccls depth)
+ :elt-body (do-markup-locref-layer LOCREF-LAYER loccls depth
+ (prog1 layer
+ (incf layer)))
+ :sep-body (do-markup-locref-layer-list-sep loccls depth)
+ :close-body (do-markup-locref-layer-list-close loccls depth)))))
+
+ (do-markup-locref-close attr loccls depth)))
+;; line 855 "markup.nw"
+(define-list-environment-methods do-markup-locref-layer-list
+ ((loccls layered-location-class) (depth number))
+ :open ((do-markup-default "LOCREF-LAYER-LIST:OPEN" (get-name loccls) depth)
+ (do-markup-indent))
+ :sep ((do-markup-default "LOCREF-LAYER-LIST:SEP" (get-name loccls) depth))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCREF-LAYER-LIST:CLOSE" (get-name loccls) depth)))
+;; line 883 "markup.nw"
+(defun do-markup-locref-layer (locref-layer loccls depth layer)
+ (do-markup-locref-layer-open loccls depth layer)
+ (do-markup-string locref-layer)
+ (do-markup-locref-layer-close loccls depth layer))
+
+(define-environment-methods do-markup-locref-layer
+ ((locref-class layered-location-class) (depth number) (layer number))
+ :open ((do-markup-default "LOCREF-LAYER:OPEN"
+ (get-name locref-class) depth layer)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCREF-LAYER:CLOSE"
+ (get-name locref-class) depth layer)))
+;; line 918 "markup.nw"
+(define-environment-methods do-markup-locref ((attr category-attribute)
+ (loccls layered-location-class)
+ (depth number))
+ :open ((do-markup-default "LOCREF:OPEN"
+ (get-name attr) (get-name loccls) depth)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "LOCREF:CLOSE"
+ (get-name attr) (get-name loccls) depth)))
+;; line 955 "markup.nw"
+(defmethod do-markup-locref ((range location-range)
+ (loccls layered-location-class)
+ (depth number))
+ (let ((length (get-length range)))
+ (do-markup-range-open loccls length)
+ (do-markup-locref (get-first range) loccls depth)
+ (do-markup-range-sep loccls length)
+ (when (markup-range-print-end-p loccls length)
+ (do-markup-locref (get-last range) loccls depth))
+ (do-markup-range-close loccls length)))
+
+(define-list-environment-methods do-markup-range
+ ((loccls layered-location-class) (length number))
+ :open ((do-markup-default "RANGE:OPEN" (get-name loccls) length)
+ (do-markup-indent))
+ :close ((do-markup-outdent)
+ (do-markup-default "RANGE:CLOSE" (get-name loccls) length))
+ :sep ((do-markup-default "RANGE:SEP" (get-name loccls) length)))
+
+(defmethod markup-range-print-end-p ((loccls layered-location-class)
+ (length number))
+ t)
+;; line 304 "markup.nw"
+(defmacro markup-trace (&rest args)
+ (destructuring-switch-bind (&key
+ (open *markup-verbose-open*)
+ (close *markup-verbose-close*)
+ &switch
+ on)
+ args
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 312 "markup.nw"
+ (t `(LET ()
+ (SETQ *markup-verbose-open* ,open)
+ (SETQ *markup-verbose-close* ,close)
+ ,(when on `(SETQ *markup-verbose-mode* t)))))))
+;; line 399 "markup.nw"
+(defmacro markup-letter-group-list (&key open close sep)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 401 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-LETTER-GROUP-LIST ()
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 443 "markup.nw"
+(defmacro markup-letter-group (&whole whole &rest args)
+ (destructuring-switch-bind (&key
+ open close group
+ open-head close-head
+ &switch
+ upcase downcase capitalize)
+ args
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 451 "markup.nw"
+
+;; line 252 "markup.nw"
+((and open-head (not (stringp open-head)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open-head))
+((and close-head (not (stringp close-head)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close-head))
+;; line 452 "markup.nw"
+
+;; line 275 "markup.nw"
+((and group (progn
+ (setq group (stringify group))
+ (not (lookup-letter-group-definition *indexstyle* group))))
+ (nraw "parameter `~S' is not a valid letter-group! (ignored)~%" group))
+;; line 453 "markup.nw"
+ ((or (and upcase downcase)
+ (and upcase capitalize)
+ (and downcase capitalize))
+ (error "more than one modifier in~%~S" whole))
+ (t `(LET ()
+ (markup::define-environment-methods
+ DO-MARKUP-LETTER-GROUP
+ (,(if group
+ `(lg-def (EQL ',(lookup-letter-group-definition
+ *indexstyle* group)))
+ '(lg-def letter-group-definition)))
+ :declare ((declare (ignore lg-def)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close))))
+ (markup::define-environment-methods
+ DO-MARKUP-LETTER-GROUP-HEAD
+ (,(if group
+ `(lg-def (EQL ',(lookup-letter-group-definition
+ *indexstyle* group)))
+ '(lg-def letter-group-definition)))
+ :declare ((declare (ignore lg-def)))
+ :open ,(when open-head `((do-markup-string ,open-head)))
+ :close ,(when close-head `((do-markup-string ,close-head))))
+ ,(when (or open-head close-head)
+ `(markup::define-method
+ DO-MARKUP-LETTER-GROUP-HEAD
+ (,(if group
+ `(lg-def (EQL ',(lookup-letter-group-definition
+ *indexstyle* group)))
+ '(lg-def letter-group-definition)))
+ :body ((do-markup-string
+ ,(cond (upcase `(string-upcase
+ (get-name lg-def)))
+ (downcase `(string-downcase
+ (get-name lg-def)))
+ (capitalize `(string-capitalize
+ (get-name lg-def)))
+ (t `(get-name lg-def))))))))))))
+;; line 512 "markup.nw"
+(defmacro markup-indexentry-list (&key open close sep depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 514 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 515 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-INDEXENTRY-LIST
+ (,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 579 "markup.nw"
+(defmacro markup-indexentry (&key open close depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 581 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 582 "markup.nw"
+ (t `(markup::define-environment-methods
+ DO-MARKUP-INDEXENTRY
+ (,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 604 "markup.nw"
+(defmacro markup-keyword-list (&key open close sep depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 606 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 607 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-KEYWORD-LIST
+ (,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 632 "markup.nw"
+(defmacro markup-keyword (&key open close depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 634 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 635 "markup.nw"
+ (t `(markup::define-environment-methods
+ DO-MARKUP-KEYWORD
+ (,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 663 "markup.nw"
+(defmacro markup-locclass-list (&key open close sep)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 665 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-LOCCLASS-LIST ()
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 699 "markup.nw"
+(defmacro markup-locref-class (&key open close class)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 701 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 702 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-LOCREF-CLASS
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class)))
+ :declare ((declare (ignore locrefcls)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 727 "markup.nw"
+(defmacro markup-attribute-group-list (&key open close sep)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 729 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-ATTRIBUTE-GROUP-LIST ()
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 759 "markup.nw"
+(defmacro markup-attribute-group (&key open close group)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 761 "markup.nw"
+
+;; line 275 "markup.nw"
+((and group (progn
+ (setq group (stringify group))
+ (not (lookup-letter-group-definition *indexstyle* group))))
+ (nraw "parameter `~S' is not a valid letter-group! (ignored)~%" group))
+;; line 762 "markup.nw"
+ (t `(markup::define-environment-methods
+ DO-MARKUP-ATTRIBUTE-GROUP
+ (,(if group
+ `(ordnum (EQL ,group))
+ '(ordnum number)))
+ :declare ((declare (ignore ordnum)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 786 "markup.nw"
+(defmacro markup-locref-list (&key open close sep class depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 788 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 789 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 790 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-LOCREF-LIST
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore locrefcls depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 865 "markup.nw"
+(defmacro markup-locref-layer-list (&key open close sep class depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 867 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 868 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 869 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-LOCREF-LAYER-LIST
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore locrefcls depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 899 "markup.nw"
+(defmacro markup-locref-layer (&key class open close depth layer)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 901 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 902 "markup.nw"
+
+;; line 270 "markup.nw"
+((and layer (not (integerp layer)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" layer))
+;; line 903 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 904 "markup.nw"
+ (t `(markup::define-environment-methods
+ DO-MARKUP-LOCREF-LAYER
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if depth `(depth (EQL ,depth)) '(depth number))
+ ,(if layer `(layer (EQL ,layer)) '(layer number)))
+ :declare ((declare (ignore depth layer)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 930 "markup.nw"
+(defmacro markup-locref (&key open close class attr depth)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 932 "markup.nw"
+
+;; line 294 "markup.nw"
+((and attr (progn (setq attr (stringify attr))
+ (not (lookup-catattr *indexstyle* attr))))
+ (nraw "parameter `~S' is not an attribute! (ignored)~%" attr))
+;; line 933 "markup.nw"
+
+;; line 265 "markup.nw"
+((and depth (not (integerp depth)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" depth))
+;; line 934 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 935 "markup.nw"
+ (t `(markup::define-environment-methods
+ DO-MARKUP-LOCREF
+ (,(if attr
+ `(attr (EQL ',(lookup-catattr *indexstyle* attr)))
+ '(attr category-attribute))
+ ,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if depth `(depth (EQL ,depth)) '(depth number)))
+ :declare ((declare (ignore attr locrefcls depth)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 1002 "markup.nw"
+(defmacro markup-range (&whole whole &rest args)
+ (destructuring-switch-bind (&key
+ open close sep class length
+ &switch ignore-end)
+ args
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 1008 "markup.nw"
+
+;; line 282 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-locref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a location-reference class! (ignored)~%" class))
+;; line 1009 "markup.nw"
+ ((and length (not (numberp length)))
+ (nraw "parameter `~S' is not a number! (ignored)~%" length))
+ (t `(let ()
+ (markup::define-list-environment-methods
+ DO-MARKUP-RANGE
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if length
+ `(length (EQL ,length))
+ '(length number)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep))))
+ (define-method markup::MARKUP-RANGE-PRINT-END-P
+ (,(if class
+ `(locrefcls (EQL ',(cdr (lookup-locref-class
+ *indexstyle* class))))
+ '(locrefcls layered-location-class))
+ ,(if length
+ `(length (EQL ,length))
+ '(length number)))
+ :declare ((declare (ignore locrefcls length)))
+ :body (,(not ignore-end))))))))
+;; line 1064 "markup.nw"
+(defmacro markup-crossref-list (&key open sep close class)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 1066 "markup.nw"
+
+;; line 288 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-crossref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a cross-reference class! (ignored)~%" class))
+;; line 1067 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-CROSSREF-LIST
+ (,(if class
+ `(xrefcls (EQL ',(cdr (lookup-crossref-class *indexstyle*
+ class))))
+ '(xrefcls crossref-location-class)))
+ :declare ((declare (ignore xrefcls)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 1103 "markup.nw"
+(defmacro markup-crossref-layer-list (&key open sep close class)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 260 "markup.nw"
+((and sep (not (stringp sep)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" sep))
+;; line 1105 "markup.nw"
+
+;; line 288 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-crossref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a cross-reference class! (ignored)~%" class))
+;; line 1106 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-CROSSREF-LAYER-LIST
+ (,(if class
+ `(xrefcls (EQL ',(cdr (lookup-crossref-class *indexstyle*
+ class))))
+ '(xrefcls crossref-location-class)))
+ :declare ((declare (ignore xrefcls)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))
+ :sep ,(when sep `((do-markup-string ,sep)))))))
+;; line 1134 "markup.nw"
+(defmacro markup-crossref-layer (&key open close class)
+ (cond
+;; line 245 "markup.nw"
+((and open (not (stringp open)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" open))
+((and close (not (stringp close)))
+ (nraw "parameter `~S' is not a string! (ignored)~%" close))
+;; line 1136 "markup.nw"
+
+;; line 288 "markup.nw"
+((and class (progn (setq class (stringify class))
+ (not (lookup-crossref-class *indexstyle* class))))
+ (nraw "parameter `~S' is not a cross-reference class! (ignored)~%" class))
+;; line 1137 "markup.nw"
+ (t `(markup::define-list-environment-methods
+ DO-MARKUP-CROSSREF-LAYER
+ (,(if class
+ `(xrefcls (EQL ',(cdr (lookup-crossref-class *indexstyle*
+ class))))
+ '(xrefcls crossref-location-class)))
+ :declare ((declare (ignore xrefcls)))
+ :open ,(when open `((do-markup-string ,open)))
+ :close ,(when close `((do-markup-string ,close)))))))
+;; line 1188 "markup.nw"
+(eval-when (compile load eval)
+ (defparameter *markup-user-interface-definitions*
+ '(*markup-verbose-mode*
+ *markup-verbose-open*
+ *markup-verbose-close*
+ markup-crossref-layer
+ markup-crossref-layer-list
+ markup-crossref-list
+ markup-index
+ markup-letter-group
+ markup-letter-group-list
+ markup-indexentry
+ markup-indexentry-list
+ markup-keyword
+ markup-keyword-list
+ markup-locclass-list
+ markup-locref-class
+ markup-attribute-group-list
+ markup-attribute-group
+ markup-locref-list
+ markup-locref
+ markup-locref-layer-list
+ markup-locref-layer
+ markup-range
+ markup-trace
+ )))
+
+;; line 1238 "markup.nw"
+(eval-when (compile load eval)
+
+;; line 89 "markup.nw"
+(export '(*markup-output-stream*
+ *markup-verbose-mode*
+ *markup-verbose-open*
+ *markup-verbose-close*
+ *indexstyle-readtable*))
+;; line 347 "markup.nw"
+(export '(do-markup-index))
+;; line 1217 "markup.nw"
+(export '*markup-user-interface-definitions*)
+(export *markup-user-interface-definitions*)
+;; line 1240 "markup.nw"
+ )
+
+;; line 1178 "markup.nw"
+(defvar *RCS-Identifier* '(
+;; line 1244 "markup.nw"
+("markup" . "$Id: markup.nw,v 1.24 1997/03/26 16:18:58 kehr Exp $")
+;; line 236 "startup.nw"
+("startup" . "$Id: startup.nw,v 1.17 1997/03/26 16:19:03 kehr Exp $")
+;; line 1178 "markup.nw"
+ ))
+
+;; this should be the last of the module since it defines the
+;; additional package `xindy'.
+;; line 210 "startup.nw"
+;; $Id: startup.nw,v 1.17 1997/03/26 16:19:03 kehr Exp $
+
+(lisp:defpackage "XINDY")
+(lisp:in-package "XINDY")
+
+(eval-when (compile load eval)
+ (lisp:use-package "BASE")
+ (lisp:use-package :xindy-version)
+ (lisp:use-package "MARKUP")
+ (lisp:use-package "CLOS")
+ (lisp:use-package "COMMON-LISP")
+ #+CLISP (lisp:use-package "EXT")
+ (lisp:import markup:*markup-user-interface-definitions*))
+
+(eval-when (compile load eval)
+ (pushnew :HANDLER *features*))
+;; FIXME: error messages about package locks
+;(eval-when (compile load eval)
+; (pushnew :BREAK-DRIVER *features*))
+
+;; line 44 "startup.nw"
+(defun issue-startup-message ()
+ (info "xindy kernel version: ~A~%" *xindy-kernel-version*)
+ (info "xindy run time engine: ~A, version ~A~%"
+ *xindy-platform* xindy::*xindy-rte-version*)
+ (info "~A version ~A~% architecture: ~A~%"
+ (lisp-implementation-type) (lisp-implementation-version)
+ (machine-version))
+ )
+
+(defun startup (&key idxstyle rawindex output logfile
+ show-version markup-trace (trace-level 0))
+ (when show-version
+ (issue-startup-message)
+ (exit-normally))
+ (when markup-trace (setq *markup-verbose-mode* t))
+ #+:HANDLER
+ (handler-case
+ (do-startup idxstyle rawindex output logfile trace-level)
+ (error
+ (condition)
+ (oops* (simple-condition-format-string condition)
+ (simple-condition-format-arguments condition))
+ (error-exit)))
+ #-:HANDLER
+ (do-startup idxstyle rawindex output logfile trace-level))
+;; line 70 "startup.nw"
+(defun do-startup (idxstyle raw-index output logfile trace-level)
+ (set-searchpath-by-environment)
+ (setq custom:*default-file-encoding* charset:iso-8859-1
+ custom:*foreign-encoding* charset:iso-8859-1)
+ (when logfile
+ (info "~&Opening logfile ~S " logfile)
+ (handler-case
+ (setq *logging-stream* (open logfile
+ :direction :output
+ :if-does-not-exist :create
+ :if-exists :supersede))
+ (error ()
+ (oops "Opening logfile ~S failed!" logfile)
+ (error-exit)))
+ (info "(done)~%")
+ ;; Set necessary flags...
+ (setq *logging-on* t)
+ (case trace-level
+ (0)
+ (1 (setq *mappings-trace* t))
+ (2 (setq *mappings-trace* t) (setq *locref-trace* t))
+ (3 (setq *mappings-trace* t) (setq *locref-trace* t))
+ (t (error "Invalid :trace-level ~S !" trace-level)))
+ #+:ORDRULES (when *mappings-trace*
+ (setq ordrules::*message-logging* 1))
+
+ (multiple-value-bind (sec min hour day mon year)
+ (get-decoded-time)
+ (gol t ";; This logfile was generated automatically by `xindy'~%")
+ (gol t ";; at ~2,'0D.~2,'0D.~4,'0D ~2,'0D:~2,'0D:~2,'0D~%"
+ day mon year hour min sec))
+ (gol t ";; Indexstyle: ~S, Rawindex: ~S, Output: ~S~%~%"
+ idxstyle raw-index output)
+ )
+
+ (info "~&Reading indexstyle...~%")
+ (let ((*readtable* idxstyle:*indexstyle-readtable*))
+ (idxstyle:do-require idxstyle))
+ (info "~&Finished reading indexstyle.")
+ (info "~&Finalizing indexstyle... ")
+ (idxstyle:make-ready idxstyle:*indexstyle*)
+ (info "(done)~%~%")
+
+ (info "~&Reading raw-index ~S..." raw-index)
+ (load raw-index :verbose nil)
+ (info "~&Finished reading raw-index.~%~%")
+
+ (handler-case
+ (setq *markup-output-stream*
+ (open output
+ :direction :output
+ :if-does-not-exist :create
+ :if-exists :supersede))
+ (error ()
+ (oops "Opening file ~S failed!" output)
+ (error-exit)))
+
+ (info "~&Processing index...")
+ (index:process-index index:*index*)
+ (info "~&Finished processing index.~%~%")
+
+ (info "~&Writing markup...")
+ (markup:do-markup-index index:*index*)
+ (info "~%Markup written into file ~S.~%" output))
+;; line 139 "startup.nw"
+(defun set-searchpath-by-environment ()
+ (let ((sp (#+CLISP
+ system::getenv
+ #+ALLEGRO
+ sys:getenv
+ "XINDY_SEARCHPATH")))
+ (when sp (idxstyle:set-searchpath-by-string sp))))
+;; line 170 "startup.nw"
+#+:BREAK-DRIVER
+(fmakunbound '*break-driver*)
+
+#+:BREAK-DRIVER
+(defun *break-driver* (continuable
+ &optional (condition nil) (print-it nil)
+ &aux (may-continue
+ (or continuable
+ (and condition
+ (find-restart 'continue condition))
+ ) )
+ (interactive-p (interactive-stream-p *debug-io*))
+ (commandsr '())
+ )
+ (declare (ignore may-continue interactive-p commandsr))
+ ;; This when-clause is from Bruno Haible.
+ (when (and condition print-it)
+ (terpri *error-output*)
+ (write-string "*** - " *error-output*)
+ #+CLISP (system::print-condition condition *error-output*)
+ #-CLISP (print condition *error-output*)
+ )
+ (format *ERROR-OUTPUT* "~&Bye.")
+ (error-exit))
+
+#+:BREAK-DRIVER-OLD
+(defun *break-driver* (continuable &rest rest)
+ (declare (ignore continuable rest))
+ (format *ERROR-OUTPUT* "~&Bye.")
+ (error-exit))
+
+#+:BREAK-DRIVER
+(eval-when (compile load eval)
+ (export '*break-driver*))
+
+;; line 230 "startup.nw"
+(eval-when (compile load eval)
+
+;; line 135 "startup.nw"
+(export '(startup *xindy-core-version* *xindy-platform*))
+;; line 232 "startup.nw"
+ )
diff --git a/Build/source/utils/xindy/src/version.lsp b/Build/source/utils/xindy/src/version.lsp
new file mode 100644
index 00000000000..7148b65dfa6
--- /dev/null
+++ b/Build/source/utils/xindy/src/version.lsp
@@ -0,0 +1,11 @@
+;; $Id$ -*- Lisp -*-
+;; ------------------------------------------------------------
+;; version identification of xindy kernel
+;; src/version.lsp.
+
+(in-package :xindy-version)
+(lisp:provide "version")
+
+(export '*xindy-kernel-version*)
+
+(defparameter *xindy-kernel-version* "2.3")
diff --git a/Build/source/utils/xindy/tex2xindy/Makefile.am b/Build/source/utils/xindy/tex2xindy/Makefile.am
new file mode 100644
index 00000000000..5f890cf50a0
--- /dev/null
+++ b/Build/source/utils/xindy/tex2xindy/Makefile.am
@@ -0,0 +1,35 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+bin_PROGRAMS = tex2xindy
+
+tex2xindy_SOURCES = tex2xindy.l
+
+tex2xindy_LDADD = @LEXLIB@
+
+man_MANS = tex2xindy.1
+
+EXTRA_DIST = $(man_MANS)
+
+CLEANFILES = tex2xindy.c
+
+dist-hook:
+ rm -f $(distdir)/tex2xindy.c
diff --git a/Build/source/utils/xindy/tex2xindy/Makefile.in b/Build/source/utils/xindy/tex2xindy/Makefile.in
new file mode 100644
index 00000000000..3ab52625c5e
--- /dev/null
+++ b/Build/source/utils/xindy/tex2xindy/Makefile.in
@@ -0,0 +1,456 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+bin_PROGRAMS = tex2xindy$(EXEEXT)
+subdir = tex2xindy
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am tex2xindy.c
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"
+binPROGRAMS_INSTALL = $(INSTALL_PROGRAM)
+PROGRAMS = $(bin_PROGRAMS)
+am_tex2xindy_OBJECTS = tex2xindy.$(OBJEXT)
+tex2xindy_OBJECTS = $(am_tex2xindy_OBJECTS)
+tex2xindy_DEPENDENCIES =
+DEFAULT_INCLUDES = -I. -I$(srcdir)
+depcomp = $(SHELL) $(top_srcdir)/depcomp
+am__depfiles_maybe = depfiles
+COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
+ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
+CCLD = $(CC)
+LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@
+LEXCOMPILE = $(LEX) $(LFLAGS) $(AM_LFLAGS)
+SOURCES = $(tex2xindy_SOURCES)
+man1dir = $(mandir)/man1
+NROFF = nroff
+MANS = $(man_MANS)
+ETAGS = etags
+CTAGS = ctags
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+tex2xindy_SOURCES = tex2xindy.l
+tex2xindy_LDADD = @LEXLIB@
+man_MANS = tex2xindy.1
+EXTRA_DIST = $(man_MANS)
+CLEANFILES = tex2xindy.c
+all: all-am
+
+.SUFFIXES:
+.SUFFIXES: .c .l .o .obj
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign tex2xindy/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign tex2xindy/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-binPROGRAMS: $(bin_PROGRAMS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ p1=`echo $$p|sed 's/$(EXEEXT)$$//'`; \
+ if test -f $$p \
+ ; then \
+ f=`echo "$$p1" | sed 's,^.*/,,;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) '$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(INSTALL_PROGRAM_ENV) $(binPROGRAMS_INSTALL) "$$p" "$(DESTDIR)$(bindir)/$$f" || exit 1; \
+ else :; fi; \
+ done
+
+uninstall-binPROGRAMS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_PROGRAMS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's,^.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+
+clean-binPROGRAMS:
+ -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS)
+tex2xindy$(EXEEXT): $(tex2xindy_OBJECTS) $(tex2xindy_DEPENDENCIES)
+ @rm -f tex2xindy$(EXEEXT)
+ $(LINK) $(tex2xindy_LDFLAGS) $(tex2xindy_OBJECTS) $(tex2xindy_LDADD) $(LIBS)
+
+mostlyclean-compile:
+ -rm -f *.$(OBJEXT)
+
+distclean-compile:
+ -rm -f *.tab.c
+
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/tex2xindy.Po@am__quote@
+
+.c.o:
+@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ $<; \
+@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c $<
+
+.c.obj:
+@am__fastdepCC_TRUE@ if $(COMPILE) -MT $@ -MD -MP -MF "$(DEPDIR)/$*.Tpo" -c -o $@ `$(CYGPATH_W) '$<'`; \
+@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/$*.Tpo" "$(DEPDIR)/$*.Po"; else rm -f "$(DEPDIR)/$*.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'`
+
+.l.c:
+ $(LEXCOMPILE) $<
+ sed '/^#/ s|$(LEX_OUTPUT_ROOT)\.c|$@|' $(LEX_OUTPUT_ROOT).c >$@
+ rm -f $(LEX_OUTPUT_ROOT).c
+uninstall-info-am:
+install-man1: $(man1_MANS) $(man_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
+ rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+
+ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES)
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ mkid -fID $$unique
+tags: TAGS
+
+TAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \
+ test -n "$$unique" || unique=$$empty_fix; \
+ $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \
+ $$tags $$unique; \
+ fi
+ctags: CTAGS
+CTAGS: $(HEADERS) $(SOURCES) $(TAGS_DEPENDENCIES) \
+ $(TAGS_FILES) $(LISP)
+ tags=; \
+ here=`pwd`; \
+ list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \
+ unique=`for i in $$list; do \
+ if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \
+ done | \
+ $(AWK) ' { files[$$0] = 1; } \
+ END { for (i in files) print i; }'`; \
+ test -z "$(CTAGS_ARGS)$$tags$$unique" \
+ || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \
+ $$tags $$unique
+
+GTAGS:
+ here=`$(am__cd) $(top_builddir) && pwd` \
+ && cd $(top_srcdir) \
+ && gtags -i $(GTAGS_ARGS) $$here
+
+distclean-tags:
+ -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
+check-am: all-am
+check: check-am
+all-am: Makefile $(PROGRAMS) $(MANS)
+installdirs:
+ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+ -rm -f tex2xindy.c
+clean: clean-am
+
+clean-am: clean-binPROGRAMS clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+distclean-am: clean-am distclean-compile distclean-generic \
+ distclean-tags
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am: install-binPROGRAMS
+
+install-info: install-info-am
+
+install-man: install-man1
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -rf ./$(DEPDIR)
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-compile mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binPROGRAMS uninstall-info-am uninstall-man
+
+uninstall-man: uninstall-man1
+
+.PHONY: CTAGS GTAGS all all-am check check-am clean clean-binPROGRAMS \
+ clean-generic ctags distclean distclean-compile \
+ distclean-generic distclean-tags dvi dvi-am html html-am info \
+ info-am install install-am install-binPROGRAMS install-data \
+ install-data-am install-exec install-exec-am install-info \
+ install-info-am install-man install-man1 install-strip \
+ installcheck installcheck-am installdirs maintainer-clean \
+ maintainer-clean-generic mostlyclean mostlyclean-compile \
+ mostlyclean-generic pdf pdf-am ps ps-am tags uninstall \
+ uninstall-am uninstall-binPROGRAMS uninstall-info-am \
+ uninstall-man uninstall-man1
+
+
+dist-hook:
+ rm -f $(distdir)/tex2xindy.c
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/tex2xindy/tex2xindy.1 b/Build/source/utils/xindy/tex2xindy/tex2xindy.1
new file mode 100644
index 00000000000..b590eb4254a
--- /dev/null
+++ b/Build/source/utils/xindy/tex2xindy/tex2xindy.1
@@ -0,0 +1,206 @@
+.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. | will give a
+.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. nr % 0
+. rr F
+.\}
+.\"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.if n .na
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "TEX2XINDY.L 1"
+.TH TEX2XINDY.L 1 "2006-07-30" "Version 1.21" "xindy"
+.SH "NAME"
+tex2xindy \- a preprocessor of the xindy index processor
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 1
+\& tex2xindy [-o] [attr_file]
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBtex2xindy\fR transforms a LaTeX index file \f(CW\*(C`.idx\*(C'\fR (or an \f(CW\*(C`.aux\*(C'\fR
+file) into a \fBxindy\fR raw index file.
+.PP
+It is a filter that reads from \fIstdin\fR a file in the input format of
+LaTeX's raw index file, i.e., with \f(CW\*(C`\eindexentry\*(C'\fR tags. It outputs on
+\&\fIstdout\fR a \fBxindy\fR raw index file, i.e., with \f(CW\*(C`indexentry\*(C'\fR clauses.
+.PP
+If the option \fB\-o\fR is not specified, \fBtex2xindy\fR handles ^^\-notation
+of TeX and outputs the octet that is represented: \f(CW\*(C`^^ab\*(C'\fR in the input
+gets output as the octet 0xab. If \f(CW\*(C`^^^^abcd\*(C'\fR or \f(CW\*(C`^^^^^^^^abcdefab\*(C'\fR
+are detected, they are output as is.
+.PP
+If the option \fB\-o\fR is specified, \fBtex2xindy\fR operates in \fIOmega
+mode\fR and handles its ^^\-notation: Then \f(CW\*(C`^^ab\*(C'\fR, \f(CW\*(C`^^^^abcd\*(C'\fR, and
+\&\f(CW\*(C`^^^^^^^^abcdefab\*(C'\fR represent Unicode characters with code points
+0xab, 0xabcd, and 0xabcdefab respectively. They are output in \s-1UTF\-8\s0
+encoding.
+.PP
+If the optional argument \fIattr_file\fR is specified, \fBtex2xindy\fR
+writes all index key attributes into this file.
+.SH "DEFICITS"
+.IX Header "DEFICITS"
+This program was written since it was not easily possible to extract
+the parser from the old makeindex system. Therefore it does not find
+all errors in the input as the \fImakeindex\fR\|(1) version.
+.PP
+Additionally it uses only the default input specifiers of
+\&\fImakeindex\fR\|(1). If other input specifiers (cf. manual page of
+\&\fImakeindex\fR\|(1)) are needed, the input specifiers (starting from the
+pattern \f(CW\*(C`KEYWORD\*(C'\fR, see below) must be changed and the program must be
+recompiled.
+.PP
+The particular missing feature is configuration of the quote and the
+actual characters, maybe also the escape, subitem (level), and encap
+characters. Argument and range delimiters seem to be less of a problem.
+.PP
+In fact, input markup handling (and thus \fBtex2xindy\fR) should be
+incorporated into the \fBxindy\fR kernel, to be able to specify
+configuration in xindy style files.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fItexindy\fR\|(1),
+\&\fIxindy\fR\|(1),
+\&\fImakeindex\fR\|(1)
+.SH "AUTHOR"
+.IX Header "AUTHOR"
+Roger Kehr, Institut fuer Theoretische Informatik, \s-1TU\s0 Darmstadt
+.SH "COPYRIGHT AND LICENSE"
+.IX Header "COPYRIGHT AND LICENSE"
+Copyright (c) 1996,1997 Roger Kehr.
+Copyright (c) 2006 Joachim Schrod.
+.PP
+This program is free software; you can redistribute it and/or modify
+it under the terms of the \s-1GNU\s0 General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+.PP
+This program is distributed in the hope that it will be useful, but
+\&\s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of
+\&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the \s-1GNU\s0
+General Public License for more details.
+.PP
+You should have received a copy of the \s-1GNU\s0 General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 675 Mass Ave, Cambridge, \s-1MA\s0 02139, \s-1USA\s0.
diff --git a/Build/source/utils/xindy/tex2xindy/tex2xindy.l b/Build/source/utils/xindy/tex2xindy/tex2xindy.l
new file mode 100644
index 00000000000..8aef4cd6fc6
--- /dev/null
+++ b/Build/source/utils/xindy/tex2xindy/tex2xindy.l
@@ -0,0 +1,503 @@
+%{
+ /* $Id: tex2xindy.l,v 1.21 2006/07/30 09:44:04 jschrod Exp $
+ ============================================================
+ (history at end)
+
+=head1 NAME
+
+tex2xindy - a preprocessor of the xindy index processor
+
+=head1 SYNOPSIS
+
+ tex2xindy [-o] [attr_file]
+
+=head1 DESCRIPTION
+
+B<tex2xindy> transforms a LaTeX index file C<.idx> (or an C<.aux>
+file) into a B<xindy> raw index file.
+
+It is a filter that reads from F<stdin> a file in the input format of
+LaTeX's raw index file, i.e., with C<\indexentry> tags. It outputs on
+F<stdout> a B<xindy> raw index file, i.e., with C<indexentry> clauses.
+
+If the option B<-o> is not specified, B<tex2xindy> handles ^^-notation
+of TeX and outputs the octet that is represented: C<^^ab> in the input
+gets output as the octet 0xab. If C<^^^^abcd> or C<^^^^^^^^abcdefab>
+are detected, they are output as is.
+
+If the option B<-o> is specified, B<tex2xindy> operates in I<Omega
+mode> and handles its ^^-notation: Then C<^^ab>, C<^^^^abcd>, and
+C<^^^^^^^^abcdefab> represent Unicode characters with code points
+0xab, 0xabcd, and 0xabcdefab respectively. They are output in UTF-8
+encoding.
+
+If the optional argument F<attr_file> is specified, B<tex2xindy>
+writes all index key attributes into this file.
+
+
+=head1 DEFICITS
+
+This program was written since it was not easily possible to extract
+the parser from the old makeindex system. Therefore it does not find
+all errors in the input as the makeindex(1) version.
+
+Additionally it uses only the default input specifiers of
+makeindex(1). If other input specifiers (cf. manual page of
+makeindex(1)) are needed, the input specifiers (starting from the
+pattern C<KEYWORD>, see below) must be changed and the program must be
+recompiled.
+
+The particular missing feature is configuration of the quote and the
+actual characters, maybe also the escape, subitem (level), and encap
+characters. Argument and range delimiters seem to be less of a problem.
+
+In fact, input markup handling (and thus B<tex2xindy>) should be
+incorporated into the B<xindy> kernel, to be able to specify
+configuration in xindy style files.
+
+=head1 SEE ALSO
+
+texindy(1),
+xindy(1),
+makeindex(1)
+
+=head1 AUTHOR
+
+Roger Kehr, Institut fuer Theoretische Informatik, TU Darmstadt
+
+=head1 COPYRIGHT AND LICENSE
+
+Copyright (c) 1996,1997 Roger Kehr.
+Copyright (c) 2006 Joachim Schrod.
+
+This program is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2 of the License, or (at
+your option) any later version.
+
+This program is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program; if not, write to the Free Software
+Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+
+=cut
+
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <unistd.h>
+
+#define QUOTE_ECHO qs(yytext)
+
+FILE* attrfd = NULL;
+
+static int lineno = 1;
+static int braces = 0;
+static int xref_mode = 0;
+static int glos_mode = 0;
+static int errors = 0;
+static int omega_mode = 0;
+
+#define multiple_err \
+ { \
+ fprintf(stderr, "line %d: multiple %s's\n", lineno, yytext); \
+ errors++; \
+ }
+
+#define NO_RANGE 0
+#define OPEN_RANGE 1
+#define CLOSE_RANGE 2
+
+int range = NO_RANGE;
+
+/* This function quotes a character, if necessary. */
+
+void qc( char ch ) {
+ switch (ch) {
+ case '\\' :
+ case '"' :
+ putchar( '\\' );
+ break;
+ }
+ putchar(ch);
+}
+
+/* Quote an entire string. */
+
+void qs( char* str ) {
+ while ( *str ) {
+ qc( *str++ );
+ }
+}
+
+/*
+ Output an Omega character, ^^-notation in yytext, in UTF-8 encoding.
+ The parameter gets passed the amount of hex digits in the ^^-notation.
+ In front of the hex digits are the same amount of ^ chars.
+*/
+void omega_output_utf8 ( int width )
+{
+ unsigned long int c = strtoul (yytext+width, NULL, 16);
+ if (c < 0x80) {
+ putchar (c);
+ }
+ else if (c < 0x800) {
+ putchar (0xC0 | (c>>6));
+ putchar (0x80 | (c & 0x3F));
+ }
+ else if (c < 0x10000) {
+ putchar (0xE0 | (c>>12));
+ putchar (0x80 | (c>>6 & 0x3F));
+ putchar (0x80 | (c & 0x3F));
+ }
+ else if (c < 0x200000) {
+ putchar (0xF0 | (c>>18));
+ putchar (0x80 | (c>>12 & 0x3F));
+ putchar (0x80 | (c>>6 & 0x3F));
+ putchar (0x80 | (c & 0x3F));
+ }
+ else if (c < 0x4000000) {
+ putchar (0xF8 | (c>>24));
+ putchar (0x80 | (c>>18 & 0x3F));
+ putchar (0x80 | (c>>12 & 0x3F));
+ putchar (0x80 | (c>>6 & 0x3F));
+ putchar (0x80 | (c & 0x3F));
+ }
+ else if (c < 0x80000000) {
+ putchar (0xFC | (c>>30));
+ putchar (0x80 | (c>>24 & 0x3F));
+ putchar (0x80 | (c>>18 & 0x3F));
+ putchar (0x80 | (c>>12 & 0x3F));
+ putchar (0x80 | (c>>6 & 0x3F));
+ putchar (0x80 | (c & 0x3F));
+ }
+ else { /* out of range, output U+FFFD REPLACEMENT CHARACTER */
+ fputs("\xef\xbf\xbd",stdout);
+ fprintf (stderr, "line %d: character %#lx not in UTF-8 range\n",
+ lineno, c);
+ }
+}
+
+%}
+
+KEYWORD \\indexentry
+KEYWORDG \\glossaryentry
+ENCAP \|
+ACTUAL @
+ESCAPE \\
+LEVEL !
+IS :
+QUOTE \"
+ROPEN \(
+RCLOSE \)
+ARGOPEN \{
+ARGCLOSE \}
+
+HATHAT8BIT \^{2}[0-9a-fA-F]{2}
+HATHAT16BIT \^{4}[0-9a-fA-F]{4}
+HATHAT32BIT \^{8}[0-9a-fA-F]{8}
+
+%s key print skip2location location encap xref is skiplocation
+
+%%
+
+<INITIAL>{KEYWORD}[ \t]*{ARGOPEN} {
+ printf("(indexentry :tkey ((\"");
+ xref_mode = 0;
+ glos_mode = 0;
+ BEGIN(key);
+ }
+
+<INITIAL>{KEYWORDG}[ \t]*{ARGOPEN} {
+ printf("(indexentry :tkey ((\"");
+ xref_mode = 0;
+ glos_mode = 1;
+ BEGIN(key);
+ }
+
+{ESCAPE}{QUOTE} { QUOTE_ECHO; }
+{QUOTE}\n { qc(yytext[1]); lineno++; }
+{QUOTE}. { qc(yytext[1]); }
+<key,print>{ENCAP} {
+ printf("\")) :attr \"");
+ range = NO_RANGE;
+ BEGIN(encap);
+ }
+<key,print>{IS} {
+ if ( glos_mode ) {
+ printf("\")) :attr \"is\" :xref (\"");
+ range = NO_RANGE;
+ if (attrfd) fprintf(attrfd, "\txref\n");
+ BEGIN(is);
+ } else {
+ ECHO;
+ }
+ }
+<key>{LEVEL} { printf("\") (\""); }
+<print>{LEVEL} { printf("\") (\""); BEGIN(key); }
+<key,print>{ARGOPEN} { ECHO; braces++; }
+<key,print>{ARGCLOSE} {
+ if ( braces > 0 ) {
+ ECHO;
+ braces--;
+ } else {
+ printf("\"))");
+ BEGIN(skip2location);
+ }
+ }
+
+<key>{ACTUAL} { printf("\" \""); BEGIN(print); }
+<print>{ACTUAL} { multiple_err; }
+
+<encap>{ENCAP} { multiple_err; }
+<encap>{ROPEN} { range = OPEN_RANGE; }
+<encap>{RCLOSE} { range = CLOSE_RANGE; }
+<encap>{ARGOPEN} { /* close :attr "... */
+ printf("\" :xref (\"");
+ if (attrfd) fprintf(attrfd, "\txref\n");
+ braces++;
+ BEGIN(xref);
+ }
+<encap>{ARGCLOSE} {
+ if ( braces > 0 ) {
+ ECHO;
+ braces--;
+ } else {
+ putchar('"');
+ if (attrfd) fprintf(attrfd, "\tlocref\n");
+ switch (range) {
+ case OPEN_RANGE:
+ printf(" :open-range");
+ break;
+ case CLOSE_RANGE:
+ printf(" :close-range");
+ break;
+ }
+ BEGIN(skip2location);
+ }
+ }
+<encap>.|\n {
+ QUOTE_ECHO;
+ if (attrfd) fwrite(yytext, sizeof(char), 1, attrfd);
+ if (*yytext == '\n') lineno++;
+ }
+
+
+
+<xref>{LEVEL} { printf("\" \""); }
+<xref,is>{ARGOPEN} { ECHO; braces++; }
+<xref>{ARGCLOSE} {
+ if ( braces > 1 ) {
+ ECHO;
+ braces--;
+ } else if ( braces == 1 ) {
+ braces--;
+ } else {
+ printf("\")");
+ xref_mode = 1;
+ BEGIN(skip2location);
+ }
+ }
+<is>{ARGCLOSE} {
+ if ( braces > 0 ) {
+ ECHO;
+ braces--;
+ } else {
+ printf("\")");
+ xref_mode = 1;
+ BEGIN(skip2location);
+ }
+ }
+
+<skip2location>[ \t]*{ARGOPEN} {
+ if (xref_mode) {
+ BEGIN(skiplocation);
+ } else {
+ printf(" :locref \"");
+ BEGIN(location);
+ }
+ }
+<location>{ARGCLOSE} { printf("\")\n"); BEGIN(0); }
+
+<skiplocation>{ARGCLOSE} { printf(")\n"); BEGIN(0); }
+<skiplocation>. { ; }
+
+<key,print,xref,is,location>{HATHAT8BIT} {
+ if ( omega_mode ) {
+ omega_output_utf8(2);
+ } else {
+ unput( strtol(yytext+2, NULL, 16) );
+ }
+ }
+<key,print,xref,is,location>{HATHAT16BIT} {
+ if ( omega_mode ) {
+ omega_output_utf8(4);
+ } else {
+ ECHO;
+ }
+ }
+<key,print,xref,is,location>{HATHAT32BIT} {
+ if ( omega_mode ) {
+ omega_output_utf8(8);
+ } else {
+ ECHO;
+ }
+ }
+
+<key,print,xref,is,location>\n { ECHO; lineno++; }
+<key,print,xref,is,location>. { QUOTE_ECHO; }
+
+\n { lineno++; }
+[ \t] { ; }
+. {
+ fprintf(stderr,
+ "Encountered unexpected char '%c' on line %d\n",
+ yytext[0], lineno);
+ }
+
+%%
+
+void usage ()
+{
+ fputs("This is tex2xindy, $Revision: 1.21 $.\n", stderr);
+ fputs("usage: tex2xindy [-o] [attr_file]\n", stderr);
+ exit (1);
+}
+
+int
+main(int argc, char* argv[])
+{
+ int option;
+ extern char *optarg;
+ extern int optind, optopt;
+
+ while ( (option=getopt(argc, argv, ":o")) != -1 ) {
+ switch (option) {
+ case 'o':
+ omega_mode = 1;
+ break;
+ case '?':
+ default:
+ fprintf(stderr, "Unrecognized option: -%c\n", optopt);
+ usage();
+ /* NOTREACHED */
+ }
+ }
+
+ /* More than one argument left? */
+ if ( optind < argc - 1 ) usage();
+
+ /* attr_file specified? */
+ if ( optind == argc - 1 ) {
+ fprintf(stderr, "Writing attribute names to file \"%s\".\n",
+ argv[optind]);
+ if ( (attrfd = fopen(argv[optind], "w")) == NULL ) {
+ perror (argv[optind]);
+ exit (1);
+ }
+ }
+
+ yylex();
+ if (attrfd) fclose(attrfd);
+ return (errors > 0); /* 1 or 0 */
+}
+
+
+/* ============================================================
+
+ $Log: tex2xindy.l,v $
+ Revision 1.21 2006/07/30 09:44:04 jschrod
+ While quote is not output, escape+quote *is* output.
+
+ Revision 1.20 2006/07/18 21:40:45 jschrod
+ Add parenthesis as recommended by gcc -Wall.
+ Use ECHO instead of QUOTE_ECHO where quoting will not be needed.
+ Code cleanup: sanitize braces and indentation.
+
+ Revision 1.19 2006/07/18 21:26:34 jschrod
+ Add man page as POD to tex2xindy source.
+ Add support for ^^-notation, both in TeX and in new Omega mode.
+ Add usage message and proper option parsing.
+
+ Revision 1.18 2006/02/21 12:12:05 jschrod
+ Don't output escape or quote characters.
+
+ Revision 1.17 2006/02/21 02:05:00 jschrod
+ Quote really quotes the next char, now.
+
+ Revision 1.16 2005/06/27 20:49:06 jschrod
+ Keywords may be inmidst a line, as Jörg Sommer showed.
+ "." rule merging did not work for attributes, and for skiplocation.
+ Output error message if we come across chars outside our FSA.
+
+ Revision 1.15 2005/06/14 16:22:08 jschrod
+ Fold in changes from Thomas Henlich, as of 2000-02-14:
+ Paranoia fix: recognize KEYWORD only in INITIAL start condition.
+ Recognize \n and count lines (multiline entries do exist!).
+ Merged "." rules.
+ Fixed error messages (multiple ...).
+
+ Revision 1.14 2004/10/05 21:10:48 jschrod
+ Handles quote character correctly (bug ticket 1006128).
+ Test case: german-sty.
+
+ Revision 1.13 2002/01/29 13:32:58 thenlich
+ Fixed bug in crossref-to-subitem bugfix. The original one proposed by Roger Kehr
+ was right, only I copied it wrongly (shame on me). Thanks to Torsten Bronger
+ for pointing it out to me.
+
+ Revision 1.12 1999/10/13 08:06:44 kehr
+ Changed revision number message back to RCS-tag. No functional changes.
+
+ Revision 1.11 1999/10/13 08:05:10 kehr
+ Merged bugfix from Thomas Henlich with my own modifications.
+
+ 1.8 Fixed minor quoting bugs (for increased makeindex compatibility).
+ 1999-07-28 Thomas Henlich <henlich@mmers1.mw.tu-dresden.de>
+ Fixed crossref to subitem.
+ 1999-09-23 Thomas Henlich <henlich@mmers1.mw.tu-dresden.de>
+
+ 1.7 Fixed a bug concerning writing to and closing non-existing file (stat)
+ Fixed a bug concerning quoting the " character.
+ Enhancement for processing glossary files.
+ 1999-06-14 Thomas Henlich <henlich@mmers1.mw.tu-dresden.de>
+
+ Revision 1.10 1999/09/23 06:53:32 kehr
+ Fixed wrong raw index generation for cross-ref keywords.
+
+ Revision 1.9 1999/04/27 09:01:17 kehr
+ Defined a clean exit code as suggested by Klaus Guntermann
+ <guntermann@iti.informatik.tu-darmstadt.de>.
+
+ Revision 1.8 1999/04/27 08:57:48 kehr
+ Added quoting patch sent by Thomas Henlich <thenlich@Rcs1.urz.tu-dresden.de>
+
+ Revision 1.7 1999/04/27 08:56:59 kehr
+ Another checkin.
+
+ Revision 1.6 1997/02/13 14:42:50 kehr
+ Minor changes.
+
+ Revision 1.5 1997/01/21 16:44:36 kehr
+ Bugfix: State <print> was not changed back to <key> if {LEVEL} was found.
+
+ Revision 1.4 1997/01/17 16:30:37 kehr
+ Rewrote makeindex4 and heavily modified tex2xindy.
+
+ Revision 1.3 1996/07/19 17:15:18 kehr
+ Made this program comaptible with lex by correctly enclosing all
+ actions--stupid bug, 'cause lex didn't complain and flex did some
+ wonderful matching of all the actions such that no error was
+ discovered.
+
+ Revision 1.2 1996/07/11 14:16:55 kehr
+ Complete Major checkin before changing the letter-groups.
+
+ Revision 1.1 1996/06/24 08:53:57 kehr
+ Initial checkin of the Makefile, README and tex2xindy.
+*/
diff --git a/Build/source/utils/xindy/user-commands/Makefile.am b/Build/source/utils/xindy/user-commands/Makefile.am
new file mode 100644
index 00000000000..6623f2802a1
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/Makefile.am
@@ -0,0 +1,38 @@
+## Use `autoreconf' in top-level directory to recreate all
+## autoconf/automake files.
+## Or, call `automake Makefile' to create only Makefile.in.
+
+## Copyright (C) 2004-2005 by Gour.
+## Copyright (C) 2008 by Joachim Schrod.
+##
+## This program is free software; you can redistribute it and/or
+## modify it under the terms of the GNU General Public License as
+## published by the Free Software Foundation; either version 2 of the
+## License, or (at your option) any later version.
+##
+## This program is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with this program in the file COPYING; if not, write to the
+## Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+## Boston, MA 02110-1301 USA.
+
+bin_SCRIPTS = xindy xindy.v2
+
+xindy: xindy.in
+ sed -e 's:@libdir\@:$(libdir):' xindy.in >xindy
+
+xindy.v2: xindy.v2.in
+ sed -e 's:@XINDY_PERL\@:/usr/bin/perl:' xindy.v2.in >xindy.v2
+
+dist_bin_SCRIPTS = texindy
+
+man_MANS = texindy.1 xindy.1 xindy.v2.1
+
+EXTRA_DIST = $(man_MANS)
+
+CLEANFILES = xindy xindy.v2
+
diff --git a/Build/source/utils/xindy/user-commands/Makefile.in b/Build/source/utils/xindy/user-commands/Makefile.in
new file mode 100644
index 00000000000..296737ba60d
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/Makefile.in
@@ -0,0 +1,386 @@
+# Makefile.in generated by automake 1.9.6 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
+# 2003, 2004, 2005 Free Software Foundation, Inc.
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+
+srcdir = @srcdir@
+top_srcdir = @top_srcdir@
+VPATH = @srcdir@
+pkgdatadir = $(datadir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+top_builddir = ..
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+INSTALL = @INSTALL@
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+subdir = user-commands
+DIST_COMMON = $(srcdir)/Makefile.in $(srcdir)/Makefile.am \
+ $(dist_bin_SCRIPTS)
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/m4/ac_prog_latex.m4 \
+ $(top_srcdir)/m4/ac_prog_pdflatex.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+mkinstalldirs = $(install_sh) -d
+CONFIG_CLEAN_FILES =
+am__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" \
+ "$(DESTDIR)$(man1dir)"
+binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+dist_binSCRIPT_INSTALL = $(INSTALL_SCRIPT)
+SCRIPTS = $(bin_SCRIPTS) $(dist_bin_SCRIPTS)
+SOURCES =
+man1dir = $(mandir)/man1
+NROFF = nroff
+MANS = $(man_MANS)
+ACLOCAL = @ACLOCAL@
+AMDEP_FALSE = @AMDEP_FALSE@
+AMDEP_TRUE = @AMDEP_TRUE@
+AMTAR = @AMTAR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+BUILDDOCS_FALSE = @BUILDDOCS_FALSE@
+BUILDDOCS_TRUE = @BUILDDOCS_TRUE@
+BUILDRULES_FALSE = @BUILDRULES_FALSE@
+BUILDRULES_TRUE = @BUILDRULES_TRUE@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CLISP_DIR = @CLISP_DIR@
+CLISP_PATH = @CLISP_PATH@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CXX = @CXX@
+CXXDEPMODE = @CXXDEPMODE@
+CXXFLAGS = @CXXFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+EXT_CLISP_FALSE = @EXT_CLISP_FALSE@
+EXT_CLISP_TRUE = @EXT_CLISP_TRUE@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+LDFLAGS = @LDFLAGS@
+LEX = @LEX@
+LEXLIB = @LEXLIB@
+LEX_OUTPUT_ROOT = @LEX_OUTPUT_ROOT@
+LIBOBJS = @LIBOBJS@
+LIBS = @LIBS@
+LN_S = @LN_S@
+LTLIBOBJS = @LTLIBOBJS@
+MAKEINFO = @MAKEINFO@
+OBJEXT = @OBJEXT@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+VERSION = @VERSION@
+YACC = @YACC@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_CXX = @ac_ct_CXX@
+ac_ct_STRIP = @ac_ct_STRIP@
+am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
+am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+datadir = @datadir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+latex = @latex@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localstatedir = @localstatedir@
+mandir = @mandir@
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdflatex = @pdflatex@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+bin_SCRIPTS = xindy xindy.v2
+dist_bin_SCRIPTS = texindy
+man_MANS = texindy.1 xindy.1 xindy.v2.1
+EXTRA_DIST = $(man_MANS)
+CLEANFILES = xindy xindy.v2
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: $(srcdir)/Makefile.am $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \
+ && exit 0; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign user-commands/Makefile'; \
+ cd $(top_srcdir) && \
+ $(AUTOMAKE) --foreign user-commands/Makefile
+.PRECIOUS: Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+install-binSCRIPTS: $(bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f $$d$$p; then \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " $(binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(bin_SCRIPTS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+install-dist_binSCRIPTS: $(dist_bin_SCRIPTS)
+ @$(NORMAL_INSTALL)
+ test -z "$(bindir)" || $(mkdir_p) "$(DESTDIR)$(bindir)"
+ @list='$(dist_bin_SCRIPTS)'; for p in $$list; do \
+ if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \
+ if test -f $$d$$p; then \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " $(dist_binSCRIPT_INSTALL) '$$d$$p' '$(DESTDIR)$(bindir)/$$f'"; \
+ $(dist_binSCRIPT_INSTALL) "$$d$$p" "$(DESTDIR)$(bindir)/$$f"; \
+ else :; fi; \
+ done
+
+uninstall-dist_binSCRIPTS:
+ @$(NORMAL_UNINSTALL)
+ @list='$(dist_bin_SCRIPTS)'; for p in $$list; do \
+ f=`echo "$$p" | sed 's|^.*/||;$(transform)'`; \
+ echo " rm -f '$(DESTDIR)$(bindir)/$$f'"; \
+ rm -f "$(DESTDIR)$(bindir)/$$f"; \
+ done
+uninstall-info-am:
+install-man1: $(man1_MANS) $(man_MANS)
+ @$(NORMAL_INSTALL)
+ test -z "$(man1dir)" || $(mkdir_p) "$(DESTDIR)$(man1dir)"
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ if test -f $(srcdir)/$$i; then file=$(srcdir)/$$i; \
+ else file=$$i; fi; \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list='$(man1_MANS) $(dist_man1_MANS) $(nodist_man1_MANS)'; \
+ l2='$(man_MANS) $(dist_man_MANS) $(nodist_man_MANS)'; \
+ for i in $$l2; do \
+ case "$$i" in \
+ *.1*) list="$$list $$i" ;; \
+ esac; \
+ done; \
+ for i in $$list; do \
+ ext=`echo $$i | sed -e 's/^.*\\.//'`; \
+ case "$$ext" in \
+ 1*) ;; \
+ *) ext='1' ;; \
+ esac; \
+ inst=`echo $$i | sed -e 's/\\.[0-9a-z]*$$//'`; \
+ inst=`echo $$inst | sed -e 's/^.*\///'`; \
+ inst=`echo $$inst | sed '$(transform)'`.$$ext; \
+ echo " rm -f '$(DESTDIR)$(man1dir)/$$inst'"; \
+ rm -f "$(DESTDIR)$(man1dir)/$$inst"; \
+ done
+tags: TAGS
+TAGS:
+
+ctags: CTAGS
+CTAGS:
+
+check-am: all-am
+check: check-am
+all-am: Makefile $(SCRIPTS) $(MANS)
+installdirs:
+ for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(bindir)" "$(DESTDIR)$(man1dir)"; do \
+ test -z "$$dir" || $(mkdir_p) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ `test -z '$(STRIP)' || \
+ echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+clean: clean-am
+
+clean-am: clean-generic mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-exec-am: install-binSCRIPTS install-dist_binSCRIPTS
+
+install-info: install-info-am
+
+install-man: install-man1
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-binSCRIPTS uninstall-dist_binSCRIPTS \
+ uninstall-info-am uninstall-man
+
+uninstall-man: uninstall-man1
+
+.PHONY: all all-am check check-am clean clean-generic distclean \
+ distclean-generic dvi dvi-am html html-am info info-am install \
+ install-am install-binSCRIPTS install-data install-data-am \
+ install-dist_binSCRIPTS install-exec install-exec-am \
+ install-info install-info-am install-man install-man1 \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
+ uninstall-binSCRIPTS uninstall-dist_binSCRIPTS \
+ uninstall-info-am uninstall-man uninstall-man1
+
+
+xindy: xindy.in
+ sed -e 's:@libdir\@:$(libdir):' xindy.in >xindy
+
+xindy.v2: xindy.v2.in
+ sed -e 's:@XINDY_PERL\@:/usr/bin/perl:' xindy.v2.in >xindy.v2
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/Build/source/utils/xindy/user-commands/texindy b/Build/source/utils/xindy/user-commands/texindy
new file mode 100755
index 00000000000..9c09633c2b6
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/texindy
@@ -0,0 +1,521 @@
+#!/usr/bin/perl
+# $Id: texindy,v 1.5 2006/07/30 10:30:42 jschrod Exp $
+#------------------------------------------------------------
+# (history at end)
+
+=head1 NAME
+
+texindy - create sorted and tagged index from raw LaTeX index
+
+=head1 SYNOPSIS
+
+ texindy [-V?h] [-qv] [-iglr] [-d magic] [-o outfile.ind] [-t log] \
+ [-L lang] [-C codepage] [-M module] [idx0 idx1 ...]
+
+=head2 GNU-Style Long Options for Short Options:
+
+ -V / --version
+ -? / -h / --help
+ -q / --quiet
+ -v / --verbose
+ -i / --stdin
+ -g / --german
+ -l / --letter-ordering
+ -r / --no-ranges
+ -d / --debug (multiple times)
+ -o / --out-file
+ -t / --log-file
+ -L / --language
+ -C / --codepage
+ -M / --module (multiple times)
+ -I / --input-markup (supported: latex, omega)
+
+
+=head1 DESCRIPTION
+
+B<texindy> is the LaTeX-specific command of xindy, the flexible
+indexing system. It takes a raw index as input, and produces a merged,
+sorted and tagged index. Merging, sorting, and tagging is controlled
+by xindy modules, with a convenient set already preloaded.
+
+Files with the raw index are passed as arguments. If no arguments are
+passed, the raw index will be read from standard input.
+
+A good introductionary description of B<texindy> appears in the
+indexing chapter of the LaTeX Companion (2nd ed.)
+
+If you want to produce an index for LaTeX documents with special index
+markup, the command xindy(1) is probably more of interest for you.
+
+B<texindy> is an approach to merge support for the I<make-rules>
+framework, own xindy modules (e.g., for special LaTeX commands in the
+index), and a reasonable level of MakeIndex compatibility. There are
+other older approaches, eventually they will get a description on the
+xindy Web Site, http://www.xindy.org/.
+
+
+=head1 OPTIONS
+
+=over
+
+=item C<--version> / B<-V>
+
+output version numbers of all relevant components and exit.
+
+=item C<--help> / B<-h> / B<-?>
+
+output usage message with options explanation.
+
+=item C<--quiet> / B<-q>
+
+Don't output progress messages. Output only error messages.
+
+=item C<--version> / B<-v>
+
+Output verbose progress messages.
+
+=item C<--debug> I<magic> / B<-d> I<magic>
+
+Output debug messages, this option may be specified multiple times.
+I<magic> determines what is output:
+
+ magic remark
+ ------------------------------------------------------------
+ script internal progress messages of driver scripts
+ keep_tmpfiles don't discard temporary files
+ markup output markup trace, as explained in xindy manual
+ level=n log level, n is 0 (default), 1, 2, or 3
+
+=item C<--out-file> F<outfile.ind> / B<-o> F<outfile.ind>
+
+Output index to file F<outfile.ind>. If this option is not passed, the
+name of the output file is the base name of the first argument and the
+file extension F<ind>. If the raw index is read from standard input,
+this option is mandatory.
+
+=item C<--log-file> F<log.ilg> / B<-t> F<log.ilg>
+
+Output log messages to file F<log.ilg>. These log messages are
+independent from the progress messages that you can influence with
+C<--debug> or C<--verbose>.
+
+=item C<--language> I<lang> / B<-L> I<lang>
+
+The index is sorted according to the rules of language I<lang>. These
+rules are encoded in a xindy module created by I<make-rules>.
+
+If no input encoding is specified via C<--codepage>, a xindy module
+for that language is searched with a latin, a cp, an iso, or ascii
+encoding, in that order.
+
+=item C<--codepage> I<enc> / B <-C> I<enc>
+
+The raw input is in input encoding I<enc>. This information is used to
+select the correct xindy sort module and also the I<inputenc> target
+encoding for C<latex> input markup.
+
+When C<omega> input markup is used, C<utf8> is always used as the sort
+codepage and no inputenc module is loaded. Then this option is
+ignored.
+
+=item C<--module> I<module> / B<-M> I<module>
+
+Load the xindy module F<module.xdy>. This option may be specified
+multiple times. The modules are searched in the xindy search path that
+can be changed with the environment variable C<XINDY_SEARCHPATH>.
+
+=item C<--input-markup> I<input> / B<-I> I<input>
+
+Specifies the input markup of the raw index. Supported values for
+I<input> are C<latex> and C<omega>.
+
+C<latex> input markup is the one that is emitted by default from the
+LaTeX kernel, or by the C<index> macro package of David Jones.
+^^-notation of single byte characters is supported. Usage of LaTeX's
+I<inputenc> package is assumed as well.
+
+C<omega> input markup is like C<latex> input markup, but with Omega's
+^^-notation as encoding for non-ASCII characters. LaTeX I<inputenc>
+encoding is not used then, and C<utf8> is enforced to be the codepage
+for sorting.
+
+=back
+
+
+=head1 SUPPORTED LANGUAGES / CODEPAGES
+
+The following languages are supported:
+
+=head2 Latin scripts
+
+ albanian gypsy portuguese
+ croatian hausa romanian
+ czech hungarian russian-iso
+ danish icelandic slovak-small
+ english italian slovak-large
+ esperanto kurdish-bedirxan slovenian
+ estonian kurdish-turkish spanish-modern
+ finnish latin spanish-traditional
+ french latvian swedish
+ general lithuanian turkish
+ german-din lower-sorbian upper-sorbian
+ german-duden norwegian vietnamese
+ greek-iso polish
+
+German recognizes two different sorting schemes to handle umlauts:
+normally, C<ä> is sorted like C<ae>, but in phone books or
+dictionaries, it is sorted like C<a>. The first scheme is known as
+I<DIN order>, the second as I<Duden order>.
+
+C<*-iso> language names assume that the raw index entries are in ISO
+8859-9 encoding.
+
+C<gypsy> is a northern Russian dialect.
+
+=head2 Cyrillic scripts
+
+ belarusian mongolian serbian
+ bulgarian russian ukrainian
+ macedonian
+
+=head2 Other scripts
+
+ greek klingon
+
+=head2 Available Codepages
+
+This is not yet written. You can look them up in your xindy
+distribution, in the F<modules/lang/language/> directory (where
+I<language> is your language). They are named
+F<variant-codepage-lang.xdy>, where F<variant-> is most often empty
+(for german, it's C<din5007> and C<duden>; for spanish, it's C<modern>
+and C<traditional>, etc.)
+
+ < Describe available codepages for each language >
+
+ < Describe relevance of codepages (as internal representation) for
+ LaTeX inputenc >
+
+
+=head1 TEXINDY STANDARD MODULES
+
+There is a set of B<texindy> standard modules that help to process
+LaTeX index files. Some of them are automatically loaded. Some of them
+are loaded by default, this can be turned off with a B<texindy>
+option. Others may be specified as C<--module> argument to achieve a
+specific effect.
+
+ xindy Module Category Description
+
+=head2 Sorting
+
+ word-order Default A space comes before any letter in the
+ alphabet: ``index style'' is listed before
+ ``indexing''. Turn it off with option -l.
+ letter-order Add-on Spaces are ignored: ``index style''
+ is sorted after ``indexing''.
+ keep-blanks Add-on Leading and trailing white space (blanks
+ and tabs) are not ignored; intermediate
+ white space is not changed.
+ ignore-hyphen Add-on Hyphens are ignored:
+ ``ad-hoc'' is sorted as ``adhoc''.
+ ignore-punctuation Add-on All kinds of punctuation characters are
+ ignored: hyphens, periods, commas, slashes,
+ parentheses, and so on.
+ numeric-sort Auto Numbers are sorted numerically, not like
+ characters: ``V64'' appears before ``V128''.
+
+=head2 Page Numbers
+
+ page-ranges Default Appearances on more than two consecutive
+ pages are listed as a range: ``1--4''.
+ Turn it off with option -r.
+ ff-ranges Add-on Uses implicit ``ff'' notation for ranges
+ of three pages, and explicit ranges
+ thereafter: 2f, 2ff, 2--6.
+ ff-ranges-only Add-on Uses only implicit ranges: 2f, 2ff.
+ book-order Add-on Sorts page numbers with common book numbering
+ scheme correctly -- Roman numerals first, then
+ Arabic numbers, then others: i, 1, A.
+
+=head2 Markup and Layout
+
+ tex Auto Handles basic TeX conventions.
+ latex-loc-fmts Auto Provides LaTeX formatting commands
+ for page number encapsulation.
+ latex Auto Handles LaTeX conventions, both in raw
+ index entries and output markup; implies
+ tex.
+ makeindex Auto Emulates the default MakeIndex input syntax
+ and quoting behavior.
+ latin-lettergroups Auto Layout contains a single Latin letter
+ above each group of words starting with the
+ same letter.
+ german-sty Add-on Handles umlaut markup of babel's german
+ and ngerman options.
+
+
+
+=head1 ENVIRONMENT
+
+=over
+
+=item C<TEXINDY_AUTO_MODULE>
+
+This is the name of the xindy module that loads all auto-loaded
+modules. The default is C<texindy>.
+
+=back
+
+
+=head1 AUTHOR
+
+Joachim Schrod
+
+
+=head1 LEGALESE
+
+B<texindy> is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+
+=for Emacs
+#'
+
+=cut
+
+
+use strict;
+
+BEGIN {
+ use vars qw($Revision $VERSION);
+ q$Revision: 1.5 $ =~ /: (\d+)\.(\d+)/ ; # q wg. Emacs indent!
+ my ($major, $minor) = ($1, $2);
+ $VERSION = "$major." . ($minor<10 ? '0' : '') . $minor;
+}
+
+
+# Some common variables.
+# Determine environment. Where is our library directory, and our modules?
+
+use File::Basename;
+our ($cmd_dir, $cmd);
+BEGIN {
+ $cmd_dir = dirname($0);
+ $cmd = basename($0);
+}
+
+
+# Used modules.
+
+use Getopt::Long qw(:config bundling);
+
+
+# Check arguments, store them in proper variables.
+
+sub usage ()
+{
+ print STDERR <<_EOT_
+
+usage: $cmd [-V?h] [-qv] [-iglr] [-d magic] [-o outfile.ind] [-t log] \\
+ [-L lang] [-C codepage] [-M module] [-I input] [idx0 idx1 ...]
+
+GNU-STYLE LONG OPTIONS FOR SHORT OPTIONS:
+
+ -V / --version
+ -? / -h / --help
+ -q / --quiet
+ -v / --verbose
+ -i / --stdin
+ -g / --german
+ -l / --letter-ordering
+ -r / --no-ranges
+ -d / --debug (multiple times)
+ (supported: script, keep_tmpfiles, markup, level=n)
+ -o / --out-file
+ -t / --log-file
+ -L / --language
+ -C / --codepage
+ -M / --module (multiple times)
+ -I / --input-markup (supported: latex, omega)
+
+_EOT_
+ ;
+ exit 1;
+}
+
+our ($output_version, $quiet, $verbose, $stdin, @debug,
+ $outfile, $logfile, $language, $codepage, @modules, $input_markup);
+$language = 'general';
+$codepage = 'latin';
+$input_markup = 'latex';
+
+our $xindy;
+if ( -f "$cmd_dir/xindy" && -x _ ) {
+ $xindy = "$cmd_dir/xindy";
+} elsif ( -f "$cmd_dir/xindy.pl" && -x _ ) {
+ $xindy = "$cmd_dir/xindy.pl";
+} else {
+ die "$cmd: cannot locate xindy\n";
+}
+
+parse_options();
+output_version() if $output_version; # will not return
+usage() if ( ! $stdin && @ARGV == 0 ); # brain damaged, but like makeindex
+
+
+# Reconstruct xindy options, and eventually switch to it.
+
+unshift (@ARGV, '-q') if $quiet;
+unshift (@ARGV, '-v') if $verbose;
+unshift (@ARGV, map { ('-d', $_) } @debug) if @debug;
+unshift (@ARGV, '-o', $outfile) if $outfile;
+unshift (@ARGV, '-t', $logfile) if $logfile;
+unshift (@ARGV, '-L', $language);
+unshift (@ARGV, '-C', $codepage) if $codepage;
+unshift (@ARGV, '-M', "tex/inputenc/$codepage") if $codepage;
+unshift (@ARGV, map { ('-M', $_) } ($ENV{TEXINDY_AUTO_MODULE} || 'texindy',
+ @modules));
+unshift (@ARGV, '-I', $input_markup);
+
+print "Calling xindy as: $cmd_dir/xindy @ARGV\n" if (grep /^script$/, @debug);
+
+exec $xindy, @ARGV;
+die "$cmd: could not execute xindy: $!\n";
+
+
+# ------------------------------------------------------------
+
+
+sub parse_options() {
+
+ my ($german, $letter_ordering, $no_ranges);
+ GetOptions(
+ 'version|V' => \$output_version,
+ 'help|h|?' => \&usage,
+ 'quiet|q' => \$quiet,
+ 'verbose|v' => \$verbose,
+ 'stdin|i' => \$stdin,
+ 'german|g' => \$german,
+ 'letter-ordering|l' => \$letter_ordering,
+ 'no-ranges|r' => \$no_ranges,
+ 'debug|d=s' => \@debug,
+ 'out-file|o=s' => \$outfile,
+ 'log-file|t=s' => \$logfile,
+ 'language|L=s' => \$language,
+ 'codepage|C=s' => \$codepage,
+ 'module|M=s' => \@modules,
+ 'input-markup|I=s' => \$input_markup,
+ )
+ or usage();
+
+ if ( $german ) {
+ unshift (@modules, 'german-sty');
+ if ( $language eq 'general' ) {
+ $language = 'german-din';
+ } elsif ( $language !~ /^german/ ) {
+ print STDERR "You cannot specify -g and -L at the same time.\n";
+ #print STDERR "NOTE: -g is obsolete anyhow.\n";
+ exit (1);
+ }
+ }
+ unshift (@modules, ($letter_ordering ? 'letter-order' : 'word-order'));
+ unshift (@modules, 'page-ranges') unless $no_ranges;
+
+ # Check that the input markup is known. omega markup implies
+ # codepage utf8 for sorting, but no inputenc. We set the codepage
+ # to undef to prevent loading of the inputenc module. Setting it
+ # to utf8 for the sort encoding is done by the xindy script.
+ if ( $input_markup ne 'latex' && $input_markup ne 'omega' ) {
+ print STDERR "Unsupported input markup $input_markup.\n\n";
+ usage();
+ }
+ if ( $input_markup eq 'omega' ) {
+ $codepage = undef;
+ }
+
+}
+
+
+sub output_version () {
+ output_xindy_release();
+ print "$cmd script version: $VERSION\n";
+ my @xindy_cmd = ($xindy, '--internal-version');
+ push (@xindy_cmd, qw(-d script --foobar)) if grep(/^script$/, @debug);
+ exec @xindy_cmd;
+}
+
+
+sub output_xindy_release () {
+ my $version = 'unknown';
+ my $version_file;
+ if ( -f "$cmd_dir/../VERSION" ) {
+ $version_file = "$cmd_dir/../VERSION";
+ } else {
+ # Where is the library directory?
+ my $lib_dir;
+ if ( $ENV{XINDY_LIBDIR} ) {
+ $lib_dir = $ENV{XINDY_LIBDIR};
+ } elsif ( '@libdir@' ne '@libdir' . '@' ) { # GNU configure at work?
+ if ( -d '@libdir@/xindy' ) { # /usr style
+ $lib_dir = '@libdir@/xindy';
+ } else {
+ $lib_dir = '@libdir@'; # /opt style
+ }
+ } elsif ( -f "$cmd_dir/../lib/xindy.run" ) { # /opt style
+ $lib_dir = "$cmd_dir/../lib";
+ } elsif ( -d "$cmd_dir/../lib/xindy" ) { # /usr style
+ $lib_dir = "$cmd_dir/../lib/xindy";
+ } else {
+ die "Cannot locate xindy library directory";
+ }
+ if ( -f "$lib_dir/VERSION" ) {
+ $version_file = "$lib_dir/VERSION";
+ }
+ }
+
+ if ( $version_file ) {
+ if ( open(VERSION, "<$version_file") ) {
+ while ( $version = <VERSION> ) {
+ chomp ($version);
+ $version =~ s/\#.*// ;
+ $version =~ s/^\s+// ;
+ $version =~ s/\s+$// ;
+ last if $version;
+ }
+ close (VERSION);
+ }
+ }
+ print "xindy release: $version\n";
+}
+
+
+
+#======================================================================
+#
+# $Log: texindy,v $
+# Revision 1.5 2006/07/30 10:30:42 jschrod
+# Check if an exec() error happened and output an error message.
+# (Ticket 1230801)
+#
+# Revision 1.4 2006/07/19 00:29:56 jschrod
+# Support for omega input markup.
+#
+# Revision 1.3 2004/11/01 22:48:51 jschrod
+# Locate xindy script.
+# Terminate on option error.
+# Fix up version output.
+#
+# Revision 1.2 2004/05/26 21:30:11 jschrod
+# Added POD documentation.
+#
+# Revision 1.1 2004/05/24 19:47:13 jschrod
+# Introduce new driver script, as part of the "Companion Release".
+#
diff --git a/Build/source/utils/xindy/user-commands/texindy.1 b/Build/source/utils/xindy/user-commands/texindy.1
new file mode 100644
index 00000000000..938f1e574d4
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/texindy.1
@@ -0,0 +1,406 @@
+.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. | will give a
+.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. nr % 0
+. rr F
+.\}
+.\"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.if n .na
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "TEXINDY 1"
+.TH TEXINDY 1 "2006-07-30" "Version 1.5" "xindy"
+.SH "NAME"
+texindy \- create sorted and tagged index from raw LaTeX index
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 2
+\& texindy [-V?h] [-qv] [-iglr] [-d magic] [-o outfile.ind] [-t log] \e
+\& [-L lang] [-C codepage] [-M module] [idx0 idx1 ...]
+.Ve
+.Sh "GNU-Style Long Options for Short Options:"
+.IX Subsection "GNU-Style Long Options for Short Options:"
+.Vb 15
+\& -V / --version
+\& -? / -h / --help
+\& -q / --quiet
+\& -v / --verbose
+\& -i / --stdin
+\& -g / --german
+\& -l / --letter-ordering
+\& -r / --no-ranges
+\& -d / --debug (multiple times)
+\& -o / --out-file
+\& -t / --log-file
+\& -L / --language
+\& -C / --codepage
+\& -M / --module (multiple times)
+\& -I / --input-markup (supported: latex, omega)
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBtexindy\fR is the LaTeX-specific command of xindy, the flexible
+indexing system. It takes a raw index as input, and produces a merged,
+sorted and tagged index. Merging, sorting, and tagging is controlled
+by xindy modules, with a convenient set already preloaded.
+.PP
+Files with the raw index are passed as arguments. If no arguments are
+passed, the raw index will be read from standard input.
+.PP
+A good introductionary description of \fBtexindy\fR appears in the
+indexing chapter of the LaTeX Companion (2nd ed.)
+.PP
+If you want to produce an index for LaTeX documents with special index
+markup, the command \fIxindy\fR\|(1) is probably more of interest for you.
+.PP
+\&\fBtexindy\fR is an approach to merge support for the \fImake-rules\fR
+framework, own xindy modules (e.g., for special LaTeX commands in the
+index), and a reasonable level of MakeIndex compatibility. There are
+other older approaches, eventually they will get a description on the
+xindy Web Site, http://www.xindy.org/.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.ie n .IP """\-\-version""\fR / \fB\-V" 4
+.el .IP "\f(CW\-\-version\fR / \fB\-V\fR" 4
+.IX Item "--version / -V"
+output version numbers of all relevant components and exit.
+.ie n .IP """\-\-help""\fR / \fB\-h\fR / \fB\-?" 4
+.el .IP "\f(CW\-\-help\fR / \fB\-h\fR / \fB\-?\fR" 4
+.IX Item "--help / -h / -?"
+output usage message with options explanation.
+.ie n .IP """\-\-quiet""\fR / \fB\-q" 4
+.el .IP "\f(CW\-\-quiet\fR / \fB\-q\fR" 4
+.IX Item "--quiet / -q"
+Don't output progress messages. Output only error messages.
+.ie n .IP """\-\-version""\fR / \fB\-v" 4
+.el .IP "\f(CW\-\-version\fR / \fB\-v\fR" 4
+.IX Item "--version / -v"
+Output verbose progress messages.
+.ie n .IP """\-\-debug""\fR \fImagic\fR / \fB\-d\fR \fImagic" 4
+.el .IP "\f(CW\-\-debug\fR \fImagic\fR / \fB\-d\fR \fImagic\fR" 4
+.IX Item "--debug magic / -d magic"
+Output debug messages, this option may be specified multiple times.
+\&\fImagic\fR determines what is output:
+.Sp
+.Vb 6
+\& magic remark
+\& ------------------------------------------------------------
+\& script internal progress messages of driver scripts
+\& keep_tmpfiles don't discard temporary files
+\& markup output markup trace, as explained in xindy manual
+\& level=n log level, n is 0 (default), 1, 2, or 3
+.Ve
+.ie n .IP """\-\-out\-file""\fR \fIoutfile.ind\fR / \fB\-o\fR \fIoutfile.ind" 4
+.el .IP "\f(CW\-\-out\-file\fR \fIoutfile.ind\fR / \fB\-o\fR \fIoutfile.ind\fR" 4
+.IX Item "--out-file outfile.ind / -o outfile.ind"
+Output index to file \fIoutfile.ind\fR. If this option is not passed, the
+name of the output file is the base name of the first argument and the
+file extension \fIind\fR. If the raw index is read from standard input,
+this option is mandatory.
+.ie n .IP """\-\-log\-file""\fR \fIlog.ilg\fR / \fB\-t\fR \fIlog.ilg" 4
+.el .IP "\f(CW\-\-log\-file\fR \fIlog.ilg\fR / \fB\-t\fR \fIlog.ilg\fR" 4
+.IX Item "--log-file log.ilg / -t log.ilg"
+Output log messages to file \fIlog.ilg\fR. These log messages are
+independent from the progress messages that you can influence with
+\&\f(CW\*(C`\-\-debug\*(C'\fR or \f(CW\*(C`\-\-verbose\*(C'\fR.
+.ie n .IP """\-\-language""\fR \fIlang\fR / \fB\-L\fR \fIlang" 4
+.el .IP "\f(CW\-\-language\fR \fIlang\fR / \fB\-L\fR \fIlang\fR" 4
+.IX Item "--language lang / -L lang"
+The index is sorted according to the rules of language \fIlang\fR. These
+rules are encoded in a xindy module created by \fImake-rules\fR.
+.Sp
+If no input encoding is specified via \f(CW\*(C`\-\-codepage\*(C'\fR, a xindy module
+for that language is searched with a latin, a cp, an iso, or ascii
+encoding, in that order.
+.ie n .IP """\-\-codepage""\fR \fIenc\fR / B <\-C> \fIenc" 4
+.el .IP "\f(CW\-\-codepage\fR \fIenc\fR / B <\-C> \fIenc\fR" 4
+.IX Item "--codepage enc / B <-C> enc"
+The raw input is in input encoding \fIenc\fR. This information is used to
+select the correct xindy sort module and also the \fIinputenc\fR target
+encoding for \f(CW\*(C`latex\*(C'\fR input markup.
+.Sp
+When \f(CW\*(C`omega\*(C'\fR input markup is used, \f(CW\*(C`utf8\*(C'\fR is always used as the sort
+codepage and no inputenc module is loaded. Then this option is
+ignored.
+.ie n .IP """\-\-module""\fR \fImodule\fR / \fB\-M\fR \fImodule" 4
+.el .IP "\f(CW\-\-module\fR \fImodule\fR / \fB\-M\fR \fImodule\fR" 4
+.IX Item "--module module / -M module"
+Load the xindy module \fImodule.xdy\fR. This option may be specified
+multiple times. The modules are searched in the xindy search path that
+can be changed with the environment variable \f(CW\*(C`XINDY_SEARCHPATH\*(C'\fR.
+.ie n .IP """\-\-input\-markup""\fR \fIinput\fR / \fB\-I\fR \fIinput" 4
+.el .IP "\f(CW\-\-input\-markup\fR \fIinput\fR / \fB\-I\fR \fIinput\fR" 4
+.IX Item "--input-markup input / -I input"
+Specifies the input markup of the raw index. Supported values for
+\&\fIinput\fR are \f(CW\*(C`latex\*(C'\fR and \f(CW\*(C`omega\*(C'\fR.
+.Sp
+\&\f(CW\*(C`latex\*(C'\fR input markup is the one that is emitted by default from the
+LaTeX kernel, or by the \f(CW\*(C`index\*(C'\fR macro package of David Jones.
+^^\-notation of single byte characters is supported. Usage of LaTeX's
+\&\fIinputenc\fR package is assumed as well.
+.Sp
+\&\f(CW\*(C`omega\*(C'\fR input markup is like \f(CW\*(C`latex\*(C'\fR input markup, but with Omega's
+^^\-notation as encoding for non-ASCII characters. LaTeX \fIinputenc\fR
+encoding is not used then, and \f(CW\*(C`utf8\*(C'\fR is enforced to be the codepage
+for sorting.
+.SH "SUPPORTED LANGUAGES / CODEPAGES"
+.IX Header "SUPPORTED LANGUAGES / CODEPAGES"
+The following languages are supported:
+.Sh "Latin scripts"
+.IX Subsection "Latin scripts"
+.Vb 13
+\& albanian gypsy portuguese
+\& croatian hausa romanian
+\& czech hungarian russian-iso
+\& danish icelandic slovak-small
+\& english italian slovak-large
+\& esperanto kurdish-bedirxan slovenian
+\& estonian kurdish-turkish spanish-modern
+\& finnish latin spanish-traditional
+\& french latvian swedish
+\& general lithuanian turkish
+\& german-din lower-sorbian upper-sorbian
+\& german-duden norwegian vietnamese
+\& greek-iso polish
+.Ve
+.PP
+German recognizes two different sorting schemes to handle umlauts:
+normally, \f(CW\*(C`ä\*(C'\fR is sorted like \f(CW\*(C`ae\*(C'\fR, but in phone books or
+dictionaries, it is sorted like \f(CW\*(C`a\*(C'\fR. The first scheme is known as
+\&\fI\s-1DIN\s0 order\fR, the second as \fIDuden order\fR.
+.PP
+\&\f(CW\*(C`*\-iso\*(C'\fR language names assume that the raw index entries are in \s-1ISO\s0
+8859\-9 encoding.
+.PP
+\&\f(CW\*(C`gypsy\*(C'\fR is a northern Russian dialect.
+.Sh "Cyrillic scripts"
+.IX Subsection "Cyrillic scripts"
+.Vb 3
+\& belarusian mongolian serbian
+\& bulgarian russian ukrainian
+\& macedonian
+.Ve
+.Sh "Other scripts"
+.IX Subsection "Other scripts"
+.Vb 1
+\& greek klingon
+.Ve
+.Sh "Available Codepages"
+.IX Subsection "Available Codepages"
+This is not yet written. You can look them up in your xindy
+distribution, in the \fImodules/lang/language/\fR directory (where
+\&\fIlanguage\fR is your language). They are named
+\&\fIvariant\-codepage\-lang.xdy\fR, where \fIvariant\-\fR is most often empty
+(for german, it's \f(CW\*(C`din5007\*(C'\fR and \f(CW\*(C`duden\*(C'\fR; for spanish, it's \f(CW\*(C`modern\*(C'\fR
+and \f(CW\*(C`traditional\*(C'\fR, etc.)
+.PP
+.Vb 1
+\& < Describe available codepages for each language >
+.Ve
+.PP
+.Vb 2
+\& < Describe relevance of codepages (as internal representation) for
+\& LaTeX inputenc >
+.Ve
+.SH "TEXINDY STANDARD MODULES"
+.IX Header "TEXINDY STANDARD MODULES"
+There is a set of \fBtexindy\fR standard modules that help to process
+LaTeX index files. Some of them are automatically loaded. Some of them
+are loaded by default, this can be turned off with a \fBtexindy\fR
+option. Others may be specified as \f(CW\*(C`\-\-module\*(C'\fR argument to achieve a
+specific effect.
+.PP
+.Vb 1
+\& xindy Module Category Description
+.Ve
+.Sh "Sorting"
+.IX Subsection "Sorting"
+.Vb 15
+\& word-order Default A space comes before any letter in the
+\& alphabet: ``index style'' is listed before
+\& ``indexing''. Turn it off with option -l.
+\& letter-order Add-on Spaces are ignored: ``index style''
+\& is sorted after ``indexing''.
+\& keep-blanks Add-on Leading and trailing white space (blanks
+\& and tabs) are not ignored; intermediate
+\& white space is not changed.
+\& ignore-hyphen Add-on Hyphens are ignored:
+\& ``ad-hoc'' is sorted as ``adhoc''.
+\& ignore-punctuation Add-on All kinds of punctuation characters are
+\& ignored: hyphens, periods, commas, slashes,
+\& parentheses, and so on.
+\& numeric-sort Auto Numbers are sorted numerically, not like
+\& characters: ``V64'' appears before ``V128''.
+.Ve
+.Sh "Page Numbers"
+.IX Subsection "Page Numbers"
+.Vb 10
+\& page-ranges Default Appearances on more than two consecutive
+\& pages are listed as a range: ``1--4''.
+\& Turn it off with option -r.
+\& ff-ranges Add-on Uses implicit ``ff'' notation for ranges
+\& of three pages, and explicit ranges
+\& thereafter: 2f, 2ff, 2--6.
+\& ff-ranges-only Add-on Uses only implicit ranges: 2f, 2ff.
+\& book-order Add-on Sorts page numbers with common book numbering
+\& scheme correctly -- Roman numerals first, then
+\& Arabic numbers, then others: i, 1, A.
+.Ve
+.Sh "Markup and Layout"
+.IX Subsection "Markup and Layout"
+.Vb 13
+\& tex Auto Handles basic TeX conventions.
+\& latex-loc-fmts Auto Provides LaTeX formatting commands
+\& for page number encapsulation.
+\& latex Auto Handles LaTeX conventions, both in raw
+\& index entries and output markup; implies
+\& tex.
+\& makeindex Auto Emulates the default MakeIndex input syntax
+\& and quoting behavior.
+\& latin-lettergroups Auto Layout contains a single Latin letter
+\& above each group of words starting with the
+\& same letter.
+\& german-sty Add-on Handles umlaut markup of babel's german
+\& and ngerman options.
+.Ve
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+.ie n .IP """TEXINDY_AUTO_MODULE""" 4
+.el .IP "\f(CWTEXINDY_AUTO_MODULE\fR" 4
+.IX Item "TEXINDY_AUTO_MODULE"
+This is the name of the xindy module that loads all auto-loaded
+modules. The default is \f(CW\*(C`texindy\*(C'\fR.
+.SH "AUTHOR"
+.IX Header "AUTHOR"
+Joachim Schrod
+.SH "LEGALESE"
+.IX Header "LEGALESE"
+\&\fBtexindy\fR is free software; you can redistribute it and/or modify it
+under the terms of the \s-1GNU\s0 General Public License as published by the
+Free Software Foundation; either version 2 of the License, or (at your
+option) any later version.
+.PP
+This program is distributed in the hope that it will be useful,
+but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of
+\&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the
+\&\s-1GNU\s0 General Public License for more details.
diff --git a/Build/source/utils/xindy/user-commands/xindy.1 b/Build/source/utils/xindy/user-commands/xindy.1
new file mode 100644
index 00000000000..066146513a5
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/xindy.1
@@ -0,0 +1,380 @@
+.\" Automatically generated by Pod::Man v1.37, Pod::Parser v1.3
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sh \" Subsection heading
+.br
+.if t .Sp
+.ne 5
+.PP
+\fB\\$1\fR
+.PP
+..
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" Set up some character translations and predefined strings. \*(-- will
+.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
+.\" double quote, and \*(R" will give a right double quote. | will give a
+.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
+.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
+.\" expand to `' in nroff, nothing in troff, for use with C<>.
+.tr \(*W-|\(bv\*(Tr
+.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
+.ie n \{\
+. ds -- \(*W-
+. ds PI pi
+. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
+. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
+. ds L" ""
+. ds R" ""
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds -- \|\(em\|
+. ds PI \(*p
+. ds L" ``
+. ds R" ''
+'br\}
+.\"
+.\" If the F register is turned on, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. nr % 0
+. rr F
+.\}
+.\"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.hy 0
+.if n .na
+.\"
+.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
+.\" Fear. Run. Save yourself. No user-serviceable parts.
+. \" fudge factors for nroff and troff
+.if n \{\
+. ds #H 0
+. ds #V .8m
+. ds #F .3m
+. ds #[ \f1
+. ds #] \fP
+.\}
+.if t \{\
+. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
+. ds #V .6m
+. ds #F 0
+. ds #[ \&
+. ds #] \&
+.\}
+. \" simple accents for nroff and troff
+.if n \{\
+. ds ' \&
+. ds ` \&
+. ds ^ \&
+. ds , \&
+. ds ~ ~
+. ds /
+.\}
+.if t \{\
+. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
+. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
+. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
+. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
+. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
+. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
+.\}
+. \" troff and (daisy-wheel) nroff accents
+.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
+.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
+.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
+.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
+.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
+.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
+.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
+.ds ae a\h'-(\w'a'u*4/10)'e
+.ds Ae A\h'-(\w'A'u*4/10)'E
+. \" corrections for vroff
+.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
+.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
+. \" for low resolution devices (crt and lpr)
+.if \n(.H>23 .if \n(.V>19 \
+\{\
+. ds : e
+. ds 8 ss
+. ds o a
+. ds d- d\h'-1'\(ga
+. ds D- D\h'-1'\(hy
+. ds th \o'bp'
+. ds Th \o'LP'
+. ds ae ae
+. ds Ae AE
+.\}
+.rm #[ #] #H #V #F C
+.\" ========================================================================
+.\"
+.IX Title "XINDY 1"
+.TH XINDY 1 "2006-07-30" "Version 1.8" "xindy"
+.SH "NAME"
+xindy \- create sorted and tagged index from raw index
+.SH "SYNOPSIS"
+.IX Header "SYNOPSIS"
+.Vb 4
+\& xindy [-V?h] [-qv] [-d magic] [-o outfile.ind] [-t log] \e
+\& [-L lang] [-C codepage] [-M module] [-I input] \e
+\& [--interactive] [--mem-file=xindy.mem] \e
+\& [idx0 idx1 ...]
+.Ve
+.Sh "GNU-Style Long Options for Short Options:"
+.IX Subsection "GNU-Style Long Options for Short Options:"
+.Vb 11
+\& -V / --version
+\& -? / -h / --help
+\& -q / --quiet
+\& -v / --verbose
+\& -d / --debug (multiple times)
+\& -o / --out-file
+\& -t / --log-file
+\& -L / --language
+\& -C / --codepage
+\& -M / --module (multiple times)
+\& -I / --input-markup (supported: latex, omega, xindy)
+.Ve
+.SH "DESCRIPTION"
+.IX Header "DESCRIPTION"
+\&\fBxindy\fR is the formatter-indepedent command of xindy, the flexible
+indexing system. It takes a raw index as input, and produces a merged,
+sorted and tagged index. Merging, sorting, and tagging is controlled
+by xindy style files.
+.PP
+Files with the raw index are passed as arguments. If no arguments are
+passed, the raw index will be read from standard input.
+.PP
+\&\fBxindy\fR is completely described in its manual that you will find on
+its Web Site, http://www.xindy.org/. A good introductionary
+description appears in the indexing chapter of the LaTeX Companion (2nd ed.)
+.PP
+If you want to produce an index for LaTeX documents, the command
+\&\fItexindy\fR\|(1) is probably more of interest for you. It is a wrapper for
+\&\fBxindy\fR that turns on many LaTeX conventions by default.
+.SH "OPTIONS"
+.IX Header "OPTIONS"
+.ie n .IP """\-\-version""\fR / \fB\-V" 4
+.el .IP "\f(CW\-\-version\fR / \fB\-V\fR" 4
+.IX Item "--version / -V"
+output version numbers of all relevant components and exit.
+.ie n .IP """\-\-help""\fR / \fB\-h\fR / \fB\-?" 4
+.el .IP "\f(CW\-\-help\fR / \fB\-h\fR / \fB\-?\fR" 4
+.IX Item "--help / -h / -?"
+output usage message with options explanation.
+.ie n .IP """\-\-quiet""\fR / \fB\-q" 4
+.el .IP "\f(CW\-\-quiet\fR / \fB\-q\fR" 4
+.IX Item "--quiet / -q"
+Don't output progress messages. Output only error messages.
+.ie n .IP """\-\-version""\fR / \fB\-v" 4
+.el .IP "\f(CW\-\-version\fR / \fB\-v\fR" 4
+.IX Item "--version / -v"
+Output verbose progress messages.
+.ie n .IP """\-\-debug""\fR \fImagic\fR / \fB\-d\fR \fImagic" 4
+.el .IP "\f(CW\-\-debug\fR \fImagic\fR / \fB\-d\fR \fImagic\fR" 4
+.IX Item "--debug magic / -d magic"
+Output debug messages, this option may be specified multiple times.
+\&\fImagic\fR determines what is output:
+.Sp
+.Vb 6
+\& magic remark
+\& ------------------------------------------------------------
+\& script internal progress messages of driver scripts
+\& keep_tmpfiles don't discard temporary files
+\& markup output markup trace, as explained in xindy manual
+\& level=n log level, n is 0 (default), 1, 2, or 3
+.Ve
+.ie n .IP """\-\-out\-file""\fR \fIoutfile.ind\fR / \fB\-o\fR \fIoutfile.ind" 4
+.el .IP "\f(CW\-\-out\-file\fR \fIoutfile.ind\fR / \fB\-o\fR \fIoutfile.ind\fR" 4
+.IX Item "--out-file outfile.ind / -o outfile.ind"
+Output index to file \fIoutfile.ind\fR. If this option is not passed, the
+name of the output file is the base name of the first argument and the
+file extension \fIind\fR. If the raw index is read from standard input,
+this option is mandatory.
+.ie n .IP """\-\-log\-file""\fR \fIlog.ilg\fR / \fB\-t\fR \fIlog.ilg" 4
+.el .IP "\f(CW\-\-log\-file\fR \fIlog.ilg\fR / \fB\-t\fR \fIlog.ilg\fR" 4
+.IX Item "--log-file log.ilg / -t log.ilg"
+Output log messages to file \fIlog.ilg\fR. These log messages are
+independent from the progress messages that you can influence with
+\&\f(CW\*(C`\-\-debug\*(C'\fR or \f(CW\*(C`\-\-verbose\*(C'\fR.
+.ie n .IP """\-\-language""\fR \fIlang\fR / \fB\-L\fR \fIlang" 4
+.el .IP "\f(CW\-\-language\fR \fIlang\fR / \fB\-L\fR \fIlang\fR" 4
+.IX Item "--language lang / -L lang"
+The index is sorted according to the rules of language \fIlang\fR. These
+rules are encoded in a xindy module created by \fImake-rules\fR.
+.Sp
+If no input encoding is specified via \f(CW\*(C`\-\-codepage\*(C'\fR, a xindy module
+for that language is searched with a latin, a cp, an iso, or ascii
+encoding, in that order.
+.ie n .IP """\-\-codepage""\fR \fIenc\fR / \fB\-C\fR \fIenc" 4
+.el .IP "\f(CW\-\-codepage\fR \fIenc\fR / \fB\-C\fR \fIenc\fR" 4
+.IX Item "--codepage enc / -C enc"
+The raw input is in input encoding \fIenc\fR. This information is used to
+select the correct xindy sort module and also the \fIinputenc\fR target
+encoding for \f(CW\*(C`latex\*(C'\fR input markup.
+.Sp
+When \f(CW\*(C`omega\*(C'\fR input markup is used, \f(CW\*(C`utf8\*(C'\fR is always used as
+codepage, this option is then ignored.
+.ie n .IP """\-\-module""\fR \fImodule\fR / \fB\-M\fR \fImodule" 4
+.el .IP "\f(CW\-\-module\fR \fImodule\fR / \fB\-M\fR \fImodule\fR" 4
+.IX Item "--module module / -M module"
+Load the xindy module \fImodule.xdy\fR. This option may be specified
+multiple times. The modules are searched in the xindy search path that
+can be changed with the environment variable \f(CW\*(C`XINDY_SEARCHPATH\*(C'\fR.
+.ie n .IP """\-\-input\-markup""\fR \fIinput\fR / \fB\-I\fR \fIinput" 4
+.el .IP "\f(CW\-\-input\-markup\fR \fIinput\fR / \fB\-I\fR \fIinput\fR" 4
+.IX Item "--input-markup input / -I input"
+Specifies the input markup of the raw index. Supported values for
+\&\fIinput\fR are \f(CW\*(C`latex\*(C'\fR, \f(CW\*(C`omega\*(C'\fR, and \f(CW\*(C`xindy\*(C'\fR.
+.Sp
+\&\f(CW\*(C`latex\*(C'\fR input markup is the one that is emitted by default from the
+LaTeX kernel, or by the \f(CW\*(C`index\*(C'\fR macro package of David Jones.
+^^\-notation of single byte characters is supported. Usage of LaTeX's
+\&\fIinputenc\fR package is assumed as well.
+.Sp
+\&\f(CW\*(C`omega\*(C'\fR input markup is like \f(CW\*(C`latex\*(C'\fR input markup, but with Omega's
+^^\-notation as encoding for non-ASCII characters. LaTeX \fIinputenc\fR
+encoding is not used then, and \f(CW\*(C`utf8\*(C'\fR is enforced to be the codepage.
+.Sp
+\&\f(CW\*(C`xindy\*(C'\fR input markup is specified in the xindy manual.
+.ie n .IP """\-\-interactive""" 4
+.el .IP "\f(CW\-\-interactive\fR" 4
+.IX Item "--interactive"
+Start xindy in interactive mode. You will be in a xindy read-eval-loop
+where xindy language expressions are read and evaluated interactively.
+.ie n .IP """\-\-mem\-file""\fR \fIxindy.mem" 4
+.el .IP "\f(CW\-\-mem\-file\fR \fIxindy.mem\fR" 4
+.IX Item "--mem-file xindy.mem"
+This option is only usable for developers or in very rare situations.
+The compiled xindy kernel is stored in a so-called \fImemory file\fR,
+canonically named \fIxindy.mem\fR, and located in the xindy library
+directory. This option allows to use another xindy kernel.
+.SH "SUPPORTED LANGUAGES / CODEPAGES"
+.IX Header "SUPPORTED LANGUAGES / CODEPAGES"
+The following languages are supported:
+.Sh "Latin scripts"
+.IX Subsection "Latin scripts"
+.Vb 13
+\& albanian gypsy portuguese
+\& croatian hausa romanian
+\& czech hungarian russian-iso
+\& danish icelandic slovak-small
+\& english italian slovak-large
+\& esperanto kurdish-bedirxan slovenian
+\& estonian kurdish-turkish spanish-modern
+\& finnish latin spanish-traditional
+\& french latvian swedish
+\& general lithuanian turkish
+\& german-din lower-sorbian upper-sorbian
+\& german-duden norwegian vietnamese
+\& greek-iso polish
+.Ve
+.PP
+German recognizes two different sorting schemes to handle umlauts:
+normally, \f(CW\*(C`ä\*(C'\fR is sorted like \f(CW\*(C`ae\*(C'\fR, but in phone books or
+dictionaries, it is sorted like \f(CW\*(C`a\*(C'\fR. The first scheme is known as
+\&\fI\s-1DIN\s0 order\fR, the second as \fIDuden order\fR.
+.PP
+\&\f(CW\*(C`*\-iso\*(C'\fR language names assume that the raw index entries are in \s-1ISO\s0
+8859\-9 encoding.
+.PP
+\&\f(CW\*(C`gypsy\*(C'\fR is a northern Russian dialect.
+.Sh "Cyrillic scripts"
+.IX Subsection "Cyrillic scripts"
+.Vb 3
+\& belarusian mongolian serbian
+\& bulgarian russian ukrainian
+\& macedonian
+.Ve
+.Sh "Other scripts"
+.IX Subsection "Other scripts"
+.Vb 1
+\& greek klingon
+.Ve
+.Sh "Available Codepages"
+.IX Subsection "Available Codepages"
+This is not yet written. You can look them up in your xindy
+distribution, in the \fImodules/lang/language/\fR directory (where
+\&\fIlanguage\fR is your language). They are named
+\&\fIvariant\-codepage\-lang.xdy\fR, where \fIvariant\-\fR is most often empty
+(for german, it's \f(CW\*(C`din5007\*(C'\fR and \f(CW\*(C`duden\*(C'\fR; for spanish, it's \f(CW\*(C`modern\*(C'\fR
+and \f(CW\*(C`traditional\*(C'\fR, etc.)
+.PP
+.Vb 1
+\& < Describe available codepages for each language >
+.Ve
+.PP
+.Vb 2
+\& < Describe relevance of codepages (as internal representation) for
+\& LaTeX inputenc >
+.Ve
+.SH "ENVIRONMENT"
+.IX Header "ENVIRONMENT"
+.ie n .IP """XINDY_SEARCHPATH""" 4
+.el .IP "\f(CWXINDY_SEARCHPATH\fR" 4
+.IX Item "XINDY_SEARCHPATH"
+A list of directories where the xindy modules are searched in. No
+subtree searching is done (as in TDS-conformant TeX).
+.Sp
+If this environment variable is not set, the default is used:
+\&\f(CW\*(C`.:\*(C'\fR\fImodules_dir\fR\f(CW\*(C`:\*(C'\fR\fImodules_dir\fR\f(CW\*(C`/base\*(C'\fR. \fImodules_dir\fR is
+determined at run time, relative to the \fBxindy\fR command location:
+Either it's \fI../modules\fR, that's the case for \fIopt\fR\-installations.
+Or it's \fI../lib/xindy/modules\fR, that's the case for
+\&\fIusr\fR\-installations.
+.ie n .IP """XINDY_LIBDIR""" 4
+.el .IP "\f(CWXINDY_LIBDIR\fR" 4
+.IX Item "XINDY_LIBDIR"
+Library directory where \fIxindy.run\fR and \fIxindy.mem\fR are located.
+.Sp
+The modules directory may be a subdirectory, too.
+.SH "KNOWN BUGS"
+.IX Header "KNOWN BUGS"
+Option \fB\-q\fR also prevents output of error messages. Error messages
+should be output on stderr, progress messages on stdout.
+.PP
+There should be a way to output the final index to stdout. This would
+imply \fB\-q\fR, of course.
+.PP
+Codepage \f(CW\*(C`utf8\*(C'\fR should be supported for all languages, and should be
+used as internal codepage for LaTeX inputenc re\-encoding.
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+\&\fItexindy\fR\|(1),
+\&\fItex2xindy\fR\|(1)
+.SH "AUTHOR"
+.IX Header "AUTHOR"
+Joachim Schrod
+.SH "LEGALESE"
+.IX Header "LEGALESE"
+Copyright (c) 2004\-2006 by Joachim Schrod.
+.PP
+\&\fBxindy\fR is free software; you can redistribute it and/or modify it
+under the terms of the \s-1GNU\s0 General Public License as published by the
+Free Software Foundation; either version 2 of the License, or (at your
+option) any later version.
+.PP
+This program is distributed in the hope that it will be useful,
+but \s-1WITHOUT\s0 \s-1ANY\s0 \s-1WARRANTY\s0; without even the implied warranty of
+\&\s-1MERCHANTABILITY\s0 or \s-1FITNESS\s0 \s-1FOR\s0 A \s-1PARTICULAR\s0 \s-1PURPOSE\s0. See the
+\&\s-1GNU\s0 General Public License for more details.
diff --git a/Build/source/utils/xindy/user-commands/xindy.in b/Build/source/utils/xindy/user-commands/xindy.in
new file mode 100644
index 00000000000..ce770275cd0
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/xindy.in
@@ -0,0 +1,777 @@
+#!/usr/bin/perl
+# $Id: xindy.pl,v 1.8 2006/07/30 10:30:42 jschrod Exp $
+#------------------------------------------------------------
+# (history at end)
+
+=head1 NAME
+
+xindy - create sorted and tagged index from raw index
+
+=head1 SYNOPSIS
+
+ xindy [-V?h] [-qv] [-d magic] [-o outfile.ind] [-t log] \
+ [-L lang] [-C codepage] [-M module] [-I input] \
+ [--interactive] [--mem-file=xindy.mem] \
+ [idx0 idx1 ...]
+
+=head2 GNU-Style Long Options for Short Options:
+
+ -V / --version
+ -? / -h / --help
+ -q / --quiet
+ -v / --verbose
+ -d / --debug (multiple times)
+ -o / --out-file
+ -t / --log-file
+ -L / --language
+ -C / --codepage
+ -M / --module (multiple times)
+ -I / --input-markup (supported: latex, omega, xindy)
+
+
+=head1 DESCRIPTION
+
+B<xindy> is the formatter-indepedent command of xindy, the flexible
+indexing system. It takes a raw index as input, and produces a merged,
+sorted and tagged index. Merging, sorting, and tagging is controlled
+by xindy style files.
+
+Files with the raw index are passed as arguments. If no arguments are
+passed, the raw index will be read from standard input.
+
+B<xindy> is completely described in its manual that you will find on
+its Web Site, http://www.xindy.org/. A good introductionary
+description appears in the indexing chapter of the LaTeX Companion (2nd ed.)
+
+If you want to produce an index for LaTeX documents, the command
+texindy(1) is probably more of interest for you. It is a wrapper for
+B<xindy> that turns on many LaTeX conventions by default.
+
+
+=head1 OPTIONS
+
+=over
+
+=item C<--version> / B<-V>
+
+output version numbers of all relevant components and exit.
+
+=item C<--help> / B<-h> / B<-?>
+
+output usage message with options explanation.
+
+=item C<--quiet> / B<-q>
+
+Don't output progress messages. Output only error messages.
+
+=item C<--version> / B<-v>
+
+Output verbose progress messages.
+
+=item C<--debug> I<magic> / B<-d> I<magic>
+
+Output debug messages, this option may be specified multiple times.
+I<magic> determines what is output:
+
+ magic remark
+ ------------------------------------------------------------
+ script internal progress messages of driver scripts
+ keep_tmpfiles don't discard temporary files
+ markup output markup trace, as explained in xindy manual
+ level=n log level, n is 0 (default), 1, 2, or 3
+
+=item C<--out-file> F<outfile.ind> / B<-o> F<outfile.ind>
+
+Output index to file F<outfile.ind>. If this option is not passed, the
+name of the output file is the base name of the first argument and the
+file extension F<ind>. If the raw index is read from standard input,
+this option is mandatory.
+
+=item C<--log-file> F<log.ilg> / B<-t> F<log.ilg>
+
+Output log messages to file F<log.ilg>. These log messages are
+independent from the progress messages that you can influence with
+C<--debug> or C<--verbose>.
+
+=item C<--language> I<lang> / B<-L> I<lang>
+
+The index is sorted according to the rules of language I<lang>. These
+rules are encoded in a xindy module created by I<make-rules>.
+
+If no input encoding is specified via C<--codepage>, a xindy module
+for that language is searched with a latin, a cp, an iso, or ascii
+encoding, in that order.
+
+=item C<--codepage> I<enc> / B<-C> I<enc>
+
+The raw input is in input encoding I<enc>. This information is used to
+select the correct xindy sort module and also the I<inputenc> target
+encoding for C<latex> input markup.
+
+When C<omega> input markup is used, C<utf8> is always used as
+codepage, this option is then ignored.
+
+=item C<--module> I<module> / B<-M> I<module>
+
+Load the xindy module F<module.xdy>. This option may be specified
+multiple times. The modules are searched in the xindy search path that
+can be changed with the environment variable C<XINDY_SEARCHPATH>.
+
+=item C<--input-markup> I<input> / B<-I> I<input>
+
+Specifies the input markup of the raw index. Supported values for
+I<input> are C<latex>, C<omega>, and C<xindy>.
+
+C<latex> input markup is the one that is emitted by default from the
+LaTeX kernel, or by the C<index> macro package of David Jones.
+^^-notation of single byte characters is supported. Usage of LaTeX's
+I<inputenc> package is assumed as well.
+
+C<omega> input markup is like C<latex> input markup, but with Omega's
+^^-notation as encoding for non-ASCII characters. LaTeX I<inputenc>
+encoding is not used then, and C<utf8> is enforced to be the codepage.
+
+C<xindy> input markup is specified in the xindy manual.
+
+=item C<--interactive>
+
+Start xindy in interactive mode. You will be in a xindy read-eval-loop
+where xindy language expressions are read and evaluated interactively.
+
+=item C<--mem-file> I<xindy.mem>
+
+This option is only usable for developers or in very rare situations.
+The compiled xindy kernel is stored in a so-called I<memory file>,
+canonically named F<xindy.mem>, and located in the xindy library
+directory. This option allows to use another xindy kernel.
+
+=back
+
+
+=head1 SUPPORTED LANGUAGES / CODEPAGES
+
+The following languages are supported:
+
+=head2 Latin scripts
+
+ albanian gypsy portuguese
+ croatian hausa romanian
+ czech hungarian russian-iso
+ danish icelandic slovak-small
+ english italian slovak-large
+ esperanto kurdish-bedirxan slovenian
+ estonian kurdish-turkish spanish-modern
+ finnish latin spanish-traditional
+ french latvian swedish
+ general lithuanian turkish
+ german-din lower-sorbian upper-sorbian
+ german-duden norwegian vietnamese
+ greek-iso polish
+
+German recognizes two different sorting schemes to handle umlauts:
+normally, C<ä> is sorted like C<ae>, but in phone books or
+dictionaries, it is sorted like C<a>. The first scheme is known as
+I<DIN order>, the second as I<Duden order>.
+
+C<*-iso> language names assume that the raw index entries are in ISO
+8859-9 encoding.
+
+C<gypsy> is a northern Russian dialect.
+
+=head2 Cyrillic scripts
+
+ belarusian mongolian serbian
+ bulgarian russian ukrainian
+ macedonian
+
+=head2 Other scripts
+
+ greek klingon
+
+=head2 Available Codepages
+
+This is not yet written. You can look them up in your xindy
+distribution, in the F<modules/lang/language/> directory (where
+I<language> is your language). They are named
+F<variant-codepage-lang.xdy>, where F<variant-> is most often empty
+(for german, it's C<din5007> and C<duden>; for spanish, it's C<modern>
+and C<traditional>, etc.)
+
+ < Describe available codepages for each language >
+
+ < Describe relevance of codepages (as internal representation) for
+ LaTeX inputenc >
+
+
+
+=head1 ENVIRONMENT
+
+=over
+
+=item C<XINDY_SEARCHPATH>
+
+A list of directories where the xindy modules are searched in. No
+subtree searching is done (as in TDS-conformant TeX).
+
+If this environment variable is not set, the default is used:
+C<.:>I<modules_dir>C<:>I<modules_dir>C</base>. I<modules_dir> is
+determined at run time, relative to the B<xindy> command location:
+Either it's F<../modules>, that's the case for F<opt>-installations.
+Or it's F<../lib/xindy/modules>, that's the case for
+F<usr>-installations.
+
+=item C<XINDY_LIBDIR>
+
+Library directory where F<xindy.run> and F<xindy.mem> are located.
+
+The modules directory may be a subdirectory, too.
+
+=back
+
+
+=head1 KNOWN BUGS
+
+Option B<-q> also prevents output of error messages. Error messages
+should be output on stderr, progress messages on stdout.
+
+There should be a way to output the final index to stdout. This would
+imply B<-q>, of course.
+
+Codepage C<utf8> should be supported for all languages, and should be
+used as internal codepage for LaTeX inputenc re-encoding.
+
+
+=head1 SEE ALSO
+
+texindy(1),
+tex2xindy(1)
+
+
+=head1 AUTHOR
+
+Joachim Schrod
+
+
+=head1 LEGALESE
+
+Copyright (c) 2004-2006 by Joachim Schrod.
+
+B<xindy> is free software; you can redistribute it and/or modify it
+under the terms of the GNU General Public License as published by the
+Free Software Foundation; either version 2 of the License, or (at your
+option) any later version.
+
+This program is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+=for Emacs
+#'
+
+=cut
+
+
+use strict;
+
+BEGIN {
+ use vars qw($Revision $VERSION);
+ q$Revision: 1.8 $ =~ /: (\d+)\.(\d+)/ ; # q wg. Emacs indent!
+ my ($major, $minor) = ($1, $2);
+ $VERSION = "$major." . ($minor<10 ? '0' : '') . $minor;
+}
+
+
+# Some common variables.
+# Determine environment. Where is our library directory, and our modules?
+
+use File::Basename;
+our ($cmd_dir, $cmd, $lib_dir, $modules_dir);
+BEGIN {
+ $cmd_dir = dirname($0);
+ $cmd = basename($0);
+
+ # library directory
+ if ( $ENV{XINDY_LIBDIR} ) {
+ $lib_dir = $ENV{XINDY_LIBDIR};
+ } elsif ( '@libdir@' ne '@libdir' . '@' ) { # GNU configure at work?
+ if ( -d '@libdir@/xindy' ) { # /usr style
+ $lib_dir = '@libdir@/xindy';
+ } else {
+ $lib_dir = '@libdir@'; # /opt style
+ }
+ } elsif ( -f "$cmd_dir/../lib/xindy.run" ) { # /opt style
+ $lib_dir = "$cmd_dir/../lib";
+ } elsif ( -d "$cmd_dir/../lib/xindy" ) { # /usr style
+ $lib_dir = "$cmd_dir/../lib/xindy";
+ } else {
+ die "$cmd: Cannot locate xindy library directory";
+ }
+
+ # modules directory
+ if ( -d "$cmd_dir/../modules" ) { # /opt style
+ $modules_dir = "$cmd_dir/../modules";
+ } elsif ( -d "$lib_dir/modules" ) { # /usr style
+ $modules_dir = "$lib_dir/modules";
+ } else {
+ die "$cmd: Cannot locate xindy modules directory";
+ }
+}
+
+
+# Used modules.
+
+use Getopt::Long qw(:config bundling);
+use File::Temp qw(tempfile tmpnam);
+use File::Spec;
+
+
+# Check arguments, store them in proper variables.
+#
+# Do also something for backward compatibility: Check if this is an
+# old-style call. If it is, we have two arguments at the end, and the
+# second-to-last has the extension ".xdy". Then, call the old driver
+# script with the original arguments...
+
+sub usage ()
+{
+ print STDERR <<_EOT_
+
+usage: $cmd [-V?h] [-qv] [-d magic] [-o outfile.ind] [-t log] \\
+ [-L lang] [-C codepage] [-M module] [-I input] \\
+ [--interactive] [--mem-file xindy.mem] \\
+ [idx0 idx1 ...]
+
+GNU-STYLE LONG OPTIONS FOR SHORT OPTIONS:
+
+ -V / --version
+ -? / -h / --help
+ -q / --quiet
+ -v / --verbose
+ -d / --debug (multiple times)
+ (supported: script, keep_tmpfiles, markup, level=n)
+ -o / --out-file
+ -t / --log-file
+ -L / --language
+ -C / --codepage
+ -M / --module (multiple times)
+ -I / --input-markup (supported: latex, omega, xindy)
+
+_EOT_
+ ;
+ exit 1;
+}
+
+our ($quiet, $verbose, %debug,
+ $outfile, $logfile, $language, @codepages, @modules, $input_markup,
+ $interactive, $mem_file);
+$input_markup = 'latex';
+$mem_file = "$lib_dir/xindy.mem";
+
+my @orig_argv = @ARGV;
+parse_options();
+
+if ( @ARGV == 2 ) {
+ if ( $ARGV[0] =~ /\.xdy$/ ) {
+ exec "$cmd_dir/xindy.v2", @orig_argv;
+ }
+}
+
+
+# This script creates temporary files. Whenever a file is created, its
+# name is added to @temp_files. In an END handler, the temporary files
+# are deleted. Signal handlers are set up to get proper program
+# termination on user-induced signals. During program calls with
+# system, SIGINT and
+
+our @temp_files = ();
+handle_signals();
+END {
+ unlink (@temp_files) if ( @temp_files && ! $debug{keep_tmpfiles} );
+}
+
+
+# Raw index handling: xindy is not able (yet?) to handle arguments
+# Perl-style, so we do it instead. We gather the raw index in a
+# temporary file. We also process it by the filter program it if
+# wanted. Signal handlers will discard temporary files if necessary.
+
+our $raw_index = File::Spec->devnull;
+unless ( $interactive ) {
+ $raw_index = create_raw_index(); # processes @ARGV
+ my $filter_cmd = '';
+ if ( $input_markup eq 'latex' ) {
+ $filter_cmd = "$cmd_dir/tex2xindy";
+ } elsif ( $input_markup eq 'omega' ) {
+ $filter_cmd = "$cmd_dir/tex2xindy -o";
+ }
+ $raw_index = filter_index ($filter_cmd, $raw_index)
+ if $filter_cmd;
+}
+
+
+# Execution: Obey environment variables, create xindy start
+# expression, and eventually call it.
+
+my $xindy_expression = xindy_expression(); # accesses global option vars
+my $exit_code = call_xindy ($mem_file, $xindy_expression);
+
+
+# Finished: exit, clean up in END handler.
+
+exit ($exit_code);
+
+
+# ------------------------------------------------------------
+
+
+sub parse_options() {
+
+ my (@debug);
+ GetOptions(
+ 'version|V' => sub { output_version(0); },
+ 'internal-version' => sub { output_version(1); },
+ 'help|h|?' => \&usage,
+ 'quiet|q' => \$quiet,
+ 'verbose|v' => \$verbose,
+ 'debug|d=s' => \@debug,
+ 'out-file|o=s' => \$outfile,
+ 'log-file|t=s' => \$logfile,
+ 'language|L=s' => \$language,
+ 'codepage|C=s' => \@codepages,
+ 'module|M=s' => \@modules,
+ 'input-markup|I=s' => \$input_markup,
+ 'interactive' => \$interactive,
+ 'mem-file=s' => \$mem_file,
+ )
+ or usage();
+
+ # Debug option values are easier to test in a hash. Clean up trace
+ # level options, too.
+ %debug = map { $_ => 1 } @debug;
+ my @trace_level = grep /^level=/, @debug;
+ if ( @trace_level > 1 ) {
+ print STDERR "You can only specify one trace level.\n\n";
+ exit (1);
+ }
+ delete $debug{$trace_level[0]};
+ $trace_level[0] =~ s/^level=// ;
+ $debug{trace_level} = $trace_level[0];
+
+ # Check for unsupported debug option values.
+ my %debug_check = %debug;
+ foreach my $magic ( qw(script keep_tmpfiles markup trace_level) ) {
+ delete $debug_check{$magic};
+ }
+ if ( %debug_check ) {
+ my @magic = keys(%debug_check);
+ print STDERR "Unsupported argument for --debug: @magic\n";
+ usage();
+ }
+
+ # Script debugging implies running it verbose and not quiet.
+ if ( $debug{script} ) {
+ $verbose = 1;
+ $quiet = 0;
+ }
+
+ # Default for the output file: first argument, with extension replaced
+ # by ".ind".
+ unless ( $outfile || $interactive ) {
+ if ( @ARGV == 0 ) {
+ print STDERR
+"You need to specify --out-file if the raw index is read from standard input.\n\n";
+ usage();
+ }
+ my ($name, $path, $suffix) = fileparse ($ARGV[0], '\.[^\.]+');
+ $outfile = "$path$name.ind";
+ }
+
+ # FIXME: xindy wants a log file. Really?
+ $logfile = File::Spec->devnull unless $logfile;
+
+ # Modules fixup: If they have no .xdy suffix, they get one.
+ @modules = map { /\.xdy$/ ? $_ : "$_.xdy" } @modules;
+
+ # Check that the input markup is known.
+ # omega markup implies codepage utf8.
+ if ( $input_markup &&
+ $input_markup ne 'latex' && $input_markup ne 'omega' &&
+ $input_markup ne 'xindy' ) {
+ print STDERR "Unsupported input markup $input_markup.\n\n";
+ usage();
+ }
+ if ( $input_markup eq 'omega' ) {
+ @codepages = qw(utf8);
+ }
+
+}
+
+
+
+#
+# SIGNAL HANDLING
+#
+# FIXME: This is not good enough. We also need to kill subprocesses,
+# i.e., filter or xindy, if they are running.
+
+# Our signal handler function just exits. Temporary files are deleted
+# by the END section above. Actually, the exit code looses the
+# information about the received signal, that's not good but shouldn't
+# hurt either...
+
+sub signal_exit() {
+ exit (2);
+}
+
+sub handle_signals () {
+ $SIG{'HUP'} = \&signal_exit; # 1
+ $SIG{'INT'} = \&signal_exit; # 2
+ $SIG{'QUIT'} = \&signal_exit; # 3
+ $SIG{'TERM'} = \&signal_exit; # 15
+}
+
+
+
+#
+# CREATION OF RAW XINDY INDEX
+#
+
+# Handle input files Perl-style. Returns file name that contains
+# concatenated input file contents.
+
+sub create_raw_index () {
+ my ($output, $outfile) = tempfile();
+ push (@temp_files, $outfile);
+ while ( <> ) {
+ print $output $_;
+ }
+ close ($output);
+ print "concatenated xindy input file: $outfile\n" if $debug{script};
+ return $outfile;
+}
+
+
+# Run a filter over raw index. Returns file name with filtered raw
+# index, supposed to be in xindy input format.
+#
+# We assume the file names to be safe from shell meta characters since
+# they were computed by File::Temp.
+
+sub filter_index ( $$ ) {
+ my ($filter, $input) = @_;
+ my $output = tmpnam();
+ push (@temp_files, $output);
+ print "Running filter: $filter <$input >$output\n" if $verbose;
+ system "$filter <$input >$output";
+ print "filtered xindy input file: $output\n" if $debug{script};
+ return $output;
+}
+
+
+
+#
+# XINDY EXECUTION
+#
+
+# Construct final xindy expression, from options.
+
+sub xindy_expression () {
+ my ($logging, $tracing, $trace_level);
+
+ # Determine language module of make-rules framework. Part of the
+ # complexity below is from compatibility with the TLC2
+ # description. We need to support the language names listed there,
+ # even though they are not current. In addition, the codepage
+ # option was introduced later and we need to guess it. This
+ # guesswork will often be wrong, sadly.
+ #
+ # FIXME: I didn't see all languages. What's on with gypsy and
+ # hausa?
+ if ( $language ) {
+ my $ld = "$modules_dir/lang";
+ my $variant;
+ # If there is no language directory, this might be a variant.
+ # Language names and variants are separated by hyphens. The
+ # variant name "din" is an abbreviation for "din5007". The
+ # variant name "iso" is ignored, that is actually a codepage
+ # name.
+ #
+ # FIXME: Or is "iso" the variant "translit"?!
+ if ( ! -d "$ld/$language" ) {
+ $language =~ /^([^-]*)-(.*)/ ; # language name ends with 1st hyphen
+ if ( $2 && -d "$ld/$1" ) { # $2 is not set if the regex didn't match
+ $language = $1;
+ $variant = "$2-" unless ( $2 eq 'iso' );
+ $variant =~ s/din/din5007/ ;
+ }
+ }
+ # Let's guess the codepage. We take any that starts with
+ # "latin", "cp", "iso8859", or "ascii".
+ @codepages = qw(latin cp iso8859 ascii) unless @codepages;
+ my @styles;
+ foreach my $cp ( @codepages ) {
+ @styles = glob("$ld/$language/$variant$cp*-lang.xdy");
+ last if @styles;
+ }
+ unless ( @styles ) {
+ print STDERR "Cannot locate xindy module for language $language";
+ print STDERR " in codepage $codepages[0]" if ( @codepages == 1 );
+ print STDERR ".\n";
+ exit (1);
+ }
+ # Extract language module name: It's the relative part after
+ # the module directory. Put it at the front of the list of
+ # needed modules. It's important that the language module is
+ # loaded first, it defines the sort rulesets, and subsequent
+ # modules shall be able to add sort rules.
+ unshift (@modules, substr($styles[0], length("$modules_dir/")));
+ print "Found language module $styles[0]\n" if $debug{script};
+ }
+
+ # If there is more than one xindy module, construct a style file.
+ # This is bad, of course; xindy should handle a list of style
+ # files itself.
+ my $style_file = $modules[0]; # will be undef if @modules is not set
+ if ( @modules > 1 ) {
+ my $sf;
+ ($sf, $style_file) = tempfile();
+ push (@temp_files, $style_file);
+ foreach my $module ( @modules ) {
+ print $sf "(require \"$module\")\n";
+ }
+ close ($sf);
+ }
+
+ $style_file = quotify($style_file);
+ $outfile = quotify($outfile);
+ $logging = ':logfile ' . quotify($logfile) if $logfile;
+ $tracing = ':markup-trace :on' if $debug{markup};
+ $trace_level = ":trace-level $debug{trace_level}" if $debug{trace_level};
+
+ my $exp = <<_EOT_
+(progn
+ (searchpath ".:$modules_dir:$modules_dir/base")
+ (xindy:startup
+ :idxstyle $style_file
+ :rawindex "$raw_index"
+ :output $outfile
+ $logging
+ $tracing
+ $trace_level)
+ (exit))
+_EOT_
+ ;
+
+ return $exp;
+}
+
+
+# Actual xindy call. Returns exit code.
+
+sub call_xindy ( $$ ) {
+ my ($mem_file, $xindy_exp) = @_;
+
+ my @command = ("$lib_dir/xindy.run", '-q',
+ '-B', $lib_dir, '-M', $mem_file, '-E', 'iso-8859-1');
+ if ( $interactive ) {
+ print "Proposed xindy expression:\n\n$xindy_exp\n" unless $quiet;
+ } else {
+ push (@command, '-x', $xindy_exp);
+ }
+
+ if ( $debug{script} ) {
+ print "modules directory: $modules_dir.\n";
+ print "command: @command\n";
+ }
+
+ if ( $quiet && ! $interactive ) {
+ open (STDOUT, '>', File::Spec->devnull);
+ }
+ system @command;
+ if ( $? == -1 ) {
+ print STDERR "$cmd: Could not execute xindy kernel: $!\n";
+ } elsif ( $? & 127 ) {
+ return 4;
+ } else {
+ return $? >> 8;
+ }
+}
+
+sub output_version ( ;$ ) { # optional arg: internal-version flag
+ my $internal = shift;
+ output_xindy_release() unless $internal;
+ print "$cmd script version: $VERSION\n";
+ my $exit_code = call_xindy($mem_file, '(xindy:startup :show-version t)');
+ exit ($exit_code);
+}
+
+
+sub output_xindy_release () {
+ my $version = 'unknown';
+ my $version_file;
+ if ( -f "$cmd_dir/../VERSION" ) {
+ $version_file = "$cmd_dir/../VERSION";
+ } elsif ( -f "$lib_dir/VERSION" ) {
+ $version_file = "$lib_dir/VERSION";
+ }
+ if ( $version_file ) {
+ if ( open(VERSION, "<$version_file") ) {
+ while ( $version = <VERSION> ) {
+ chomp ($version);
+ $version =~ s/\#.*// ;
+ $version =~ s/^\s+// ;
+ $version =~ s/\s+$// ;
+ last if $version;
+ }
+ close (VERSION);
+ }
+ }
+ print "xindy release: $version\n";
+}
+
+
+# Helper function: Make a proper quoted Lisp string.
+
+sub quotify ( $ ) {
+ my $s = shift;
+ $s =~ s:[\\\"]:\\&1:g ; # quote double-quote and backslash
+ return "\"$s\"";
+}
+
+
+
+#======================================================================
+#
+# $Log: xindy.pl,v $
+# Revision 1.8 2006/07/30 10:30:42 jschrod
+# Check if an exec() error happened and output an error message.
+# (Ticket 1230801)
+#
+# Revision 1.7 2006/07/19 00:29:56 jschrod
+# Support for omega input markup.
+#
+# Revision 1.6 2005/05/02 19:16:26 jschrod
+# Support new RTE 2.2, built with CLISP 2.33.2, that needs -E option
+# to specify the default charset.
+# xindy also has proper version output in Lisp now, no need for
+# workarounds in script any more.
+#
+# Revision 1.5 2004/11/01 22:48:51 jschrod
+# Locate xindy script.
+# Terminate on option error.
+# Fix up version output.
+#
+# Revision 1.4 2004/08/05 14:10:54 jschrod
+# Language variant names may have hyphens now. Language names must
+# not have hyphens -- the first hyphen of the -L option argument
+# separates language and variant name.
+# Revision 1.3 was completely off -- I committed a copy of texindy.
+# I really don't know what happened there.
+#
+# Revision 1.2 2004/05/26 21:30:11 jschrod
+# Added POD documentation.
+#
+# Revision 1.1 2004/05/24 19:47:13 jschrod
+# Introduce new driver script, as part of the "Companion Release".
+#
diff --git a/Build/source/utils/xindy/user-commands/xindy.v2.1 b/Build/source/utils/xindy/user-commands/xindy.v2.1
new file mode 100644
index 00000000000..0afda89a76e
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/xindy.v2.1
@@ -0,0 +1,90 @@
+.\" Copyright (c) 1996,1997 Roger Kehr
+.\" See section COPYING for conditions for redistribution
+.TH xindy 1L "February 1997" "Roger Kehr" ""
+.de BP
+.sp
+.ti \-.2i
+\(**
+..
+
+.SH NAME
+xindy \- a fle\fBx\fPible \fBind\fPexing s\fBy\fPstem
+
+.SH SYNOPSIS
+.hy 0
+.na
+.TP
+.B xindy
+.RB "[\|" \-t "\|]"
+.RB "[\|" \-l\ \fIlogfile\fP "\|]"
+.RB "[\|" \-o\ \fIoutfile\fP "\|]"
+.RB "[\|" \-f\ \fIfilterprog\fP "\|]"
+.RB "[\|" \-L\ \fIn\fP "\|]"
+.RB "[\|" \-v "\|]"
+.I indexstyle rawindex
+
+.SH DESCRIPTION
+.B xindy
+is a general purpose index processor.
+
+.SH OPTIONS
+.TP
+.B "\-o \fIoutfile"
+Writes the tagged index to the specified file. If omitted, the name of
+the \fIrawindex\fP is used with its extension changed to \fB.ind\fP.
+
+.TP
+.B "\-l \fIlogfile"
+Writes logging information into the specified file.
+
+.TP
+.B "\-f \fInfilterprog"
+Run \fIfilterprog\fP on \fIrawindex\fP before reading. The program
+must act as a filter reading from stdin and writing to stdout.
+
+.TP
+.B "\-L \fIn"
+Sets the logging level to \fIn\fI with \fIn\fI one of {1,2,3}
+
+.TP
+.B "\-t"
+Activates the \fBmarkup-trace\fP function. Writes symbolic
+markup-tags to the final index which can be used to trace the markup
+process.
+
+.TP
+.B \-v
+Display the version number.
+
+.TP
+.B \-help
+Show a summary of the command-line options.
+
+.SH "SEE ALSO"
+tex2xindy(1L),
+makeindex(1L),
+makeindex4(1L)
+
+For detailed information about the format of the \fIindexstyle\fP and
+the \fIrawindex\fP refer to the documentation that comes with \fBxindy\fP.
+
+.SH "AUTHOR"
+Roger Kehr, Institut fuer Theoretische Informatik, TH-Darmstadt
+
+.SH COPYING
+Copyright (c) 1996,1997 Roger Kehr.
+.PP
+Permission is granted to make and distribute verbatim copies of
+this manual provided the copyright notice and this permission notice
+are preserved on all copies.
+.PP
+Permission is granted to copy and distribute modified versions of this
+manual under the conditions for verbatim copying, provided that the
+entire resulting derived work is distributed under the terms of a
+permission notice identical to this one.
+.PP
+Permission is granted to copy and distribute translations of this
+manual into another language, under the above conditions for modified
+versions, except that this permission notice may be included in
+translations approved by the Free Software Foundation instead of in
+the original English.
diff --git a/Build/source/utils/xindy/user-commands/xindy.v2.in b/Build/source/utils/xindy/user-commands/xindy.v2.in
new file mode 100644
index 00000000000..987e37c5640
--- /dev/null
+++ b/Build/source/utils/xindy/user-commands/xindy.v2.in
@@ -0,0 +1,302 @@
+#!@XINDY_PERL@
+# $Id: xindy.in,v 1.14 2005/05/02 19:16:27 jschrod Exp $
+#------------------------------------------------------------
+#
+# This is the old perl-frontend to the xindy indexing system.
+#
+# It is kept for compatibility reasons and is named xindy.v2 in
+# production. Most probably, you will not want to use it any more.
+#
+# This code is not supported. Don't report bugs, switch to the current
+# xindy script.
+#
+
+($progname = $0) =~ s#.*/##;
+
+$Date = `date`;
+
+require "getopts.pl";
+
+# $debug = 1;
+
+$numArgs = $#ARGV; # save number of command line arguments
+
+# parse for command-line options
+&Getopts( "dtvnio:l:f:L:" );
+
+$debug = $opt_d;
+
+# some debug-output
+print STDERR "progname: $progname\n" if $debug;
+print STDERR "\@ARGV: @ARGV\n" if $debug;
+print STDERR "\$#ARGV: $#ARGV\n" if $debug;
+
+#
+# Synopsis
+#
+
+sub usage {
+ print STDERR "\n$progname\t[-t] [-v] [-o output] [-l logfile] [-f filtprg] [-L n]
+\tindexstyle raw-index\n";
+ print STDERR <<EOMSG;
+
+options:
+
+ -t Enters tracing-mode for markup-tags.
+ -v Displays the current version of xindy.
+ -o Specifies the output-file for the tagged index. If omitted, the
+ name of the raw-index is taken, with its extension
+ substituted by \`.ind'.
+ -f filt Preprocess raw-index with \`filtprg' before reading.
+ -l file Logfile into which xindy writes useful information.
+ -L n Enter logging level \`n' = {1,2,3}.
+
+EOMSG
+ exit(2);
+}
+
+
+#
+# These functions check for the correct installation of the base
+# system.
+#
+
+sub check_bin {
+ print "runfile = $runfile\n" if $debug;
+ if ( ! -e $runfile ) {
+ print "Can't find \`$runfile' !\n";
+ exit(3);
+ }
+ if ( ! -x $runfile ) {
+ print "File \`$runfile' not executable !\n";
+ exit(4);
+ }
+}
+
+sub check_mem {
+ print "memfile = $memfile\n" if $debug;
+ if ( ! -e $memfile ) {
+ print "Can't find \`$memfile' !";
+ exit(5);
+ }
+}
+
+#
+# This function takes a string and quotes the `"' and '\' characters
+# with a leading backslash.
+#
+sub quote_string {
+ local($str) = @_;
+ $str =~ s#\\#\\\\#g;
+ $str =~ s#"#\\\"#g;
+ return $str;
+}
+
+sub remove_suffix {
+ local($str) = @_;
+ $str =~ s#\.[^\.]*$##;
+ return $str;
+}
+
+#
+# The generic signal handler that removes temporary files if
+# necessary.
+#
+
+sub sig_catch {
+ unlink $tmpfile;
+ exit(9);
+}
+
+sub sig_setup {
+ $SIG{"HUP"} = "sig_catch"; # 1
+ $SIG{"INT"} = "sig_catch"; # 2
+ $SIG{"QUIT"} = "sig_catch"; # 3
+ $SIG{"TERM"} = "sig_catch"; # 15
+ $SigHandlerSet = 1;
+}
+
+#
+# here we go...
+#
+
+$numArgs = $#ARGV; # number of Commandline-Arguments
+
+if ( $numArgs eq 1 || $opt_v || $opt_i ) { # two arguments or -v,-i specified
+ $Idxsty = $ARGV[0];
+ $Rawidx = $ARGV[1];
+} else {
+ &usage;
+}
+
+print "Idxsty = $Idxsty\n" if $debug;
+print "Rawidx = $Rawidx\n" if $debug;
+
+# Define the default xindy library directory. It should be in a
+# sibling lib tree, maybe in a xindy subdirectory. Or the user may
+# set XINDY_LIBDIR explicitely.
+
+$0 =~ m:^(.*)/[^/]*$: ;
+$cmd_dir = $1 || '.';
+
+# library directory
+if ( $ENV{XINDY_LIBDIR} ) {
+ $LibDir = $ENV{XINDY_LIBDIR};
+ print "XINDY_LIBDIR (from Environment) = $LibDir\n" if $debug;
+} elsif ( -f "$cmd_dir/../lib/xindy.run" ) { # /opt style
+ $LibDir = "$cmd_dir/../lib";
+} elsif ( -d "$cmd_dir/../lib/xindy" ) { # /usr or /usr/local style
+ $LibDir = "$cmd_dir/../lib/xindy";
+} else {
+ die "Cannot locate xindy library directory";
+}
+$XINDY_LIBDIR=$LibDir;
+print "XINDY_LIBDIR = $XINDY_LIBDIR\n" if $debug;
+
+# modules directory
+if ( -d "$cmd_dir/../modules" ) { # /opt style
+ $modules_dir = "$cmd_dir/../modules";
+} elsif ( -d "$LibDir/modules" ) { # /usr or /usr/local style
+ $modules_dir = "$LibDir/modules";
+} else {
+ die "Cannot locate xindy modules directory";
+}
+
+$memfile="$XINDY_LIBDIR/xindy.mem";
+$runfile="$XINDY_LIBDIR/xindy.run";
+
+# Set initial searchpath
+$SEARCHPATH="(searchpath \".:$modules_dir\")";
+
+# Add/replace (depends on the specification) the search path according
+# to the environment variable
+if ( $XINDY_SEARCHPATH ne "" ) {
+ $SEARCHPATH="$SEARCHPATH (searchpath \"$XINDY_SEARCHPATH\")";
+}
+print "SEARCHPATH = $SEARCHPATH\n" if $debug;
+
+if ($opt_v) { $version = ":show-version t"; }
+if ($opt_t) { $tracing = ":markup-trace t"; }
+if ($opt_n) { $try = 1; }
+if ($opt_c) { $compile = "on"; }
+if ($opt_i) { $interactive = "on"; }
+if ($opt_m) { $memfile = $opt_m; }
+if ($opt_o) { $output = $opt_o; }
+if ($opt_f) { $filtprg = $opt_f; }
+if ($opt_l) { $logfile = $opt_l; }
+if ($opt_L) { $level = $opt_L; }
+
+# Now check if everything is present.
+
+if ( ! $try ) {
+ &check_bin;
+ &check_mem;
+}
+
+$xindy_run = "$runfile -B $XINDY_LIBDIR -q -M $memfile -E iso-8859-1";
+print "xindy_run = $xindy_run\n" if $debug;
+
+# Run xindy interactive if this was specified via -i.
+if ( $interactive ) {
+ print "$xindy_run\n" if $debug;
+ exec "$xindy_run";
+}
+
+# If specified via -v start xindy for showing the version-message.
+if ( $version ) {
+ print "$xindy_run -x \"(progn (xindy:startup $version) (exit))\"" if $debug;
+ exec "$xindy_run -x \"(progn (xindy:startup $version) (exit))\"";
+}
+
+# Quote the filenames, such that LISP can read it.
+$Idxsty = &quote_string($Idxsty);
+$Rawidx = &quote_string($Rawidx);
+
+# If no output-file was specified
+if ( ! $output ) {
+ # remove the suffix, if one exists
+ $output = &remove_suffix($Rawidx);
+ # append suffix ".ind"
+ $output = &quote_string("$output.ind");
+}
+
+# Run the intermediate filter if specified via -f.
+if ( $filtprg ) {
+ # create tmpfile
+ $tmpfile = "/tmp/xindy.$$";
+ &sig_setup; # setup signal handler for cleanup
+ print "Running filter: $filtprg < $Rawidx > $tmpfile\n";
+ system "$filtprg < $Rawidx > $tmpfile";
+ print "Finished running filter.\n\n";
+ $Rawidx = &quote_string($tmpfile);
+}
+
+# Prepare logfile option.
+if ( $logfile ) {
+ $logfile = ":logfile \"" . &quote_string($logfile) . "\"";
+}
+
+# Prepare trace-level.
+if ( $level ) {
+ $logging = ":trace-level $level";
+}
+
+# This is the complete LISP-SEXP needed to start the system.
+$xindy_cmd = "-x '(progn
+ $SEARCHPATH
+ (xindy:startup :idxstyle \"$Idxsty\"
+ :rawindex \"$Rawidx\"
+ :output \"$output\"
+ $logfile $version $tracing $logging)
+ (exit))'";
+
+
+# Run program and do final cleanup
+
+if ( $try ) {
+ print "$xindy_run $xindy_cmd";
+} else {
+ if ( $SigHandlerSet ) {
+ system "$xindy_run $xindy_cmd";
+ unlink $tmpfile;
+ } else {
+ exec "$xindy_run $xindy_cmd";
+ }
+}
+
+
+#----------------------------------------------------------------------
+#
+# $Log: xindy.in,v $
+# Revision 1.14 2005/05/02 19:16:27 jschrod
+# Support new RTE 2.2, built with CLISP 2.33.2, that needs -E option
+# to specify the default charset.
+# xindy also has proper version output in Lisp now, no need for
+# workarounds in script any more.
+#
+# Revision 1.13 2004/05/24 19:52:02 jschrod
+# Pass -B option to CLISP.
+# Change might be from Thomas Henlich <henlich@mmers1.mw.tu-dresden.de>,
+# made at 1999-12-22.
+#
+# Revision 1.12 2004/05/24 19:47:13 jschrod
+# Introduce new driver script, as part of the "Companion Release".
+#
+# Revision 1.11 1999/09/23 07:22:39 kehr
+# Fixed an exit code problem reported by Peter Meszaros
+# <pmeszaros@effice.hu>.
+#
+# Revision 1.10 1998/03/12 10:58:21 kehr
+# Fixed bug with -f option.
+#
+# Revision 1.9 1997/04/03 13:23:51 kehr
+# Many bugs fixed during testing.
+#
+# Revision 1.8 1997/04/03 09:38:54 kehr
+# First check-in of the rewritten xindy script. The former shell-script
+# has now been replaced by a perl-script.
+#
+
+# Local Variables:
+# mode: perl
+# End: