Commit | Line | Data |
---|---|---|
7c5ffed3 JH |
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] |