Does somebody have successfully compiled libsigsegv-2.1 under Panther ?

Monday, August 09 2004 @ 12:21 PM BST

Contributed by: unix

When trying to ./configure libsigsegv the configuration script hangs on "checking whether a fault handler according to MacOSX PowerPC works"... Any idea ?

After some investigation, it seems that the way libsigsegv is trying to recover the "fault" address doesn't work anymore under Panther (does it work under Jaguar ?).
The code "hangs" because another SIGSEGV is generated by get_fault_addr.
Further investigation on the Net (and looking at the Wine source code) leads to the following solution:
The configure script, fault-macos-powerpc.c and fault-macos-powerpc.h files have to be modified. (download here the patches).
The modifications concern how the faulty address is extracted from the context passed to the signal handler and also the fact that SIGSEGV_FAULT_ADDRESS_FROM_SIGINFO has to be defined in fault-macos-powerpc.h.
Be warned that the patches are a quick solution to make libsigsegv works under Panther, but they break the compatibility with previous version (darwin5.5): keep previous versions of the modified files if you need to compile for another Mac OS X version based on Darwin 5.