diff options
author | Craig A. Berry <craigberry@mac.com> | 2002-01-20 16:49:42 -0600 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2002-01-21 03:53:08 +0000 |
commit | b5de4a98103dfa430d42f468a291a4d863f78b13 (patch) | |
tree | fe2ef8d0e7489b466825d969399c6bc33ff42108 | |
parent | 388296f8bf01d277cfa6ee511a5ff0d85366576f (diff) | |
download | perl-b5de4a98103dfa430d42f468a291a4d863f78b13.tar.gz |
MakeMaker.pm sub-Makefile.PL tweak for VMS
Message-Id: <a05101004b8714273d60c@[172.16.52.1]>
p4raw-id: //depot/perl@14364
-rw-r--r-- | lib/ExtUtils/MakeMaker.pm | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/lib/ExtUtils/MakeMaker.pm b/lib/ExtUtils/MakeMaker.pm index 92a46a8005..435d9842df 100644 --- a/lib/ExtUtils/MakeMaker.pm +++ b/lib/ExtUtils/MakeMaker.pm @@ -406,12 +406,20 @@ sub ExtUtils::MakeMaker::new { for $key (keys %Prepend_dot_dot) { next unless defined $self->{PARENT}{$key}; $self->{$key} = $self->{PARENT}{$key}; - # PERL and FULLPERL may be command verbs instead of full - # file specifications under VMS. If so, don't turn them - # into a filespec. - $self->{$key} = $self->catdir("..",$self->{$key}) - unless $self->file_name_is_absolute($self->{$key}) - || ($^O eq 'VMS' and ($key =~ /PERL$/ && $self->{$key} =~ /^[\w\-\$]+$/)); + unless ($^O eq 'VMS' && $key =~ /PERL$/) { + $self->{$key} = $self->catdir("..",$self->{$key}) + unless $self->file_name_is_absolute($self->{$key}); + } else { + # PERL or FULLPERL will be a command verb or even a command with + # an argument instead of a full file specification under VMS. So, + # don't turn the command into a filespec, but do add a level to the + # path of the argument if not already absolute. + + my @cmd = split /\s+/, $self->{$key}; + $cmd[1] = $self->catfile('[-]',$cmd[1]) + unless (scalar(@cmd) < 2 || $self->file_name_is_absolute($cmd[1])); + $self->{$key} = join(' ', @cmd); + } } if ($self->{PARENT}) { $self->{PARENT}->{CHILDREN}->{$newclass} = $self; |