=head1 SYNOPSIS
http://www.bixby.org/mark/perlix.html
- http://jazz.external.hp.com/src/hp_freeware/perl/
Perl language for MPE
- Last updated June 2, 2000 @ 0400 UTC
+ Last updated January 12, 2006 @ 2100 UTC
+
=head1 NOTE
-This is a podified version of the above-mentioned web page,
+This is a podified version of what used to be on the above-mentioned web page,
podified by Jarkko Hietaniemi 2001-Jan-01.
-=head1 Binary distribution from HP
+=head1 What's New in Perl for MPE/iX
-The simplest way to obtain Perl for the MPE/iX is to go either of
-these URLs and follow the instructions within.
+January 12, 2006
-http://jazz.external.hp.com/src/hp_freeware/perl/
-http://www.bixby.org/mark/perlix.html
+=over 4
-Use which ever one is more recent.
+=item *
+Updated for perl-5.8.8 and perl-5.9.3 by Ken Hirsch.
-=head1 What's New in Perl for MPE/iX
+Simplified the build process by using the MPEAUTOCONF
+functionality in Mark Klein's ld.
+
+If you build this from scratch, make sure you have a version
+of ld which supports it. In the shell, type
+
+ ld --help
+ and look for AUTOCONF or MPEAUTOCONF near the bottom
+
+ or do this:
+ ld --help 2>&1 | grep AUTOCONF
+
+If you see don't see AUTOCONF or MPEAUTOCONF, make sure you get a new
+version.
+
+You also do not have to use mpeix/relink after building, so the
+recommend sequence is:
+
+ ./Configure -de
+
+ # or ./Configure -de -Dusedevel
+ # if you're building a development version
+
+ make
+ make test
+ # if you run this in a job, do "make test_notty"
+
+ make install
+
+Be prepared for a wait. These take much longer on MPE/iX than on a Unix
+system, because of a slow forking, mostly. On a lightly-loaded HP3000
+Series 979 running MPE/iX 7.5:
+
+ Configure: 1 hour
+ make: 1 hour 15 minutes
+ make test 1 hour 45 minutes
+
+Various socket problems were fixed in mpeix.c.
+
+Mark Klein provided a fixed sigsetjmp (that works with dynamic
+libraries) in mpeix_setjmp.c
+
+=back
June 1, 2000
=item *
-bincompat5005="undef": sorry, but you will have to recompile any
-binary 5.005 extensions that you may be using (if any; there is no
-5.005 code in what you download from bixby.org)
uselargefiles="undef": not available in MPE for POSIX files yet.
=item *
libwww-perl (LWP) which lets Perl programs behave like web browsers:
- 1. #!/PERL/PUB/perl
- 2. use LWP::Simple;
- 3. $doc = get('http://www.bixby.org/mark/perlix.html'); # reads the
- web page into variable $doc
-
-(http://www.bixby.org/mark/perlix.html)
-
=item *
mod_perl (just the perl portion; the actual DSO will be released
2. perl -MCPAN -e shell
3. Ignore any terminal I/O related complaints!
-(http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html)
+(http://search.cpan.org/dist/CPAN/)
=back
available to me on MPE.
Please send your comments, questions, and bug reports directly to me,
-Mark Bixby ( http://www.bixby.org/mark/ ), by e-mailing to
-mark@bixby.org. Or just post them to HP3000-L.
+Mark Bixby ( http://www.bixby.org/mark/ ). Or just post them to HP3000-L.
The platform I'm using to do this port is an HP 3000 957RX running
MPE/iX 6.0 and using the GNU gcc C compiler
Be sure to take a look at the CPAN module list
( http://www.cpan.org/CPAN.html ). A wide variety of free Perl software
is available. You can automatically download these packages by using
-the CPAN module ( http://theoryx5.uwinnipeg.ca/CPAN/data/perl/CPAN.html ).
+the CPAN module ( http://search.cpan.org/dist/CPAN/ ).
=head1 MPE/iX Implementation Considerations
=item *
-If you use Perl/iX fcntl() against a socket it will fail, because MPE
-requires that you use sfcntl() instead. Perl/iX does not presently
-support sfcntl().
-
-=item *
-
MPE requires GETPRIVMODE() in order to setuid(). There are too many
calls to setuid() within Perl/iX, so I have not attempted an automatic
GETPRIVMODE() solution similar to bind().
=head1 AUTHOR
-Mark Bixby, mark@bixby.org
+Mark Bixby, http://www.bixby.org/mark/