f97702e8f4
When --enable-debug is used, liblog4c-localtime wants to use <mcheck.h> if __GLIBC__ is defined. Unfortunately, uClibc defines __GLIBC__ but does not provides mcheck.h. Therefore, this commit introduces a patch (0003) that checks if mcheck.h is available or not. However, this patch requires autoreconfiguring the package, which is currently broken. Therefore, the two other patches (0004 and 0005) are meant to fix autoreconfiguration of the package. Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
68 lines
2.1 KiB
Diff
68 lines
2.1 KiB
Diff
From acbaee34bcb1881db97969dd2c411446f32ca4cc Mon Sep 17 00:00:00 2001
|
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
Date: Sat, 25 Oct 2014 19:45:33 +0200
|
|
Subject: [PATCH 3/5] Fix debug mode build with uClibc
|
|
|
|
When --enable-debug is passed, liblog4c-localtime wants to use
|
|
<mcheck.h>. It takes the precaution of testing if __GLIBC__ is
|
|
defined. But unfortunately, the uClibc C library pretends to be
|
|
compatible with glibc by defining __GLIBC__, but it doesn't provide
|
|
mcheck.h.
|
|
|
|
To better support this situation, we add an AC_CHECK_HEADERS() check
|
|
on mcheck.h, and then use HAVE_MCHECK_H were appropriate.
|
|
|
|
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
|
---
|
|
configure.in | 2 +-
|
|
src/log4c/init.c | 6 +++---
|
|
2 files changed, 4 insertions(+), 4 deletions(-)
|
|
|
|
diff --git a/configure.in b/configure.in
|
|
index 612ccbe..dbf11e9 100644
|
|
--- a/configure.in
|
|
+++ b/configure.in
|
|
@@ -115,7 +115,7 @@ AM_CONDITIONAL(TEST, test x$enable_test = xyes)
|
|
AC_HEADER_STDC
|
|
AC_CHECK_HEADERS([fcntl.h inttypes.h langinfo.h limits.h stddef.h stdint.h \
|
|
stdlib.h string.h sys/time.h syslog.h unistd.h stdarg.h varargs.h getopt.h \
|
|
-pthread.h])
|
|
+pthread.h mcheck.h])
|
|
|
|
# Checks for typedefs, structures, and compiler characteristics.
|
|
AC_C_CONST
|
|
diff --git a/src/log4c/init.c b/src/log4c/init.c
|
|
index 7dd9eb4..4b88210 100644
|
|
--- a/src/log4c/init.c
|
|
+++ b/src/log4c/init.c
|
|
@@ -35,7 +35,7 @@ static const char version[] = "$Id$";
|
|
#include <layout_type_basic_r.h>
|
|
#include <layout_type_dated_r.h>
|
|
|
|
-#if defined(__LOG4C_DEBUG__) && defined(__GLIBC__)
|
|
+#if defined(__LOG4C_DEBUG__) && defined(HAVE_MCHECK_H)
|
|
#include <mcheck.h>
|
|
#endif
|
|
|
|
@@ -100,7 +100,7 @@ extern int log4c_init(void)
|
|
sd_debug("log4c_init[");
|
|
|
|
/* activate GLIBC allocation debugging */
|
|
-#if defined(__LOG4C_DEBUG__) && defined(__GLIBC__)
|
|
+#if defined(__LOG4C_DEBUG__) && defined(HAVE_MCHECK_H)
|
|
mtrace();
|
|
#endif
|
|
|
|
@@ -280,7 +280,7 @@ extern int log4c_fini(void)
|
|
log4c_dump_all_instances(stderr);
|
|
}
|
|
#endif
|
|
-#if defined(__LOG4C_DEBUG__) && defined(__GLIBC__)
|
|
+#if defined(__LOG4C_DEBUG__) && defined(HAVE_MCHECK_H)
|
|
muntrace();
|
|
#endif
|
|
|
|
--
|
|
2.0.0
|
|
|