Re: glob() on VMS totally different than Unix.
[email protected] ("Craig A. Berry")
| Newsgroups | perl.perl5.porters,perl.vmsperl |
|---|---|
| Message-ID | <[email protected]> |
On Jan 22, 2009, at 9:28 AM, Nicholas Clark wrote: > On Thu, Jan 22, 2009 at 10:22:17AM -0500, Peter Prymmer wrote: >> John Malmberg <[email protected]> wrote on 01/22/2009 10:03:16 AM: >> >>> Based on that, the Module::Build component that is using glob >>> needs to >>> be changed to use File::Glob::glob instead. >> >> How about changing Module::Build to use C<opendir()>, C<readdir()>, >> and >> C<closedir()> as recommended in perlport.pod? > > Isn't an explicit call to File::Glob::glob also (implicitly) going > to use > opendir() etc in a consistent fashion, on all platforms on which the > XS is > compiled? Seems like it should, and since 5.6.0, CORE::GLOBAL::glob is implemented in terms of File::Glob::bsd_glob unless PERL_EXTERNAL_GLOB is defined. Turns out, though, that we unilaterally define that in configure.com and this behavior arrived in a patch from Peter on 11 December 1999, not long before 5.6.0. If I'm reading the win32 build procedures correctly, PERL_EXTERNAL_GLOB is hard-wired on there as well. Certainly the path of least resistance is to see if using File::Glob explicitly in Module::Build helps VMS without breaking Win32. I'll give that a try. ________________________________________ Craig A. Berry mailto:[email protected] "... getting out of a sonnet is much more difficult than getting in." Brad Leithauser