summaryrefslogtreecommitdiff
path: root/Master/tlpkg/bin/tlpkginfo
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/bin/tlpkginfo')
-rwxr-xr-xMaster/tlpkg/bin/tlpkginfo11
1 files changed, 8 insertions, 3 deletions
diff --git a/Master/tlpkg/bin/tlpkginfo b/Master/tlpkg/bin/tlpkginfo
index eac612083d6..80ca069ff64 100755
--- a/Master/tlpkg/bin/tlpkginfo
+++ b/Master/tlpkg/bin/tlpkginfo
@@ -166,7 +166,6 @@ sub find_ctan_dir {
$ctan_dir = "info/translations/vn" if $me eq "ntheorem-vn";
$ctan_dir = "language/armenian/armtex" if $me eq "armenian";
$ctan_dir = "language/basque" if $me eq "hyphen-basque";
- $ctan_dir = "language/hungarian/babel" if $me eq "magyar";
$ctan_dir = "language/hyphenation/dehyph" if $me eq "hyphen-german";
$ctan_dir = "language/hyphenation/elhyphen" if $me eq "hyphen-greek";
$ctan_dir = "macros/generic" if $me eq "genmisc";
@@ -261,9 +260,15 @@ sub catalogue_find_ctan_path {
# which case we return undef here and let the code above find it.
# (The Catalogue maintainers do not consider this a problem.)
#
+ # Subcase of (2): package name is babel-hungarian, but CTAN path is
+ # babel-contrib/hungarian. Sigh.
+ #
+warn "ctan path $ctan_path, pkg $pkgname\n";
if ($ctan_path =~ /file='true'/) {
- if ($ctan_path =~ m,/$pkgname/,) { # pkg dir somewhere in path?
- return undef;
+ (my $ctan_babel_path = $ctan_path) =~ s,babel-contrib/,babel-,;
+ if ($ctan_path =~ m,/$pkgname/,
+ || $ctan_babel_path =~ m,/$pkgname/,) {
+ return undef; # pkg dir somewhere in path.
} else {
return $do_copy # are we called by prepare() or not?
? &copy_to_tmpdir ($pkgname, "$CTAN/$ctan_loc")