This doesn't do automatic searches for extensions (I've got a bit
of DCL that *almost* does this, but you'd have to tell it what you
*don't* want built). Instead it just changes the syntax of the
extensions in $Config{extensions} from
File::Glob to File/Glob
Included is is a patch to CONFIGURE.COM, to SUBCONFIGURE.COM for
the "canonical" BUILD_EXT.COM, and a patch to t/lib/glob-basic.t
so that it'll won't give us a bogus error when (after the change
above) it actually *does* run on VMS.
--- configure.com-orig Fri Mar 3 23:55:23 2000
+++ configure.com Fri Mar 3 23:48:24 2000
@@ -1969,6 +1969,40 @@
$ rp = "[''dflt'] "
$ GOSUB myread
$ if ans.eqs."" then ans = "''dflt'"
+$ a = ""
+$ j = 0
+$ xloop1:
+$ x = f$elem(j," ",ans)
+$ j = j + 1
+$ if x .eqs. " " then goto exloop1
+$ xloop2:
+$ k = f$locate("::",x)
+$ if k .ge. f$len(x) then goto exloop2
+$ x = f$extract(0,k,x) + "/" + f$extract(k+2,f$len(x)-2,x)
+$ goto xloop2
+$ exloop2:
+$ a = a + " " + x
+$ goto xloop1
+$ exloop1:
+$ ans = f$edit(a,"trim")
+$!
+$ a = ""
+$ j = 0
+$ xloop3:
+$ x = f$elem(j," ",dflt)
+$ j = j + 1
+$ if x .eqs. " " then goto exloop3
+$ xloop4:
+$ k = f$locate("::",x)
+$ if k .ge. f$len(x) then goto exloop4
+$ x = f$extract(0,k,x) + "/" + f$extract(k+2,f$len(x)-2,x)
+$ goto xloop4
+$ exloop4:
+$ a = a + " " + x
+$ goto xloop3
+$ exloop3:
+$ dflt = f$edit(a,"trim")
+$!
$ extensions = "''ans'"
$ perl_known_extensions = "''dflt'"
$!
--- vms/subconfigure.com-orig Sat Mar 4 00:32:41 2000
+++ vms/subconfigure.com Sat Mar 4 00:32:27 2000
@@ -4326,6 +4326,7 @@
$ Define/User Perl_Env_Tables CLISYM_LOCAL
$ miniperl
($extdir = $ENV{'ext'}) =~ s/::/./g;
+ $extdir =~ s#/#.#g;
if ($extdir =~ /^vms/i) { $extdir =~ s/vms/.vms.ext/i; }
else { $extdir = ".ext.$extdir"; }
($ENV{'extdir'} = "[$extdir]");
--- t/lib/glob-basic.t-orig Fri Mar 3 16:44:47 2000
+++ t/lib/glob-basic.t Sat Mar 4 01:19:53 2000
@@ -38,7 +38,7 @@
# look up the user's home directory
# should return a list with one item, and not set ERROR
-if ($^O ne 'MSWin32' || $^O ne 'VMS') {
+if ($^O ne 'MSWin32' && $^O ne 'VMS') {
eval {
($name, $home) = (getpwuid($>))[0,7];
1;
--
Chuck Lane [EMAIL PROTECTED]