diff --git a/configure.ac b/configure.ac index 932164bb04..ac6da48963 100644 --- a/configure.ac +++ b/configure.ac @@ -611,6 +611,13 @@ fi AC_DEFINE_UNQUOTED(KERNEL_FIRMWARE_DIR, "$KERNEL_FIRMWARE_DIR", [Define to path of the kernel firmware directory]) AC_SUBST(KERNEL_FIRMWARE_DIR) +AC_ARG_ENABLE(crashtrace, + AS_HELP_STRING([--disable-crashtrace], [Disable GNU backtrace extensions]), + [enable_crashtrace=${enableval}], [enable_crashtrace=yes]) +if test x"$enable_crashtrace" = xyes; then + AC_DEFINE(ENABLE_CRASHTRACE, 1, [Define if you have GNU backtrace extensions]) +fi + NM_COMPILER_WARNINGS GTK_DOC_CHECK(1.0) diff --git a/src/logging/nm-logging.c b/src/logging/nm-logging.c index d8353f2719..078f15272c 100644 --- a/src/logging/nm-logging.c +++ b/src/logging/nm-logging.c @@ -30,10 +30,13 @@ #include #include #include -#include #include #include +#ifdef ENABLE_CRASHTRACE +#include +#endif + #include #include "nm-logging.h" @@ -262,6 +265,7 @@ _nm_log (const char *loc, static void fallback_get_backtrace (void) { +#ifdef ENABLE_CRASHTRACE void *frames[64]; Dl_info info; size_t size; @@ -289,6 +293,7 @@ fallback_get_backtrace (void) } } syslog (LOG_CRIT, "******************* END **********************************"); +#endif /* ENABLE_CRASHTRACE */ }