diff options
Diffstat (limited to 'Build/source/utils/xindy/TLPATCHES/patch-01-xindy-script')
-rw-r--r-- | Build/source/utils/xindy/TLPATCHES/patch-01-xindy-script | 107 |
1 files changed, 107 insertions, 0 deletions
diff --git a/Build/source/utils/xindy/TLPATCHES/patch-01-xindy-script b/Build/source/utils/xindy/TLPATCHES/patch-01-xindy-script new file mode 100644 index 00000000000..3a82b5269e8 --- /dev/null +++ b/Build/source/utils/xindy/TLPATCHES/patch-01-xindy-script @@ -0,0 +1,107 @@ +diff -ur xindy-2.5.1.orig/user-commands/xindy.1 xindy-src/user-commands/xindy.1 +--- xindy-2.5.1.orig/user-commands/xindy.1 Fri May 30 05:26:05 2014 ++++ xindy-src/user-commands/xindy.1 Tue Feb 23 00:06:15 2016 +@@ -1,4 +1,4 @@ +-.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28) ++.\" Automatically generated by Pod::Man 2.28 (Pod::Simple 3.28) + .\" + .\" Standard preamble: + .\" ======================================================================== +@@ -133,7 +133,7 @@ + .\" ======================================================================== + .\" + .IX Title "xindy 1" +-.TH xindy 1 "2014-05-29" "Release 2.5.1" "xindy" ++.TH xindy 1 "2015-08-15" "Release 2.5.1" "xindy" + .\" For nroff, turn off justification. Always turn off hyphenation; it makes + .\" way too many mistakes in technical documents. + .if n .ad l +diff -ur xindy-2.5.1.orig/user-commands/xindy.in xindy-src/user-commands/xindy.in +--- xindy-2.5.1.orig/user-commands/xindy.in Sun May 11 22:45:44 2014 ++++ xindy-src/user-commands/xindy.in Wed Jun 08 09:30:20 2016 +@@ -353,6 +353,7 @@ + + use Cwd; + use File::Basename; ++use File::Glob qw(bsd_glob); + use File::Spec; + use File::Temp qw(tempfile tmpnam); + use Getopt::Long qw(:config bundling); +@@ -394,7 +395,7 @@ + # FIXME: In standalone installations, modules are still placed in lib + # directory. This is not conformant to FHS. + +-if ( $is_TL ) { # TeX Live and MikTeX ++if ( $is_TL ) { # TeX Live, MiKTeX, or W32TeX + + $modules_dir = Cwd::realpath("$cmd_dir/../../xindy/modules"); + die "$cmd: Cannot locate xindy modules directory" unless -d $modules_dir; +@@ -402,8 +403,12 @@ + if ( $is_w32 ) { + if ( -d "$cmd_dir/../../../bin/win32" ) { # TeX Live + $cmd_dir = "$cmd_dir/../../../bin/win32"; +- } elsif ( -d "$cmd_dir/../../miktex/bin" ) { # MikTeX +- $cmd_dir = "$cmd_dir/../../miktex/bin"; ++ } elsif ( -d "$cmd_dir/../../miktex/bin/x64/internal" ) { # MiKTeX 64-bit ++ $cmd_dir = "$cmd_dir/../../miktex/bin/x64/internal"; ++ } elsif ( -d "$cmd_dir/../../miktex/bin/internal" ) { # MiKTeX 32-bit ++ $cmd_dir = "$cmd_dir/../../miktex/bin/internal"; ++ } elsif ( -d "$cmd_dir/../../../../bin" ) { # W32TeX ++ $cmd_dir = "$cmd_dir/../../../../bin"; + } else { + die "$cmd: Cannot locate bin directory"; + } +@@ -626,7 +631,11 @@ + usage(1); + } + my ($name, $path, $suffix) = fileparse ($ARGV[0], '\.[^\.]+'); ++ if ($path eq ".\\") { ++ $outfile = "$name.ind"; ++ } else { + $outfile = "$path$name.ind"; ++ } + } + + # FIXME: xindy wants a log file. Really? +@@ -706,6 +715,7 @@ + my $output = tmpnam(); + push (@temp_files, $output); + $output=quotify($output); ++ $filter=quotify($filter); + print "Running filter: $filter <$input >$output\n" if $verbose; + system "$filter <$input >$output"; + print "filtered xindy input file: $output\n" if $debug{script}; +@@ -732,6 +742,9 @@ + # + # FIXME: I didn't see all languages. What's on with gypsy and + # hausa? ++ if ( !$language ) { ++ $language = "general"; ++ } + if ( $language ) { + # If there is no language directory, this might be a variant. + # Language names and variants are separated by hyphens. The +@@ -762,7 +775,7 @@ + @codepages = qw(latin cp iso8859 ascii utf8) unless @codepages; + my @styles; + foreach my $cp ( @codepages ) { +- @styles = glob("$lang_dir/$variant$cp*-lang.xdy"); ++ @styles = bsd_glob("$lang_dir/$variant$cp*-lang.xdy"); + last if @styles; + } + unless ( @styles ) { +@@ -790,7 +803,13 @@ + push (@temp_files, $style_file); + $style_file=quotify($style_file); + foreach my $module ( @modules ) { +- print $sf "(require \"$module\")\n"; ++ my $fnmodule=`kpsewhich -progname=xindy -format=othertext $module`; ++ if ($fnmodule) { ++ chomp($fnmodule); ++ print $sf "(require \"$fnmodule\")\n"; ++ } else { ++ print $sf "(require \"$module\")\n"; ++ } + } + close ($sf); + } |