Re: [Sablevm-developer] SA_SIGINFO undefined
Brought to you by:
egagnon
From: Julio M. M. V. <jm...@me...> - 2004-03-26 23:18:53
|
On Thu, 25 Mar 2004 23:45:58 -0500 Etienne Gagnon <gag...@uq...> wrote: > Hi Julio, > > You've made the Hall of Fame. Your name is in SableVM's AUTHORS file > (staging branch), along with your 3 patches applied. > > Thanks a lot! Wow :-) You're welcome. But now, back again to the SA_SIGINFO stuff. The patch I sent yesterday really fixed sablevm, but only for NetBSD-current. Today I gave a try under NetBSD 1.6.2 (the stable branch, which frankly is getting out of date and misses stuff like siginfo)... you guessed right, the build failed. I've got a patch that fixes it, though I'm not sure it's 100% right (because some signal handling is left out). Here is what I did: - Check for the presence of siginfo_t from configure. If it's not present, completely disable "signals for exceptions" unconditionally (with the appropiate warning to let the user know what's going on). I assume that if siginfo_t is not present, SA_SIGINFO is not either (and viceversa). - If siginfo is not present, define siginfo_t to void. This is used just once in a function prototype, and the siginfo_t parameter is never used when "signals for exceptions" are disabled. Therefore, setting it to a void pointer lets it work (because the parameter is not used), and the workaround is completely transparent to the code. - Move some #ifdef's around in error.c, to protect more code that uses siginfo stuff. So, if this rationale is ok, the attached patch should do it correctly ;-) Cheers -- Julio M. Merino Vidal <jm...@me...> The NetBSD Project - http://www.NetBSD.org/ |