Here is the libffi testsuite output:
Test Run By sandro on Sun Mar 26 10:49:37 2006 Native configuration is i386-apple-darwin8.5.2 === libffi tests === Schedule of variations: unix Running target unixUsing /opt/local/share/dejagnu/baseboards/unix.exp as board description file for target. Using /opt/local/share/dejagnu/config/unix.exp as generic interface file for target. Using /Users/sandro/gcc-4.2/libffi/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /Users/sandro/gcc-4.2/libffi/testsuite/libffi.call/call.exp ... FAIL: libffi.call/return_fl2.c -O0 -W -Wall execution test FAIL: libffi.call/return_fl2.c -O2 execution test FAIL: libffi.call/return_fl2.c -O3 execution test FAIL: libffi.call/return_fl2.c -Os execution testRunning /Users/sandro/gcc-4.2/libffi/testsuite/libffi.special/ special.exp ...
=== libffi Summary === # of expected passes 1060 # of unexpected failures 4 # of unsupported tests 8The failures are due to a floating point rounding problem, not to libffi itself.
Here is libjava testsuite output: Test Run By sandro on Sat Mar 25 22:59:33 2006 Native configuration is i386-apple-darwin8.5.2 === libjava tests === Schedule of variations: unix Running target unixUsing /opt/local/share/dejagnu/baseboards/unix.exp as board description file for target. Using /opt/local/share/dejagnu/config/unix.exp as generic interface file for target. Using /Users/sandro/gcc-4.2/libjava/testsuite/config/default.exp as tool-and-target-specific interface file.
Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.cni/cni.exp ...Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.compile/ compile.exp ... Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.jacks/ jacks.exp ...
Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.jar/jar.exp ... Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.jni/jni.exp ...Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.lang/ lang.exp ...
XPASS: PR26858 execution - source compiled test XPASS: PR26858 output - source compiled test XPASS: PR26858 execution - bytecode->native test XPASS: PR26858 output - bytecode->native test XPASS: PR26858 -O3 execution - source compiled test XPASS: PR26858 -O3 output - source compiled test XPASS: PR26858 -O3 execution - bytecode->native test XPASS: PR26858 -O3 output - bytecode->native test FAIL: Throw_2 execution - source compiled test FAIL: Throw_2 execution - gij test FAIL: Throw_2 execution - bytecode->native test FAIL: Throw_2 -O3 execution - source compiled test FAIL: Throw_2 execution - gij test FAIL: Throw_2 -O3 execution - bytecode->native test FAIL: initexc execution - gij test FAIL: initexc execution - gij testRunning /Users/sandro/gcc-4.2/libjava/testsuite/libjava.loader/ loader.exp ... Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.mauve/ mauve.exp ... Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.special/ special.exp ... Running /Users/sandro/gcc-4.2/libjava/testsuite/libjava.verify/ verify.exp ...
=== libjava Summary === # of expected passes 4055 # of unexpected failures 8 # of unexpected successes 8 # of expected failures 12 # of untested testcases 18The failures are due to the missing signal unwinding code (something that is out of my reach at the moment, so we must live with it at the moment unless someone is willing to write this part). The unexpected passes are a mistery to me :)
There is currently a problem in libjava testsuite execution: {builddir}/gcc dir is not added to the ld_library_path, so I had to manually set it in the environment in order to let the executables find the right libgcc_s shared library. Moreover, you have to apply the already posted patch to include the __Unwind_GetIPInfo symbol in the libgcc_s library. I'm attaching this patch for your convenience.
I tested a full bootstrap on Darwin/i386. Newer cctools are required (590.36).
I'd like to see these patches checked in on the gcc trunk. I also have backported patches for 4.0 branch, if maintainers are willing to incorporate them (keep in mind that in the 4.0 branch boehm-gc needs to be synced to the trunk version before applying these patches).
Cheers, Sandro
gcc42-boehm-gc.diff
Description: Binary data
gcc42-gcc.diff
Description: Binary data
gcc42-libffi.diff
Description: Binary data
gcc42-libjava.diff
Description: Binary data
gcc42-top.diff
Description: Binary data