Fix file-descriptor leak when pipes fail via taint checks:
[p5sagit/p5-mst-13.2.git] / os2 / Changes
CommitLineData
867988ae 1after 5.003_05:
2 PERLLIB_PREFIX was not active if it matches an element of @INC
3 as a whole.
4 Do not need PERL_SBRK if crtdll-revision is >= 50.
5 Use -Zsmall-conv if crtdll-revision is >= 50 (in static perl!).
6:7: warning: #warning <dirent.h> requires <sys/types.h>
7 We compile miniperl static. It cannot fork, thus there may be
8 problems with pipes (since HAS_FORK is in
9 place). Pipes are required by makemaker.
10 We compile perl___.exe A.OUT and dynamic. It should be able to
11 fork.
12 If we can fork, we my_popen by popen unless "-|". Thus we
13 write a cooky "-1" into the pid array to indicate
14 this.
15 Apparently we can fork, and we can load dynamic extensions
16 now, though probably not simultaneously.
17 *DB tests corrected for OS/2 one-user stat[2].
18 /bin/sh is intercepted and replaced by SH_PATH.
19 Note that having '\\' in the command line of one-arg `system'
20 would trigger call via shell.
21 Segfault with system {'ls'} 'blah'; corrected.
22 Documentation of OS/2-different features added to main PODs.
23 New buitins in Cwd::
24
25 Cwd::current_drive
26 Cwd::sys_chdir - leaves drive as it is.
27 Cwd::change_drive
28 Cwd::sys_is_absolute - has drive letter and is_rooted
29 Cwd::sys_is_rooted - has leading [/\\] (maybe
30 after a drive)
31 Cwd::sys_is_relative - changes with current dir
32 Cwd::sys_cwd - Interface to cwd from EMX.
33 Cwd::sys_abspath(name, dir)
34 - Really really odious
35 function. Returns absolute
36 name of file which would
37 have 'name' if CWD were 'dir'.
38 Dir defaults to the current dir.
39 Cwd::extLibpath [type] - Get/set current value of extended
40 Cwd::extLibpath_set - library search path.
41 path [type]
42 The optional last argument redirects
43 to END-path if true,
44 default is to search BEGIN-path.
45 (Note that some of these may be moved to different
46 libraries - eventually).
47 Executables:
48 perl - can fork, can dynalink (but not simultaneously)
49 perl_ - can fork, cannot dynalink
50 perl__ - same as perl___, but PM.
51 perl___ - cannot fork, can dynalink.
52 The build of the first one - perl - is rather convoluted, and
53 requires a build of miniperl_.
54after 5.003_05:
55 PERLLIB_PREFIX was not active if it matches an element of @INC
56 as a whole.
57 Do not need PERL_SBRK if crtdll-revision is >= 50.
58 Use -Zsmall-conv if crtdll-revision is >= 50 (in static perl!).
59:7: warning: #warning <dirent.h> requires <sys/types.h>
60 We compile miniperl static. It cannot fork, thus there may be
61 problems with pipes (since HAS_FORK is in
62 place). Pipes are required by makemaker.
63 We compile perl___.exe A.OUT and dynamic. It should be able to
64 fork.
65 If we can fork, we my_popen by popen unless "-|". Thus we
66 write a cooky "-1" into the pid array to indicate
67 this.
68 Apparently we can fork, and we can load dynamic extensions
69 now, though probably not simultaneously.
70 *DB tests corrected for OS/2 one-user stat[2].
71 /bin/sh is intercepted and replaced by SH_PATH.
72 Note that having '\\' in the command line of one-arg `system'
73 would trigger call via shell.
74 Segfault with system {'ls'} 'blah'; corrected.
75 Documentation of OS/2-different features added to main PODs.
76 New buitins in Cwd::
77
78 Cwd::current_drive
79 Cwd::sys_chdir - leaves drive as it is.
80 Cwd::change_drive
81 Cwd::sys_is_absolute - has drive letter and is_rooted
82 Cwd::sys_is_rooted - has leading [/\\] (maybe
83 after a drive)
84 Cwd::sys_is_relative - changes with current dir
85 Cwd::sys_cwd - Interface to cwd from EMX.
86 Cwd::sys_abspath(name, dir)
87 - Really really odious
88 function. Returns absolute
89 name of file which would
90 have 'name' if CWD were 'dir'.
91 Dir defaults to the current dir.
92 Cwd::extLibpath [type] - Get/set current value of extended
93 Cwd::extLibpath_set - library search path.
94 path [type]
95 The optional last argument redirects
96 to END-path if true,
97 default is to search BEGIN-path.
98 (Note that some of these may be moved to different
99 libraries - eventually).
100 Executables:
101 perl - can fork, can dynalink (but not simultaneously)
102 perl_ - can fork, cannot dynalink
103 perl__ - same as perl___, but PM.
104 perl___ - cannot fork, can dynalink.
105 The build of the first one - perl - is rather convoluted, and
106 requires a build of miniperl_.
55497cff 107
108after 5.003_07:
109 custom tmpfile and tmpname which may use $TMP, $TEMP.
110 all the calls to OS/2 API wrapped so that it is safe to use
111 them under DOS (may die(), though).
112 Tested that popen works under DOS with modified PDKSH and RSX.
113 File::Copy works under DOS.
114 MakeMaker modified to work under DOS (perlmain.c.tmp and sh -c true).
72ea3524 115
116after 5.003_08:
117 OS2::PrfDB exports symbols as documented;
118 should work on OS/2 2.1 again.
119 uses reliable signals when spawing.
120 do not use popen() any more - no intermediate shell unless needed.
df3ef7a9 121
122after 5.003_11:
123 Functions emx_{malloc,realloc,calloc,free} are exported from DLL.
124 get_sysinfo() bugs corrected (flags were not used and wrongly defined).
44a8e56a 125
126after 5.003_20:
127 _isterm is substituted instead of isatty, s?random instead of srand.
128 `register' disabled if -DDEBUGGING and not AOUT build: stupid SD386.
129 3-argument select() was stomping over memory.
e29f6e02 130
131after 5.003_21:
132 Can start scripts by executing 'dir/script' and
133 'script.sh'. Form without extension will call shell only if
134 the specified file exists (will not look on path) (to prohibit
135 trying to run shell commands directly). - Needed by magic.t.
aa689395 136
137after 5.003_27:
138 ALTERNATE_SHEBANG="extproc " supported, thus options on this
139 line are processed (possibly twice). -S is made legal on such
140 a line. This -S -x is not needed any more.
141 perl.dll may be used from non-EMX programs (via PERL_SYS_INIT
142 - the caller should have valid variable "env" with
143 environment). Known problems: $$ does not work - is 0, waitpid
144 returns immediately, thus Perl cannot wait for completion of
145 started programs.
d8c2d278 146
367f3c24 147after 5.004_01:
148 flock emulation added (disable by setting env PERL_USE_FLOCK=0),
149 thanks to Rocco Caputo;
150 RSX bug with missing waitpid circomvented;
151 -S bug with full path with \ corrected.
152
d8c2d278 153before 5.004_02:
154 -S switch to perl enables a search with additional extensions
155 .cmd, .btm, .bat, .pl as well. This means that if you have
156 mycmd.pl or mycmd.bat on PATH,
157 perl -S mycmd
158 will work. Perl will also look in the current directory first.
159 Moreover, a bug with \; in PATH being non-separator is fixed.
84902520 160
fb73857a 161after 5.004_03:
162 $^E tracks calls to CRT now. (May break if Perl masks some
163 changes to errno?)
164 $0 may be edited to longer lengths (at least under OS/2).
165 OS2::REXX->loads looks in the OS/2-ish fashion too.
dd96f567 166
167after 5.004_53:
168 Minimal thread support added. One needs to manually move pthread.h