1999-01-20 Alexandre Oliva <oliva@dcc.unicamp.br>
+ * libltdl/configure.in (libltdl_cv_preloaded_symbols,
+ HAVE_PRELOADED_SYMBOLS): test whether we support -dl*open
+ * libltdl/ltdl.c (!HAVE_PRELOADED_SYMBOLS, lt_preloaded_symbols):
+ define it to an empty list if libtool won't generate it, so as to
+ avoid link errors. This will cause silent dlopening failures, but
+ maybe this is better than failing to link the program...
+
* libltdl/ltdl.h (LTDL_PRELOADED_SYMBOLS): remove it; better to
declare lt_preloaded_symbols
* doc/libtool.texi (LTDL_PRELOADED_SYMBOLS): ditto
AC_CHECK_HEADERS(string.h strings.h, break)
AC_CHECK_FUNCS(strdup strchr strrchr index rindex)
+AC_CACHE_CHECK([whether libtool supports -dlopen/-dlpreopen],
+ libltdl_cv_preloaded_symbols, [dnl
+ if grep '^global_symbol_pipe=..*$' ./libtool >/dev/null; then
+ libltdl_cv_preloaded_symbols=yes
+ else
+ libltdl_cv_preloaded_symbols=no
+ fi
+])
+if test x"$libltdl_cv_preloaded_symbols" = x"yes"; then
+ AC_DEFINE(HAVE_PRELOADED_SYMBOLS)
+fi
+
test_dlerror=no
LIBADD_DL=
AC_CHECK_FUNCS(dlopen, [AC_DEFINE(HAVE_LIBDL) test_dlerror=yes],
return 0;
}
+#ifndef HAVE_PRELOADED_SYMBOLS
+/* If libtool won't define it, we'd better do */
+const lt_dlsymlist lt_preloaded_symbols[1] = { { 0, 0 } };
+#endif
+
int
lt_dlexit ()
{