Install arch-dependent files into $archlib.
authorAndy Dougherty <doughera@lafayette.edu>
Thu, 13 Aug 2009 20:45:26 +0000 (16:45 -0400)
committerDavid Mitchell <davem@iabyn.com>
Thu, 13 Aug 2009 22:40:12 +0000 (23:40 +0100)
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.

(cherry picked from commit 4cc80fc4cbbd82e20f7b14b68abb53d552076022)

Configure
installperl

index dda80a9..d7262bb 100755 (executable)
--- a/Configure
+++ b/Configure
@@ -21635,6 +21635,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
@@ -21648,6 +21652,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 84e8fd8..5eec39e 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{/[^/]*$}{};