tl;dr: There's a question at the end... So, I'm testing blead on the Itanium testdrive machine, configured with -"des" -"Dusedevel". If I run
mmk install things install somewhere. I failed to RTFM but figured out that it defaults to a directory named after the build tree with _ROOT appended. If I go up and run this: @[.perl-58583d21ac03_ROOT]perl_setup it seems that perl is now that perl.exe, and perldoc is now perldoc.Com in [.perl-58583d21ac03_ROOT.utils] This is good. I uploaded the Pod::Perldoc tarball to the testdrive machine, unpacked it, ran perl Makefile.PL and mmk I see this: $ perl Makefile.PL Checking if your kit is complete... Looks good Generating a GNU-style Makefile Writing Descrip.MMS for Pod::Perldoc Writing MYMETA.yml and MYMETA.json $ mmk test cp [.lib.Pod.Perldoc]BaseTo.pm [.blib.lib.Pod.Perldoc]BaseTo.pm cp [.lib.Pod.Perldoc]GetOptsOO.pm [.blib.lib.Pod.Perldoc]GetOptsOO.pm cp [.lib.Pod.Perldoc]ToANSI.pm [.blib.lib.Pod.Perldoc]ToANSI.pm cp [.lib.Pod.Perldoc]ToChecker.pm [.blib.lib.Pod.Perldoc]ToChecker.pm cp [.lib.Pod.Perldoc]ToMan.pm [.blib.lib.Pod.Perldoc]ToMan.pm cp [.lib.Pod.Perldoc]ToNroff.pm [.blib.lib.Pod.Perldoc]ToNroff.pm cp [.lib.Pod.Perldoc]ToPod.pm [.blib.lib.Pod.Perldoc]ToPod.pm cp [.lib.Pod.Perldoc]ToRtf.pm [.blib.lib.Pod.Perldoc]ToRtf.pm cp [.lib.Pod.Perldoc]ToTerm.pm [.blib.lib.Pod.Perldoc]ToTerm.pm cp [.lib.Pod.Perldoc]ToText.pm [.blib.lib.Pod.Perldoc]ToText.pm cp [.lib.Pod.Perldoc]ToTk.pm [.blib.lib.Pod.Perldoc]ToTk.pm cp [.lib.Pod.Perldoc]ToXml.pm [.blib.lib.Pod.Perldoc]ToXml.pm cp [.lib.Pod]Perldoc.pm [.blib.lib.Pod]Perldoc.pm cp perldoc.pod [.blib.lib.Pod]perldoc.pod MCR PTAC$DKA0:[NCLARK.I.perl-58583d21ac03_ROOT]perl.exe.1 "-MExtUtils::Command" -e "cp" "--" perldoc [.blib.script]perldoc MCR PTAC$DKA0:[NCLARK.I.perl-58583d21ac03_ROOT]perl.exe.1 "-MExtUtils::MY" -e "M Y->fixin(shift)" "--" [.blib.script]perldoc MCR PTAC$DKA0:[NCLARK.I.perl-58583d21ac03_ROOT]perl.exe.1 "-MExtUtils::Command:: MM" "-e" "test_harness(0, '[.blib.lib]', '[.blib.arch]')" t/*.t t/*/*.t t/load.t .............. ok t/man/_get_columns.t .. ok t/pod.t ............... skipped: Pod tests not required for installation. All tests successful. Files=3, Tests=48, 7 wallclock secs ( 0.51 usr + 0.00 sys = 0.51 CPU) Result: PASS using bash, I locate the perldoc that it built: BASH-4.2$ less blib/script/perldoc $ perl 'f$env("procedure")' "''p1'" "''p2'" "''p3'" "''p4'" "''p5'" "''p6'" "''p 7'" "''p8'"! $ exit++ + ++$status!=0 and $exit=$status=undef; while($#ARGV != -1 and $ARGV[$# ARGV] eq ''){pop @ARGV;} #!perl require 5; BEGIN { $^W = 1 if $ENV{'PERLDOCDEBUG'} } use Pod::Perldoc; exit( Pod::Perldoc->run() ); quitting bash, if I install, I see this: $ mmk install Installing perl_root:[lib.Pod]perldoc.pod Installing perl_root:[utils]perldoc. Appending installation info to perl_root:[lib.VMS_IA64.5_19_4]perllocal.pod (this sort of makes sense, as I'm installing the same version as is in blead) the GNV tools reveal the slight expected difference in the two installed files: --- utils/perldoc 2013-09-19 21:12:54 +0530 +++ utils/perldoc.Com 2013-09-19 20:23:10 +0530 @@ -1,6 +1,9 @@ $ perl 'f$env("procedure")' "''p1'" "''p2'" "''p3'" "''p4'" "''p5'" "''p6'" "'' p7'" "''p8'"! $ exit++ + ++$status!=0 and $exit=$status=undef; while($#ARGV != -1 and $ARGV[$ #ARGV] eq ''){pop @ARGV;} -#!perl + eval 'exec perl_root:[000000]Perl.exe -S $0 ${1+"$@"}' + if 0; + +# This "PERLDOC.com" file was generated by "[.UTILS]PERLDOC.PL" require 5; BEGIN { $^W = 1 if $ENV{'PERLDOCDEBUG'} } If I delete the perldoc.com, I get this: $ perldoc Can't open perl script "perl_root:[utils]perldoc.com": no such file or directory %SYSTEM-F-ABORT, abort If I rename perldoc to perldoc.com (after tweaking its privs): $ perldoc Usage: perldoc.com [-hVriDtumFXlT] [-n nroffer_program] [-d output_filename] [-o output_format] [-M FormatterModule] [-w formatter_option:option_value] [-L translation_code] PageName|ModuleName|ProgramName Examples: perldoc.com -f PerlFunc perldoc.com -q FAQKeywords perldoc.com -v PerlVar The -h option prints more help. Also try "perldoc.com perldoc" to get acquainted with the system. [Perldoc v3.20] %SYSTEM-F-NOLOGNAM, no logical name match So, my question is, surely that file should be installed as "utils/perldoc.COM" not "utils/perldoc"? And if so, where in ExtUtils::MakeMaker does it need fixing? (Does anyone on VMS actually install modules from CPAN that have scripts?) Nicholas Clark