optimize XSUBs to use targets if the -nooptimize xsubpp option is
[p5sagit/p5-mst-13.2.git] / README.vmesa
1 README.vmesa
2
3 This is a fully ported perl for VM/ESA 2.3.0.  It may work on
4 other versions, but that's the one we've tested it on.
5
6 If you've downloaded the binary distribution, it needs to be
7 installed below /usr/local.  Source code distributions have an
8 automated `make install` step that means you do not need to extract
9 the source code below /usr/local (though that is where it will be
10 installed by default).  You may need to worry about the networking
11 configuration files discussed in the last bullet below.
12
13 To extract an ASCII tar archive on VM/ESA, try this:
14
15    pax -o to=IBM-1047,from=ISO8859-1 -r < latest.tar
16
17 GNU make for VM/ESA, which may be required for the build of perl,
18 is available from:
19
20   http://pucc.princeton.edu/~neale/vmoe.html
21
22 Once you've unpacked the distribution, run Configure (see INSTALL for
23 full discussion of the Configure options), and then run make, then
24 "make test" then "make install" (this last step may require UID=0
25 privileges)
26
27 There is a "hints" file for vmesa that specifies the correct values
28 for most things.  Some things to watch out for are
29
30         - this port does support dynamic loading but it's not had much testing
31
32         - Don't turn on the compiler optimization flag "-O".  There's
33           a bug in the compiler (APAR PQ18812) that generates some bad code
34           the optimizer is on.
35
36         - As VM/ESA doesn't fully support the fork() API programs relying on
37           this call will not work. I've replaced fork()/exec() with spawn()
38           and the standalone exec() with spawn(). This has a side effect when
39           opening unnamed pipes in a shell script: there is no child process
40           generated under.
41
42         - At the moment the hints file for VM/ESA basically bypasses all of the
43           automatic configuration process. This is because Configure relies on:
44           1. The header files living in the Byte File System (you could put the
45              there if you want;
46           2. The C preprocessor including the #include statements in the
47              preprocessor output (.i) file.
48         
49 When using perl on VM/ESA please keep in mind that the EBCDIC and ASCII
50 character sets are different.  Perl builtin functions that may behave
51 differently under EBCDIC are mentioned in the perlport.pod document.
52
53 OpenEdition (UNIX System Services) does not (yet) support the #! means
54 of script invokation.
55 See:
56
57     head `whence perldoc`
58
59 for an example of how to use the "eval exec" trick to ask the shell to
60 have perl run your scripts for you.
61
62 If you are interested in the VM and OS/390 ports of perl then see the
63 perl-mvs mailing list: The Perl Institute (http://www.perl.org/)
64 maintains a mailing list of interest to all folks building and/or
65 using perl on EBCDIC platforms.  To subscibe, send a message of:
66
67     subscribe perl-mvs
68
69 to majordomo@perl.org.
70
71 Regression tests: as the 5.005 kit was was being assembled
72 the following "failures" were known to appear on some machines
73 during `make test` (mostly due to ASCII vs. EBCDIC conflicts),
74 your results may differ:
75
76 [the list of failures being compiled]