#14636: ECL spkg : dirty workarounds?
--------------------------------------+-------------------------------------
       Reporter:  Snark               |         Owner:  jdemeyer               
           Type:  defect              |        Status:  needs_work             
       Priority:  major               |     Milestone:  sage-pending           
      Component:  packages: standard  |    Resolution:                         
       Keywords:                      |   Work issues:  rebase, SIGCHLD doctest
Report Upstream:  N/A                 |     Reviewers:                         
        Authors:  Julien Puydt        |     Merged in:                         
   Dependencies:  #11359              |      Stopgaps:                         
--------------------------------------+-------------------------------------

Comment (by nbruin):

 Replying to [comment:32 Snark]:
 > Ah, Nils, your explanations are really interesting: that would explain
 why I see signals (30=SIGPWR) without understanding exactly what happens.

 You might want to read a bit of source for this. It was enlightening to me
 at the time. If I remember correctly, Boehm decides at runtime whether to
 use those signals (IIRC it keeps track of a list of threads registered
 with it and if that list is longer than one, it issues those signals), so
 you may be able to avoid those quite easily as soon as you get ECL to not
 create threads.

 See [http://ecls.sourceforge.net/new-manual/ch30s03.html
 ECL_OPT_SIGNAL_HANDLING_THREAD] for ECL (and probably the source!) If this
 means we get no signal handling at all in ECL, we have a bit of a problem,
 of course. We still want `CTRL-C` and perhaps even `SIGALRM` to work. What
 we really need is that `ENABLE_THREADS` is a boot-time option.

 > Though there is something you miss when you say that there is not much
 to benefit from the change: debian's ecl is built with threads, so if sage
 is to be properly packaged, then it has to work with threads!

 I seriously think that's going to be a no-go. While ECL's and sage's way
 of handling signals are both sensible on their own, I think they are quite
 incompatible. Without any threads, we can sort of manage by switching the
 handlers. But I'm afraid that when ECL is compiled with thread support, it
 insists on handling async events on a separate thread under its own
 control. I was hoping you had a brilliant insight.

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/14636#comment:33>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to