From 3d5cec4ff704c2dec151f3cdbcc426d746d37fcc Mon Sep 17 00:00:00 2001 From: Richard Braun Date: Sat, 9 Jul 2011 14:06:52 +0200 Subject: libdl: add option for controlling dl_cleanup When debugging memory leaks with Valgrind, it is required that dynamically loaded shared objects are not unloaded when a process exits, otherwise symbols from those files aren't correctly resolved in allocation traces. This patch adds the LDSO_NO_CLEANUP configuration option to control this behaviour. Signed-off-by: Richard Braun Signed-off-by: Carmelo Amoroso --- extra/Configs/Config.in | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'extra/Configs') diff --git a/extra/Configs/Config.in b/extra/Configs/Config.in index 2fa0b076d..af4c0380f 100644 --- a/extra/Configs/Config.in +++ b/extra/Configs/Config.in @@ -417,6 +417,18 @@ config LDSO_SEARCH_INTERP_PATH If unsure, simply say Y here. +config LDSO_NO_CLEANUP + bool "Disable automatic unloading of dynamically loaded shared objects" + depends on HAVE_SHARED + default n + help + If you need complete allocation traces when debugging memory leaks + using Valgrind in a process that dynamically loads shared objects, + then answer Y here. Unlike glibc, uClibc unloads all dynamically + loaded shared objects when a process exits, which prevents Valgrind + from correctly resolving the symbols from the unloaded shared objects. + Unless you know you need this, you should answer N. + config UCLIBC_CTOR_DTOR bool "Support global constructors and destructors" default y -- cgit v1.2.3