| 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] 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. |
| |
| Submitted upstream: https://github.com/rcmadruga/log4c-localtime/pull/1 |
| |
| 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 |
| |