This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
(perl #134189) handle no gcc, but cc is clang
[perl5.git] / README.vos
index ab9d99d..7249f49 100644 (file)
-Perl 5 README file for the Stratus VOS operating system.
-Paul Green (Paul_Green@stratus.com)
-August 12, 1998
-
-Introduction
-------------
-This is a port of Perl version 5, revision 005-02, to VOS.  Perl
-is a scripting or macro language that is popular on many
-systems.  See your local computer bookstore for a number of good
-books on Perl.
-
-Most of the Perl features should work on VOS.  However, any
-attempt by perl.pm to call the following unimplemented POSIX
-functions will result in an error message and an immediate and
-fatal call to the VOS debugger.  They are "dup", "execlp",
-"execl", "execvp", "fork", and "waitpid".
-
-Compiling Perl 5 on VOS
------------------------
-Before you can build Perl 5 on VOS, you need to have or acquire the
-following additional items.
-
-1.   The VOS Standard C Compiler and Runtime, or the VOS Standard C
-     Cross-Compiler.  This is a standard Stratus product.
-
-2.   The VOS OS TCP/IP product set.  While the necessary header files
-     are included in this distribution, you still need the appropriate
-     object files in order to bind perl.pm.  This is a standard
-     Stratus product.
-
-3.   The VOS POSIX.1 environment.  As of this writing, this is
-     available on the VOS FTP site.  Login to ftp.stratus.com
-     anonymously and get the file /pub/vos/alpha/posix.save.evf.gz in
-     binary file-transfer mode.  Or use the Uniform Resource Locator
-     (URL) ftp://ftp.stratus.com/pub/vos/alpha/posix.save.evf.gz from
-     your web browser.  This is not a standard Stratus product.
-
-To build build 5, change to one of the VOS object directories
-(e.g., perl5.005_02>vos>obj), and give the command "<build".  If
-you have the cross-compilers and wish to build for a specific
-architecture, say "<build -processor pa7100" (for example).  You
-can also customize the "compile_perl.cm" command macro for your
-system.
-
-Changes to Perl for VOS
------------------------
-1.   The header perl.h was changed to include vosish.h instead
-     of unixish.h.  This change is necessary because VOS POSIX.1
-     does not (yet) implement the getgrname() or getgrgid()
-     functions.
-
-Unimplemented Features
-----------------------
-If Perl 5 attempts to call an unimplemented VOS POSIX.1
-function, it will print a fatal error message and enter the VOS
-debugger.  This error is not recoverable.  See vos_dummies.c for
-a list of the unimplemented POSIX.1 functions.  To see what the
-error message looks like, compile and execute
-"test_vos_dummies.c".
-
-Restrictions
-------------
-This port of Perl version 5 to VOS uses Unix-style,
-slash-separated pathnames, not VOS-style greater-than-separated
-pathnames.  If you wish to have it use VOS-style pathnames, try
-setting the external variable s$c_options to 4 with the
-following command line.  Note that this way of configuring Perl
-5 has not been tested; I don't know if Perl can handle the
-presence of the greater-thans, and the absence of the slashes.
-
-     set_external_variable s$c_options -in perl.pm -type integer -to 4
-
-The following command can be used to check the value:
-
-     get_external_variable s$c_options -in perl.pm -type integer
-
-See the documentation for VOS POSIX.1 for the full set of option
-values.
-
-Support Status
---------------
+If you read this file _as_is_, just ignore the funny characters you
+see. It is written in the POD format (see pod/perlpod.pod) which is
+specially designed to be readable as is.
+
+=head1 NAME
+
+perlvos - Perl for Stratus OpenVOS
+
+=head1 SYNOPSIS
+
+This file contains notes for building perl on the Stratus OpenVOS
+operating system.  Perl is a scripting or macro language that is
+popular on many systems.  See L<perlbook> for a number of good books
+on Perl.
+
+These are instructions for building Perl from source.  This version of
+Perl requires the dynamic linking support that is found in OpenVOS
+Release 17.1 and thus is not supported on OpenVOS Release 17.0 or
+earlier releases.
+
+If you are running VOS Release 14.4.1 or later, you can obtain a
+pre-compiled, supported copy of perl by purchasing the GNU Tools
+product from Stratus Technologies.
+
+=head1 BUILDING PERL FOR OPENVOS
+
+To build perl from its source code on the Stratus V Series platform
+you must have OpenVOS Release 17.1.0 or later, GNU Tools Release
+3.5 or later, and the C/POSIX Runtime Libraries.
+
+Follow the normal instructions for building perl; e.g, enter bash, run
+the Configure script, then use "gmake" to build perl.
+
+=head1 INSTALLING PERL IN OPENVOS
+
+=over 4
+
+=item 1
+
+After you have built perl using the Configure script, ensure that you
+have modify and default write permission to C<< >system>ported >> and
+all subdirectories.  Then type
+
+     gmake install
+
+=item 2
+
+While there are currently no architecture-specific extensions or
+modules distributed with perl, the following directories can be
+used to hold such files (replace the string VERSION by the
+appropriate version number):
+
+     >system>ported>lib>perl5>VERSION>i786
+
+=item 3
+
+Site-specific perl extensions and modules can be installed in one of
+two places.  Put architecture-independent files into:
+
+     >system>ported>lib>perl5>site_perl>VERSION
+
+Put site-specific architecture-dependent files into one of the
+following directories:
+
+     >system>ported>lib>perl5>site_perl>VERSION>i786
+
+=item 4
+
+You can examine the @INC variable from within a perl program
+to see the order in which Perl searches these directories.
+
+=back
+
+=head1 USING PERL IN OPENVOS
+
+=head2 Restrictions of Perl on OpenVOS
+
+This port of Perl version 5 prefers Unix-style, slash-separated
+pathnames over OpenVOS-style greater-than-separated pathnames.
+OpenVOS-style pathnames should work in most contexts, but if you have
+trouble, replace all greater-than characters by slash characters.
+Because the slash character is used as a pathname delimiter, Perl
+cannot process OpenVOS pathnames containing a slash character in a
+directory or file name; these must be renamed.
+
+This port of Perl also uses Unix-epoch date values internally.
+As long as you are dealing with ASCII character string
+representations of dates, this should not be an issue.  The
+supported epoch is January 1, 1980 to January 17, 2038.
+
+See the file pod/perlport.pod for more information about the OpenVOS
+port of Perl.
+
+=head1 TEST STATUS
+
+A number of the perl self-tests fails for various reasons; generally
+these are minor and due to subtle differences between common
+POSIX-based environments and the OpenVOS POSIX environment.  Ensure
+that you conduct sufficient testing of your code to guarantee that it
+works properly in the OpenVOS environment.
+
+=head1 SUPPORT STATUS
+
 I'm offering this port "as is".  You can ask me questions, but I
-can't guarantee I'll be able to answer them; I don't know much
-about Perl itself; I'm still learning that.
+can't guarantee I'll be able to answer them.  There are some
+excellent books available on the Perl language; consult a book
+seller.
+
+If you want a supported version of perl for OpenVOS, purchase the
+OpenVOS GNU Tools product from Stratus Technologies, along with a
+support contract (or from anyone else who will sell you support).
+
+=head1 AUTHOR
+
+Paul Green (Paul.Green@stratus.com)
+
+=head1 LAST UPDATE
 
-(end)
+February 28, 2013
 
+=cut