+1998-12-23 Thomas Tanner <tanner@gmx.de>
+
+ * libltdl/Makefile.am: build two versions of libltdl:
+ libltdl (support native dlopen if available, otherwise dlpreopen),
+ libltdls (like libltdl, but always support for dlpreopen)
+ * libltdl/ltdl.c: ditto
+ * libltdl/configure.in: warn if dlopen is not supported
+ * mdemo/Makefile.am (mdemo.debug): use libltdls
+
1998-12-22 Alexandre Oliva <oliva@dcc.unicamp.br>
* Makefile.am (SUBDIRS): prepend `.' to avoid am-recursive
# level Makefile.
AUTOMAKE_OPTIONS = no-dependencies foreign
-lib_LTLIBRARIES = libltdl.la
-libltdl_la_SOURCES = ltdl.c
+ltdls.lo: ltdl.c
+ $(LTCOMPILE) -DDEBUG -o $@ -c $<
+
+lib_LTLIBRARIES = libltdl.la libltdls.la
+
+libltdl_la_SOURCES = ltdl.c ltdl.h
libltdl_la_LDFLAGS = $(LIBADD_DL)
+libltdls_la_LIBADD = ltdls.lo
+libltdls_la_SOURCES = ltdl.h
+libltdls_la_LDFLAGS = $(LIBADD_DL)
+
include_HEADERS = ltdl.h
# rebuild the libtool script if needed
AC_DEFINE(HAVE_DLPREOPEN)
fi
+supported=yes
LIBADD_DL=
AC_CHECK_FUNCS(dlopen, AC_DEFINE(HAVE_LIBDL),
[AC_CHECK_LIB(dl, dlopen, [AC_DEFINE(HAVE_LIBDL) LIBADD_DL="-ldl"],
[AC_CHECK_LIB(dld, dld_link, [AC_DEFINE(HAVE_DLD) LIBADD_DL="-ldld"],
- [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD) )]
+ [AC_CHECK_FUNCS(shl_load, AC_DEFINE(HAVE_SHL_LOAD), supported=no )]
)]
)]
)
AC_SUBST(LIBADD_DL)
+if test "$supported" = no; then
+ AC_MSG_WARN(Can't find dlopen support: Please make sure that your programs use -dlopen/-dlpreopen.)
+ AC_DEFINE(DEBUG)
+fi
+
AM_SYS_SYMBOL_UNDERSCORE
if test x"$USE_SYMBOL_UNDERSCORE" = xyes; then
if test x"$ac_cv_func_dlopen" = xyes ||
fi
if test x"$libltdl_cv_need_uscore" = xyes; then
- AC_DEFINE(NEED_USCORE)
+ AC_DEFINE(NEED_USCORE)
fi
dnl Output the makefile
#endif
+#if DEBUG
#if HAVE_DLPREOPEN
/* emulate dynamic linking using dld_preloaded_symbols */
#undef LT_DLTYPE_TOP
#define LT_DLTYPE_TOP &dldpre
+#endif
#endif
static lt_dlhandle handles;
# Create an easier-to-debug version of mdemo.
mdemo_debug_SOURCES = main.c
-mdemo_debug_LDADD = ../libltdl/libltdl.la
+mdemo_debug_LDADD = ../libltdl/libltdls.la
mdemo_debug_LDFLAGS = -static -export-dynamic \
-dlopen libfoo1.la -dlopen libfoo2.la
-mdemo_debug_DEPENDENCIES = ../libltdl/libltdl.la libfoo1.la libfoo2.la
+mdemo_debug_DEPENDENCIES = ../libltdl/libltdls.la libfoo1.la libfoo2.la