1Module::Build::PlatformU:s:eVrMSC(o3nptmr)ibuted Perl DoMcoudmuelnet:a:tBiuoinld::Platform::VMS(3pm)
2
3
4

NAME

6       Module::Build::Platform::VMS - Builder class for VMS platforms
7

DESCRIPTION

9       This module inherits from "Module::Build::Base" and alters a few minor
10       details of its functionality.  Please see Module::Build for the general
11       docs.
12
13   Overridden Methods
14       _set_defaults
15           Change $self->{build_script} to 'Build.com' so @Build works.
16
17       cull_args
18           '@Build foo' on VMS will not preserve the case of 'foo'.  Rather
19           than forcing people to write '@Build "foo"' we'll dispatch case-
20           insensitively.
21
22       manpage_separator
23           Use '__' instead of '::'.
24
25       prefixify
26           Prefixify taking into account VMS' filepath syntax.
27
28       _quote_args
29           Command-line arguments (but not the command itself) must be quoted
30           to ensure case preservation.
31
32       have_forkpipe
33           There is no native fork(), so some constructs depending on it are
34           not available.
35
36       _backticks
37           Override to ensure that we quote the arguments but not the command.
38
39       find_command
40           Local an executable program
41
42       _maybe_command (override)
43           Follows VMS naming conventions for executable files.  If the name
44           passed in doesn't exactly match an executable file, appends .Exe
45           (or equivalent) to check for executable image, and .Com to check
46           for DCL procedure.  If this fails, checks directories in DCL$PATH
47           and finally Sys$System: for an executable file having the name
48           specified, with or without the .Exe-equivalent suffix.
49
50       do_system
51           Override to ensure that we quote the arguments but not the command.
52
53       oneliner
54           Override to ensure that we do not quote the command.
55
56       rscan_dir
57           Inherit the standard version but remove dots at end of name.  If
58           the extended character set is in effect, do not remove dots from
59           filenames with Unix path delimiters.
60
61       dist_dir
62           Inherit the standard version but replace embedded dots with
63           underscores because a dot is the directory delimiter on VMS.
64
65       man3page_name
66           Inherit the standard version but chop the extra manpage delimiter
67           off the front if there is one.  The VMS version of
68           splitdir('[.foo]') returns '', 'foo'.
69
70       expand_test_dir
71           Inherit the standard version but relativize the paths as the native
72           glob() doesn't do that for us.
73
74       _detildefy
75           The home-grown glob() does not currently handle tildes, so provide
76           limited support here.  Expect only UNIX format file specifications
77           for now.
78
79       find_perl_interpreter
80           On VMS, $^X returns the fully qualified absolute path including
81           version number.  It's logically impossible to improve on it for
82           getting the perl we're currently running, and attempting to
83           manipulate it is usually lossy.
84
85       localize_file_path
86           Convert the file path to the local syntax
87
88       localize_dir_path
89           Convert the directory path to the local syntax
90
91       ACTION_clean
92           The home-grown glob() expands a bit too aggressively when given a
93           bare name, so default in a zero-length extension.
94

AUTHOR

96       Michael G Schwern <schwern@pobox.com> Ken Williams <kwilliams@cpan.org>
97       Craig A. Berry <craigberry@mac.com>
98

SEE ALSO

100       perl(1), Module::Build(3), ExtUtils::MakeMaker(3)
101
102
103
104perl v5.38.0                      2023-07-20 Module::Build::Platform::VMS(3pm)
Impressum