diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-15 19:43:11 +0000 |
commit | fc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch) | |
tree | ce1e3bce06471410239a6f41282e328770aa404a /upstream/archlinux/man3/ExtUtils::MM_VMS.3perl | |
parent | Initial commit. (diff) | |
download | manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip |
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'upstream/archlinux/man3/ExtUtils::MM_VMS.3perl')
-rw-r--r-- | upstream/archlinux/man3/ExtUtils::MM_VMS.3perl | 394 |
1 files changed, 394 insertions, 0 deletions
diff --git a/upstream/archlinux/man3/ExtUtils::MM_VMS.3perl b/upstream/archlinux/man3/ExtUtils::MM_VMS.3perl new file mode 100644 index 00000000..d4768ff8 --- /dev/null +++ b/upstream/archlinux/man3/ExtUtils::MM_VMS.3perl @@ -0,0 +1,394 @@ +.\" -*- mode: troff; coding: utf-8 -*- +.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>. +.ie n \{\ +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds C` +. ds C' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is >0, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.\" +.\" Avoid warning from groff about undefined register 'F'. +.de IX +.. +.nr rF 0 +.if \n(.g .if rF .nr rF 1 +.if (\n(rF:(\n(.g==0)) \{\ +. if \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. if !\nF==2 \{\ +. nr % 0 +. nr F 2 +. \} +. \} +.\} +.rr rF +.\" ======================================================================== +.\" +.IX Title "ExtUtils::MM_VMS 3perl" +.TH ExtUtils::MM_VMS 3perl 2024-02-11 "perl v5.38.2" "Perl Programmers Reference Guide" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH NAME +ExtUtils::MM_VMS \- methods to override UN*X behaviour in ExtUtils::MakeMaker +.SH SYNOPSIS +.IX Header "SYNOPSIS" +.Vb 3 +\& Do not use this directly. +\& Instead, use ExtUtils::MM and it will figure out which MM_* +\& class to use for you. +.Ve +.SH DESCRIPTION +.IX Header "DESCRIPTION" +See ExtUtils::MM_Unix for a documentation of the methods provided +there. This package overrides the implementation of these methods, not +the semantics. +.SS "Methods always loaded" +.IX Subsection "Methods always loaded" +.IP wraplist 4 +.IX Item "wraplist" +Converts a list into a string wrapped at approximately 80 columns. +.SS Methods +.IX Subsection "Methods" +Those methods which override default MM_Unix methods are marked +"(override)", while methods unique to MM_VMS are marked "(specific)". +For overridden methods, documentation is limited to an explanation +of why this method overrides the MM_Unix method; see the ExtUtils::MM_Unix +documentation for more details. +.IP "guess_name (override)" 4 +.IX Item "guess_name (override)" +Try to determine name of extension being built. We begin with the name +of the current directory. Since VMS filenames are case-insensitive, +however, we look for a \fI.pm\fR file whose name matches that of the current +directory (presumably the 'main' \fI.pm\fR file for this extension), and try +to find a \f(CW\*(C`package\*(C'\fR statement from which to obtain the Mixed::Case +package name. +.IP "find_perl (override)" 4 +.IX Item "find_perl (override)" +Use VMS file specification syntax and CLI commands to find and +invoke Perl images. +.IP "_fixin_replace_shebang (override)" 4 +.IX Item "_fixin_replace_shebang (override)" +Helper routine for MM\->\fBfixin()\fR, overridden +because there's no such thing as an +actual shebang line that will be interpreted by the shell, so we just prepend +\&\f(CW$Config\fR{startperl} and preserve the shebang line argument for any switches it +may contain. +.IP "maybe_command (override)" 4 +.IX Item "maybe_command (override)" +Follows VMS naming conventions for executable files. +If the name passed in doesn't exactly match an executable file, +appends \fI.Exe\fR (or equivalent) to check for executable image, and \fI.Com\fR +to check for DCL procedure. If this fails, checks directories in DCL$PATH +and finally \fISys$System:\fR for an executable file having the name specified, +with or without the \fI.Exe\fR\-equivalent suffix. +.IP "pasthru (override)" 4 +.IX Item "pasthru (override)" +The list of macro definitions to be passed through must be specified using +the /MACRO qualifier and must not add another /DEFINE qualifier. We prepend +our own comma here to the contents of $(PASTHRU_DEFINE) because it is often +empty and a comma always present in CCFLAGS would generate a missing +qualifier value error. +.IP "pm_to_blib (override)" 4 +.IX Item "pm_to_blib (override)" +VMS wants a dot in every file so we can't have one called 'pm_to_blib', +it becomes 'pm_to_blib.' and MMS/K isn't smart enough to know that when +you have a target called 'pm_to_blib' it should look for 'pm_to_blib.'. +.Sp +So in VMS its pm_to_blib.ts. +.IP "perl_script (override)" 4 +.IX Item "perl_script (override)" +If name passed in doesn't specify a readable file, appends \fI.com\fR or +\&\fI.pl\fR and tries again, since it's customary to have file types on all files +under VMS. +.IP replace_manpage_separator 4 +.IX Item "replace_manpage_separator" +Use as separator a character which is legal in a VMS-syntax file name. +.IP init_DEST 4 +.IX Item "init_DEST" +(override) Because of the difficulty concatenating VMS filepaths we +must pre-expand the DEST* variables. +.IP init_DIRFILESEP 4 +.IX Item "init_DIRFILESEP" +No separator between a directory path and a filename on VMS. +.IP "init_main (override)" 4 +.IX Item "init_main (override)" +.PD 0 +.IP "init_tools (override)" 4 +.IX Item "init_tools (override)" +.PD +Provide VMS-specific forms of various utility commands. +.Sp +Sets DEV_NULL to nothing because I don't know how to do it on VMS. +.Sp +Changes EQUALIZE_TIMESTAMP to set revision date of target file to +one second later than source file, since MMK interprets precisely +equal revision dates for a source and target file as a sign that the +target needs to be updated. +.IP "init_platform (override)" 4 +.IX Item "init_platform (override)" +Add PERL_VMS, MM_VMS_REVISION and MM_VMS_VERSION. +.Sp +MM_VMS_REVISION is for backwards compatibility before MM_VMS had a +\&\f(CW$VERSION\fR. +.IP platform_constants 4 +.IX Item "platform_constants" +.PD 0 +.IP "init_VERSION (override)" 4 +.IX Item "init_VERSION (override)" +.PD +Override the *DEFINE_VERSION macros with VMS semantics. Translate the +MAKEMAKER filepath to VMS style. +.IP "constants (override)" 4 +.IX Item "constants (override)" +Fixes up numerous file and directory macros to insure VMS syntax +regardless of input syntax. Also makes lists of files +comma-separated. +.IP special_targets 4 +.IX Item "special_targets" +Clear the default .SUFFIXES and put in our own list. +.IP "cflags (override)" 4 +.IX Item "cflags (override)" +Bypass shell script and produce qualifiers for CC directly (but warn +user if a shell script for this extension exists). Fold multiple +/Defines into one, since some C compilers pay attention to only one +instance of this qualifier on the command line. +.IP "const_cccmd (override)" 4 +.IX Item "const_cccmd (override)" +Adds directives to point C preprocessor to the right place when +handling #include <sys/foo.h> directives. Also constructs CC +command line a bit differently than MM_Unix method. +.IP "tools_other (override)" 4 +.IX Item "tools_other (override)" +Throw in some dubious extra macros for Makefile args. +.Sp +Also keep around the old $(SAY) macro in case somebody's using it. +.IP "init_dist (override)" 4 +.IX Item "init_dist (override)" +VMSish defaults for some values. +.Sp +.Vb 1 +\& macro description default +\& +\& ZIPFLAGS flags to pass to ZIP \-Vu +\& +\& COMPRESS compression command to gzip +\& use for tarfiles +\& SUFFIX suffix to put on \-gz +\& compressed files +\& +\& SHAR shar command to use vms_share +\& +\& DIST_DEFAULT default target to use to tardist +\& create a distribution +\& +\& DISTVNAME Use VERSION_SYM instead of $(DISTNAME)\-$(VERSION_SYM) +\& VERSION for the name +.Ve +.IP "c_o (override)" 4 +.IX Item "c_o (override)" +Use VMS syntax on command line. In particular, $(DEFINE) and +$(PERL_INC) have been pulled into $(CCCMD). Also use MM[SK] macros. +.IP "xs_c (override)" 4 +.IX Item "xs_c (override)" +Use MM[SK] macros. +.IP "xs_o (override)" 4 +.IX Item "xs_o (override)" +Use MM[SK] macros, and VMS command line for C compiler. +.IP "_xsbuild_replace_macro (override)" 4 +.IX Item "_xsbuild_replace_macro (override)" +There is no simple replacement possible since a qualifier and all its +subqualifiers must be considered together, so we use our own utility +routine for the replacement. +.IP "_xsbuild_value (override)" 4 +.IX Item "_xsbuild_value (override)" +Convert the extension spec to Unix format, as that's what will +match what's in the XSBUILD data structure. +.IP "dlsyms (override)" 4 +.IX Item "dlsyms (override)" +Create VMS linker options files specifying universal symbols for this +extension's shareable image(s), and listing other shareable images or +libraries to which it should be linked. +.IP xs_obj_opt 4 +.IX Item "xs_obj_opt" +Override to fixup \-o flags. +.IP "dynamic_lib (override)" 4 +.IX Item "dynamic_lib (override)" +Use VMS Link command. +.IP "xs_make_static_lib (override)" 4 +.IX Item "xs_make_static_lib (override)" +Use VMS commands to manipulate object library. +.IP "static_lib_pure_cmd (override)" 4 +.IX Item "static_lib_pure_cmd (override)" +Use VMS commands to manipulate object library. +.IP xs_static_lib_is_xs 4 +.IX Item "xs_static_lib_is_xs" +.PD 0 +.IP extra_clean_files 4 +.IX Item "extra_clean_files" +.PD +Clean up some OS specific files. Plus the temp file used to shorten +a lot of commands. And the name mangler database. +.IP zipfile_target 4 +.IX Item "zipfile_target" +.PD 0 +.IP tarfile_target 4 +.IX Item "tarfile_target" +.IP shdist_target 4 +.IX Item "shdist_target" +.PD +Syntax for invoking shar, tar and zip differs from that for Unix. +.IP "install (override)" 4 +.IX Item "install (override)" +Work around DCL's 255 character limit several times,and use +VMS-style command line quoting in a few cases. +.IP "perldepend (override)" 4 +.IX Item "perldepend (override)" +Use VMS-style syntax for files; it's cheaper to just do it directly here +than to have the MM_Unix method call \f(CW\*(C`catfile\*(C'\fR +repeatedly. Also, if we have to rebuild Config.pm, use MM[SK] to do it. +.IP "makeaperl (override)" 4 +.IX Item "makeaperl (override)" +Undertake to build a new set of Perl images using VMS commands. Since +VMS does dynamic loading, it's not necessary to statically link each +extension into the Perl image, so this isn't the normal build path. +Consequently, it hasn't really been tested, and may well be incomplete. +.IP "maketext_filter (override)" 4 +.IX Item "maketext_filter (override)" +Ensure that colons marking targets are preceded by space, in order +to distinguish the target delimiter from a colon appearing as +part of a filespec. +.IP "prefixify (override)" 4 +.IX Item "prefixify (override)" +prefixifying on VMS is simple. Each should simply be: +.Sp +.Vb 1 +\& perl_root:[some.dir] +.Ve +.Sp +which can just be converted to: +.Sp +.Vb 1 +\& volume:[your.prefix.some.dir] +.Ve +.Sp +otherwise you get the default layout. +.Sp +In effect, your search prefix is ignored and \f(CW$Config\fR{vms_prefix} is +used instead. +.IP cd 4 +.IX Item "cd" +.PD 0 +.IP oneliner 4 +.IX Item "oneliner" +.IP \fBecho\fR 4 +.IX Item "echo" +.PD +perl trips up on "<foo>" thinking it's an input redirect. So we use the +native Write command instead. Besides, it's faster. +.IP quote_literal 4 +.IX Item "quote_literal" +.PD 0 +.IP escape_dollarsigns 4 +.IX Item "escape_dollarsigns" +.PD +Quote, don't escape. +.IP escape_all_dollarsigns 4 +.IX Item "escape_all_dollarsigns" +Quote, don't escape. +.IP escape_newlines 4 +.IX Item "escape_newlines" +.PD 0 +.IP max_exec_len 4 +.IX Item "max_exec_len" +.PD +256 characters. +.IP init_linker 4 +.IX Item "init_linker" +.PD 0 +.IP "catdir (override)" 4 +.IX Item "catdir (override)" +.IP "catfile (override)" 4 +.IX Item "catfile (override)" +.PD +Eliminate the macros in the output to the MMS/MMK file. +.Sp +(File::Spec::VMS used to do this for us, but it's being removed) +.IP eliminate_macros 4 +.IX Item "eliminate_macros" +Expands MM[KS]/Make macros in a text string, using the contents of +identically named elements of \f(CW%$self\fR, and returns the result +as a file specification in Unix syntax. +.Sp +NOTE: This is the canonical version of the method. The version in +File::Spec::VMS is deprecated. +.IP fixpath 4 +.IX Item "fixpath" +.Vb 2 +\& my $path = $mm\->fixpath($path); +\& my $path = $mm\->fixpath($path, $is_dir); +.Ve +.Sp +Catchall routine to clean up problem MM[SK]/Make macros. Expands macros +in any directory specification, in order to avoid juxtaposing two +VMS-syntax directories when MM[SK] is run. Also expands expressions which +are all macro, so that we can tell how long the expansion is, and avoid +overrunning DCL's command buffer when MM[KS] is running. +.Sp +\&\fBfixpath()\fR checks to see whether the result matches the name of a +directory in the current default directory and returns a directory or +file specification accordingly. \f(CW$is_dir\fR can be set to true to +force \fBfixpath()\fR to consider the path to be a directory or false to force +it to be a file. +.Sp +NOTE: This is the canonical version of the method. The version in +File::Spec::VMS is deprecated. +.IP os_flavor 4 +.IX Item "os_flavor" +VMS is VMS. +.IP "is_make_type (override)" 4 +.IX Item "is_make_type (override)" +None of the make types being checked for is viable on VMS, +plus our \f(CW$self\fR\->{MAKE} is an unexpanded (and unexpandable) +macro whose value is known only to the make utility itself. +.IP "make_type (override)" 4 +.IX Item "make_type (override)" +Returns a suitable string describing the type of makefile being written. +.SH AUTHOR +.IX Header "AUTHOR" +Original author Charles Bailey \fIbailey@newman.upenn.edu\fR +.PP +Maintained by Michael G Schwern \fIschwern@pobox.com\fR +.PP +See ExtUtils::MakeMaker for patching and contact information. |