| 1 | Perl 5 README file for the Stratus VOS operating system. |
| 2 | Paul Green (Paul_Green@stratus.com) |
| 3 | August 12, 1998 |
| 4 | |
| 5 | Introduction |
| 6 | ------------ |
| 7 | This is a port of Perl version 5, revision 005-02, to VOS. Perl |
| 8 | is a scripting or macro language that is popular on many |
| 9 | systems. See your local computer bookstore for a number of good |
| 10 | books on Perl. |
| 11 | |
| 12 | Most of the Perl features should work on VOS. However, any |
| 13 | attempt by perl.pm to call the following unimplemented POSIX |
| 14 | functions will result in an error message and an immediate and |
| 15 | fatal call to the VOS debugger. They are "dup", "execlp", |
| 16 | "execl", "execvp", "fork", and "waitpid". |
| 17 | |
| 18 | Compiling Perl 5 on VOS |
| 19 | ----------------------- |
| 20 | Before you can build Perl 5 on VOS, you need to have or acquire the |
| 21 | following additional items. |
| 22 | |
| 23 | 1. The VOS Standard C Compiler and Runtime, or the VOS Standard C |
| 24 | Cross-Compiler. This is a standard Stratus product. |
| 25 | |
| 26 | 2. The VOS OS TCP/IP product set. While the necessary header files |
| 27 | are included in this distribution, you still need the appropriate |
| 28 | object files in order to bind perl.pm. This is a standard |
| 29 | Stratus product. |
| 30 | |
| 31 | 3. The VOS POSIX.1 environment. As of this writing, this is |
| 32 | available on the VOS FTP site. Login to ftp.stratus.com |
| 33 | anonymously and get the file /pub/vos/alpha/posix.save.evf.gz in |
| 34 | binary file-transfer mode. Or use the Uniform Resource Locator |
| 35 | (URL) ftp://ftp.stratus.com/pub/vos/alpha/posix.save.evf.gz from |
| 36 | your web browser. This is not a standard Stratus product. |
| 37 | |
| 38 | To build build 5, change to one of the VOS object directories |
| 39 | (e.g., perl5.005_02>vos>obj), and give the command "<build". If |
| 40 | you have the cross-compilers and wish to build for a specific |
| 41 | architecture, say "<build -processor pa7100" (for example). You |
| 42 | can also customize the "compile_perl.cm" command macro for your |
| 43 | system. |
| 44 | |
| 45 | Changes to Perl for VOS |
| 46 | ----------------------- |
| 47 | 1. The header perl.h was changed to include vosish.h instead |
| 48 | of unixish.h. This change is necessary because VOS POSIX.1 |
| 49 | does not (yet) implement the getgrname() or getgrgid() |
| 50 | functions. |
| 51 | |
| 52 | Unimplemented Features |
| 53 | ---------------------- |
| 54 | If Perl 5 attempts to call an unimplemented VOS POSIX.1 |
| 55 | function, it will print a fatal error message and enter the VOS |
| 56 | debugger. This error is not recoverable. See vos_dummies.c for |
| 57 | a list of the unimplemented POSIX.1 functions. To see what the |
| 58 | error message looks like, compile and execute |
| 59 | "test_vos_dummies.c". |
| 60 | |
| 61 | Restrictions |
| 62 | ------------ |
| 63 | This port of Perl version 5 to VOS uses Unix-style, |
| 64 | slash-separated pathnames, not VOS-style greater-than-separated |
| 65 | pathnames. If you wish to have it use VOS-style pathnames, try |
| 66 | setting the external variable s$c_options to 4 with the |
| 67 | following command line. Note that this way of configuring Perl |
| 68 | 5 has not been tested; I don't know if Perl can handle the |
| 69 | presence of the greater-thans, and the absence of the slashes. |
| 70 | |
| 71 | set_external_variable s$c_options -in perl.pm -type integer -to 4 |
| 72 | |
| 73 | The following command can be used to check the value: |
| 74 | |
| 75 | get_external_variable s$c_options -in perl.pm -type integer |
| 76 | |
| 77 | See the documentation for VOS POSIX.1 for the full set of option |
| 78 | values. |
| 79 | |
| 80 | Support Status |
| 81 | -------------- |
| 82 | I'm offering this port "as is". You can ask me questions, but I |
| 83 | can't guarantee I'll be able to answer them; I don't know much |
| 84 | about Perl itself; I'm still learning that. |
| 85 | |
| 86 | (end) |
| 87 | |