LWP builds cleanly but throws a variety of pain-to-track-down test
errors.  This is a VMS-specific patch, not to bypass the tests for VMS
but to get them to work properly.

There are three basic areas of patching:

        the equivalent of "/dev/nul"  on VMS is "nl:"

        $Config{'perlpath'} isn't defined on VMS, use $^X instead.

        VMS can have multiple "version numbers" of the same filename,
        need to do a "while(unlink(..files..)){}" to make sure we get
        rid of all of them.

Patch follows.

--- t/base/mediatypes.t-orig    Tue Apr  4 08:04:59 2000
+++ t/base/mediatypes.t Tue Apr  4 08:04:59 2000
@@ -35,7 +35,7 @@
  ["lwp-0.03.tar.Z"      => "application/x-tar", "compress"],
  [$file                        => "text/plain",],
  ["/random/file"        => "application/octet-stream",],
- ["/dev/null"          => "text/plain",],
+ [($^O eq 'VMS'? "nl:" : "/dev/null") => "text/plain",],
  [$url1                        => "image/gif",],
  [$url2                        => "application/octet-stream",],
  ["x.ppm.Z.UU"         => "image/x-portable-pixmap","compress","x-uuencode",],
--- t/local/http.t-orig Thu Apr  6 17:00:32 2000
+++ t/local/http.t      Thu Apr  6 17:01:32 2000
@@ -16,7 +16,7 @@
     my $d = HTTP::Daemon->new(Timeout => 10);
 
     print "Please to meet you at: <URL:", $d->url, ">\n";
-    open(STDOUT, ">/dev/null");
+    open(STDOUT, $^O eq 'VMS'? ">nl: " : ">/dev/null");
 
     while ($c = $d->accept) {
        $r = $c->get_request;
@@ -36,7 +36,9 @@
 }
 else {
     use Config;
-    open(DAEMON, "$Config{'perlpath'} local/http.t daemon |") or die "Can't exec 
daemon: $!";
+    my $perl = $Config{'perlpath'};
+    $perl = $^X if $^O eq 'VMS';
+    open(DAEMON, "$perl local/http.t daemon |") or die "Can't exec daemon: $!";
 }
 
 print "1..18\n";
--- t/robot/rules-dbm.t-orig    Thu Apr  6 16:59:05 2000
+++ t/robot/rules-dbm.t Thu Apr  6 16:57:48 2000
@@ -115,7 +115,7 @@
 
 untie %cat;                    # Otherwise the next line fails on DOSish
 
-unlink "$file", "$file.pag", "$file.dir", "$file.db";
+while (unlink("$file", "$file.pag", "$file.dir", "$file.db")) {}
 
 # Try open a an emty database without specifying a name
 eval { 
--- t/robot/ua.t-orig   Thu Apr  6 16:59:37 2000
+++ t/robot/ua.t        Thu Apr  6 16:59:28 2000
@@ -15,7 +15,7 @@
     my $d = new HTTP::Daemon Timeout => 10;
 
     print "Please to meet you at: <URL:", $d->url, ">\n";
-    open(STDOUT, $^O eq 'MSWin32' ? ">nul" : ">/dev/null");
+    open(STDOUT, $^O eq 'MSWin32' ?  ">nul" : $^O eq 'VMS' ? ">NL:"  : ">/dev/null");
 
     while ($c = $d->accept) {
        $r = $c->get_request;
@@ -37,7 +37,9 @@
 }
 else {
     use Config;
-    open(DAEMON , "$Config{'perlpath'} robot/ua.t daemon |") or die "Can't exec 
daemon: $!";
+    my $perl = $Config{'perlpath'};
+    $perl = $^X if $^O eq 'VMS';
+    open(DAEMON , "$perl robot/ua.t daemon |") or die "Can't exec daemon: $!";
 }
 
 print "1..7\n";
--
 Drexel University       \V                     --Chuck Lane
----------------->--------*------------<[EMAIL PROTECTED]
     (215) 895-1545      / \  Particle Physics  [EMAIL PROTECTED]
FAX: (215) 895-5934        /~~~~~~~~~~~         [EMAIL PROTECTED]

Reply via email to