Subject: | real.t tests fail on Mac OS X 10.3.9 - STDOUT is not tied to the Apache module |
Apache-Filter-1.022
Mac OS X 10.3.9
Perl revision 5.0 version 8 subversion 1 RC3
all the real.t suite of tests fail on Mac OS X. This is due to a known issue with the standard Mac Mod_Perl environment - see:
http://perl.apache.org/docs/1.0/guide/troubleshooting.html#print___doesn_t_send_anything_on_Mac_OS_X
Basically some core module on Mac OS X untie's/re-tie's STDOUT after mod_perl had it tied, so that the use of unqualified print statements does not work.
To get a clean install via cpan, the testing framework needs to be a little more portable :
Either the library modules in t/lib/Apache need to replace print() with $r->print()
OR
add the following directive to the generated httpd.conf file :
PerlHeaderParserHandler "sub { tie *STDOUT, 'Apache' unless tied *STDOUT; }"
I havent figured out how to integrate the second approach. I have just run the install once (and let it fail) and then added the config directive to the generated conf and rerun the test/install phases