From: Charles Bailey Date: Thu, 2 Mar 2000 03:56:13 +0000 (+0000) Subject: Satisfy various Pod::* needs for Unix syntax (Charles Lane) X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=7de3340ab87c076f78c8de58446d891d462a7333;p=p5sagit%2Fp5-mst-13.2.git Satisfy various Pod::* needs for Unix syntax (Charles Lane) (Should move to File::Spec in long term) p4raw-id: //depot/vmsperl@5421 --- diff --git a/lib/Pod/Checker.pm b/lib/Pod/Checker.pm index 281bd11..6611a05 100644 --- a/lib/Pod/Checker.pm +++ b/lib/Pod/Checker.pm @@ -307,6 +307,7 @@ use strict; use Carp; use Exporter; use Pod::Parser; +require VMS::Filespec if $^O eq 'VMS'; use vars qw(@ISA @EXPORT); @ISA = qw(Pod::Parser); @@ -546,6 +547,7 @@ The error level, should be 'WARNING' or 'ERROR'. sub poderror { my $self = shift; my %opts = (ref $_[0]) ? %{shift()} : (); + $opts{-file} = VMS::Filespec::unixify($opts{-file}) if (exists($opts{-file}) && $^O eq 'VMS'); ## Retrieve options chomp( my $msg = ($opts{-msg} || "")."@_" ); @@ -670,6 +672,7 @@ sub end_pod { ## print the number of errors found my $self = shift; my $infile = $self->input_file(); + $infile = VMS::Filespec::unixify($infile) if $^O eq 'VMS'; my $out_fh = $self->output_handle(); if(@{$self->{_list_stack}}) { diff --git a/lib/Pod/Parser.pm b/lib/Pod/Parser.pm index a00f0ee..1abd690 100644 --- a/lib/Pod/Parser.pm +++ b/lib/Pod/Parser.pm @@ -196,6 +196,7 @@ use strict; use Pod::InputObjects; use Carp; use Exporter; +require VMS::Filespec if $^O eq 'VMS'; @ISA = qw(Exporter); ## These "variables" are used as local "glob aliases" for performance @@ -832,6 +833,7 @@ sub parse_text { my $errorsub = (@seq_stack > 1) ? $self->errorsub() : undef; while (@seq_stack > 1) { ($cmd, $file, $line) = ($seq->name, $seq->file_line); + $file = VMS::Filespec::unixify($file) if $^O eq 'VMS'; $ldelim = $seq->ldelim; ($rdelim = $ldelim) =~ tr//; $rdelim =~ s/^(\S+)(\s*)$/$2$1/; @@ -1065,6 +1067,7 @@ sub parse_from_filehandle { if (length($1) > 1 and ! $self->{_CUTTING}) { my $errorsub = $self->errorsub(); my $file = $self->input_file(); + $file = VMS::Filespec::unixify($file) if $^O eq 'VMS'; my $errmsg = "*** WARNING: line containing nothing but whitespace". " in paragraph at line $nlines in file $file\n"; (ref $errorsub) and &{$errorsub}($errmsg) diff --git a/t/pod/testp2pt.pl b/t/pod/testp2pt.pl index 234a527..22bbaf8 100644 --- a/t/pod/testp2pt.pl +++ b/t/pod/testp2pt.pl @@ -32,6 +32,7 @@ BEGIN { require Pod::PlainText; @ISA = qw( Pod::PlainText ); } + require VMS::Filespec if $^O eq 'VMS'; } ## Hardcode settings for TERMCAP and COLUMNS so we can try to get @@ -41,6 +42,8 @@ BEGIN { sub catfile(@) { File::Spec->catfile(@_); } my $INSTDIR = abs_path(dirname $0); +$INSTDIR = VMS::Filespec::unixpath($INSTDIR) if $^O eq 'VMS'; +$INSTDIR =~ s#/$## if $^O eq 'VMS'; $INSTDIR = (dirname $INSTDIR) if (basename($INSTDIR) eq 'xtra'); $INSTDIR = (dirname $INSTDIR) if (basename($INSTDIR) eq 'pod'); $INSTDIR = (dirname $INSTDIR) if (basename($INSTDIR) eq 't');