Subject: make use sigaction instead of signal
To: None <tech-userlevel@netbsd.org>
From: Jeremy C. Reed <reed@reedmedia.net>
List: tech-userlevel
Date: 10/04/2006 16:00:58
Our bmake has been reported to not exit sub makes with CTRL-C on Darwin, 
DragonFly and Linux. See PR pkg/31013.

Matt Dillon of DragonFly fixed their usr.bin/make today for this.

Their code now uses sigaction instead of signal to fix this.

But I see our code and DragonFly and FreeBSD and OpenBSD have diverged on 
this. DragonFly and FreeBSD have merged compat.c into job.c. DragonFly and 
OpenBSD have a signal counter.

The fix for just SIGINT should be easy, but maybe it would be better to 
try to keep all these in sync better -- which is a bigger job.

See:

http://cvsweb.allbsd.org/cvsweb.cgi/src/usr.bin/make/?cvsroot=dragonfly
(not updated yet for latest fix in job.c revision 1.147)

Any thoughts on this? Or on "bmake won't stop on CTRL-C" issue itself?