: 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
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;
{
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{/[^/]*$}{};