From: aland Date: Fri, 28 Jul 2000 12:43:52 +0000 (+0000) Subject: removed all knowledge about dlopen() and friends from the X-Git-Tag: release_0_1_0~847 X-Git-Url: http://www.project-moonshot.org/gitweb/?a=commitdiff_plain;ds=sidebyside;h=b1ca16f195d5a55db11f29446602f0920f525ae8;p=freeradius.git removed all knowledge about dlopen() and friends from the configuration process. We now rely on libltdl to do that work for us. The HOPE is that this change will make the server portable to systems with bizarre shared library implementations. --- diff --git a/Make.inc.in b/Make.inc.in index b80dc66..dc30523 100644 --- a/Make.inc.in +++ b/Make.inc.in @@ -41,8 +41,6 @@ RADIR = @radacctdir@ BUILDDBM = @BUILDDBM@ -DYNAMIC_MODULES = @DYNAMIC_MODULES@ MODULE_LIBS = @MODULE_LIBS@ MODULE_LDFLAGS = @MODULE_LDFLAGS@ -MODULE_HAVE_DLERROR = @MODULE_HAVE_DLERROR@ STATIC_MODULES = @STATIC_MODULES@ diff --git a/acconfig.h b/acconfig.h index 8bfd84d..0550569 100644 --- a/acconfig.h +++ b/acconfig.h @@ -17,9 +17,6 @@ config.h - created by autoconf; contains defines generated by autoconf /* Do we have socklen_t? */ #undef HAVE_SOCKLEN_T -/* Define if you have the DLOPEN function. */ -#undef HAVE_DLOPEN - /* Define if you need preceding underscores in dynamic library linking */ #undef MODULE_NEED_USCORE diff --git a/configure.in b/configure.in index 51cd1b1..5f98ffd 100644 --- a/configure.in +++ b/configure.in @@ -577,102 +577,9 @@ else AC_CHECK_FUNC(crypt, AC_DEFINE(HAVE_CRYPT)) fi -dnl *********************** -dnl This next bit is stolen from glib, and modified to work for FreeRADIUS. -dnl *********************** -MODULE_LIBS= -MODULE_CFLAGS= -MODULE_LDFLAGS= -MODULE_HAVE_DLERROR=0 - -dnl *** dlopen() and dlsym() in system libraries -if test -z "$DYNAMIC_MODULES"; then - AC_CHECK_FUNC(dlopen, - AC_CHECK_FUNC(dlsym, - [ DYNAMIC_MODULES=DYNAMIC_MODULES_DL HAVE_DLOPEN=1 ] - ,) - ,) -fi - -dnl *** dlopen() and dlsym() in libdl -if test -z "$DYNAMIC_MODULES"; then - AC_CHECK_LIB(dl, dlopen, - AC_CHECK_LIB(dl, dlsym, - MODULE_LIBS=-ldl - [ DYNAMIC_MODULES=DYNAMIC_MODULES_DL HAVE_DLOPEN=1 ] - ,) - ,) -fi - -dnl *** shl_load() in libdld (HP-UX) -if test -z "$DYNAMIC_MODULES"; then - AC_MSG_CHECKING(how to export all symbols) - SAVED_LDFLAGS=$LDFLAGS - - LDFLAGS="$LDFLAGS -Wl,-E" - AC_TRY_LINK(,[ return 0; ], - [ MODULE_LDFLAGS="-Wl,-E" ],[ - LDFLAGS="$SAVED_LDFLAGS -bexpall" - AC_TRY_LINK(,[ return 0; ], - MODULE_LDFLAGS="-bexpall", - MODULE_LDFLAGS="" - ) - ]) - - LDFLAGS=$SAVED_LDFLAGS - AC_MSG_RESULT($MODULE_LDFLAGS) - - AC_CHECK_LIB(dld, shl_load, - MODULE_LIBS=-ldld - DYNAMIC_MODULES=DYNAMIC_MODULES_DLD - ,) -fi - -dnl *** additional checks for DYNAMIC_MODULES_DL -if test "$DYNAMIC_MODULES" = "DYNAMIC_MODULES_DL"; then - -dnl *** check whether we need preceeding underscores - AC_MSG_CHECKING(for preceeding underscore in symbols) - AC_CACHE_VAL(rlm_cv_uscore,[ - AC_TRY_RUN([ - #include - int rlm_underscore_test (void) { return 42; } - int main() { - void *f1 = (void*)0, *f2 = (void*)0, *handle; - handle = dlopen ((void*)0, 0); - if (handle) { - f1 = dlsym (handle, "rlm_underscore_test"); - f2 = dlsym (handle, "_rlm_underscore_test"); - } return (!f2 || f1); - }], - rlm_cv_uscore=yes, - rlm_cv_uscore=no, - rlm_cv_uscore=no - ) - rm -f plugin.c plugin.o plugin.lo - ]) - AC_MSG_RESULT($rlm_cv_uscore) - if test "x$rlm_cv_uscore" = "xyes"; then - AC_DEFINE(MODULE_NEED_USCORE) - fi - - LDFLAGS="$LDFLAGS_orig" -dnl *** check for having dlerror() - AC_CHECK_FUNC(dlerror, - MODULE_HAVE_DLERROR=1, - MODULE_HAVE_DLERROR=0) -fi -dnl *** done, have e got an implementation? -if test -z "$DYNAMIC_MODULES"; then - DYNAMIC_MODULES=0 -fi - -AC_SUBST(DYNAMIC_MODULES) -AC_DEFINE(HAVE_DLOPEN) AC_SUBST(MODULE_LIBS) AC_SUBST(MODULE_CFLAGS) AC_SUBST(MODULE_LDFLAGS) -AC_SUBST(MODULE_HAVE_DLERROR) dnl ############################################################# dnl # diff --git a/src/include/autoconf.h.in b/src/include/autoconf.h.in index dbd98b3..a8f5d70 100644 --- a/src/include/autoconf.h.in +++ b/src/include/autoconf.h.in @@ -51,12 +51,6 @@ config.h - created by autoconf; contains defines generated by autoconf /* Do we have socklen_t? */ #undef HAVE_SOCKLEN_T -/* Define if you have the DLOPEN function. */ -#undef HAVE_DLOPEN - -/* Define if you need preceding underscores in dynamic library linking */ -#undef MODULE_NEED_USCORE - /* Do we want to compile in DBM support? */ #undef WITH_DBM