make-w32
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: WINDOWS32 "Signal 127" due to a path in quotes bug


From: J. Grant
Subject: Re: WINDOWS32 "Signal 127" due to a path in quotes bug
Date: Wed, 03 Aug 2005 23:44:44 +0100
User-agent: Mozilla/5.0 (X11; U; GNU/Linux i686; en; rv:1.7.8) Gecko/20050513 Debian/1.7.8-1

Hi Eli,

  jg> Ok. thank you for explaining. So is the reason the two main.exe do
  jg> not terminate because my main.c program does not handle SIGINT?

I was assuming they don't terminate because the operating system
(Windows) is sending the SIGINT to only the "main" program (in this case
make), and not sending it to all the processes that make invokes.  In
other words, Windows doesn't have the concept of a process group or, at
least, it doesn't work the same way.

Windows _does_ have the notion of process groups; what it doesn't have
is the concept of signals.  Signals are emulated on Windows.

Perhaps we do not need the exit code (of the SIGINT main.exe) to be
displayed on WINDOWS32.  It does not display on GNU/Linux build. (Just
says "Interrupt")

So the issue here is how are the emulated signals delivered to several
programs that run concurrently.  I'm guessing that SIGINT is delivered
only to the program that Windows considers to be currently in the
foreground, but not to the others.

My hope is that the exit status of the interrupted program somehow
tells that it was interrupted.  If so, we could propagate that
knowledge back into Make, and handle it correctly.

Would Make need to do anything other than complete the termination of
the two main.exe processes and display "Interrupt" ?

But I need time to investigate all this, and that won't happen until
the next weekend.

Ok, thanks for investigating this. I am away for a while, so I'll not
be checking my email for a while.

Kind regards
JG




reply via email to

[Prev in Thread] Current Thread [Next in Thread]