John E. Malmberg wrote:
These are the patches needed for the tests FIRST_MAKEFILE.t and PL_FILES.t to pass on VMS.

I have seen no response to the patch in the message I am replying to, is there a problem with it?

There are also two typo fixes in MM_Unix.pm and MM_VMS.pm that are already in [EMAIL PROTECTED] but not in the 6.30_01 tarball.


In lib/ExtUtils/MM_Unix.pm, $^X is a complete specification on VMS, and adding $Config{exe_ext} to it will always produce the wrong file name.

The VMS version of the Perl test harness runs with Perl having the name "Perl.". This bug has not caused tests to fail because find_perl was able to find another copy of Perl in it's search.

To clarify, even though MM_Unix is starting out with an incorrect filename for the Perl on VMS that it is running under, the file_perl() routine is finding a Perl to make it work, which is why this bug has not been visible.

Because directories can not be combined in VMS the way they can be on UNIX macros need to be expanded/eliminated in sub process_PL().


In lib/ExtUtils/MM_VMS.pm, setup the $self->{MAKEFILE} to default to the FIRST_MAKEFILE parameter if present, else to 'descrip.mms'.

'$(FIRST_MAKEFILE)_OLD' needs to have it's macros expanded/eliminated so that it is parsed correctly on VMS before it is stored in $self->{MAKEFILE_OLD}

Then, if the filenames did not already contain a '.' to delimit a file type from the filename, then VMS needs a tailing "." to indicate that there is a blank type instead of the default ".MMS" in this case.


In t/FIRST_MAKEFILE.t, for using a makefile name with out an ".type" on VMS, a trailing dot is generated as above, so the test needs to be modified to not fail when a trailing dot has been added to the filename.


I still need to come up with a solution to an issue with t/basic.t. This test fails on VMS if the logical name "BIN" is defined and the DECC feature DECC$UNIX_PATH_BEFORE_LOGNAME is not not also enabled.

What I missed writing here, is that the GNV product when installed by default creates the logical name BIN that causes the conflict.


And a correction below:

The test t/Installed.t will also fail on VMS if the logical name "foo" is
defined before it runs.  One of the other test scripts will leave this
logical name behind if it is run with out using the test harness.

-John
[EMAIL PROTECTED]
Personal Opinion Only

Reply via email to