Install arch-dependent files into $archlib.
Andy Dougherty [Thu, 13 Aug 2009 20:45:26 +0000 (16:45 -0400)]
After the great ext/ renaming, installperl stopped properly parsing the
new directory names, and hence did not properly deduce which files are
architecture-dependent.  This was compounded by Configure's failure to
detect ext/IO-Compress as an architecture-dependent module.  These two
patches fix both of those errors.

Configure
installperl

index 45a76ea..d78dde4 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -21645,6 +21645,10 @@ nonxs_extensions=''
 
 : Function to recursively find available extensions, ignoring DynaLoader
 : NOTE: recursion limit of 10 to prevent runaway in case of symlink madness
+: In 5.10.1 and later, extensions are stored in directories
+: like File-Glob instead of the older File/Glob/.  In this scheme,
+: IO-Compress does not appear to be an XS extension, but we want
+: to install it as one.  A.D.  8/2009.
 find_extensions='
     for xxx in *; do
        case "$xxx" in
@@ -21658,6 +21662,8 @@ find_extensions='
                    known_extensions="$known_extensions $this_ext";
                elif $contains "\.c$"  $$.tmp > /dev/null 2>&1; then
                    known_extensions="$known_extensions $this_ext";
+               elif $test "$this_ext" = "IO/Compress"; then
+                   known_extensions="$known_extensions $this_ext";
                elif $test -d $xxx; then
                    nonxs_extensions="$nonxs_extensions $this_ext";
                fi;
index 59c9c52..6f4a369 100755 (executable)
@@ -163,6 +163,10 @@ find(sub {
     {
        my($path, $modname) = ($1,$2);
 
+       # Change hypenated name like Filter-Util-Call to nested
+       # directory name Filter/Util/Call
+       $path =~ s{-}{/}g;
+
        # strip to optional "/lib", or remove trailing component
        $path =~ s{.*/lib\b}{} or $path =~ s{/[^/]*$}{};