--- /dev/null
+From 30f0cd91b21dbc5d593d61ae44875ad0cb53cb4d Mon Sep 17 00:00:00 2001
+From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
+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 <execinfo.h> (uClibc and
+musl based systems). As stated in the code, the backtrace()
+functionality of <execinfo.h> 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 <thomas.petazzoni@free-electrons.com>
+---
+ 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 <getopt.h>
+ #include <assert.h>
+ #include <mntent.h>
++#ifdef INTEGCK_DEBUG
+ #include <execinfo.h>
++#endif
+ #include <bits/stdio_lim.h>
+ #include <sys/mman.h>
+ #include <sys/vfs.h>
+@@ -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
+
MTD_TARGETS_y += $(addprefix ubi-utils/,$(MTD_TARGETS_UBI_y))
MTD_TARGETS_$(BR2_PACKAGE_MTD_MKFSUBIFS) += mkfs.ubifs/mkfs.ubifs
+ifeq ($(BR2_PACKAGE_MTD_INTEGCK),y)
+define MTD_BUILD_INTEGCK
+ $(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \
+ BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D)/tests/fs-tests all
+endef
+define MTD_INSTALL_INTEGCK
+ $(INSTALL) -D -m 755 $(@D)/tests/fs-tests/integrity/integck $(TARGET_DIR)/usr/sbin/integck
+endef
+endif
+
define MTD_BUILD_CMDS
$(TARGET_CONFIGURE_OPTS) $(MAKE1) CROSS=$(TARGET_CROSS) \
BUILDDIR=$(@D) $(MTD_MAKE_OPTS) -C $(@D) \
$(addprefix $(@D)/,$(MTD_TARGETS_y)) \
$(addprefix $(@D)/,$(MTD_STAGING_y))
+ $(MTD_BUILD_INTEGCK)
endef
define MTD_INSTALL_STAGING_CMDS
for f in $(MTD_TARGETS_y) ; do \
$(INSTALL) -D -m 0755 $(@D)/$$f $(TARGET_DIR)/usr/sbin/$${f##*/} ; \
done
+ $(MTD_INSTALL_INTEGCK)
endef
$(eval $(generic-package))