This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Fixes 'raw' layer for perl#80764
[perl5.git] / README.vos
1 If you read this file _as_is_, just ignore the funny characters you
2 see. It is written in the POD format (see pod/perlpod.pod) which is
3 specially designed to be readable as is.
4
5 =head1 NAME
6
7 README.vos - Perl for Stratus VOS
8
9 =head1 SYNOPSIS
10
11 This file contains notes for building perl on the Stratus VOS
12 operating system.  Perl is a scripting or macro language that is
13 popular on many systems.  See L<perlbook> for a number of good
14 books on Perl.
15
16 These are instructions for building Perl from source.  This version of
17 Perl is not supported on VOS Release 14.2 or earlier releases.  If you
18 have a Continuum platform running VOS Release 14.3 through 14.7,
19 download Perl from the Stratus Anonymous FTP site at
20 ftp://ftp.stratus.com/pub/vos/posix/ga/continuum/continuum.html.  If
21 you have a V Series platform running VOS Release 15.0 or later, or if
22 you have a V Series platform running OpenVOS Release 17.0 or later,
23 download Perl from
24 ftp://ftp.stratus.com/pub/vos/posix/ga/v-series/v-series.html.  The
25 perl distribution files on the Stratus anonymous FTP site are stored
26 in a format called a "bundled file".  Instructions for unbundling the
27 Perl distribution file are at
28 ftp://ftp.stratus.com/pub/vos/utility/utility.html.
29
30 If you are running VOS Release 14.4.1 or later, you can obtain a
31 pre-compiled, supported copy of perl by purchasing Release 2.0.1
32 (or later) of the VOS GNU C/C++ and GNU Tools product from
33 Stratus Technologies.
34
35 =head1 BUILDING PERL FOR VOS
36
37 To build perl from its source code on the Stratus Continuum
38 platform, you must be have VOS Release 14.5.0 or later, the STCP
39 product, and the GNU C/C++ and GNU Tools, Release 2.0.1 or
40 later.  On the V Series platform you must have VOS Release
41 15.0.0 or later, and any version of the GNU C/C++ and GNU Tools
42 product.
43
44 To build full perl using the supplied Configure script and
45 makefiles, change to the "vos" subdirectory and type the command
46 "compile_full_perl" or "start_process compile_full_perl".  This
47 will configure, build, and test perl.
48
49 =head1 INSTALLING PERL IN VOS
50
51 =over 4
52
53 =item 1
54
55 If you have built perl using the Configure script, ensure that
56 you have modify and default write permission to C<<
57 >system>ported >> and all subdirectories.  Then type
58
59      gmake install
60
61 =item 2
62
63 While there are currently no architecture-specific extensions or
64 modules distributed with perl, the following directories can be
65 used to hold such files (replace the string VERSION by the
66 appropriate version number):
67
68      >system>ported>lib>perl5>VERSION>7100
69      >system>ported>lib>perl5>VERSION>8000
70      >system>ported>lib>perl5>VERSION>i786
71
72 =item 3
73
74 Site-specific perl extensions and modules can be installed in one of
75 two places.  Put architecture-independent files into:
76
77      >system>ported>lib>perl5>site_perl>VERSION
78
79 Put site-specific architecture-dependent files into one of the
80 following directories:
81
82      >system>ported>lib>perl5>site_perl>VERSION>7100
83      >system>ported>lib>perl5>site_perl>VERSION>8000
84      >system>ported>lib>perl5>site_perl>VERSION>i786
85
86 =item 4
87
88 You can examine the @INC variable from within a perl program
89 to see the order in which Perl searches these directories.
90
91 =back
92
93 =head1 USING PERL IN VOS
94
95 =head2 Restrictions of Perl on VOS
96
97 This port of Perl version 5 to VOS prefers Unix-style,
98 slash-separated pathnames over VOS-style greater-than-separated
99 pathnames.  VOS-style pathnames should work in most contexts, but
100 if you have trouble, replace all greater-than characters by slash
101 characters.  Because the slash character is used as a pathname
102 delimiter, Perl cannot process VOS pathnames containing a slash
103 character in a directory or file name; these must be renamed.
104
105 This port of Perl also uses Unix-epoch date values internally.
106 As long as you are dealing with ASCII character string
107 representations of dates, this should not be an issue.  The
108 supported epoch is January 1, 1980 to January 17, 2038.
109
110 See the file pod/perlport.pod for more information about the VOS
111 port of Perl.
112
113 =head2 Handling of underflow and overflow
114
115 Prior to VOS Release 14.7.0, VOS does not support automatically
116 mapping overflowed floating-point values to +infinity, nor
117 automatically mapping underflowed floating-point values to zero,
118 unlike many other platforms.  The Perl pack function has been
119 modified to perform such mapping in software on VOS.  Performing
120 other floating-point computations that underflow or overflow
121 will probably result in SIGFPE.  Don't push your luck.
122
123 As of VOS Release 14.7.0 or later, the VOS POSIX runtime sets up
124 the PA-RISC and IA-32 hardware floating-point status register so
125 that the overflow and underflow exceptions do not trap, but
126 instead automatically convert the result to infinity or zero, as
127 appropriate.  As of this writing, there are still floating-point
128 operations that can trap, for example, subtracting two infinite
129 values.  This is recorded as suggestion posix-1022, which has
130 been fixed in VOS Release 15.2 and higher.
131
132 =head1 TEST STATUS
133
134 When Perl 5.9.0 is built using the native build process on VOS
135 Release 14.7.0 and GNU C++/GNU Tools 2.0.2a, all but nine
136 attempted tests either pass or result in TODO (ignored)
137 failures.  The tests that fail are:
138
139 t/io/dup, test 2
140 t/io/tell, test 28
141 t/op/pack, test 0
142 ext/B/t/bytecode, test 1
143 ext/Devel/Peek/t/Peek, test 1
144 ext/Encode/t/enc_module, test 1
145 ext/IO/t/io_dup, test 2
146 lib/ExtUtils/t/MM_Unix, test 94
147 lib/Net/ing/t/450_service, test 8
148
149 =head1 SUPPORT STATUS
150
151 I'm offering this port "as is".  You can ask me questions, but I
152 can't guarantee I'll be able to answer them.  There are some
153 excellent books available on the Perl language; consult a book
154 seller.
155
156 If you want a supported version of perl for VOS, purchase the
157 VOS GNU C/C++ and GNU Tools Release 2.0.1 (or later) product from
158 Stratus Technologies, along with a support contract (or from
159 anyone else who will sell you support).
160
161 =head1 AUTHOR
162
163 Paul Green (Paul.Green@stratus.com)
164
165 =head1 LAST UPDATE
166
167 October 6, 2010
168
169 =cut