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

Reply via email to