Charles Lane wrote:
> Is there some reason that all of the lib/glob*.t tests have had their
> startup code look for "File/Glob" in $Config{'extensions'} ?
Presumably to head off any platforms that don't use the one true globbing
style(?)
> The extensions string has File::Glob, and the result is that the
> lib/glob* tests are all skipped.
>
> I'd *guess* that either someone slipped with a text editor, replacing
> :: with /, or that the form of the $Config{'extensions'} has changed
> and we haven't picked up on in in MM_VMS.PM.
>
> Any ideas?
Here is a 5.005_02 perl on Solaris:
% perl -V:extensions
extensions='Fcntl FileHandle IO NDBM_File ODBM_File Opcode POSIX SDBM_File Socket';
oops no directory separators there, so let's see with vmsperl_pre56_3
built on Solaris:
Ah there it is during the run of the Configure script:
% grep extens config.sh | grep -v known | fold
extensions='B ByteLoader Data/Dumper Devel/DProf Devel/Peek Fcntl File/Glob IO
IPC/SysV NDBM_File ODBM_File Opcode POSIX SDBM_File Socket Sys/Hostname
Sys/Syslog attrs re Errno'
and here is the code to do it in the Bourne shell version of Configure:
: Function to recursively find available extensions, ignoring DynaLoader
: NOTE: recursion limit of 10 to prevent runaway in case of symlink madness
find_extensions='
for xxx in *; do
case "$xxx" in
DynaLoader|dynaload) ;;
*)
if $test -f $xxx/$xxx.xs; then
known_extensions="$known_extensions $1$xxx";
elif $test -f $xxx/Makefile.PL; then
nonxs_extensions="$nonxs_extensions $1$xxx";
else
if $test -d $xxx -a $# -lt 10; then
set $1$xxx/ $*;
cd $xxx;
eval $find_extensions;
cd ..;
shift;
etcetera
We'd need to redo this in terms of an F$SEARCH() in configure.com in order to
replicate it, and then we'd have things like [.FILE]GLOB rather than File/Glob
(unless we translated) so the regression test would not notice unless it were
modified for $^O eq 'VMS' or some such. (About the most reliable way to
preserve the FileName CaSes without the hard coded list that configure.com
currently has would be to consult the MANIFEST. file).
Peter Prymmer