emacs23.3 issues and hurd signals
The latest emacs version does not compile on GNU/Hurd. When trying with
default settings there is a segfault when compiling
lisp/cedet/srecode/mode.el using the built emacs and dumped code.
Changing the optimization of the C code from -O2 to -O0 resulted an
illegal instruction at the same file, not a big improvement. Debugging
with gdb does not help me much, since most of the backtrace is related
to the lisp code compiler.
However, when compiling the C code, a lot of warnings are issued about
emacs using depreciated sigblock and sigsetmask functions. The
recommended function to use now is sigprocmask. However, this function
is not thread safe, pthread_sigmask should be used instead. However, as
discussed with braunr on IRC, he claims that single-threaded programs
does not have to bother about the mach exception thread running in
parallel to the main thread.
1) Is this the case?
2) Would changing the emacs code to use sigprocmask have the potential
to make any difference here? Except making the warnings go away.
3) In the man page for pthread_sigmask, there is a test example, showing
that signals could be blocked and handled in a separate thread. However,
when running that code in GNU/Hurd, the output is not as expected (and
tested on GNU/Linux!). The code at hand is available at