Michael G Schwern wrote:
John E. Malmberg wrote:
It is only the case where something is building a VMS specific Make
script or building a DCL command file that a filename needs to
specifically be converted to VMS path syntax.

Ok, then build it into the MakeMaker File::Spec overrides and use them.

The File::Spec overrides appear to only exist in MM_VMS. I am not sure how to call them outside of the class for all platforms. And this only affects the two test programs.


The additional VMS specific check in patch submitted to lib/ExtUtils/install.pm is that when VMS is in the extended character set mode, File::Spec::catdir() operates properly.

In the traditional VMS mode, catdir() does work correctly in the case where install.pm calls it, and there may be a few programs out there that depend on it being broken so the behavior has not been changed.

In efs mode, since catdir() will work correctly, the work-around for the traditional bug will cause an incorrectly created filename, so it must not be used.

install.pm may be one of the few cases that this issue shows up.

Calling the MakeMaker File::Spec routines will not fix this issue in this case, because the calling program has to know how to pass the parameters.

The checks for UNIX mode and case preserved are not used in install.pm and can be removed from the code.

For the test inst.t and inst_prefix.t programs, I am not sure how to get them to use the MM_VMS:: instead of File::Spec without causing just as much disruption to the code as the additional vmsify and vmspath.


Regards,
-John
wb8...@qsl.net
Personal Opinion Only

Reply via email to