We've experienced a double library load on a setup where the lttng-ust
.so and .so.0 were two physical files instead of a symlink (as they
should be). So let's make liblttng-ust slightly more robust by
specifying the target .so.0 instead of .so. It will also make handling
of library version upgrades easier.
Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
# Process this file with autoconf to produce a configure script.
AC_INIT([lttng-ust],[1.9.1],[mathieu dot desnoyers at efficios dot com])
+
+# Following the numbering scheme proposed by libtool for the library version
+# http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
+AC_SUBST([LTTNG_UST_LIBRARY_VERSION], [0:0:0])
+# note: remember to update tracepoint.h dlopen() to match this version
+# number. TODO: eventually automate by exporting the major number.
+
AC_CONFIG_AUX_DIR([config])
AC_CANONICAL_TARGET
AC_CANONICAL_HOST
if (__tracepoint_registered++)
return;
- liblttngust_handle = dlopen("liblttng-ust.so", RTLD_NOW | RTLD_GLOBAL);
+ liblttngust_handle = dlopen("liblttng-ust.so.0", RTLD_NOW | RTLD_GLOBAL);
if (!liblttngust_handle)
return;
tracepoint_register_lib =
liblttng_ust_la_SOURCES =
-liblttng_ust_la_LDFLAGS = -no-undefined -version-info 0:0:0
+liblttng_ust_la_LDFLAGS = -no-undefined -version-info $(LTTNG_UST_LIBRARY_VERSION)
liblttng_ust_support_la_LIBADD = \
$(top_builddir)/libringbuffer/libringbuffer.la
frontend_api.h frontend.h frontend_internal.h frontend_types.h \
nohz.h vatomic.h
-
-libringbuffer_la_LDFLAGS = -no-undefined -version-info 0:0:0
-
libringbuffer_la_LIBADD = \
-lpthread \
-lrt