summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndy Dougherty <doughera@lafayette.edu>2009-08-13 16:45:26 -0400
committerAndy Dougherty <doughera@lafayette.edu>2009-08-13 17:02:48 -0400
commit4cc80fc4cbbd82e20f7b14b68abb53d552076022 (patch)
tree3533c752c53606b3e9480fb7f6444bfbdb305bdd
parent00d2151d8182d304f692967b33f591602a171442 (diff)
downloadperl-4cc80fc4cbbd82e20f7b14b68abb53d552076022.tar.gz
Install arch-dependent files into $archlib.
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.
-rwxr-xr-xConfigure6
-rwxr-xr-xinstallperl4
2 files changed, 10 insertions, 0 deletions
diff --git a/Configure b/Configure
index 45a76eadeb..d78dde434a 100755
--- 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;
diff --git a/installperl b/installperl
index 59c9c52ea8..6f4a3691e8 100755
--- a/installperl
+++ b/installperl
@@ -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{/[^/]*$}{};