diff options
Diffstat (limited to 'lib/util')
-rw-r--r-- | lib/util/fault.c | 2 | ||||
-rw-r--r-- | lib/util/wscript | 3 | ||||
-rw-r--r-- | lib/util/wscript_configure | 3 |
3 files changed, 8 insertions, 0 deletions
diff --git a/lib/util/fault.c b/lib/util/fault.c index 7fe081d285..b3527bb22e 100644 --- a/lib/util/fault.c +++ b/lib/util/fault.c @@ -96,6 +96,7 @@ void fault_setup(void) if (fault_state.disabled) { return; } +#if !defined(HAVE_DISABLE_FAULT_HANDLING) #ifdef SIGSEGV CatchSignal(SIGSEGV, sig_fault); #endif @@ -105,6 +106,7 @@ void fault_setup(void) #ifdef SIGABRT CatchSignal(SIGABRT, sig_fault); #endif +#endif } _PUBLIC_ const char *panic_action = NULL; diff --git a/lib/util/wscript b/lib/util/wscript new file mode 100644 index 0000000000..d296e7565b --- /dev/null +++ b/lib/util/wscript @@ -0,0 +1,3 @@ +def set_options(opt): + ''' This is a bit strange, but disable is the flag, not enable. ''' + opt.add_option('--disable-fault-handling', action='store_true', dest='disable_fault_handling', help=('disable the fault handlers'), default=False) diff --git a/lib/util/wscript_configure b/lib/util/wscript_configure index fdaf67acb3..ad55476c7d 100644 --- a/lib/util/wscript_configure +++ b/lib/util/wscript_configure @@ -1,5 +1,8 @@ #!/usr/bin/env python +import Options +if Options.options.disable_fault_handling: + conf.DEFINE('HAVE_DISABLE_FAULT_HANDLING',1) # backtrace could be in libexecinfo or in libc conf.CHECK_FUNCS_IN('backtrace backtrace_symbols', 'execinfo', checklibc=True, headers='execinfo.h') |