Commit | Line | Data |
---|---|---|
9a997319 JH |
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 | |
24e8e380 | 10 | |
050dfae0 PG |
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. | |
4f3de37c | 15 | |
3fd80bd6 PG |
16 | These are instructions for building Perl from source. Most |
17 | people can simply download a pre-compiled distribution from the | |
18 | VOS anonymous FTP site. This version of Perl is not supported | |
19 | on VOS Release 14.2.0 or earlier releases. If you are running | |
20 | VOS Release 14.3.0 or later, download Perl from | |
21 | ftp://ftp.stratus.com/pub/vos/posix/ga/ga.html. Instructions | |
22 | for unbundling the Perl distribution file are at | |
23 | ftp://ftp.stratus.com/pub/vos/utility/utility.html. | |
495c5fdc | 24 | |
050dfae0 PG |
25 | If you are running VOS Release 14.4.1 or later, you can obtain a |
26 | pre-compiled, supported copy of perl by purchasing Release 2.0.1 | |
27 | of the VOS GNU C++ and GNU Tools product from Stratus | |
28 | Technologies. | |
29 | ||
3fd80bd6 | 30 | =head1 BUILDING PERL FOR VOS |
050dfae0 | 31 | |
3fd80bd6 PG |
32 | To build perl from its source code, you must have a Continuum |
33 | platform running VOS Release 14.5.0 or later, the STCP product, | |
34 | and the GNU C++ and GNU Tools, Release 2.0.1 or later. | |
24e8e380 | 35 | |
c71882ca PG |
36 | To build full perl using the supplied Configure script and |
37 | makefiles, change to the "vos" subdirectory and type the command | |
38 | "compile_full_perl" or "start_process compile_full_perl". This | |
39 | will configure, build, and test perl. All of the test cases | |
40 | that are executed should pass. | |
9a997319 | 41 | |
3fd80bd6 | 42 | =head1 INSTALLING PERL IN VOS |
9a997319 | 43 | |
050dfae0 | 44 | =over 4 |
24e8e380 | 45 | |
050dfae0 | 46 | =item 1 |
24e8e380 | 47 | |
050dfae0 | 48 | If you have built perl using the Configure script, ensure that |
cc07ed0b | 49 | you have modify permission to C<< >system>ported >> and type |
9a997319 | 50 | |
050dfae0 | 51 | gmake install |
24e8e380 | 52 | |
050dfae0 | 53 | =item 2 |
24e8e380 | 54 | |
9a997319 JH |
55 | While there are currently no architecture-specific |
56 | extensions or modules distributed with perl, the following | |
57 | directories can be used to hold such files: | |
24e8e380 | 58 | |
3fd80bd6 PG |
59 | >system>ported>lib>perl5>5.9.0>68k |
60 | >system>ported>lib>perl5>5.9.0>860 | |
61 | >system>ported>lib>perl5>5.9.0>7100 | |
62 | >system>ported>lib>perl5>5.9.0>8000 | |
24e8e380 | 63 | |
3fd80bd6 | 64 | =item 3 |
9a997319 JH |
65 | |
66 | Site-specific perl extensions and modules can be installed in one of | |
67 | two places. Put architecture-independent files into: | |
24e8e380 | 68 | |
3fd80bd6 | 69 | >system>ported>lib>perl5>site_perl>5.9.0 |
24e8e380 | 70 | |
050dfae0 PG |
71 | Put site-specific architecture-dependent files into one of the |
72 | following directories: | |
24e8e380 | 73 | |
3fd80bd6 PG |
74 | >system>ported>lib>perl5>site_perl>5.9.0>68k |
75 | >system>ported>lib>perl5>site_perl>5.9.0>860 | |
76 | >system>ported>lib>perl5>site_perl>5.9.0>7100 | |
77 | >system>ported>lib>perl5>site_perl>5.9.0>8000 | |
24e8e380 | 78 | |
3fd80bd6 | 79 | =item 4 |
9a997319 JH |
80 | |
81 | You can examine the @INC variable from within a perl program | |
82 | to see the order in which Perl searches these directories. | |
495c5fdc | 83 | |
9a997319 JH |
84 | =back |
85 | ||
86 | =head1 USING PERL IN VOS | |
87 | ||
a83b6f46 | 88 | =head2 Restrictions of Perl on VOS |
495c5fdc | 89 | |
24e8e380 GS |
90 | This port of Perl version 5 to VOS prefers Unix-style, |
91 | slash-separated pathnames over VOS-style greater-than-separated | |
92 | pathnames. VOS-style pathnames should work in most contexts, but | |
93 | if you have trouble, replace all greater-than characters by slash | |
94 | characters. Because the slash character is used as a pathname | |
95 | delimiter, Perl cannot process VOS pathnames containing a slash | |
96 | character in a directory or file name; these must be renamed. | |
495c5fdc | 97 | |
24e8e380 GS |
98 | This port of Perl also uses Unix-epoch date values internally. |
99 | As long as you are dealing with ASCII character string | |
100 | representations of dates, this should not be an issue. The | |
101 | supported epoch is January 1, 1980 to January 17, 2038. | |
495c5fdc | 102 | |
24e8e380 GS |
103 | See the file pod/perlport.pod for more information about the VOS |
104 | port of Perl. | |
495c5fdc | 105 | |
11d33b1d PG |
106 | =head2 Handling of underflow and overflow |
107 | ||
46ff39aa PG |
108 | Prior to VOS Release 14.7.0, VOS does not support automatically |
109 | mapping overflowed floating-point values to +infinity, nor | |
110 | automatically mapping underflowed floating-point values to zero, | |
111 | unlike many other platforms. The Perl pack function has been | |
112 | modified to perform such mapping in software on VOS. Performing | |
113 | other floating-point computations that underflow or overflow | |
114 | will probably result in SIGFPE. Don't push your luck. | |
115 | ||
116 | As of VOS Release 14.7.0, the VOS POSIX runtime sets up the | |
117 | PA-RISC hardware floating-point status register so that the | |
118 | overflow and underflow exceptions do not trap, but instead | |
119 | automatically convert the result to infinity or zero, as | |
120 | appropriate. As of this writing, there are still floating-point | |
121 | operations that can trap, for example, subtracting two infinite | |
122 | values. This is recorded as suggestion posix-1022, which is not | |
123 | yet fixed. | |
11d33b1d PG |
124 | |
125 | =head1 TEST STATUS | |
126 | ||
46ff39aa PG |
127 | When Perl 5.8.1 is built using the native build process on VOS |
128 | Release 14.5.0 and GNU C++/GNU Tools 2.0.1, all but five | |
129 | attempted tests either pass or result in TODO (ignored) | |
130 | failures. The tests that fail are: | |
131 | ||
132 | ext/Time/HiRes/HiRes, tests 8, 11, 20, and 21. | |
133 | lib/Net/Ping/t/450_service, test 8. | |
11d33b1d | 134 | |
9a997319 | 135 | =head1 SUPPORT STATUS |
495c5fdc | 136 | |
495c5fdc | 137 | I'm offering this port "as is". You can ask me questions, but I |
5b8c1387 | 138 | can't guarantee I'll be able to answer them. There are some |
24e8e380 GS |
139 | excellent books available on the Perl language; consult a book |
140 | seller. | |
495c5fdc | 141 | |
050dfae0 PG |
142 | If you want a supported version of perl for VOS, purchase the VOS |
143 | GNU C++ and GNU Tools Release 2.0.1 product from Stratus | |
144 | Technologies, along with a support contract (or from anyone else | |
145 | who will sell you support). | |
146 | ||
9a997319 JH |
147 | =head1 AUTHOR |
148 | ||
4f3de37c | 149 | Paul Green (Paul.Green@stratus.com) |
9a997319 JH |
150 | |
151 | =head1 LAST UPDATE | |
152 | ||
46ff39aa | 153 | March 26, 2003 |
9a997319 JH |
154 | |
155 | =cut |