path: root/mcon/U/abortsig.U
diff options
Diffstat (limited to 'mcon/U/abortsig.U')
1 files changed, 79 insertions, 0 deletions
diff --git a/mcon/U/abortsig.U b/mcon/U/abortsig.U
new file mode 100644
index 0000000..f7b1efb
--- /dev/null
+++ b/mcon/U/abortsig.U
@@ -0,0 +1,79 @@
+?RCS: $Id: abortsig.U,v 1994/10/29 16:02:19 ram Exp $
+?RCS: Copyright (c) 1991-1993, Raphael Manfredi
+?RCS: You may redistribute only under the terms of the Artistic Licence,
+?RCS: as specified in the README file that comes with the distribution.
+?RCS: You may reuse parts of this distribution only within the terms of
+?RCS: that same Artistic Licence; a copy of which may be found at the root
+?RCS: of the source tree for dist 3.0.
+?RCS: $Log: abortsig.U,v $
+?RCS: Revision 1994/10/29 16:02:19 ram
+?RCS: patch36: call ./usg explicitely instead of relying on PATH
+?RCS: Revision 3.0 1993/08/18 12:05:20 ram
+?RCS: Baseline for dist 3.0 netwide release.
+?MAKE:abortsig: Myread Oldconfig Guess cat +cc ccflags rm
+?MAKE: -pick add $@ %<
+?S: This variable holds the name of the signal used by the abort() call.
+?C: This symbol holds the signal number (symbol) used by the abort() call. To
+?C: actually define the signal symbol, <signal.h> should be included.
+?H:#define ABORTSIG $abortsig /**/
+: which signal is sent by abort ?
+echo " "
+case "$abortsig" in
+ echo "Checking to see which signal is sent to the process by abort()..." >&4
+ echo "abort" >
+ chmod +x
+?X: SIGABRT should replace SIGIOT on USG machines in a near future (1991).
+ for signal in SIGIOT SIGILL SIGABRT; do
+ case "$abortsig" in
+ '') $cat >abort.c <<EOP
+#include <signal.h>
+caught() { exit(0); }
+#ifdef $signal
+ signal($signal, caught);
+ if (-1 == abort())
+ exit(1);
+ exit(1);
+?X: We have to use the script otherwise sh behaves strangely on AIX.
+ if $cc $ccflags -o abort abort.c >/dev/null 2>&1; then
+ (./ >/dev/null 2>&1
+ case $? in
+ 0) abortsig="$signal";;
+ esac
+ fi
+ ;;
+ esac
+ done
+ ;;
+case "$abortsig" in
+'') echo "(I wasn't able to compute the signal name--guessing)"
+ if ./usg; then
+ dflt="SIGIOT"
+ else
+ dflt="SIGILL"
+ fi;;
+*) dflt="$abortsig"
+ ;;
+rp="Which signal does abort() send to the process (signal name)?"
+. ./myread
+$rm -f core abort abort.c