From 30f0cd91b21dbc5d593d61ae44875ad0cb53cb4d Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Sat, 16 Jul 2016 11:27:06 +0200 Subject: [PATCH] integck: only use execinfo.h when INTEGCK_DEBUG is enabled Guard the usage of execinfo.h by INTEGCK_DEBUG so that by defaut, integck builds properly on systems without (uClibc and musl based systems). As stated in the code, the backtrace() functionality of will anyway only work properly when INTEGCK_DEBUG is defined (it makes all functions non-static, which is needed for backtrace to provide some useful information). Signed-off-by: Thomas Petazzoni --- tests/fs-tests/integrity/integck.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/tests/fs-tests/integrity/integck.c b/tests/fs-tests/integrity/integck.c index 8badd1f..6ef817e 100644 --- a/tests/fs-tests/integrity/integck.c +++ b/tests/fs-tests/integrity/integck.c @@ -31,7 +31,9 @@ #include #include #include +#ifdef INTEGCK_DEBUG #include +#endif #include #include #include @@ -248,14 +250,18 @@ static char *random_name_buf; static void check_failed(const char *cond, const char *func, const char *file, int line) { - int error = errno, count; + int error = errno; +#ifdef INTEGCK_DEBUG + int count; void *addresses[128]; +#endif fflush(stdout); fflush(stderr); errmsg("condition '%s' failed in %s() at %s:%d", cond, func, file, line); normsg("error %d (%s)", error, strerror(error)); +#ifdef INTEGCK_DEBUG /* * Note, to make this work well you need: * 1. Make all functions non-static - add "#define static' @@ -264,6 +270,7 @@ static void check_failed(const char *cond, const char *func, const char *file, */ count = backtrace(addresses, 128); backtrace_symbols_fd(addresses, count, fileno(stdout)); +#endif exit(EXIT_FAILURE); } -- 2.7.4