diff options
author | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-08-23 19:28:13 +0000 |
---|---|---|
committer | kpfleming <kpfleming@f38db490-d61c-443f-a65b-d21fe96a405b> | 2006-08-23 19:28:13 +0000 |
commit | 6d8a5523b31d7d9afd03b33f435b8d2177486728 (patch) | |
tree | d7e82edc8e2c978bd2edf5b9b81c8639d8fb92fd /configure.ac | |
parent | 5b8099887a4f788aa49072c99eea808f4e1f3dc4 (diff) |
use RTLD_NOLOAD if it's available to make loading dynamic modules a little faster and less resource-intensive
also, keep trying to dlclose() a module until it actually goes away, since it may have other modules it brought in when it was loaded (thanks PCadach for pointing this problem out to me)
git-svn-id: http://svn.digium.com/svn/asterisk/trunk@40949 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 5bbb7107e..c3eacdc57 100644 --- a/configure.ac +++ b/configure.ac @@ -237,6 +237,15 @@ AC_LINK_IFELSE( AC_MSG_RESULT(no) ) +AC_MSG_CHECKING(checking for RTLD_NOLOAD) +AC_LINK_IFELSE( + AC_LANG_PROGRAM([#include <dlfcn.h>], + [int foo = RTLD_NOLOAD;]), + AC_MSG_RESULT(yes) + AC_DEFINE([HAVE_RTLD_NOLOAD], 1, [Define to 1 if your system has a dynamic linker that supports RTLD_NOLOAD.]), + AC_MSG_RESULT(no) +) + AST_GCC_ATTRIBUTE(pure) AST_GCC_ATTRIBUTE(malloc) AST_GCC_ATTRIBUTE(const) |