* m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we

have a dlloader to preload.
* libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
declare preloaded_symbols then.  Fixes libltdl on static platforms.
* NEWS: Updated.
This commit is contained in:
Ralf Wildenhues 2004-11-29 21:00:20 +00:00
parent 32f1e626b8
commit 60fbf440cb
4 changed files with 21 additions and 3 deletions

View File

@ -1,3 +1,11 @@
2004-11-29 Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
* m4/ltdl.m4 (LT_LIB_DLLOAD): Define HAVE_LIBDLLOADER if we
have a dlloader to preload.
* libltdl/ltdl.c (lt_dlinit): Only preload if HAVE_LIBDLLOADER, only
declare preloaded_symbols then. Fixes libltdl on static platforms.
* NEWS: Updated.
2004-11-29 Gary V. Vaughan <gary@gnu.org>
Add a search path option to libtoolize so that we can run it from

1
NEWS
View File

@ -3,6 +3,7 @@ NEWS - list of user-visible changes between releases of GNU Libtool
New in 2.1b: 2005-??-??; CVS version 2.1a, Libtool team:
* New tests for support of Automake subdir-objects.
* Support for Portland Group compiler on Linux.
* Fix libltdl on static platforms.
New in 1.9h: 2004-??-??; CVS version 1.9g, Libtool team:
* Libtool versions can now be parallel installed, except that only one

View File

@ -189,7 +189,9 @@ loader_init (lt_get_vtable *vtable_func, lt_user_data data)
#define preloaded_symbols LT_CONC3(lt_, LTDLOPEN, _LTX_preloaded_symbols)
LT_SCOPE const lt_dlvtable * get_vtable (lt_user_data data);
#ifdef HAVE_LIBDLLOADER
LT_SCOPE lt_dlsymlist preloaded_symbols;
#endif
/* Initialize libltdl. */
int
@ -211,6 +213,7 @@ lt_dlinit (void)
/* Now open all the preloaded module loaders, so the application
can use _them_ to lt_dlopen its own modules. */
#ifdef HAVE_LIBDLLOADER
if (!errors)
{
errors += lt_dlpreload (&preloaded_symbols);
@ -220,6 +223,7 @@ lt_dlinit (void)
{
errors += lt_dlpreload_open (LT_STR(LTDLOPEN), loader_init_callback);
}
#endif /* HAVE_LIBDLLOADER */
}
return errors;

View File

@ -459,9 +459,14 @@ AC_SUBST([LIBADD_DLD_LINK])
m4_pattern_allow([^LT_DLPREOPEN$])
LT_DLPREOPEN=
for lt_loader in $LT_DLLOADERS; do
if test -n "$LT_DLLOADERS"
then
for lt_loader in $LT_DLLOADERS; do
LT_DLPREOPEN="$LT_DLPREOPEN-dlpreopen loaders/$lt_loader "
done
done
AC_DEFINE([HAVE_LIBDLLOADER], [1],
[Define if libdlloader will be built on this platform])
fi
AC_SUBST([LT_DLPREOPEN])
dnl This isn't used anymore, but set it for backwards compatibility