From: Charles Bailey Date: Fri, 3 Mar 2000 04:05:28 +0000 (+0000) Subject: Set up Perl invocation method during configuration (Peter Prymmer) X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=commitdiff_plain;h=86fced143cb54596531c0cbca5a40b99db18806f;p=p5sagit%2Fp5-mst-13.2.git Set up Perl invocation method during configuration (Peter Prymmer) Add missing bits to various utilities and install them (ditto) p4raw-id: //depot/vmsperl@5480 --- diff --git a/configure.com b/configure.com index 5c970e2..a1e87d5 100644 --- a/configure.com +++ b/configure.com @@ -999,6 +999,39 @@ $ ENDIF $! $ ENDIF !%Config-I-VMS, skip remaining "where install" questions $! +$ perl_symbol = "true" +$ perl_verb = "" +$ dflt = "y" +$ IF .NOT.silent +$ THEN +$ echo "" +$ echo "%Config-I-VMS, You may choose to write ''packageup'_SETUP.COM to assign a foreign" +$ echo "-Config-I-VMS, symbol to invoke ''package', which is the usual method." +$ echO "-Config-I-VMS, If you do not do so then you would need a DCL command verb at the" +$ echo "-Config-I-VMS, process or the system wide level." +$ ENDIF +$ rp = "Invoke perl as a global symbol foreign command [''dflt'] " +$ GOSUB myread +$ IF (.NOT.ans).AND.(ans.NES."") THEN perl_symbol = "false" +$! +$ IF (.NOT.perl_symbol) +$ THEN +$ dflt = "y" +$ IF .NOT.silent +$ THEN +$ echo "" +$ echo "%Config-I-VMS, Since you won't be using a symbol you must choose to put the ''packageup'" +$ echo "-Config-I-VMS, verb in a per-process table or in the system wide DCLTABLES (which" +$ echo "-Config-I-VMS, would require write privilege)." +$ ENDIF +$ rp = "Invoke perl as a per process command verb [ ''dflt' ] " +$ GOSUB myread +$ IF (.NOT.ans).AND.(ans.NES."") +$ THEN perl_verb = "DCLTABLES" +$ ELSE perl_verb = "PROCESS" +$ ENDIF +$ ENDIF ! (.NOT.perl_symbol) +$! $!: set the base revision $ baserev="5" $!: get the patchlevel @@ -2145,6 +2178,28 @@ $ IF f$search("config.msg") .eqs. "" THEN echo "OK." $! $! %Config-I-VMS, write perl_setup.com here $! +$ IF (.NOT.perl_symbol) +$ THEN +$ file_2_find = "[-]''packageup'.cld" +$ echo "" +$ echo4 "%Config-I-VMS, The perl.cld file is now being written..." +$ OPEN/WRITE CONFIG 'file_2_find' +$ IF (use_vmsdebug_perl) +$ THEN +$ WRITE CONFIG "define verb dbgperl" +$ WRITE CONFIG F$FAO("!_!AS","image ''packageup'_root:[000000]dbgperl''ext'") +$ WRITE CONFIG F$FAO("!_!AS","cliflags (foreign)") +$ WRITE CONFIG "" +$ WRITE CONFIG "define verb perl" +$ WRITE CONFIG F$FAO("!_!AS","image ''packageup'_root:[000000]ndbgPerl''ext'") +$ WRITE CONFIG F$FAO("!_!AS","cliflags (foreign)") +$ ELSE +$ WRITE CONFIG "define verb perl" +$ WRITE CONFIG F$FAO("!_!AS","image ''packageup'_root:[000000]perl''ext'") +$ WRITE CONFIG F$FAO("!_!AS","cliflags (foreign)") +$ ENDIF +$ CLOSE CONFIG +$ ENDIF ! (.NOT.perl_symbol) $ echo "" $ echo4 "%Config-I-VMS, The perl_setup.com file is now being written..." $ file_2_find = "[-]perl_setup.com" @@ -2162,20 +2217,34 @@ $ prefix = prefix - "000000." $ IF F$LOCATE(".]",prefix) .EQ. F$LENGTH(prefix) THEN - prefix = prefix - "]" + ".]" $ WRITE CONFIG "$ define/translation=concealed Perl_Root ''prefix'" -$ write config "$ ext = "".exe""" -$ if sharedperl .eqs. "Y" -$ then +$ WRITE CONFIG "$ ext = "".exe""" +$ IF sharedperl .EQS. "Y" +$ THEN $ write config "$ if f$getsyi(""ARCH_NAME"") .nes. ""VAX"" then ext = "".AXE""" -$ endif -$ IF use_vmsdebug_perl .eqs. "Y" -$ then -$ WRITE CONFIG "$ dbgperl :== $Perl_Root:[000000]dbgPerl'ext'" -$ WRITE CONFIG "$ perl :== $Perl_Root:[000000]ndbgPerl'ext'" -$ WRITE CONFIG "$ define dbgPerlShr Perl_Root:[000000]dbgPerlShr'ext'" -$ else -$ WRITE CONFIG "$ perl :== $Perl_Root:[000000]Perl'ext'" -$ WRITE CONFIG "$ define PerlShr Perl_Root:[000000]PerlShr'ext'" -$ endif +$ ENDIF +$ IF (perl_symbol) +$ THEN +$ IF (use_vmsdebug_perl) +$ THEN +$ WRITE CONFIG "$ dbgperl :== $Perl_Root:[000000]dbgPerl'ext'" +$ WRITE CONFIG "$ perl :== $Perl_Root:[000000]ndbgPerl'ext'" +$ WRITE CONFIG "$ define dbgPerlShr Perl_Root:[000000]dbgPerlShr'ext'" +$ ELSE +$ WRITE CONFIG "$ perl :== $Perl_Root:[000000]Perl'ext'" +$ WRITE CONFIG "$ define PerlShr Perl_Root:[000000]PerlShr'ext'" +$ ENDIF +$ ELSE ! .NOT.perl_symbol +$ IF (use_vmsdebug_perl) +$ THEN +$ WRITE CONFIG "$ define dbgPerlShr Perl_Root:[000000]dbgPerlShr'ext'" +$ ELSE +$ WRITE CONFIG "$ define PerlShr Perl_Root:[000000]PerlShr'ext'" +$ ENDIF +$ IF perl_verb .EQS. "PROCESS" +$ THEN +$ WRITE CONFIG "$ set command ''packagup'_ROOT:[000000]''packageup'.CLD" +$ ENDIF +$ ENDIF ! perl_symbol $ WRITE CONFIG "$ define/nolog pod2text Perl_Root:[lib.pod]pod2text.com" $ WRITE CONFIG "$ define/nolog pod2html Perl_Root:[lib.pod]pod2html.com" $ WRITE CONFIG "$ define/nolog pod2man Perl_Root:[lib.pod]pod2man.com" @@ -2189,14 +2258,40 @@ $ ENDIF $ WRITE CONFIG "$!" $ WRITE CONFIG "$! Symbols for commonly used scripts:" $ WRITE CONFIG "$!" -$ WRITE CONFIG "$ Perldoc == ""'"+"'Perl' Perl_Root:[lib.pod]Perldoc.com -t""" -$ WRITE CONFIG "$ pod2text == ""'"+"'Perl' pod2text""" -$ WRITE CONFIG "$ pod2html == ""'"+"'Perl' pod2html""" -$ WRITE CONFIG "$!pod2man == ""'"+"'Perl' pod2man""" -$ WRITE CONFIG "$!Perlbug == ""'"+"'Perl' Perl_Root:[lib]Perlbug.com""" -$ WRITE CONFIG "$!c2ph == ""'"+"'Perl' c2ph""" -$ WRITE CONFIG "$!h2ph == ""'"+"'Perl' h2ph""" -$ WRITE CONFIG "$!h2xs == ""'"+"'Perl' h2xs""" +$ IF (perl_symbol) +$ THEN +$ WRITE CONFIG "$ Perldoc == ""'"+"'Perl' Perl_Root:[lib.pod]Perldoc.com -t""" +$ WRITE CONFIG "$ pod2text == ""'"+"'Perl' pod2text""" +$ WRITE CONFIG "$ pod2html == ""'"+"'Perl' pod2html""" +$ WRITE CONFIG "$ pod2latex == ""'"+"'Perl' Perl_Root:[lib.pod]pod2latex.com""" +$ WRITE CONFIG "$!pod2man == ""'"+"'Perl' pod2man""" +$ WRITE CONFIG "$!Perlbug == ""'"+"'Perl' Perl_Root:[lib]Perlbug.com""" +$ WRITE CONFIG "$ c2ph == ""'"+"'Perl' Perl_Root:[utils]c2ph.com""" +$ IF F$LOCATE("Devel::DProf",extensions) .LT. F$LENGTH(extensions) +$ THEN +$ WRITE CONFIG "$ dprofpp == ""'"+"'Perl' Perl_Root:[utils]dprofpp.com""" +$ ENDIF +$ WRITE CONFIG "$ h2ph == ""'"+"'Perl' Perl_Root:[utils]h2ph.com""" +$ WRITE CONFIG "$ h2xs == ""'"+"'Perl' Perl_Root:[utils]h2xs.com""" +$ WRITE CONFIG "$!perlcc == ""'"+"'Perl' Perl_Root:[utils]perlcc.com""" +$ WRITE CONFIG "$ splain == ""'"+"'Perl' Perl_Root:[utils]splain.com""" +$ ELSE +$ WRITE CONFIG "$ Perldoc == ""Perl Perl_Root:[lib.pod]Perldoc.com -t""" +$ WRITE CONFIG "$ pod2text == ""Perl pod2text""" +$ WRITE CONFIG "$ pod2html == ""Perl pod2html""" +$ WRITE CONFIG "$ pod2latex == ""Perl Perl_Root:[lib.pod]pod2latex.com""" +$ WRITE CONFIG "$!pod2man == ""Perl pod2man""" +$ WRITE CONFIG "$!Perlbug == ""Perl Perl_Root:[lib]Perlbug.com""" +$ WRITE CONFIG "$ c2ph == ""Perl Perl_Root:[utils]c2ph.com""" +$ IF F$LOCATE("Devel::DProf",extensions) .LT. F$LENGTH(extensions) +$ THEN +$ WRITE CONFIG "$ dprofpp == ""Perl Perl_Root:[utils]dprofpp.com""" +$ ENDIF +$ WRITE CONFIG "$ h2ph == ""Perl Perl_Root:[utils]h2ph.com""" +$ WRITE CONFIG "$ h2xs == ""Perl Perl_Root:[utils]h2xs.com""" +$ WRITE CONFIG "$!perlcc == ""Perl Perl_Root:[utils]perlcc.com""" +$ WRITE CONFIG "$ splain == ""Perl Perl_Root:[utils]splain.com""" +$ ENDIF $ CLOSE CONFIG $! $ echo "" @@ -2206,6 +2301,20 @@ $ echo "-Config-I-VMS, Add that file (or an @ call to it) to your [SY]LOGIN.COM $ echo "-Config-I-VMS, when you are satisfied with a successful compilation," $ echo "-Config-I-VMS, testing, and installation of your perl." $ echo "" +$ IF ((.NOT.perl_symbol) .AND. (perl_verb .EQS. "DCLTABLES")) +$ THEN +$ file_2_find = "[-]''packageup'_install.com" +$ OPEN/WRITE CONFIG 'file_2_find +$ WRITE CONFIG "$ set command perl /table=sys$common:[syslib]dcltables.exe -" +$ WRITE CONFIG " /output=sys$common:[syslib]dcltables.exe" +$ WRITE CONFIG "$ install replace sys$common:[syslib]dcltables.exe" +$ CLOSE CONFIG +$ echo4 "" +$ echo4 "%Config-I-VMS, In order to install the ''packageup' verb into DCLTABLES run:" +$ echo4 "-Config-I-VMS, @ ''F$SEARCH(file_2_find)'" +$ echo4 "-Config-I-VMS, after a successful build, test, and install. Do so with CMKRNL privilege." +$ echo4 "" +$ ENDIF $! $!figure out where we "are" by parsing 'vms_default_directory_name' $! diff --git a/pod/pod2usage.PL b/pod/pod2usage.PL index 24e93fa..e0f70b2 100644 --- a/pod/pod2usage.PL +++ b/pod/pod2usage.PL @@ -16,8 +16,8 @@ use Cwd; $origdir = cwd; chdir(dirname($0)); ($file = basename($0)) =~ s/\.PL$//; -$file =~ s/\.pl$// - if ($^O eq 'VMS' or $^O eq 'os2' or $^O eq 'dos'); # "case-forgiving" +$file =~ s/\.pl$// if ($^O eq 'os2' or $^O eq 'dos'); # "case-forgiving" +$file =~ s/\.pl$/.com/ if ($^O eq 'VMS'); # "case-forgiving" open OUT,">$file" or die "Can't create $file: $!"; diff --git a/pod/podselect.PL b/pod/podselect.PL index 3fa4118..f2ba80a 100644 --- a/pod/podselect.PL +++ b/pod/podselect.PL @@ -16,8 +16,8 @@ use Cwd; $origdir = cwd; chdir(dirname($0)); ($file = basename($0)) =~ s/\.PL$//; -$file =~ s/\.pl$// - if ($^O eq 'VMS' or $^O eq 'os2' or $^O eq 'dos'); # "case-forgiving" +$file =~ s/\.pl$// if ($^O eq 'os2' or $^O eq 'dos'); # "case-forgiving" +$file =~ s/\.pl$/.com/ if ($^O eq 'VMS'); # "case-forgiving" open OUT,">$file" or die "Can't create $file: $!"; diff --git a/utils/dprofpp.PL b/utils/dprofpp.PL index a6a1d91..51e8d78 100644 --- a/utils/dprofpp.PL +++ b/utils/dprofpp.PL @@ -14,9 +14,8 @@ use File::Basename qw(&basename &dirname); # This is so that make depend always knows where to find PL derivatives. chdir(dirname($0)); ($file = basename($0)) =~ s/\.PL$//; -$file =~ s/\.pl$// - if ($Config{'osname'} eq 'VMS' or - $Config{'osname'} eq 'OS2'); # "case-forgiving" +$file =~ s/\.pl$// if ($Config{'osname'} eq 'OS2'); # "case-forgiving" +$file =~ s/\.pl$/.com/ if ($Config{'osname'} eq 'VMS'); # "case-forgiving" my $dprof_pm = '../ext/Devel/DProf/DProf.pm'; my $VERSION = 0; diff --git a/vms/descrip_mms.template b/vms/descrip_mms.template index eb9d0bd..c96c145 100644 --- a/vms/descrip_mms.template +++ b/vms/descrip_mms.template @@ -347,7 +347,7 @@ libmods : $(LIBPREREQ) @ $(NOOP) utils : $(utils1) $(utils2) @ $(NOOP) -podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com [.lib.pod]podchecker.com +podxform : [.lib.pod]pod2text.com [.lib.pod]pod2html.com [.lib.pod]pod2latex.com [.lib.pod]pod2man.com [.lib.pod]podchecker.com [.lib.pod]pod2usage.com [.lib.pod]podselect.com @ $(NOOP) x2p : [.x2p]a2p$(E) [.x2p]s2p.com [.x2p]find2perl.com @ $(NOOP) @@ -582,6 +582,16 @@ dynext : $(LIBPREREQ) $(DBG)perlshr$(E) $(MINIPERL) $(MMS$SOURCE) Copy/Log [.pod]podchecker.com $(MMS$TARGET) +[.lib.pod]pod2usage.com : [.pod]pod2usage.PL $(ARCHDIR)Config.pm + @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod] + $(MINIPERL) $(MMS$SOURCE) + Copy/Log [.pod]pod2usage.com $(MMS$TARGET) + +[.lib.pod]podselect.com : [.pod]podselect.PL $(ARCHDIR)Config.pm + @ If F$Search("[.lib]pod.dir").eqs."" Then Create/Directory [.lib.pod] + $(MINIPERL) $(MMS$SOURCE) + Copy/Log [.pod]podselect.com $(MMS$TARGET) + preplibrary : $(MINIPERL_EXE) $(LIBPREREQ) $(SOCKPM) @ Write Sys$Output "Autosplitting Perl library . . ." @ Create/Directory [.lib.auto]