]> git.ipfire.org Git - thirdparty/libtool.git/commitdiff
*** empty log message ***
authorThomas Tanner <tanner@gmx.de>
Wed, 23 Dec 1998 10:27:14 +0000 (10:27 +0000)
committerThomas Tanner <tanner@gmx.de>
Wed, 23 Dec 1998 10:27:14 +0000 (10:27 +0000)
ChangeLog
libltdl/Makefile.am
libltdl/configure.in
libltdl/ltdl.c
mdemo/Makefile.am

index 5cf034aa8650cef9b5f0f8032eaa7b2f4f913dd7..a48605b43f4fcc62e3c75fbb228837f3bdf6a926 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+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
index 2e5b56f122a328544f0222f51c7f05b77f3d57c8..e325a53b1afb9546ec494b00c221a7e3e4d79e6b 100644 (file)
@@ -5,10 +5,18 @@
 # 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
index 02a47097a2430fbe011d0a34a55e11575acf13e9..62de2034332a09ad23662f409c9e19ef06c7a19a 100644 (file)
@@ -23,16 +23,22 @@ if test x"$libltdl_cv_dlpreopen" = x"yes"; then
   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 ||
@@ -53,7 +59,7 @@ main() { void *self, *ptr1, *ptr2; self=dlopen(NULL,RTLD_LAZY);
 fi
 
 if test x"$libltdl_cv_need_uscore" = xyes; then
-   AC_DEFINE(NEED_USCORE)
+  AC_DEFINE(NEED_USCORE)
 fi
 
 dnl Output the makefile
index ae0233981f8130beabdef2e8a331f102711f1e8c..b2e4ae41888b46635a48b47837585ffcced04fe9 100644 (file)
@@ -361,6 +361,7 @@ wll = { LT_DLTYPE_TOP, wll_init, wll_exit,
 
 #endif
 
+#if DEBUG
 #if HAVE_DLPREOPEN
 
 /* emulate dynamic linking using dld_preloaded_symbols */
@@ -436,6 +437,7 @@ dldpre = { LT_DLTYPE_TOP, dldpre_init, dldpre_exit,
 #undef LT_DLTYPE_TOP
 #define LT_DLTYPE_TOP &dldpre
 
+#endif
 #endif
 
 static lt_dlhandle handles;
index 10c322789e2318a644139bc8c98d20a10e8283c7..06a31bf395cb2dd1db014020cac6157fd0689ff7 100644 (file)
@@ -27,7 +27,7 @@ mdemo_DEPENDENCIES = ../libltdl/libltdl.la libfoo1.la libfoo2.la
 
 # 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