summaryrefslogtreecommitdiff
path: root/Build/source/utils/xindy
diff options
context:
space:
mode:
authorAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-03-27 06:27:30 +0000
committerAkira Kakuto <kakuto@fuk.kindai.ac.jp>2017-03-27 06:27:30 +0000
commitd87f8cf45a06f7b5db4d26d44843a947ab47f55f (patch)
tree448bbc16f34c36fec7ab900a0f942e1f60dfb51d /Build/source/utils/xindy
parentd302512de4c569b54ad6a7f1fa035cfdc9ac3001 (diff)
xindy.in: sync
git-svn-id: svn://tug.org/texlive/trunk@43616 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/utils/xindy')
-rw-r--r--Build/source/utils/xindy/ChangeLog6
-rw-r--r--Build/source/utils/xindy/xindy-src/user-commands/xindy.in18
2 files changed, 19 insertions, 5 deletions
diff --git a/Build/source/utils/xindy/ChangeLog b/Build/source/utils/xindy/ChangeLog
index f08f702a789..ed0a831b941 100644
--- a/Build/source/utils/xindy/ChangeLog
+++ b/Build/source/utils/xindy/ChangeLog
@@ -1,3 +1,9 @@
+2017-03-27 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
+
+ * xindy-src/user-commands/xindy.in: If a module name cantains directory
+ separators, the module must certainly be a system module. In this case,
+ we don't call kpsewhich to obtain relatively better performance.
+
2016-06-08 Akira Kakuto <kakuto@fuk.kindai.ac.jp>
* xindy-src/user-commands/xindy.in: Use kpsewhich to search for modules.
diff --git a/Build/source/utils/xindy/xindy-src/user-commands/xindy.in b/Build/source/utils/xindy/xindy-src/user-commands/xindy.in
index 6e1bdbb9f83..27af4b276d9 100644
--- a/Build/source/utils/xindy/xindy-src/user-commands/xindy.in
+++ b/Build/source/utils/xindy/xindy-src/user-commands/xindy.in
@@ -803,12 +803,20 @@ sub xindy_expression () {
push (@temp_files, $style_file);
$style_file=quotify($style_file);
foreach my $module ( @modules ) {
- my $fnmodule=`kpsewhich -progname=xindy -format=othertext $module`;
- if ($fnmodule) {
- chomp($fnmodule);
- print $sf "(require \"$fnmodule\")\n";
- } else {
+ if (($module =~ /\//) || ($module =~ /\\/)) {
+ # If $module contains directory separators, the module must be a system
+ # module. So we don't call kpsewhich.
print $sf "(require \"$module\")\n";
+ } else {
+ # Here we call kpsewhich to search for a module. Thus modules can be under
+ # (anytexmf)/xindy/modules/
+ 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);