+2001-02-01 Gary V. Vaughan <gvv@techie.com>
+
+ * ltdl.m4 (AC_LTDL_SYS_DLOPEN_DEPLIBS): If we know that the host
+ architecture automatically loads deplibs, then...
+ * libltdl/ltdl.c (load_deplibs): ...don't manually load each one.
+
2001-01-31 Gary V. Vaughan <gvv@techie.com>
* TODO: Updated.
* libltdl/ltdl.c (load_deplibs): If loading a deplib fails,
don't sweat -- it may be a lib that is already statically linked
into the loading application.
-
+
* libltdl/ltdl.c: Clean up the shadowing of the global handles
variable.
(LT_DLRESIDENT_FLAGS): Add extra parens to satisfy -Wall.
lt_dlhandle handle;
char *deplibs;
{
+ int ret = 0;
+
+#if LTDL_DLOPEN_DEPLIBS
+
char *p, *save_search_path;
+ int depcount = 0;
int i;
- int ret = 1, depcount = 0;
char **names = 0;
+ ret = 1;
handle->depcount = 0;
if (!deplibs)
{
if (handle->deplibs[j])
{
++j;
+ }
}
- }
handle->depcount = j; /* Number of successfully loaded deplibs */
- ret = 0;
+ ret = 0;
}
cleanup_names:
/* restore the old search path */
LT_DLFREE (user_search_path);
user_search_path = save_search_path;
+#endif
return ret;
}
AC_REQUIRE([AC_LTDL_DLLIB])dnl
AC_REQUIRE([AC_LTDL_SYMBOL_USCORE])dnl
AC_REQUIRE([AC_LTDL_DLSYM_USCORE])dnl
+AC_REQUIRE([AC_LTDL_SYS_DLOPEN_DEPLIBS])dnl
])# AC_LIB_LTDL
# AC_LTDL_ENABLE_INSTALL
AM_CONDITIONAL(CONVENIENCE_LTDL, test x"${enable_ltdl_convenience-no}" != xno)
])])# AC_LTDL_ENABLE_INSTALL
+# AC_LTDL_SYS_DLOPEN_DEPLIBS
+# --------------------------
+AC_DEFUN(AC_LTDL_SYS_DLOPEN_DEPLIBS,
+[AC_REQUIRE([AC_CANONICAL_HOST])
+AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
+ libltdl_cv_sys_dlopen_deplibs, [dnl
+ # PORTME does your system automatically load deplibs for dlopen()?
+ libltdl_cv_sys_dlopen_deplibs=unknown
+ case "$host_os" in
+ linux*)
+ libltdl_cv_sys_dlopen_deplibs=yes
+ ;;
+ solaris*)
+ libltdl_cv_sys_dlopen_deplibs=yes
+ ;;
+ esac
+])
+if test "$libltdl_cv_sys_dlopen_deplibs" != yes; then
+ AC_DEFINE(LTDL_DLOPEN_DEPLIBS, 1,
+ [Define if the OS needs help to load dependent libraries for dlopen(). ])
+fi
+])# AC_LTDL_SYS_DLOPEN_DEPLIBS
+
# AC_LTDL_SHLIBEXT
# ----------------
AC_DEFUN(AC_LTDL_SHLIBEXT,