summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDiego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>2009-01-22 16:37:40 +0100
committerDiego E. 'Flameeyes' Pettenò <flameeyes@gmail.com>2009-01-22 16:37:40 +0100
commitc65d3a9fb04d2c598b5c7fec3a060ec97eb778b9 (patch)
tree639d1d00cedc950cad7d520f30ab00fe81242436
parent7c7133e09ded0f3fc004737be0443eb9c4dae4c8 (diff)
Remove support for internal distributing and bundling of libltdl.
Standing to what the libtool documentation says, the LTDL_INIT macro and the related configure options are only useful when intending to distribute libltdl, and is superfluous if the system copy were always to be used. Which makes it very easy to just drop the internal copy and use the system library, just do it like any other library lacking pkg-config files to identify its presence. If this tries to build against an older libtool version it might fail at link time, so for now this is not an user-proof solution. But it at least should provide a working environment for packagers.
-rw-r--r--Makefile.am2
-rw-r--r--configure.ac24
-rw-r--r--src/Makefile.am1
3 files changed, 22 insertions, 5 deletions
diff --git a/Makefile.am b/Makefile.am
index f4dd9989..8735d312 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -18,7 +18,7 @@
ACLOCAL_AMFLAGS = -I m4
EXTRA_DIST = bootstrap.sh LICENSE GPL LGPL doxygen/Makefile.am doxygen/Makefile.in doxygen/doxygen.conf.in README todo
-SUBDIRS = libltdl src doxygen man po
+SUBDIRS = src doxygen man po
MAINTAINERCLEANFILES =
noinst_DATA =
diff --git a/configure.ac b/configure.ac
index 9912843f..f659d49e 100644
--- a/configure.ac
+++ b/configure.ac
@@ -237,9 +237,28 @@ AS_IF([test "$pulseaudio_cv__Bool" = "yes"], [
#### libtool stuff ####
LT_PREREQ(2.2)
-LT_CONFIG_LTDL_DIR([libltdl])
LT_INIT([dlopen win32-dll disable-static])
-LTDL_INIT([convenience recursive])
+
+dnl Unfortunately, even up to libtool 2.2.6a there is no way to know
+dnl exactly which version of libltdl is present in the system, so we
+dnl just assume that it's a working version as long as we have the
+dnl library and the header files.
+dnl
+dnl Check the header files first since the system may have a
+dnl libltdl.so for runtime, but no headers, and we want to bail out as
+dnl soon as possible.
+dnl
+dnl We don't need any special variable for this though, since the user
+dnl can give the proper place to find libltdl through the standard
+dnl variables like LDFLAGS and CPPFLAGS.
+
+AC_CHECK_HEADER([ltdl.h],
+ [AC_CHECK_LIB([ltdl], [lt_dlopen], [LIBLTDL=-lltdl], [LIBLTDL=])],
+ [LIBLTDL=])
+
+AS_IF([test "x$LIBLTDL" = "x"],
+ [AC_MSG_ERROR([Unable to find libltdl.])])
+AC_SUBST([LIBLTDL])
#### Determine build environment ####
@@ -1174,7 +1193,6 @@ AM_CONDITIONAL([FORCE_PREOPEN], [test "x$FORCE_PREOPEN" = "xyes"])
AC_CONFIG_FILES([
Makefile
-libltdl/Makefile
src/Makefile
man/Makefile
libpulse.pc
diff --git a/src/Makefile.am b/src/Makefile.am
index 8d1271c3..d77f4dc1 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -60,7 +60,6 @@ AM_CFLAGS = \
-I$(top_builddir)/src/modules/alsa \
-I$(top_srcdir)/src/modules/raop \
$(PTHREAD_CFLAGS) -D_POSIX_PTHREAD_SEMANTICS \
- $(LTDLINCL) \
$(LIBSAMPLERATE_CFLAGS) \
$(LIBSNDFILE_CFLAGS) \
$(LIBSPEEX_CFLAGS) \