Integrate perlio:
Jarkko Hietaniemi [Sun, 28 Oct 2001 13:31:54 +0000 (13:31 +0000)]
[ 12733]
Use fd refcounts to solve the problem highlighted by new Embed.t, at
least for PERLIO=perlio unthreaded case

[ 12732]
Typo in exe name

[ 12730]
Fixup Embed.t for Win32/VC++

[ 12729]
Adapt testcase from Doug Maceachern <dougm@covalent.net> for perlio_destruct
bug as lib/ExtUtils/Embed.t which tests that and some aspects of
ExtUtils::Embed.

[ 12711]
Use ref count scheme rather than PerlLIO_dup() to do fp_dup().
Restores op/fork.t on Win32 (still segfault on exit of ok 2).

[ 12557]
All tests pass (legitimately) on ithreads

[ 12555]
Restore non-ithreads build. Interestingly binmode test passes
non-ithreads - so crlf layer is not damaged and ithreads fail
is a symptom ...

[ 12552]
Win32 PerlIO_cleanup special cases should no longer be required.

[ 12551]
Multiple win32io.o is fatal for GCC (and noise with VC++)

[ 12547]
Convert rest of PerlIO's memory tables to per-interp and add clone functions
for them. Call explicit cleanup during destruct process.
- one binmode test is failing
- also ext/threads/t/basic.t fails under make test, and is noisy under
harness. (Threads results are intermingled and don't match order expected.)

[ 12544]
PerlIO layer table as PL_perlio (per-interpreter)

[ 12541]
Fix typos in new locking on MemShared
Make buffers in PerlIOBuf_* in per-thread heap (they are cloned after all...)
- seems to make segfaults more deterministic - suspect they are
attempt to free() after Interp and Host have gone.

[ 12540]
Remove the MemShared re-#define (again)

[ 12539]
Use locks on MemShared

p4raw-link: @12733 on //depot/perlio: 168d58725e27e79cccc6d9848fb20fa3a91b5746
p4raw-link: @12732 on //depot/perlio: b1b2427f0e4638dc00cb156274394cb88b9c20d6
p4raw-link: @12730 on //depot/perlio: 1091dea485b700b0121770b0cbb0ffa417266d9e
p4raw-link: @12729 on //depot/perlio: f1feeb72ef65793d07f6b0333f64df9b07a006b1
p4raw-link: @12711 on //depot/perlio: 93a8090dc33a049e3827420ced6c7db56ab1f529
p4raw-link: @12557 on //depot/perlio: 56a2bab7c22806897577c69e86796669bc5a9a3a
p4raw-link: @12555 on //depot/perlio: 3aaf42a70f921d9bb089a4793680c24d83c92281
p4raw-link: @12552 on //depot/perlio: d93f9f22eaa7dce16568cb2193ca194466bae1c2
p4raw-link: @12551 on //depot/perlio: 6148bcae7e00c79a54ab24cae043d9cc48443237
p4raw-link: @12547 on //depot/perlio: 3a1ee7e89ce6793a321c9c259b0464c3f464c5ce
p4raw-link: @12544 on //depot/perlio: a1ea730d96bcc07b3d616a92ace3927de8290cdd
p4raw-link: @12541 on //depot/perlio: 7fcdafbdb0bffcc321d3a9c54e5d13442d621313
p4raw-link: @12540 on //depot/perlio: 5ed1ec7bdfae87aa5419ee42de2a3f5267b16906
p4raw-link: @12539 on //depot/perlio: f3dccfae94e790b7365a85a459e510b162f9a8d6

p4raw-id: //depot/perl@12734


Trivial merge