From: Gurusamy Sarathy Date: Mon, 6 Mar 2000 04:48:17 +0000 (+0000) Subject: installperl wasn't putting extensions with two or more X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=68c887af8bbbe8aaa5d726ce35fbbb66c21b6301;p=p5sagit%2Fp5-mst-13.2.git installperl wasn't putting extensions with two or more nested package names in the archlib p4raw-id: //depot/perl@5568 --- diff --git a/installperl b/installperl index dd6d663..656943c 100755 --- a/installperl +++ b/installperl @@ -86,12 +86,28 @@ if ((-e "testcompile") && (defined($ENV{'COMPILE'}))) } find(sub { - if ("$File::Find::dir/$_" =~ m{^ext/[^/]+/(.*)\.pm$}) { - (my $pm = $1) =~ s{^lib/}{}; - $archpms{$pm} = 1; + if ("$File::Find::dir/$_" =~ m{^ext\b(.*)/([^/]+)\.pm$}) { + my($path, $modname) = ($1,$2); + + # strip trailing component first + $path =~ s{/[^/]*$}{}; + + # strip optional "/lib"; + $path =~ s{/lib\b}{}; + + # strip any leading / + $path =~ s{^/}{}; + + # reconstitute canonical module name + $modname = "$path/$modname" if length $path; + + # remember it + $archpms{$modname} = 1; } }, 'ext'); +# print "[$_]\n" for sort keys %archpms; + my $ver = $Config{version}; my $release = substr($],0,3); # Not used presently. my $patchlevel = substr($],3,2);