diff perl-5.22.2/README.os400 @ 8045:a16537d2fe07

<xfix> tar xf perl-5.22.2.tar.gz # Ah, whatever, I\'m doing it anyway
author HackBot
date Sat, 14 May 2016 14:54:38 +0000
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/perl-5.22.2/README.os400	Sat May 14 14:54:38 2016 +0000
@@ -0,0 +1,123 @@
+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
+
+perlos400 - Perl version 5 on OS/400
+
+B<This document needs to be updated, but we don't know what it should say.
+Please email comments to L<perlbug@perl.org|mailto:perlbug@perl.org>.>
+
+=head1 DESCRIPTION
+
+This document describes various features of IBM's OS/400 operating
+system that will affect how Perl version 5 (hereafter just Perl) is
+compiled and/or runs.
+
+By far the easiest way to build Perl for OS/400 is to use the PASE
+(Portable Application Solutions Environment), for more information see
+L<http://www.iseries.ibm.com/developer/factory/pase/index.html>
+This environment allows one to use AIX APIs while programming, and it
+provides a runtime that allows AIX binaries to execute directly on the
+PowerPC iSeries.
+
+=head2 Compiling Perl for OS/400 PASE
+
+The recommended way to build Perl for the OS/400 PASE is to build the
+Perl 5 source code (release 5.8.1 or later) under AIX.
+
+The trick is to give a special parameter to the Configure shell script
+when running it on AIX:
+
+  sh Configure -DPASE ...
+
+The default installation directory of Perl under PASE is /QOpenSys/perl.
+This can be modified if needed with Configure parameter -Dprefix=/some/dir.
+
+Starting from OS/400 V5R2 the IBM Visual Age compiler is supported
+on OS/400 PASE, so it is possible to build Perl natively on OS/400.  
+The easier way, however, is to compile in AIX, as just described.
+
+If you don't want to install the compiled Perl in AIX into /QOpenSys
+(for packaging it before copying it to PASE), you can use a Configure
+parameter: -Dinstallprefix=/tmp/QOpenSys/perl.  This will cause the
+"make install" to install everything into that directory, while the
+installed files still think they are (will be) in /QOpenSys/perl.
+
+If building natively on PASE, please do the build under the /QOpenSys
+directory, since Perl is happier when built on a case sensitive filesystem.
+
+=head2 Installing Perl in OS/400 PASE
+
+If you are compiling on AIX, simply do a "make install" on the AIX box.
+Once the install finishes, tar up the /QOpenSys/perl directory.  Transfer
+the tarball to the OS/400 using FTP with the following commands:
+
+  > binary
+  > site namefmt 1
+  > put perl.tar /QOpenSys
+
+Once you have it on, simply bring up a PASE shell and extract the tarball.
+
+If you are compiling in PASE, then "make install" is the only thing you
+will need to do.
+
+The default path for perl binary is /QOpenSys/perl/bin/perl.  You'll
+want to symlink /QOpenSys/usr/bin/perl to this file so you don't have
+to modify your path.
+
+=head2 Using Perl in OS/400 PASE
+
+Perl in PASE may be used in the same manner as you would use Perl on AIX.
+
+Scripts starting with #!/usr/bin/perl should work if you have
+/QOpenSys/usr/bin/perl symlinked to your perl binary.  This will not
+work if you've done a setuid/setgid or have environment variable
+PASE_EXEC_QOPENSYS="N".  If you have V5R1, you'll need to get the
+latest PTFs to have this feature.  Scripts starting with
+#!/QOpenSys/perl/bin/perl should always work.
+
+=head2 Known Problems
+
+When compiling in PASE, there is no "oslevel" command.  Therefore,
+you may want to create a script called "oslevel" that echoes the
+level of AIX that your version of PASE runtime supports.  If you're
+unsure, consult your documentation or use "4.3.3.0".
+
+If you have test cases that fail, check for the existence of spool files.
+The test case may be trying to use a syscall that is not implemented
+in PASE.  To avoid the SIGILL, try setting the PASE_SYSCALL_NOSIGILL
+environment variable or have a handler for the SIGILL.  If you can
+compile programs for PASE, run the config script and edit config.sh
+when it gives you the option.  If you want to remove fchdir(), which
+isn't implement in V5R1, simply change the line that says:
+
+d_fchdir='define'
+
+to
+
+d_fchdir='undef'
+
+and then compile Perl.  The places where fchdir() is used have
+alternatives for systems that do not have fchdir() available.
+
+=head2 Perl on ILE
+
+There exists a port of Perl to the ILE environment.  This port, however,
+is based quite an old release of Perl, Perl 5.00502 (August 1998).
+(As of July 2002 the latest release of Perl is 5.8.0, and even 5.6.1
+has been out since April 2001.)  If you need to run Perl on ILE, though,
+you may need this older port: L<http://www.cpan.org/ports/#os400>
+Note that any Perl release later than 5.00502 has not been ported to ILE.
+
+If you need to use Perl in the ILE environment, you may want to consider
+using Qp2RunPase() to call the PASE version of Perl.
+
+=head1 AUTHORS
+
+Jarkko Hietaniemi <jhi@iki.fi>
+Bryan Logan <bryanlog@us.ibm.com>
+David Larson <larson1@us.ibm.com>
+
+=cut